math.sqrt on complex, imaginary part, im greater than 0 branch

Time bar (total: 3.2s)

start0.0ms (0%)

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

analyze101.0ms (3.2%)

Memory
21.6MiB live, 167.6MiB allocated; 41ms collecting garbage
Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%50%50%0%0%0%0
0%0%50%50%0%0%0%1
50%25%25%50%0%0%0%2
50%25%25%50%0%0%0%3
62.5%31.2%18.7%50%0%0%0%4
62.5%31.2%18.7%50%0%0%0%5
68.8%34.3%15.6%50%0%0%0%6
68.8%34.3%15.6%50%0%0%0%7
71.9%35.9%14%50%0%0%0%8
71.9%35.9%14%50%0%0%0%9
73.4%36.7%13.3%50%0%0%0%10
73.4%36.7%13.3%50%0%0%0%11
74.2%37.1%12.9%50%0%0%0%12
Compiler

Compiled 19 to 12 computations (36.8% saved)

sample1.4s (45.1%)

Memory
10.4MiB live, 2 120.2MiB allocated; 334ms collecting garbage
Samples
514.0ms6 217×0valid
218.0ms474×3valid
168.0ms820×2valid
115.0ms745×1valid
Precisions
Click to see histograms. Total time spent on operations: 762.0ms
ival-hypot: 331.0ms (43.5% of total)
ival-mult!: 182.0ms (23.9% of total)
ival-sqrt: 126.0ms (16.5% of total)
adjust: 85.0ms (11.2% of total)
ival-sub!: 38.0ms (5% of total)
Bogosity

preprocess51.0ms (1.6%)

Memory
-31.2MiB live, 59.0MiB allocated; 11ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
03690
112790
235390
382290
4318290
Stop Event
node-limit
Alt Table
Click to see full alt table
StatusAccuracyProgram
43.1%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
Symmetry

(abs im)

Compiler

Compiled 24 to 24 computations (0% saved)

series31.0ms (1%)

Memory
26.5MiB live, 81.1MiB allocated; 9ms collecting garbage
Counts
12 → 113
Calls
Call 1
Inputs
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
#s(literal 1/2 binary64)
(sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))
(*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
#s(literal 2 binary64)
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
(+.f64 (*.f64 re re) (*.f64 im im))
(*.f64 re re)
re
(*.f64 im im)
im
Outputs
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* 1/2 (* (sqrt im) (sqrt 2)))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (+ (* -1/4 (* (sqrt (/ 1 im)) (* re (sqrt 2)))) (* 1/2 (* (sqrt im) (sqrt 2))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (+ (* 1/2 (* (sqrt im) (sqrt 2))) (* re (+ (* -1/4 (* (sqrt (/ 1 im)) (sqrt 2))) (* 1/16 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (+ (* 1/2 (* (sqrt im) (sqrt 2))) (* re (+ (* -1/4 (* (sqrt (/ 1 im)) (sqrt 2))) (* re (+ (* 1/32 (* (sqrt (/ 1 (pow im 5))) (* re (sqrt 2)))) (* 1/16 (* (sqrt (/ 1 (pow im 3))) (sqrt 2))))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* (sqrt im) (sqrt 2))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (+ (* -1/2 (* (sqrt (/ 1 im)) (* re (sqrt 2)))) (* (sqrt im) (sqrt 2)))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (+ (* re (+ (* -1/2 (* (sqrt (/ 1 im)) (sqrt 2))) (* 1/8 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))))) (* (sqrt im) (sqrt 2)))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (+ (* re (+ (* -1/2 (* (sqrt (/ 1 im)) (sqrt 2))) (* re (+ (* 1/16 (* (sqrt (/ 1 (pow im 5))) (* re (sqrt 2)))) (* 1/8 (* (sqrt (/ 1 (pow im 3))) (sqrt 2))))))) (* (sqrt im) (sqrt 2)))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* 2 im)))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (+ (* -2 re) (* 2 im))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (+ (* 2 im) (* re (- (/ re im) 2)))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (+ (* 2 im) (* re (- (* re (+ (* -1/4 (/ (pow re 2) (pow im 3))) (/ 1 im))) 2)))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 im))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (+ im (* -1 re))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (+ im (* re (- (* 1/2 (/ re im)) 1)))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (+ im (* re (- (* re (+ (* -1/8 (/ (pow re 2) (pow im 3))) (* 1/2 (/ 1 im)))) 1)))))
#s(approx (sqrt (+ (* re re) (* im im))) #s(hole binary64 (+ im (* 1/2 (/ (pow re 2) im)))))
#s(approx (sqrt (+ (* re re) (* im im))) #s(hole binary64 (+ im (* (pow re 2) (+ (* -1/8 (/ (pow re 2) (pow im 3))) (* 1/2 (/ 1 im)))))))
#s(approx (sqrt (+ (* re re) (* im im))) #s(hole binary64 (+ im (* (pow re 2) (+ (* (pow re 2) (- (* 1/16 (/ (pow re 2) (pow im 5))) (* 1/8 (/ 1 (pow im 3))))) (* 1/2 (/ 1 im)))))))
#s(approx (+ (* re re) (* im im)) #s(hole binary64 (pow im 2)))
#s(approx (+ (* re re) (* im im)) #s(hole binary64 (+ (pow im 2) (pow re 2))))
#s(approx (* re re) #s(hole binary64 (pow re 2)))
#s(approx re #s(hole binary64 re))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* 1/2 (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (+ (* -1/32 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re)))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (+ (* -1/32 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* 1/64 (* (/ (* (pow im 5) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* 1/2 (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (+ (* -1/32 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* -1/1024 (* (/ (* (pow im 5) (sqrt 2)) (pow (sqrt 1/2) 3)) (sqrt (/ 1 (pow re 9))))) (+ (* 1/64 (* (/ (* (pow im 5) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* 1/2 (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re)))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re)))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (+ (* -1/16 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (+ (* -1/16 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* 1/32 (* (/ (* (pow im 5) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re)))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (+ (* -1/16 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* -1/512 (* (/ (* (pow im 5) (sqrt 2)) (pow (sqrt 1/2) 3)) (sqrt (/ 1 (pow re 9))))) (+ (* 1/32 (* (/ (* (pow im 5) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re))))))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (/ (pow im 2) re)))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (/ (+ (* -1/4 (/ (pow im 4) (pow re 2))) (pow im 2)) re)))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (/ (+ (* -1/4 (/ (pow im 4) (pow re 2))) (+ (* 1/8 (/ (pow im 6) (pow re 4))) (pow im 2))) re)))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (/ (+ (* -1 (/ (+ (* 1/64 (pow im 8)) (* 1/16 (pow im 8))) (pow re 6))) (+ (* -1/4 (/ (pow im 4) (pow re 2))) (+ (* 1/8 (/ (pow im 6) (pow re 4))) (pow im 2)))) re)))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (* 1/2 (/ (pow im 2) re))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (/ (+ (* -1/8 (/ (pow im 4) (pow re 2))) (* 1/2 (pow im 2))) re)))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (/ (+ (* -1/8 (/ (pow im 4) (pow re 2))) (+ (* 1/16 (/ (pow im 6) (pow re 4))) (* 1/2 (pow im 2)))) re)))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (/ (+ (* -1/2 (/ (+ (* 1/64 (pow im 8)) (* 1/16 (pow im 8))) (pow re 6))) (+ (* -1/8 (/ (pow im 4) (pow re 2))) (+ (* 1/16 (/ (pow im 6) (pow re 4))) (* 1/2 (pow im 2))))) re)))
#s(approx (sqrt (+ (* re re) (* im im))) #s(hole binary64 (* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2)))))))
#s(approx (sqrt (+ (* re re) (* im im))) #s(hole binary64 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2))))))))
#s(approx (sqrt (+ (* re re) (* im im))) #s(hole binary64 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2)))))))))
#s(approx (+ (* re re) (* im im)) #s(hole binary64 (* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* -1/2 (* (sqrt re) (* (sqrt -1) (pow (sqrt 2) 2))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* -1 (* re (+ (* -1/8 (* (* (pow im 2) (sqrt -1)) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2)))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* -1 (* re (+ (* -1 (/ (+ (* -1/32 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (* 1/8 (* (* (pow im 2) (sqrt -1)) (sqrt re)))) (pow re 3))) (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2)))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* -1 (* re (+ (* -1 (/ (+ (* -1/32 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (+ (* 1/64 (* (/ (* (pow im 4) (sqrt -1)) (pow (sqrt 2) 2)) (sqrt (/ 1 (pow re 3))))) (* 1/8 (* (* (pow im 2) (sqrt -1)) (sqrt re))))) (pow re 3))) (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2)))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* -1 (* (sqrt re) (* (sqrt -1) (pow (sqrt 2) 2))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* -1 (* re (+ (* -1/4 (* (* (pow im 2) (sqrt -1)) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* -1 (* re (+ (* -1 (/ (+ (* -1/16 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (* 1/4 (* (* (pow im 2) (sqrt -1)) (sqrt re)))) (pow re 3))) (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* -1 (* re (+ (* -1 (/ (+ (* -1/16 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (+ (* 1/32 (* (/ (* (pow im 4) (sqrt -1)) (pow (sqrt 2) 2)) (sqrt (/ 1 (pow re 3))))) (* 1/4 (* (* (pow im 2) (sqrt -1)) (sqrt re))))) (pow re 3))) (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2))))))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* -4 re)))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* -1 (* re (+ 4 (/ (pow im 2) (pow re 2)))))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* -1 (* re (+ 4 (+ (* -1/4 (/ (pow im 4) (pow re 4))) (/ (pow im 2) (pow re 2))))))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* -1 (* re (+ 4 (+ (* -1/4 (/ (pow im 4) (pow re 4))) (+ (* 1/8 (/ (pow im 6) (pow re 6))) (/ (pow im 2) (pow re 2)))))))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (* -2 re)))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (* -1 (* re (+ 2 (* 1/2 (/ (pow im 2) (pow re 2))))))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (* -1 (* re (+ 2 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2)))))))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (* -1 (* re (+ 2 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2))))))))))
#s(approx (sqrt (+ (* re re) (* im im))) #s(hole binary64 (* -1 re)))
#s(approx (sqrt (+ (* re re) (* im im))) #s(hole binary64 (* -1 (* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2))))))))
#s(approx (sqrt (+ (* re re) (* im im))) #s(hole binary64 (* -1 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2)))))))))
#s(approx (sqrt (+ (* re re) (* im im))) #s(hole binary64 (* -1 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2))))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* im (+ (* -1/32 (* (/ (* (pow im 2) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* im (+ (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2)))) (* (pow im 2) (+ (* -1/32 (* (sqrt (/ 1 (pow re 5))) (/ (sqrt 2) (sqrt 1/2)))) (* 1/4 (* (/ (* (pow im 2) (* (sqrt 2) (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2))))))) (sqrt 1/2)) (sqrt re)))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* im (+ (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2)))) (* (pow im 2) (+ (* -1/32 (* (sqrt (/ 1 (pow re 5))) (/ (sqrt 2) (sqrt 1/2)))) (* (pow im 2) (+ (* -1/4 (* (/ (* (pow im 2) (* (sqrt 2) (+ (* -1/16 (/ (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2))))) (* (pow re 2) (pow (sqrt 1/2) 2)))) (* 5/128 (/ 1 (pow re 7)))))) (sqrt 1/2)) (sqrt re))) (* 1/4 (* (sqrt re) (/ (* (sqrt 2) (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2)))))) (sqrt 1/2))))))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* im (+ (* -1/16 (* (/ (* (pow im 2) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2)))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* im (+ (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2))) (* (pow im 2) (+ (* -1/16 (* (sqrt (/ 1 (pow re 5))) (/ (sqrt 2) (sqrt 1/2)))) (* 1/2 (* (/ (* (pow im 2) (* (sqrt 2) (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2))))))) (sqrt 1/2)) (sqrt re)))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* im (+ (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2))) (* (pow im 2) (+ (* -1/16 (* (sqrt (/ 1 (pow re 5))) (/ (sqrt 2) (sqrt 1/2)))) (* (pow im 2) (+ (* -1/2 (* (/ (* (pow im 2) (* (sqrt 2) (+ (* -1/16 (/ (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2))))) (* (pow re 2) (pow (sqrt 1/2) 2)))) (* 5/128 (/ 1 (pow re 7)))))) (sqrt 1/2)) (sqrt re))) (* 1/2 (* (sqrt re) (/ (* (sqrt 2) (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2)))))) (sqrt 1/2))))))))))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* (pow im 2) (+ (* -1/4 (/ (pow im 2) (pow re 3))) (/ 1 re)))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* (pow im 2) (+ (* (pow im 2) (- (* 1/8 (/ (pow im 2) (pow re 5))) (* 1/4 (/ 1 (pow re 3))))) (/ 1 re)))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* (pow im 2) (+ (* (pow im 2) (- (* (pow im 2) (+ (* -5/64 (/ (pow im 2) (pow re 7))) (* 1/8 (/ 1 (pow re 5))))) (* 1/4 (/ 1 (pow re 3))))) (/ 1 re)))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (* (pow im 2) (+ (* -1/8 (/ (pow im 2) (pow re 3))) (* 1/2 (/ 1 re))))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (* (pow im 2) (+ (* (pow im 2) (- (* 1/16 (/ (pow im 2) (pow re 5))) (* 1/8 (/ 1 (pow re 3))))) (* 1/2 (/ 1 re))))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (* (pow im 2) (+ (* (pow im 2) (- (* (pow im 2) (+ (* -5/128 (/ (pow im 2) (pow re 7))) (* 1/16 (/ 1 (pow re 5))))) (* 1/8 (/ 1 (pow re 3))))) (* 1/2 (/ 1 re))))))
#s(approx (sqrt (+ (* re re) (* im im))) #s(hole binary64 (+ re (* 1/2 (/ (pow im 2) re)))))
#s(approx (sqrt (+ (* re re) (* im im))) #s(hole binary64 (+ re (* (pow im 2) (+ (* -1/8 (/ (pow im 2) (pow re 3))) (* 1/2 (/ 1 re)))))))
#s(approx (sqrt (+ (* re re) (* im im))) #s(hole binary64 (+ re (* (pow im 2) (+ (* (pow im 2) (- (* 1/16 (/ (pow im 2) (pow re 5))) (* 1/8 (/ 1 (pow re 3))))) (* 1/2 (/ 1 re)))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2)))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (+ (* 1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (+ (* -1/16 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2)))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2)))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2))))))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* im (+ 2 (* -2 (/ re im))))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* im (+ 2 (+ (* -2 (/ re im)) (/ (pow re 2) (pow im 2)))))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* im (+ 2 (+ (* -2 (/ re im)) (+ (* -1/4 (/ (pow re 4) (pow im 4))) (/ (pow re 2) (pow im 2))))))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (* im (+ 1 (* -1 (/ re im))))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (* im (- (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))) (/ re im)))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (* im (- (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2))))) (/ re im)))))
#s(approx (sqrt (+ (* re re) (* im im))) #s(hole binary64 (* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))))))
#s(approx (sqrt (+ (* re re) (* im im))) #s(hole binary64 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2))))))))
#s(approx (sqrt (+ (* re re) (* im im))) #s(hole binary64 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (+ (* 1/16 (/ (pow re 6) (pow im 6))) (* 1/2 (/ (pow re 2) (pow im 2)))))))))
#s(approx (+ (* re re) (* im im)) #s(hole binary64 (* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* -1/2 (* (sqrt im) (* (sqrt -1) (sqrt 2))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* -1 (* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* -1 (* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* -1 (* im (+ (* -1 (/ (+ (* 1/16 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* 1/8 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2)))))) (pow im 3))) (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* -1 (* (sqrt im) (* (sqrt -1) (sqrt 2))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* -1 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* -1 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (+ (* -1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* -1 (* im (+ (* -1 (/ (+ (* 1/8 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* 1/4 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2)))))) (pow im 3))) (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* -2 im)))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* -1 (* im (+ 2 (* 2 (/ re im)))))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* -1 (* im (+ 2 (* -1 (/ (+ (* -2 re) (* -1 (/ (pow re 2) im))) im)))))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* -1 (* im (+ 2 (* -1 (/ (+ (* -2 re) (* -1 (/ (+ (* -1/4 (/ (pow re 4) (pow im 2))) (pow re 2)) im))) im)))))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (* -1 im)))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (* -1 (* im (+ 1 (/ re im))))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (* -1 (* im (+ 1 (* -1 (/ (- (* -1/2 (/ (pow re 2) im)) re) im)))))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (* -1 (* im (+ 1 (* -1 (/ (- (* -1 (/ (+ (* -1/8 (/ (pow re 4) (pow im 2))) (* 1/2 (pow re 2))) im)) re) im)))))))
#s(approx (sqrt (+ (* re re) (* im im))) #s(hole binary64 (* -1 (* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2))))))))
#s(approx (sqrt (+ (* re re) (* im im))) #s(hole binary64 (* -1 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2)))))))))
#s(approx (sqrt (+ (* re re) (* im im))) #s(hole binary64 (* -1 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (+ (* 1/16 (/ (pow re 6) (pow im 6))) (* 1/2 (/ (pow re 2) (pow im 2))))))))))
Calls

6 calls:

TimeVariablePointExpression
13.0ms
im
@0
((* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (* 2 (- (sqrt (+ (* re re) (* im im))) re)) 2 (- (sqrt (+ (* re re) (* im im))) re) (sqrt (+ (* re re) (* im im))) (+ (* re re) (* im im)) (* re re) re (* im im) im)
4.0ms
re
@inf
((* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (* 2 (- (sqrt (+ (* re re) (* im im))) re)) 2 (- (sqrt (+ (* re re) (* im im))) re) (sqrt (+ (* re re) (* im im))) (+ (* re re) (* im im)) (* re re) re (* im im) im)
3.0ms
re
@-inf
((* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (* 2 (- (sqrt (+ (* re re) (* im im))) re)) 2 (- (sqrt (+ (* re re) (* im im))) re) (sqrt (+ (* re re) (* im im))) (+ (* re re) (* im im)) (* re re) re (* im im) im)
3.0ms
im
@-inf
((* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (* 2 (- (sqrt (+ (* re re) (* im im))) re)) 2 (- (sqrt (+ (* re re) (* im im))) re) (sqrt (+ (* re re) (* im im))) (+ (* re re) (* im im)) (* re re) re (* im im) im)
3.0ms
im
@inf
((* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (* 2 (- (sqrt (+ (* re re) (* im im))) re)) 2 (- (sqrt (+ (* re re) (* im im))) re) (sqrt (+ (* re re) (* im im))) (+ (* re re) (* im im)) (* re re) re (* im im) im)

rewrite358.0ms (11.2%)

Memory
-12.8MiB live, 307.5MiB allocated; 36ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
06804645
06924139
145664055
080913331
1254683331
Stop Event
iter-limit
node-limit
iter-limit
Counts
125 → 184
Calls
Call 1
Inputs
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
#s(literal 1/2 binary64)
(sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))
(*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
#s(literal 2 binary64)
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
(+.f64 (*.f64 re re) (*.f64 im im))
(*.f64 re re)
re
(*.f64 im im)
im
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* 1/2 (* (sqrt im) (sqrt 2)))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (+ (* -1/4 (* (sqrt (/ 1 im)) (* re (sqrt 2)))) (* 1/2 (* (sqrt im) (sqrt 2))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (+ (* 1/2 (* (sqrt im) (sqrt 2))) (* re (+ (* -1/4 (* (sqrt (/ 1 im)) (sqrt 2))) (* 1/16 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (+ (* 1/2 (* (sqrt im) (sqrt 2))) (* re (+ (* -1/4 (* (sqrt (/ 1 im)) (sqrt 2))) (* re (+ (* 1/32 (* (sqrt (/ 1 (pow im 5))) (* re (sqrt 2)))) (* 1/16 (* (sqrt (/ 1 (pow im 3))) (sqrt 2))))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* (sqrt im) (sqrt 2))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (+ (* -1/2 (* (sqrt (/ 1 im)) (* re (sqrt 2)))) (* (sqrt im) (sqrt 2)))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (+ (* re (+ (* -1/2 (* (sqrt (/ 1 im)) (sqrt 2))) (* 1/8 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))))) (* (sqrt im) (sqrt 2)))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (+ (* re (+ (* -1/2 (* (sqrt (/ 1 im)) (sqrt 2))) (* re (+ (* 1/16 (* (sqrt (/ 1 (pow im 5))) (* re (sqrt 2)))) (* 1/8 (* (sqrt (/ 1 (pow im 3))) (sqrt 2))))))) (* (sqrt im) (sqrt 2)))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* 2 im)))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (+ (* -2 re) (* 2 im))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (+ (* 2 im) (* re (- (/ re im) 2)))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (+ (* 2 im) (* re (- (* re (+ (* -1/4 (/ (pow re 2) (pow im 3))) (/ 1 im))) 2)))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 im))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (+ im (* -1 re))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (+ im (* re (- (* 1/2 (/ re im)) 1)))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (+ im (* re (- (* re (+ (* -1/8 (/ (pow re 2) (pow im 3))) (* 1/2 (/ 1 im)))) 1)))))
#s(approx (sqrt (+ (* re re) (* im im))) #s(hole binary64 (+ im (* 1/2 (/ (pow re 2) im)))))
#s(approx (sqrt (+ (* re re) (* im im))) #s(hole binary64 (+ im (* (pow re 2) (+ (* -1/8 (/ (pow re 2) (pow im 3))) (* 1/2 (/ 1 im)))))))
#s(approx (sqrt (+ (* re re) (* im im))) #s(hole binary64 (+ im (* (pow re 2) (+ (* (pow re 2) (- (* 1/16 (/ (pow re 2) (pow im 5))) (* 1/8 (/ 1 (pow im 3))))) (* 1/2 (/ 1 im)))))))
#s(approx (+ (* re re) (* im im)) #s(hole binary64 (pow im 2)))
#s(approx (+ (* re re) (* im im)) #s(hole binary64 (+ (pow im 2) (pow re 2))))
#s(approx (* re re) #s(hole binary64 (pow re 2)))
#s(approx re #s(hole binary64 re))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* 1/2 (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (+ (* -1/32 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re)))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (+ (* -1/32 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* 1/64 (* (/ (* (pow im 5) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* 1/2 (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (+ (* -1/32 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* -1/1024 (* (/ (* (pow im 5) (sqrt 2)) (pow (sqrt 1/2) 3)) (sqrt (/ 1 (pow re 9))))) (+ (* 1/64 (* (/ (* (pow im 5) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* 1/2 (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re)))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re)))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (+ (* -1/16 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (+ (* -1/16 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* 1/32 (* (/ (* (pow im 5) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re)))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (+ (* -1/16 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* -1/512 (* (/ (* (pow im 5) (sqrt 2)) (pow (sqrt 1/2) 3)) (sqrt (/ 1 (pow re 9))))) (+ (* 1/32 (* (/ (* (pow im 5) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re))))))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (/ (pow im 2) re)))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (/ (+ (* -1/4 (/ (pow im 4) (pow re 2))) (pow im 2)) re)))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (/ (+ (* -1/4 (/ (pow im 4) (pow re 2))) (+ (* 1/8 (/ (pow im 6) (pow re 4))) (pow im 2))) re)))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (/ (+ (* -1 (/ (+ (* 1/64 (pow im 8)) (* 1/16 (pow im 8))) (pow re 6))) (+ (* -1/4 (/ (pow im 4) (pow re 2))) (+ (* 1/8 (/ (pow im 6) (pow re 4))) (pow im 2)))) re)))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (* 1/2 (/ (pow im 2) re))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (/ (+ (* -1/8 (/ (pow im 4) (pow re 2))) (* 1/2 (pow im 2))) re)))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (/ (+ (* -1/8 (/ (pow im 4) (pow re 2))) (+ (* 1/16 (/ (pow im 6) (pow re 4))) (* 1/2 (pow im 2)))) re)))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (/ (+ (* -1/2 (/ (+ (* 1/64 (pow im 8)) (* 1/16 (pow im 8))) (pow re 6))) (+ (* -1/8 (/ (pow im 4) (pow re 2))) (+ (* 1/16 (/ (pow im 6) (pow re 4))) (* 1/2 (pow im 2))))) re)))
#s(approx (sqrt (+ (* re re) (* im im))) #s(hole binary64 (* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2)))))))
#s(approx (sqrt (+ (* re re) (* im im))) #s(hole binary64 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2))))))))
#s(approx (sqrt (+ (* re re) (* im im))) #s(hole binary64 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2)))))))))
#s(approx (+ (* re re) (* im im)) #s(hole binary64 (* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* -1/2 (* (sqrt re) (* (sqrt -1) (pow (sqrt 2) 2))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* -1 (* re (+ (* -1/8 (* (* (pow im 2) (sqrt -1)) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2)))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* -1 (* re (+ (* -1 (/ (+ (* -1/32 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (* 1/8 (* (* (pow im 2) (sqrt -1)) (sqrt re)))) (pow re 3))) (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2)))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* -1 (* re (+ (* -1 (/ (+ (* -1/32 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (+ (* 1/64 (* (/ (* (pow im 4) (sqrt -1)) (pow (sqrt 2) 2)) (sqrt (/ 1 (pow re 3))))) (* 1/8 (* (* (pow im 2) (sqrt -1)) (sqrt re))))) (pow re 3))) (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2)))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* -1 (* (sqrt re) (* (sqrt -1) (pow (sqrt 2) 2))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* -1 (* re (+ (* -1/4 (* (* (pow im 2) (sqrt -1)) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* -1 (* re (+ (* -1 (/ (+ (* -1/16 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (* 1/4 (* (* (pow im 2) (sqrt -1)) (sqrt re)))) (pow re 3))) (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* -1 (* re (+ (* -1 (/ (+ (* -1/16 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (+ (* 1/32 (* (/ (* (pow im 4) (sqrt -1)) (pow (sqrt 2) 2)) (sqrt (/ 1 (pow re 3))))) (* 1/4 (* (* (pow im 2) (sqrt -1)) (sqrt re))))) (pow re 3))) (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2))))))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* -4 re)))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* -1 (* re (+ 4 (/ (pow im 2) (pow re 2)))))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* -1 (* re (+ 4 (+ (* -1/4 (/ (pow im 4) (pow re 4))) (/ (pow im 2) (pow re 2))))))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* -1 (* re (+ 4 (+ (* -1/4 (/ (pow im 4) (pow re 4))) (+ (* 1/8 (/ (pow im 6) (pow re 6))) (/ (pow im 2) (pow re 2)))))))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (* -2 re)))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (* -1 (* re (+ 2 (* 1/2 (/ (pow im 2) (pow re 2))))))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (* -1 (* re (+ 2 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2)))))))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (* -1 (* re (+ 2 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2))))))))))
#s(approx (sqrt (+ (* re re) (* im im))) #s(hole binary64 (* -1 re)))
#s(approx (sqrt (+ (* re re) (* im im))) #s(hole binary64 (* -1 (* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2))))))))
#s(approx (sqrt (+ (* re re) (* im im))) #s(hole binary64 (* -1 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2)))))))))
#s(approx (sqrt (+ (* re re) (* im im))) #s(hole binary64 (* -1 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2))))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* im (+ (* -1/32 (* (/ (* (pow im 2) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* im (+ (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2)))) (* (pow im 2) (+ (* -1/32 (* (sqrt (/ 1 (pow re 5))) (/ (sqrt 2) (sqrt 1/2)))) (* 1/4 (* (/ (* (pow im 2) (* (sqrt 2) (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2))))))) (sqrt 1/2)) (sqrt re)))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* im (+ (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2)))) (* (pow im 2) (+ (* -1/32 (* (sqrt (/ 1 (pow re 5))) (/ (sqrt 2) (sqrt 1/2)))) (* (pow im 2) (+ (* -1/4 (* (/ (* (pow im 2) (* (sqrt 2) (+ (* -1/16 (/ (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2))))) (* (pow re 2) (pow (sqrt 1/2) 2)))) (* 5/128 (/ 1 (pow re 7)))))) (sqrt 1/2)) (sqrt re))) (* 1/4 (* (sqrt re) (/ (* (sqrt 2) (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2)))))) (sqrt 1/2))))))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* im (+ (* -1/16 (* (/ (* (pow im 2) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2)))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* im (+ (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2))) (* (pow im 2) (+ (* -1/16 (* (sqrt (/ 1 (pow re 5))) (/ (sqrt 2) (sqrt 1/2)))) (* 1/2 (* (/ (* (pow im 2) (* (sqrt 2) (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2))))))) (sqrt 1/2)) (sqrt re)))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* im (+ (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2))) (* (pow im 2) (+ (* -1/16 (* (sqrt (/ 1 (pow re 5))) (/ (sqrt 2) (sqrt 1/2)))) (* (pow im 2) (+ (* -1/2 (* (/ (* (pow im 2) (* (sqrt 2) (+ (* -1/16 (/ (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2))))) (* (pow re 2) (pow (sqrt 1/2) 2)))) (* 5/128 (/ 1 (pow re 7)))))) (sqrt 1/2)) (sqrt re))) (* 1/2 (* (sqrt re) (/ (* (sqrt 2) (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2)))))) (sqrt 1/2))))))))))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* (pow im 2) (+ (* -1/4 (/ (pow im 2) (pow re 3))) (/ 1 re)))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* (pow im 2) (+ (* (pow im 2) (- (* 1/8 (/ (pow im 2) (pow re 5))) (* 1/4 (/ 1 (pow re 3))))) (/ 1 re)))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* (pow im 2) (+ (* (pow im 2) (- (* (pow im 2) (+ (* -5/64 (/ (pow im 2) (pow re 7))) (* 1/8 (/ 1 (pow re 5))))) (* 1/4 (/ 1 (pow re 3))))) (/ 1 re)))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (* (pow im 2) (+ (* -1/8 (/ (pow im 2) (pow re 3))) (* 1/2 (/ 1 re))))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (* (pow im 2) (+ (* (pow im 2) (- (* 1/16 (/ (pow im 2) (pow re 5))) (* 1/8 (/ 1 (pow re 3))))) (* 1/2 (/ 1 re))))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (* (pow im 2) (+ (* (pow im 2) (- (* (pow im 2) (+ (* -5/128 (/ (pow im 2) (pow re 7))) (* 1/16 (/ 1 (pow re 5))))) (* 1/8 (/ 1 (pow re 3))))) (* 1/2 (/ 1 re))))))
#s(approx (sqrt (+ (* re re) (* im im))) #s(hole binary64 (+ re (* 1/2 (/ (pow im 2) re)))))
#s(approx (sqrt (+ (* re re) (* im im))) #s(hole binary64 (+ re (* (pow im 2) (+ (* -1/8 (/ (pow im 2) (pow re 3))) (* 1/2 (/ 1 re)))))))
#s(approx (sqrt (+ (* re re) (* im im))) #s(hole binary64 (+ re (* (pow im 2) (+ (* (pow im 2) (- (* 1/16 (/ (pow im 2) (pow re 5))) (* 1/8 (/ 1 (pow re 3))))) (* 1/2 (/ 1 re)))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2)))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (+ (* 1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (+ (* -1/16 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2)))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2)))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2))))))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* im (+ 2 (* -2 (/ re im))))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* im (+ 2 (+ (* -2 (/ re im)) (/ (pow re 2) (pow im 2)))))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* im (+ 2 (+ (* -2 (/ re im)) (+ (* -1/4 (/ (pow re 4) (pow im 4))) (/ (pow re 2) (pow im 2))))))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (* im (+ 1 (* -1 (/ re im))))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (* im (- (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))) (/ re im)))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (* im (- (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2))))) (/ re im)))))
#s(approx (sqrt (+ (* re re) (* im im))) #s(hole binary64 (* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))))))
#s(approx (sqrt (+ (* re re) (* im im))) #s(hole binary64 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2))))))))
#s(approx (sqrt (+ (* re re) (* im im))) #s(hole binary64 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (+ (* 1/16 (/ (pow re 6) (pow im 6))) (* 1/2 (/ (pow re 2) (pow im 2)))))))))
#s(approx (+ (* re re) (* im im)) #s(hole binary64 (* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* -1/2 (* (sqrt im) (* (sqrt -1) (sqrt 2))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* -1 (* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* -1 (* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* -1 (* im (+ (* -1 (/ (+ (* 1/16 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* 1/8 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2)))))) (pow im 3))) (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* -1 (* (sqrt im) (* (sqrt -1) (sqrt 2))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* -1 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* -1 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (+ (* -1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* -1 (* im (+ (* -1 (/ (+ (* 1/8 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* 1/4 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2)))))) (pow im 3))) (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* -2 im)))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* -1 (* im (+ 2 (* 2 (/ re im)))))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* -1 (* im (+ 2 (* -1 (/ (+ (* -2 re) (* -1 (/ (pow re 2) im))) im)))))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* -1 (* im (+ 2 (* -1 (/ (+ (* -2 re) (* -1 (/ (+ (* -1/4 (/ (pow re 4) (pow im 2))) (pow re 2)) im))) im)))))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (* -1 im)))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (* -1 (* im (+ 1 (/ re im))))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (* -1 (* im (+ 1 (* -1 (/ (- (* -1/2 (/ (pow re 2) im)) re) im)))))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (* -1 (* im (+ 1 (* -1 (/ (- (* -1 (/ (+ (* -1/8 (/ (pow re 4) (pow im 2))) (* 1/2 (pow re 2))) im)) re) im)))))))
#s(approx (sqrt (+ (* re re) (* im im))) #s(hole binary64 (* -1 (* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2))))))))
#s(approx (sqrt (+ (* re re) (* im im))) #s(hole binary64 (* -1 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2)))))))))
#s(approx (sqrt (+ (* re re) (* im im))) #s(hole binary64 (* -1 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (+ (* 1/16 (/ (pow re 6) (pow im 6))) (* 1/2 (/ (pow re 2) (pow im 2))))))))))
Outputs
(*.f64 (sqrt.f64 (*.f64 (-.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re))) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 (-.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re))) re) #s(literal 2 binary64))))
#s(literal 1/2 binary64)
(pow.f64 (*.f64 (-.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re))) re) #s(literal 2 binary64)) #s(literal 1/2 binary64))
(sqrt.f64 (*.f64 (-.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re))) re) #s(literal 2 binary64)))
(fabs.f64 (sqrt.f64 (*.f64 (-.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re))) re) #s(literal 2 binary64))))
(*.f64 (-.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re))) re) #s(literal 2 binary64))
(*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re))) re))
(+.f64 (-.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re))) re) (-.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re))) re))
#s(literal 2 binary64)
(/.f64 (-.f64 (*.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re))) (sqrt.f64 (fma.f64 im im (*.f64 re re)))) (*.f64 re re)) (+.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re))) re))
(/.f64 (-.f64 (pow.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re))) #s(literal 3 binary64)) (*.f64 (*.f64 re re) re)) (fma.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re))) (sqrt.f64 (fma.f64 im im (*.f64 re re))) (fma.f64 re re (*.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re))) re))))
(neg.f64 (-.f64 re (sqrt.f64 (fma.f64 im im (*.f64 re re)))))
(-.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re))) re)
(+.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re))) (neg.f64 re))
(pow.f64 (fma.f64 im im (*.f64 re re)) #s(literal 1/2 binary64))
(sqrt.f64 (fma.f64 im im (*.f64 re re)))
(fabs.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re))))
(hypot.f64 (fabs.f64 im) (fabs.f64 re))
(hypot.f64 (fabs.f64 im) (neg.f64 re))
(hypot.f64 (fabs.f64 im) re)
(hypot.f64 (fabs.f64 re) (fabs.f64 im))
(hypot.f64 (fabs.f64 re) (neg.f64 im))
(hypot.f64 (fabs.f64 re) im)
(hypot.f64 (neg.f64 im) (fabs.f64 re))
(hypot.f64 (neg.f64 im) (neg.f64 re))
(hypot.f64 (neg.f64 im) re)
(hypot.f64 (neg.f64 re) (fabs.f64 im))
(hypot.f64 (neg.f64 re) (neg.f64 im))
(hypot.f64 (neg.f64 re) im)
(hypot.f64 im (fabs.f64 re))
(hypot.f64 im (neg.f64 re))
(hypot.f64 im re)
(hypot.f64 re (fabs.f64 im))
(hypot.f64 re (neg.f64 im))
(hypot.f64 re im)
(/.f64 (-.f64 (*.f64 (*.f64 im im) (*.f64 im im)) (*.f64 (*.f64 re re) (*.f64 re re))) (-.f64 (*.f64 im im) (*.f64 re re)))
(/.f64 (-.f64 (*.f64 (*.f64 re re) (*.f64 re re)) (*.f64 (*.f64 im im) (*.f64 im im))) (-.f64 (*.f64 re re) (*.f64 im im)))
(/.f64 (fma.f64 (*.f64 (*.f64 im im) (*.f64 im im)) (*.f64 im im) (*.f64 (*.f64 (*.f64 re re) re) (*.f64 (*.f64 re re) re))) (fma.f64 (*.f64 im im) (*.f64 im im) (-.f64 (*.f64 (*.f64 re re) (*.f64 re re)) (*.f64 (*.f64 im im) (*.f64 re re)))))
(/.f64 (fma.f64 (*.f64 (*.f64 re re) re) (*.f64 (*.f64 re re) re) (*.f64 (*.f64 (*.f64 im im) (*.f64 im im)) (*.f64 im im))) (fma.f64 (*.f64 re re) (*.f64 re re) (-.f64 (*.f64 (*.f64 im im) (*.f64 im im)) (*.f64 (*.f64 re re) (*.f64 im im)))))
(fma.f64 (fabs.f64 im) (fabs.f64 im) (*.f64 re re))
(fma.f64 (fabs.f64 re) (fabs.f64 re) (*.f64 im im))
(fma.f64 (neg.f64 im) (neg.f64 im) (*.f64 re re))
(fma.f64 (neg.f64 re) (neg.f64 re) (*.f64 im im))
(fma.f64 im im (*.f64 re re))
(fma.f64 re re (*.f64 im im))
(-.f64 (*.f64 im im) (neg.f64 (*.f64 re re)))
(-.f64 (*.f64 re re) (*.f64 (neg.f64 im) im))
(-.f64 (*.f64 re re) (neg.f64 (*.f64 im im)))
(+.f64 (*.f64 im im) (*.f64 re re))
(+.f64 (*.f64 re re) (*.f64 im im))
(*.f64 (fabs.f64 re) (fabs.f64 re))
(*.f64 (neg.f64 re) (neg.f64 re))
(*.f64 re re)
(pow.f64 (neg.f64 (fabs.f64 re)) #s(literal 2 binary64))
(pow.f64 (neg.f64 (neg.f64 re)) #s(literal 2 binary64))
(pow.f64 (fabs.f64 re) #s(literal 2 binary64))
(pow.f64 (neg.f64 re) #s(literal 2 binary64))
(pow.f64 re #s(literal 2 binary64))
(fabs.f64 (*.f64 re re))
re
(*.f64 (fabs.f64 im) (fabs.f64 im))
(*.f64 (neg.f64 im) (neg.f64 im))
(*.f64 im im)
(pow.f64 (neg.f64 (fabs.f64 im)) #s(literal 2 binary64))
(pow.f64 (neg.f64 (neg.f64 im)) #s(literal 2 binary64))
(pow.f64 (fabs.f64 im) #s(literal 2 binary64))
(pow.f64 (neg.f64 im) #s(literal 2 binary64))
(pow.f64 im #s(literal 2 binary64))
(fabs.f64 (*.f64 im im))
im
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 (sqrt.f64 (+.f64 im im)) #s(literal 1/2 binary64)))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (fma.f64 (*.f64 #s(literal -1/4 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) im))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re) (*.f64 (sqrt.f64 (+.f64 im im)) #s(literal 1/2 binary64))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (fma.f64 (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (*.f64 (*.f64 im im) im))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) #s(literal 1/16 binary64) (*.f64 (sqrt.f64 (*.f64 (/.f64 #s(literal 1 binary64) im) #s(literal 2 binary64))) #s(literal -1/4 binary64))) re (*.f64 (sqrt.f64 (+.f64 im im)) #s(literal 1/2 binary64))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (fma.f64 re (fma.f64 (fma.f64 (*.f64 #s(literal 1/32 binary64) (sqrt.f64 (pow.f64 im #s(literal -5 binary64)))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re) (*.f64 (sqrt.f64 (*.f64 (/.f64 #s(literal 1 binary64) (*.f64 (*.f64 im im) im)) #s(literal 2 binary64))) #s(literal 1/16 binary64))) re (*.f64 (sqrt.f64 (*.f64 (/.f64 #s(literal 1 binary64) im) #s(literal 2 binary64))) #s(literal -1/4 binary64))) (*.f64 (sqrt.f64 (+.f64 im im)) #s(literal 1/2 binary64))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (sqrt.f64 (+.f64 im im)))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (fma.f64 (*.f64 #s(literal -1/2 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) im))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re) (sqrt.f64 (+.f64 im im))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (fma.f64 (fma.f64 #s(literal -1/2 binary64) (sqrt.f64 (*.f64 (/.f64 #s(literal 1 binary64) im) #s(literal 2 binary64))) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (*.f64 (*.f64 im im) im))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) #s(literal 1/8 binary64))) re (sqrt.f64 (+.f64 im im))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (fma.f64 re (fma.f64 (fma.f64 (*.f64 #s(literal 1/16 binary64) (sqrt.f64 (pow.f64 im #s(literal -5 binary64)))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re) (*.f64 #s(literal 1/8 binary64) (sqrt.f64 (*.f64 (/.f64 #s(literal 1 binary64) (*.f64 (*.f64 im im) im)) #s(literal 2 binary64))))) re (*.f64 #s(literal -1/2 binary64) (sqrt.f64 (*.f64 (/.f64 #s(literal 1 binary64) im) #s(literal 2 binary64))))) (sqrt.f64 (+.f64 im im))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (+.f64 im im))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (fma.f64 #s(literal -2 binary64) re (+.f64 im im)))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (+.f64 im im)))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (fma.f64 (fma.f64 (fma.f64 (/.f64 (*.f64 re re) (*.f64 (*.f64 im im) im)) #s(literal -1/4 binary64) (/.f64 #s(literal 1 binary64) im)) re #s(literal -2 binary64)) re (+.f64 im im)))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) im)
#s(approx (- (sqrt (+ (* re re) (* im im))) re) (+.f64 (neg.f64 re) im))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/8 binary64) (/.f64 (*.f64 re re) (*.f64 (*.f64 im im) im)) (/.f64 #s(literal 1/2 binary64) im)) re #s(literal -1 binary64)) re im))
#s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (/.f64 (*.f64 re re) im) #s(literal 1/2 binary64) im))
#s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (fma.f64 #s(literal -1/8 binary64) (/.f64 (*.f64 re re) (*.f64 (*.f64 im im) im)) (/.f64 #s(literal 1/2 binary64) im)) (*.f64 re re) im))
#s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (fma.f64 (-.f64 (*.f64 (*.f64 (*.f64 re re) (pow.f64 im #s(literal -5 binary64))) #s(literal 1/16 binary64)) (/.f64 #s(literal 1/8 binary64) (*.f64 (*.f64 im im) im))) (*.f64 re re) (/.f64 #s(literal 1/2 binary64) im)) (*.f64 re re) im))
#s(approx (+ (* re re) (* im im)) (*.f64 im im))
#s(approx (+ (* re re) (* im im)) (fma.f64 im im (*.f64 re re)))
#s(approx (* re re) (*.f64 re re))
#s(approx re re)
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1 binary64) im)) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (fma.f64 (*.f64 #s(literal -1/32 binary64) (*.f64 (*.f64 (*.f64 im im) im) #s(literal 2 binary64))) (sqrt.f64 (pow.f64 re #s(literal -5 binary64))) (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1 binary64) im)) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (fma.f64 (*.f64 #s(literal -1/32 binary64) (*.f64 (*.f64 (*.f64 im im) im) #s(literal 2 binary64))) (sqrt.f64 (pow.f64 re #s(literal -5 binary64))) (fma.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1 binary64) im)) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 (*.f64 (*.f64 (pow.f64 im #s(literal 5 binary64)) #s(literal 2 binary64)) (sqrt.f64 (pow.f64 re #s(literal -9 binary64)))) #s(literal 1/64 binary64)))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (fma.f64 (*.f64 #s(literal -1/32 binary64) (*.f64 (*.f64 (*.f64 im im) im) #s(literal 2 binary64))) (sqrt.f64 (pow.f64 re #s(literal -5 binary64))) (fma.f64 (*.f64 (*.f64 (pow.f64 im #s(literal 5 binary64)) (/.f64 (sqrt.f64 #s(literal 2 binary64)) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) #s(literal 1/2 binary64)))) (sqrt.f64 (pow.f64 re #s(literal -9 binary64)))) #s(literal -1/1024 binary64) (fma.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1 binary64) im)) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 (*.f64 (*.f64 (pow.f64 im #s(literal 5 binary64)) #s(literal 2 binary64)) (sqrt.f64 (pow.f64 re #s(literal -9 binary64)))) #s(literal 1/64 binary64))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (*.f64 #s(literal 1 binary64) im) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (fma.f64 (*.f64 #s(literal -1/16 binary64) (*.f64 (*.f64 (*.f64 im im) im) #s(literal 2 binary64))) (sqrt.f64 (pow.f64 re #s(literal -5 binary64))) (*.f64 (*.f64 #s(literal 1 binary64) im) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (fma.f64 (*.f64 #s(literal -1/16 binary64) (*.f64 (*.f64 (*.f64 im im) im) #s(literal 2 binary64))) (sqrt.f64 (pow.f64 re #s(literal -5 binary64))) (fma.f64 (*.f64 #s(literal 1 binary64) im) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 (*.f64 (*.f64 (pow.f64 im #s(literal 5 binary64)) #s(literal 2 binary64)) (sqrt.f64 (pow.f64 re #s(literal -9 binary64)))) #s(literal 1/32 binary64)))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (fma.f64 (*.f64 #s(literal -1/16 binary64) (*.f64 (*.f64 (*.f64 im im) im) #s(literal 2 binary64))) (sqrt.f64 (pow.f64 re #s(literal -5 binary64))) (fma.f64 #s(literal -1/512 binary64) (*.f64 (*.f64 (pow.f64 im #s(literal 5 binary64)) (/.f64 (sqrt.f64 #s(literal 2 binary64)) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) #s(literal 1/2 binary64)))) (sqrt.f64 (pow.f64 re #s(literal -9 binary64)))) (fma.f64 (*.f64 #s(literal 1 binary64) im) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 (*.f64 (*.f64 (pow.f64 im #s(literal 5 binary64)) #s(literal 2 binary64)) (sqrt.f64 (pow.f64 re #s(literal -9 binary64)))) #s(literal 1/32 binary64))))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 im im) re))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (/.f64 (fma.f64 (/.f64 (*.f64 (*.f64 im im) (*.f64 im im)) (*.f64 re re)) #s(literal -1/4 binary64) (*.f64 im im)) re))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (/.f64 (fma.f64 (/.f64 (*.f64 (*.f64 im im) (*.f64 im im)) (*.f64 re re)) #s(literal -1/4 binary64) (fma.f64 (/.f64 (*.f64 (*.f64 (*.f64 im im) (*.f64 im im)) (*.f64 im im)) (*.f64 (*.f64 re re) (*.f64 re re))) #s(literal 1/8 binary64) (*.f64 im im))) re))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (/.f64 (+.f64 (neg.f64 (/.f64 (*.f64 (pow.f64 im #s(literal 8 binary64)) #s(literal 5/64 binary64)) (*.f64 (*.f64 (*.f64 re re) re) (*.f64 (*.f64 re re) re)))) (fma.f64 (/.f64 (*.f64 (*.f64 im im) (*.f64 im im)) (*.f64 re re)) #s(literal -1/4 binary64) (fma.f64 (/.f64 (*.f64 (*.f64 (*.f64 im im) (*.f64 im im)) (*.f64 im im)) (*.f64 (*.f64 re re) (*.f64 re re))) #s(literal 1/8 binary64) (*.f64 im im)))) re))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64)))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) (/.f64 (fma.f64 (/.f64 (*.f64 (*.f64 im im) (*.f64 im im)) (*.f64 re re)) #s(literal -1/8 binary64) (*.f64 (*.f64 im im) #s(literal 1/2 binary64))) re))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) (/.f64 (fma.f64 (/.f64 (*.f64 (*.f64 im im) (*.f64 im im)) (*.f64 re re)) #s(literal -1/8 binary64) (fma.f64 (/.f64 (*.f64 (*.f64 (*.f64 im im) (*.f64 im im)) (*.f64 im im)) (*.f64 (*.f64 re re) (*.f64 re re))) #s(literal 1/16 binary64) (*.f64 (*.f64 im im) #s(literal 1/2 binary64)))) re))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) (/.f64 (fma.f64 (/.f64 (*.f64 (pow.f64 im #s(literal 8 binary64)) #s(literal 5/64 binary64)) (*.f64 (*.f64 (*.f64 re re) re) (*.f64 (*.f64 re re) re))) #s(literal -1/2 binary64) (fma.f64 (/.f64 (*.f64 (*.f64 im im) (*.f64 im im)) (*.f64 re re)) #s(literal -1/8 binary64) (fma.f64 (/.f64 (*.f64 (*.f64 (*.f64 im im) (*.f64 im im)) (*.f64 im im)) (*.f64 (*.f64 re re) (*.f64 re re))) #s(literal 1/16 binary64) (*.f64 (*.f64 im im) #s(literal 1/2 binary64))))) re))
#s(approx (sqrt (+ (* re re) (* im im))) (*.f64 (fma.f64 (/.f64 (*.f64 im im) (*.f64 re re)) #s(literal 1/2 binary64) #s(literal 1 binary64)) re))
#s(approx (sqrt (+ (* re re) (* im im))) (*.f64 (+.f64 (fma.f64 (/.f64 (*.f64 (*.f64 im im) (*.f64 im im)) (*.f64 (*.f64 re re) (*.f64 re re))) #s(literal -1/8 binary64) (/.f64 (*.f64 (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 re re))) #s(literal 1 binary64)) re))
#s(approx (sqrt (+ (* re re) (* im im))) (*.f64 (+.f64 (fma.f64 (/.f64 (*.f64 (*.f64 im im) (*.f64 im im)) (*.f64 (*.f64 re re) (*.f64 re re))) #s(literal -1/8 binary64) (fma.f64 (pow.f64 (/.f64 (*.f64 im im) (*.f64 re re)) #s(literal 3 binary64)) #s(literal 1/16 binary64) (/.f64 (*.f64 (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 re re)))) #s(literal 1 binary64)) re))
#s(approx (+ (* re re) (* im im)) (*.f64 (+.f64 (/.f64 (*.f64 im im) (*.f64 re re)) #s(literal 1 binary64)) (*.f64 re re)))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 (*.f64 #s(literal -1/2 binary64) (sqrt.f64 re)) (*.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 2 binary64))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 (neg.f64 re) (fma.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))) (*.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (*.f64 im im)) (sqrt.f64 (pow.f64 re #s(literal -5 binary64)))) #s(literal -1/8 binary64)))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 (neg.f64 re) (fma.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))) (*.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 2 binary64)) (neg.f64 (/.f64 (fma.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (*.f64 im im)) (sqrt.f64 re)) #s(literal 1/8 binary64) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (*.f64 (*.f64 re re) re))) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (*.f64 (*.f64 im im) (*.f64 im im)))) #s(literal -1/32 binary64))) (*.f64 (*.f64 re re) re))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 (neg.f64 re) (fma.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))) (*.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 2 binary64)) (neg.f64 (/.f64 (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (*.f64 (*.f64 re re) re))) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (*.f64 (*.f64 im im) (*.f64 im im)))) #s(literal -1/32 binary64) (fma.f64 (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (*.f64 (*.f64 im im) (*.f64 im im))) #s(literal 1/2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (*.f64 (*.f64 re re) re)))) #s(literal 1/64 binary64) (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (*.f64 im im)) (sqrt.f64 re)) #s(literal 1/8 binary64)))) (*.f64 (*.f64 re re) re))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (neg.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 2 binary64)) (sqrt.f64 re))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (neg.f64 re) (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (sqrt.f64 #s(literal -1 binary64))) #s(literal 2 binary64) (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (*.f64 im im)) (sqrt.f64 (pow.f64 re #s(literal -5 binary64)))) #s(literal -1/4 binary64)))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (neg.f64 re) (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (sqrt.f64 #s(literal -1 binary64))) #s(literal 2 binary64) (neg.f64 (/.f64 (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (*.f64 im im)) (sqrt.f64 re)) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (*.f64 (*.f64 re re) re))) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (*.f64 (*.f64 im im) (*.f64 im im)))) #s(literal -1/16 binary64))) (*.f64 (*.f64 re re) re))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (neg.f64 re) (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (sqrt.f64 #s(literal -1 binary64))) #s(literal 2 binary64) (neg.f64 (/.f64 (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (*.f64 (*.f64 re re) re))) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (*.f64 (*.f64 im im) (*.f64 im im)))) #s(literal -1/16 binary64) (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (*.f64 im im)) (sqrt.f64 re)) (*.f64 (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (*.f64 (*.f64 im im) (*.f64 im im))) #s(literal 1/2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (*.f64 (*.f64 re re) re)))) #s(literal 1/32 binary64)))) (*.f64 (*.f64 re re) re))))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (neg.f64 re) (+.f64 (/.f64 (*.f64 im im) (*.f64 re re)) #s(literal 4 binary64))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (neg.f64 re) (+.f64 (fma.f64 (/.f64 (*.f64 (*.f64 im im) (*.f64 im im)) (*.f64 (*.f64 re re) (*.f64 re re))) #s(literal -1/4 binary64) (/.f64 (*.f64 im im) (*.f64 re re))) #s(literal 4 binary64))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (neg.f64 re) (+.f64 (fma.f64 (/.f64 (*.f64 (*.f64 im im) (*.f64 im im)) (*.f64 (*.f64 re re) (*.f64 re re))) #s(literal -1/4 binary64) (fma.f64 (pow.f64 (/.f64 (*.f64 im im) (*.f64 re re)) #s(literal 3 binary64)) #s(literal 1/8 binary64) (/.f64 (*.f64 im im) (*.f64 re re)))) #s(literal 4 binary64))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 #s(literal -2 binary64) re))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (neg.f64 re) (fma.f64 (/.f64 (*.f64 im im) (*.f64 re re)) #s(literal 1/2 binary64) #s(literal 2 binary64))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (neg.f64 re) (+.f64 (fma.f64 (/.f64 (*.f64 (*.f64 im im) (*.f64 im im)) (*.f64 (*.f64 re re) (*.f64 re re))) #s(literal -1/8 binary64) (/.f64 (*.f64 (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 re re))) #s(literal 2 binary64))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (neg.f64 re) (+.f64 (fma.f64 (/.f64 (*.f64 (*.f64 im im) (*.f64 im im)) (*.f64 (*.f64 re re) (*.f64 re re))) #s(literal -1/8 binary64) (fma.f64 (pow.f64 (/.f64 (*.f64 im im) (*.f64 re re)) #s(literal 3 binary64)) #s(literal 1/16 binary64) (/.f64 (*.f64 (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 re re)))) #s(literal 2 binary64))))
#s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re))
#s(approx (sqrt (+ (* re re) (* im im))) (*.f64 (neg.f64 re) (fma.f64 (/.f64 (*.f64 im im) (*.f64 re re)) #s(literal 1/2 binary64) #s(literal 1 binary64))))
#s(approx (sqrt (+ (* re re) (* im im))) (*.f64 (neg.f64 re) (+.f64 (fma.f64 (/.f64 (*.f64 (*.f64 im im) (*.f64 im im)) (*.f64 (*.f64 re re) (*.f64 re re))) #s(literal -1/8 binary64) (/.f64 (*.f64 (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 re re))) #s(literal 1 binary64))))
#s(approx (sqrt (+ (* re re) (* im im))) (*.f64 (neg.f64 re) (+.f64 (fma.f64 (/.f64 (*.f64 (*.f64 im im) (*.f64 im im)) (*.f64 (*.f64 re re) (*.f64 re re))) #s(literal -1/8 binary64) (fma.f64 (pow.f64 (/.f64 (*.f64 im im) (*.f64 re re)) #s(literal 3 binary64)) #s(literal 1/16 binary64) (/.f64 (*.f64 (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 re re)))) #s(literal 1 binary64))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 (fma.f64 (*.f64 (*.f64 (*.f64 im im) #s(literal 2 binary64)) (sqrt.f64 (pow.f64 re #s(literal -5 binary64)))) #s(literal -1/32 binary64) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) #s(literal 1 binary64)) #s(literal 1/2 binary64))) im))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) #s(literal 1 binary64)) #s(literal 1/2 binary64) (*.f64 (fma.f64 #s(literal 1/4 binary64) (*.f64 (/.f64 (*.f64 (*.f64 (fma.f64 (pow.f64 re #s(literal -5 binary64)) #s(literal 1/16 binary64) (*.f64 #s(literal -1/256 binary64) (/.f64 (pow.f64 re #s(literal -5 binary64)) #s(literal 1/2 binary64)))) (sqrt.f64 #s(literal 2 binary64))) (*.f64 im im)) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 re)) (*.f64 (*.f64 (sqrt.f64 (pow.f64 re #s(literal -5 binary64))) #s(literal 2 binary64)) #s(literal -1/32 binary64))) (*.f64 im im))) im))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 (/.f64 (*.f64 (fma.f64 (pow.f64 re #s(literal -5 binary64)) #s(literal 1/16 binary64) (*.f64 #s(literal -1/256 binary64) (/.f64 (pow.f64 re #s(literal -5 binary64)) #s(literal 1/2 binary64)))) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 re)) #s(literal 1/4 binary64) (*.f64 (*.f64 (/.f64 (*.f64 (*.f64 (fma.f64 (/.f64 (fma.f64 (pow.f64 re #s(literal -5 binary64)) #s(literal 1/16 binary64) (*.f64 #s(literal -1/256 binary64) (/.f64 (pow.f64 re #s(literal -5 binary64)) #s(literal 1/2 binary64)))) (*.f64 (*.f64 re re) #s(literal 1/2 binary64))) #s(literal -1/16 binary64) (*.f64 (pow.f64 re #s(literal -7 binary64)) #s(literal 5/128 binary64))) (sqrt.f64 #s(literal 2 binary64))) (*.f64 im im)) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 re)) #s(literal -1/4 binary64))) (*.f64 im im) (*.f64 (*.f64 (sqrt.f64 (pow.f64 re #s(literal -5 binary64))) #s(literal 2 binary64)) #s(literal -1/32 binary64))) (*.f64 im im) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) #s(literal 1 binary64)) #s(literal 1/2 binary64))) im))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (fma.f64 (*.f64 #s(literal -1/16 binary64) (*.f64 (*.f64 im im) #s(literal 2 binary64))) (sqrt.f64 (pow.f64 re #s(literal -5 binary64))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) #s(literal 1 binary64))) im))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (fma.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) #s(literal 1 binary64) (*.f64 (fma.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 (*.f64 (*.f64 (fma.f64 (pow.f64 re #s(literal -5 binary64)) #s(literal 1/16 binary64) (*.f64 #s(literal -1/256 binary64) (/.f64 (pow.f64 re #s(literal -5 binary64)) #s(literal 1/2 binary64)))) (sqrt.f64 #s(literal 2 binary64))) (*.f64 im im)) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 re)) (*.f64 (*.f64 (sqrt.f64 (pow.f64 re #s(literal -5 binary64))) #s(literal 2 binary64)) #s(literal -1/16 binary64))) (*.f64 im im))) im))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 (/.f64 (*.f64 (fma.f64 (pow.f64 re #s(literal -5 binary64)) #s(literal 1/16 binary64) (*.f64 #s(literal -1/256 binary64) (/.f64 (pow.f64 re #s(literal -5 binary64)) #s(literal 1/2 binary64)))) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 re)) #s(literal 1/2 binary64) (*.f64 (*.f64 (/.f64 (*.f64 (*.f64 (fma.f64 (/.f64 (fma.f64 (pow.f64 re #s(literal -5 binary64)) #s(literal 1/16 binary64) (*.f64 #s(literal -1/256 binary64) (/.f64 (pow.f64 re #s(literal -5 binary64)) #s(literal 1/2 binary64)))) (*.f64 (*.f64 re re) #s(literal 1/2 binary64))) #s(literal -1/16 binary64) (*.f64 (pow.f64 re #s(literal -7 binary64)) #s(literal 5/128 binary64))) (sqrt.f64 #s(literal 2 binary64))) (*.f64 im im)) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 re)) #s(literal -1/2 binary64))) (*.f64 im im) (*.f64 (*.f64 (sqrt.f64 (pow.f64 re #s(literal -5 binary64))) #s(literal 2 binary64)) #s(literal -1/16 binary64))) (*.f64 im im) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) #s(literal 1 binary64))) im))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (fma.f64 (/.f64 (*.f64 im im) (*.f64 (*.f64 re re) re)) #s(literal -1/4 binary64) (/.f64 #s(literal 1 binary64) re)) (*.f64 im im)))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 (*.f64 im im) (pow.f64 re #s(literal -5 binary64))) #s(literal 1/8 binary64)) (/.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 re re) re))) (*.f64 im im) (/.f64 #s(literal 1 binary64) re)) (*.f64 im im)))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 (*.f64 im im) (pow.f64 re #s(literal -7 binary64))) #s(literal -5/64 binary64) (*.f64 (pow.f64 re #s(literal -5 binary64)) #s(literal 1/8 binary64))) (*.f64 im im)) (/.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 re re) re))) (*.f64 im im) (/.f64 #s(literal 1 binary64) re)) (*.f64 im im)))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (fma.f64 (/.f64 (*.f64 im im) (*.f64 (*.f64 re re) re)) #s(literal -1/8 binary64) (/.f64 #s(literal 1/2 binary64) re)) (*.f64 im im)))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 (*.f64 im im) (pow.f64 re #s(literal -5 binary64))) #s(literal 1/16 binary64)) (/.f64 #s(literal 1/8 binary64) (*.f64 (*.f64 re re) re))) (*.f64 im im) (/.f64 #s(literal 1/2 binary64) re)) (*.f64 im im)))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -5/128 binary64) (*.f64 (*.f64 im im) (pow.f64 re #s(literal -7 binary64))) (*.f64 (pow.f64 re #s(literal -5 binary64)) #s(literal 1/16 binary64))) (*.f64 im im)) (/.f64 #s(literal 1/8 binary64) (*.f64 (*.f64 re re) re))) (*.f64 im im) (/.f64 #s(literal 1/2 binary64) re)) (*.f64 im im)))
#s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64) re))
#s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (fma.f64 (/.f64 (*.f64 im im) (*.f64 (*.f64 re re) re)) #s(literal -1/8 binary64) (/.f64 #s(literal 1/2 binary64) re)) (*.f64 im im) re))
#s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (fma.f64 (-.f64 (*.f64 (*.f64 (*.f64 im im) (pow.f64 re #s(literal -5 binary64))) #s(literal 1/16 binary64)) (/.f64 #s(literal 1/8 binary64) (*.f64 (*.f64 re re) re))) (*.f64 im im) (/.f64 #s(literal 1/2 binary64) re)) (*.f64 im im) re))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (*.f64 (*.f64 im im) im))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) #s(literal -1/4 binary64) (*.f64 (sqrt.f64 (*.f64 (/.f64 #s(literal 1 binary64) im) #s(literal 2 binary64))) #s(literal 1/2 binary64))) im))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (*.f64 (*.f64 im im) im))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) #s(literal -1/4 binary64) (fma.f64 (*.f64 #s(literal 1/8 binary64) (sqrt.f64 (pow.f64 im #s(literal -5 binary64)))) (*.f64 (*.f64 re re) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (sqrt.f64 (*.f64 (/.f64 #s(literal 1 binary64) im) #s(literal 2 binary64))) #s(literal 1/2 binary64)))) im))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 (fma.f64 (*.f64 #s(literal -1/4 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (*.f64 (*.f64 im im) im)))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re) (fma.f64 (*.f64 #s(literal -1/16 binary64) (sqrt.f64 (pow.f64 im #s(literal -5 binary64)))) (*.f64 (*.f64 re re) (sqrt.f64 #s(literal 2 binary64))) (fma.f64 (*.f64 #s(literal 1/8 binary64) (sqrt.f64 (pow.f64 im #s(literal -5 binary64)))) (*.f64 (*.f64 re re) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (sqrt.f64 (*.f64 (/.f64 #s(literal 1 binary64) im) #s(literal 2 binary64))) #s(literal 1/2 binary64))))) im))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (*.f64 (*.f64 im im) im)))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re) (sqrt.f64 (*.f64 (/.f64 #s(literal 1 binary64) im) #s(literal 2 binary64)))) im))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (*.f64 (*.f64 im im) im)))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re) (fma.f64 (*.f64 #s(literal 1/4 binary64) (sqrt.f64 (pow.f64 im #s(literal -5 binary64)))) (*.f64 (*.f64 re re) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (*.f64 (/.f64 #s(literal 1 binary64) im) #s(literal 2 binary64))))) im))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (*.f64 (*.f64 im im) im)))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re) (fma.f64 (*.f64 #s(literal -1/8 binary64) (sqrt.f64 (pow.f64 im #s(literal -5 binary64)))) (*.f64 (*.f64 re re) (sqrt.f64 #s(literal 2 binary64))) (fma.f64 (*.f64 #s(literal 1/4 binary64) (sqrt.f64 (pow.f64 im #s(literal -5 binary64)))) (*.f64 (*.f64 re re) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (*.f64 (/.f64 #s(literal 1 binary64) im) #s(literal 2 binary64)))))) im))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (fma.f64 (/.f64 re im) #s(literal -2 binary64) #s(literal 2 binary64)) im))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (+.f64 (fma.f64 (/.f64 re im) #s(literal -2 binary64) (/.f64 (*.f64 re re) (*.f64 im im))) #s(literal 2 binary64)) im))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (+.f64 (fma.f64 (/.f64 re im) #s(literal -2 binary64) (fma.f64 (/.f64 (*.f64 (*.f64 re re) (*.f64 re re)) (*.f64 (*.f64 im im) (*.f64 im im))) #s(literal -1/4 binary64) (/.f64 (*.f64 re re) (*.f64 im im)))) #s(literal 2 binary64)) im))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (+.f64 (/.f64 (neg.f64 re) im) #s(literal 1 binary64)) im))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (-.f64 (fma.f64 (/.f64 (*.f64 re re) (*.f64 im im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) (/.f64 re im)) im))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (-.f64 (+.f64 (fma.f64 (/.f64 (*.f64 (*.f64 re re) (*.f64 re re)) (*.f64 (*.f64 im im) (*.f64 im im))) #s(literal -1/8 binary64) (/.f64 (*.f64 (*.f64 re re) #s(literal 1/2 binary64)) (*.f64 im im))) #s(literal 1 binary64)) (/.f64 re im)) im))
#s(approx (sqrt (+ (* re re) (* im im))) (*.f64 (fma.f64 (/.f64 (*.f64 re re) (*.f64 im im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) im))
#s(approx (sqrt (+ (* re re) (* im im))) (*.f64 (+.f64 (fma.f64 (/.f64 (*.f64 (*.f64 re re) (*.f64 re re)) (*.f64 (*.f64 im im) (*.f64 im im))) #s(literal -1/8 binary64) (/.f64 (*.f64 (*.f64 re re) #s(literal 1/2 binary64)) (*.f64 im im))) #s(literal 1 binary64)) im))
#s(approx (sqrt (+ (* re re) (* im im))) (*.f64 (+.f64 (fma.f64 (/.f64 (*.f64 (*.f64 re re) (*.f64 re re)) (*.f64 (*.f64 im im) (*.f64 im im))) #s(literal -1/8 binary64) (fma.f64 (pow.f64 (/.f64 (*.f64 re re) (*.f64 im im)) #s(literal 3 binary64)) #s(literal 1/16 binary64) (/.f64 (*.f64 (*.f64 re re) #s(literal 1/2 binary64)) (*.f64 im im)))) #s(literal 1 binary64)) im))
#s(approx (+ (* re re) (* im im)) (*.f64 (+.f64 (/.f64 (*.f64 re re) (*.f64 im im)) #s(literal 1 binary64)) (*.f64 im im)))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 (*.f64 #s(literal -1/2 binary64) (sqrt.f64 im)) (sqrt.f64 #s(literal -2 binary64))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 (neg.f64 im) (fma.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) im))) (sqrt.f64 #s(literal -2 binary64)) (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -2 binary64)) re) (sqrt.f64 (/.f64 #s(literal 1 binary64) (*.f64 (*.f64 im im) im)))) #s(literal -1/4 binary64)))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 (neg.f64 im) (fma.f64 (*.f64 #s(literal -1/4 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (*.f64 (*.f64 im im) im)))) (*.f64 (sqrt.f64 #s(literal -2 binary64)) re) (fma.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) im))) (sqrt.f64 #s(literal -2 binary64)) (*.f64 (*.f64 #s(literal -1/8 binary64) (sqrt.f64 (pow.f64 im #s(literal -5 binary64)))) (*.f64 (sqrt.f64 #s(literal -2 binary64)) (*.f64 re re)))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 (neg.f64 im) (+.f64 (neg.f64 (/.f64 (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -2 binary64)) (*.f64 re re)) (sqrt.f64 im)) #s(literal 3/16 binary64)) (*.f64 (*.f64 im im) im))) (fma.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) im))) (sqrt.f64 #s(literal -2 binary64)) (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -2 binary64)) re) (sqrt.f64 (/.f64 #s(literal 1 binary64) (*.f64 (*.f64 im im) im)))) #s(literal -1/4 binary64))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (neg.f64 (*.f64 (sqrt.f64 #s(literal -2 binary64)) (sqrt.f64 im))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (neg.f64 im) (fma.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -2 binary64)) re) (sqrt.f64 (/.f64 #s(literal 1 binary64) (*.f64 (*.f64 im im) im)))) #s(literal -1/2 binary64) (*.f64 (sqrt.f64 #s(literal -2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) im))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (neg.f64 im) (fma.f64 (*.f64 #s(literal -1/2 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (*.f64 (*.f64 im im) im)))) (*.f64 (sqrt.f64 #s(literal -2 binary64)) re) (fma.f64 (*.f64 #s(literal -1/4 binary64) (sqrt.f64 (pow.f64 im #s(literal -5 binary64)))) (*.f64 (sqrt.f64 #s(literal -2 binary64)) (*.f64 re re)) (*.f64 (sqrt.f64 #s(literal -2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) im)))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (neg.f64 (*.f64 im (+.f64 (neg.f64 (/.f64 (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -2 binary64)) (*.f64 re re)) (sqrt.f64 im)) #s(literal 3/8 binary64)) (*.f64 (*.f64 im im) im))) (fma.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -2 binary64)) re) (sqrt.f64 (/.f64 #s(literal 1 binary64) (*.f64 (*.f64 im im) im)))) #s(literal -1/2 binary64) (*.f64 (sqrt.f64 #s(literal -2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) im))))))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -2 binary64) im))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (neg.f64 im) (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal 2 binary64))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (neg.f64 im) (+.f64 (neg.f64 (/.f64 (fma.f64 #s(literal -2 binary64) re (neg.f64 (/.f64 (*.f64 re re) im))) im)) #s(literal 2 binary64))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (neg.f64 im) (+.f64 (neg.f64 (/.f64 (fma.f64 #s(literal -2 binary64) re (neg.f64 (/.f64 (fma.f64 (/.f64 (*.f64 (*.f64 re re) (*.f64 re re)) (*.f64 im im)) #s(literal -1/4 binary64) (*.f64 re re)) im))) im)) #s(literal 2 binary64))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) (neg.f64 im))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (neg.f64 im) (+.f64 (/.f64 re im) #s(literal 1 binary64))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (neg.f64 im) (+.f64 (neg.f64 (/.f64 (-.f64 (*.f64 (/.f64 (*.f64 re re) im) #s(literal -1/2 binary64)) re) im)) #s(literal 1 binary64))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (neg.f64 im) (+.f64 (neg.f64 (/.f64 (-.f64 (neg.f64 (/.f64 (fma.f64 (/.f64 (*.f64 (*.f64 re re) (*.f64 re re)) (*.f64 im im)) #s(literal -1/8 binary64) (*.f64 (*.f64 re re) #s(literal 1/2 binary64))) im)) re) im)) #s(literal 1 binary64))))
#s(approx (sqrt (+ (* re re) (* im im))) (*.f64 (neg.f64 im) (fma.f64 (/.f64 (*.f64 re re) (*.f64 im im)) #s(literal 1/2 binary64) #s(literal 1 binary64))))
#s(approx (sqrt (+ (* re re) (* im im))) (*.f64 (neg.f64 im) (+.f64 (fma.f64 (/.f64 (*.f64 (*.f64 re re) (*.f64 re re)) (*.f64 (*.f64 im im) (*.f64 im im))) #s(literal -1/8 binary64) (/.f64 (*.f64 (*.f64 re re) #s(literal 1/2 binary64)) (*.f64 im im))) #s(literal 1 binary64))))
#s(approx (sqrt (+ (* re re) (* im im))) (*.f64 (neg.f64 im) (+.f64 (fma.f64 (/.f64 (*.f64 (*.f64 re re) (*.f64 re re)) (*.f64 (*.f64 im im) (*.f64 im im))) #s(literal -1/8 binary64) (fma.f64 (pow.f64 (/.f64 (*.f64 re re) (*.f64 im im)) #s(literal 3 binary64)) #s(literal 1/16 binary64) (/.f64 (*.f64 (*.f64 re re) #s(literal 1/2 binary64)) (*.f64 im im)))) #s(literal 1 binary64))))

eval27.0ms (0.8%)

Memory
14.9MiB live, 67.2MiB allocated; 10ms collecting garbage
Compiler

Compiled 3 054 to 1 172 computations (61.6% saved)

prune9.0ms (0.3%)

Memory
-18.3MiB live, 28.0MiB allocated; 3ms collecting garbage
Pruning

8 alts after pruning (8 fresh and 0 done)

PrunedKeptTotal
New1698177
Fresh000
Picked101
Done000
Total1708178
Accuracy
99.9%
Counts
178 → 8
Alt Table
Click to see full alt table
StatusAccuracyProgram
43.1%
(*.f64 (sqrt.f64 (*.f64 (-.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re))) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))
78.9%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 re im) re))))
55.9%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (+.f64 (neg.f64 re) im)))))
53.6%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (+.f64 im im)))))
14.8%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 im im) re))))
53.8%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (+.f64 im im))))
24.5%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re))))
26.8%
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1 binary64) im)) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))))
Compiler

Compiled 234 to 234 computations (0% saved)

series26.0ms (0.8%)

Memory
33.7MiB live, 78.0MiB allocated; 3ms collecting garbage
Counts
32 → 119
Calls
Call 1
Inputs
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 re im) re))))
#s(literal 1/2 binary64)
(sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 re im) re)))
(*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 re im) re))
#s(literal 2 binary64)
(-.f64 (hypot.f64 re im) re)
(hypot.f64 re im)
re
im
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (+.f64 im im))))
(sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (+.f64 im im)))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (+.f64 im im))
(+.f64 im im)
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 im im) re))))
(sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 im im) re)))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 im im) re))
(/.f64 (*.f64 im im) re)
(*.f64 im im)
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1 binary64) im)) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))))
(*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1 binary64) im)) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))
(*.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1 binary64) im))
(*.f64 #s(literal 1 binary64) im)
#s(literal 1 binary64)
(sqrt.f64 (/.f64 #s(literal 1 binary64) re))
(/.f64 #s(literal 1 binary64) re)
(*.f64 (sqrt.f64 (*.f64 (-.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re))) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))
(sqrt.f64 (*.f64 (-.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re))) re) #s(literal 2 binary64)))
(*.f64 (-.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re))) re) #s(literal 2 binary64))
(-.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re))) re)
(sqrt.f64 (fma.f64 im im (*.f64 re re)))
(fma.f64 im im (*.f64 re re))
(*.f64 re re)
Outputs
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* 1/2 (* (sqrt im) (sqrt 2)))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (+ (* -1/4 (* (sqrt (/ 1 im)) (* re (sqrt 2)))) (* 1/2 (* (sqrt im) (sqrt 2))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (+ (* 1/2 (* (sqrt im) (sqrt 2))) (* re (+ (* -1/4 (* (sqrt (/ 1 im)) (sqrt 2))) (* 1/16 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (+ (* 1/2 (* (sqrt im) (sqrt 2))) (* re (+ (* -1/4 (* (sqrt (/ 1 im)) (sqrt 2))) (* re (+ (* 1/32 (* (sqrt (/ 1 (pow im 5))) (* re (sqrt 2)))) (* 1/16 (* (sqrt (/ 1 (pow im 3))) (sqrt 2))))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* (sqrt im) (sqrt 2))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (+ (* -1/2 (* (sqrt (/ 1 im)) (* re (sqrt 2)))) (* (sqrt im) (sqrt 2)))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (+ (* re (+ (* -1/2 (* (sqrt (/ 1 im)) (sqrt 2))) (* 1/8 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))))) (* (sqrt im) (sqrt 2)))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (+ (* re (+ (* -1/2 (* (sqrt (/ 1 im)) (sqrt 2))) (* re (+ (* 1/16 (* (sqrt (/ 1 (pow im 5))) (* re (sqrt 2)))) (* 1/8 (* (sqrt (/ 1 (pow im 3))) (sqrt 2))))))) (* (sqrt im) (sqrt 2)))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* 2 im)))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (+ (* -2 re) (* 2 im))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (+ (* 2 im) (* re (- (/ re im) 2)))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (+ (* 2 im) (* re (- (* re (+ (* -1/4 (/ (pow re 2) (pow im 3))) (/ 1 im))) 2)))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 im))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (+ im (* -1 re))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (+ im (* re (- (* 1/2 (/ re im)) 1)))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (+ im (* re (- (* re (+ (* -1/8 (/ (pow re 2) (pow im 3))) (* 1/2 (/ 1 im)))) 1)))))
#s(approx (sqrt (+ (* re re) (* im im))) #s(hole binary64 (+ im (* 1/2 (/ (pow re 2) im)))))
#s(approx (sqrt (+ (* re re) (* im im))) #s(hole binary64 (+ im (* (pow re 2) (+ (* -1/8 (/ (pow re 2) (pow im 3))) (* 1/2 (/ 1 im)))))))
#s(approx (sqrt (+ (* re re) (* im im))) #s(hole binary64 (+ im (* (pow re 2) (+ (* (pow re 2) (- (* 1/16 (/ (pow re 2) (pow im 5))) (* 1/8 (/ 1 (pow im 3))))) (* 1/2 (/ 1 im)))))))
#s(approx re #s(hole binary64 re))
#s(approx (/ (* im im) re) #s(hole binary64 (/ (pow im 2) re)))
#s(approx (* (* 1/2 (* 1 im)) (sqrt (/ 1 re))) #s(hole binary64 (* 1/2 (* im (sqrt (/ 1 re))))))
#s(approx (sqrt (/ 1 re)) #s(hole binary64 (sqrt (/ 1 re))))
#s(approx (/ 1 re) #s(hole binary64 (/ 1 re)))
#s(approx (+ (* im im) (* re re)) #s(hole binary64 (pow im 2)))
#s(approx (+ (* im im) (* re re)) #s(hole binary64 (+ (pow im 2) (pow re 2))))
#s(approx (* re re) #s(hole binary64 (pow re 2)))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* 1/2 (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (+ (* -1/32 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re)))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (+ (* -1/32 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* 1/64 (* (/ (* (pow im 5) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* 1/2 (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (+ (* -1/32 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* -1/1024 (* (/ (* (pow im 5) (sqrt 2)) (pow (sqrt 1/2) 3)) (sqrt (/ 1 (pow re 9))))) (+ (* 1/64 (* (/ (* (pow im 5) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* 1/2 (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re)))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re)))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (+ (* -1/16 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (+ (* -1/16 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* 1/32 (* (/ (* (pow im 5) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re)))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (+ (* -1/16 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* -1/512 (* (/ (* (pow im 5) (sqrt 2)) (pow (sqrt 1/2) 3)) (sqrt (/ 1 (pow re 9))))) (+ (* 1/32 (* (/ (* (pow im 5) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re))))))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (/ (+ (* -1/4 (/ (pow im 4) (pow re 2))) (pow im 2)) re)))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (/ (+ (* -1/4 (/ (pow im 4) (pow re 2))) (+ (* 1/8 (/ (pow im 6) (pow re 4))) (pow im 2))) re)))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (/ (+ (* -1 (/ (+ (* 1/64 (pow im 8)) (* 1/16 (pow im 8))) (pow re 6))) (+ (* -1/4 (/ (pow im 4) (pow re 2))) (+ (* 1/8 (/ (pow im 6) (pow re 4))) (pow im 2)))) re)))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (* 1/2 (/ (pow im 2) re))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (/ (+ (* -1/8 (/ (pow im 4) (pow re 2))) (* 1/2 (pow im 2))) re)))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (/ (+ (* -1/8 (/ (pow im 4) (pow re 2))) (+ (* 1/16 (/ (pow im 6) (pow re 4))) (* 1/2 (pow im 2)))) re)))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (/ (+ (* -1/2 (/ (+ (* 1/64 (pow im 8)) (* 1/16 (pow im 8))) (pow re 6))) (+ (* -1/8 (/ (pow im 4) (pow re 2))) (+ (* 1/16 (/ (pow im 6) (pow re 4))) (* 1/2 (pow im 2))))) re)))
#s(approx (sqrt (+ (* re re) (* im im))) #s(hole binary64 (* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2)))))))
#s(approx (sqrt (+ (* re re) (* im im))) #s(hole binary64 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2))))))))
#s(approx (sqrt (+ (* re re) (* im im))) #s(hole binary64 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2)))))))))
#s(approx (+ (* im im) (* re re)) #s(hole binary64 (* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* -1/2 (* (sqrt re) (* (sqrt -1) (pow (sqrt 2) 2))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* -1 (* re (+ (* -1/8 (* (* (pow im 2) (sqrt -1)) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2)))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* -1 (* re (+ (* -1 (/ (+ (* -1/32 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (* 1/8 (* (* (pow im 2) (sqrt -1)) (sqrt re)))) (pow re 3))) (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2)))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* -1 (* re (+ (* -1 (/ (+ (* -1/32 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (+ (* 1/64 (* (/ (* (pow im 4) (sqrt -1)) (pow (sqrt 2) 2)) (sqrt (/ 1 (pow re 3))))) (* 1/8 (* (* (pow im 2) (sqrt -1)) (sqrt re))))) (pow re 3))) (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2)))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* -1 (* (sqrt re) (* (sqrt -1) (pow (sqrt 2) 2))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* -1 (* re (+ (* -1/4 (* (* (pow im 2) (sqrt -1)) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* -1 (* re (+ (* -1 (/ (+ (* -1/16 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (* 1/4 (* (* (pow im 2) (sqrt -1)) (sqrt re)))) (pow re 3))) (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* -1 (* re (+ (* -1 (/ (+ (* -1/16 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (+ (* 1/32 (* (/ (* (pow im 4) (sqrt -1)) (pow (sqrt 2) 2)) (sqrt (/ 1 (pow re 3))))) (* 1/4 (* (* (pow im 2) (sqrt -1)) (sqrt re))))) (pow re 3))) (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2))))))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* -4 re)))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* -1 (* re (+ 4 (/ (pow im 2) (pow re 2)))))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* -1 (* re (+ 4 (+ (* -1/4 (/ (pow im 4) (pow re 4))) (/ (pow im 2) (pow re 2))))))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* -1 (* re (+ 4 (+ (* -1/4 (/ (pow im 4) (pow re 4))) (+ (* 1/8 (/ (pow im 6) (pow re 6))) (/ (pow im 2) (pow re 2)))))))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (* -2 re)))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (* -1 (* re (+ 2 (* 1/2 (/ (pow im 2) (pow re 2))))))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (* -1 (* re (+ 2 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2)))))))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (* -1 (* re (+ 2 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2))))))))))
#s(approx (sqrt (+ (* re re) (* im im))) #s(hole binary64 (* -1 re)))
#s(approx (sqrt (+ (* re re) (* im im))) #s(hole binary64 (* -1 (* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2))))))))
#s(approx (sqrt (+ (* re re) (* im im))) #s(hole binary64 (* -1 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2)))))))))
#s(approx (sqrt (+ (* re re) (* im im))) #s(hole binary64 (* -1 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2))))))))))
#s(approx (* (* 1/2 (* 1 im)) (sqrt (/ 1 re))) #s(hole binary64 (* 1/2 (* (* im (pow (sqrt -1) 2)) (sqrt (/ 1 re))))))
#s(approx (sqrt (/ 1 re)) #s(hole binary64 (* (sqrt (/ 1 re)) (pow (sqrt -1) 2))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* im (+ (* -1/32 (* (/ (* (pow im 2) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* im (+ (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2)))) (* (pow im 2) (+ (* -1/32 (* (sqrt (/ 1 (pow re 5))) (/ (sqrt 2) (sqrt 1/2)))) (* 1/4 (* (/ (* (pow im 2) (* (sqrt 2) (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2))))))) (sqrt 1/2)) (sqrt re)))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* im (+ (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2)))) (* (pow im 2) (+ (* -1/32 (* (sqrt (/ 1 (pow re 5))) (/ (sqrt 2) (sqrt 1/2)))) (* (pow im 2) (+ (* -1/4 (* (/ (* (pow im 2) (* (sqrt 2) (+ (* -1/16 (/ (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2))))) (* (pow re 2) (pow (sqrt 1/2) 2)))) (* 5/128 (/ 1 (pow re 7)))))) (sqrt 1/2)) (sqrt re))) (* 1/4 (* (sqrt re) (/ (* (sqrt 2) (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2)))))) (sqrt 1/2))))))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* im (+ (* -1/16 (* (/ (* (pow im 2) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2)))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* im (+ (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2))) (* (pow im 2) (+ (* -1/16 (* (sqrt (/ 1 (pow re 5))) (/ (sqrt 2) (sqrt 1/2)))) (* 1/2 (* (/ (* (pow im 2) (* (sqrt 2) (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2))))))) (sqrt 1/2)) (sqrt re)))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* im (+ (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2))) (* (pow im 2) (+ (* -1/16 (* (sqrt (/ 1 (pow re 5))) (/ (sqrt 2) (sqrt 1/2)))) (* (pow im 2) (+ (* -1/2 (* (/ (* (pow im 2) (* (sqrt 2) (+ (* -1/16 (/ (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2))))) (* (pow re 2) (pow (sqrt 1/2) 2)))) (* 5/128 (/ 1 (pow re 7)))))) (sqrt 1/2)) (sqrt re))) (* 1/2 (* (sqrt re) (/ (* (sqrt 2) (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2)))))) (sqrt 1/2))))))))))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* (pow im 2) (+ (* -1/4 (/ (pow im 2) (pow re 3))) (/ 1 re)))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* (pow im 2) (+ (* (pow im 2) (- (* 1/8 (/ (pow im 2) (pow re 5))) (* 1/4 (/ 1 (pow re 3))))) (/ 1 re)))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* (pow im 2) (+ (* (pow im 2) (- (* (pow im 2) (+ (* -5/64 (/ (pow im 2) (pow re 7))) (* 1/8 (/ 1 (pow re 5))))) (* 1/4 (/ 1 (pow re 3))))) (/ 1 re)))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (* (pow im 2) (+ (* -1/8 (/ (pow im 2) (pow re 3))) (* 1/2 (/ 1 re))))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (* (pow im 2) (+ (* (pow im 2) (- (* 1/16 (/ (pow im 2) (pow re 5))) (* 1/8 (/ 1 (pow re 3))))) (* 1/2 (/ 1 re))))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (* (pow im 2) (+ (* (pow im 2) (- (* (pow im 2) (+ (* -5/128 (/ (pow im 2) (pow re 7))) (* 1/16 (/ 1 (pow re 5))))) (* 1/8 (/ 1 (pow re 3))))) (* 1/2 (/ 1 re))))))
#s(approx (sqrt (+ (* re re) (* im im))) #s(hole binary64 (+ re (* 1/2 (/ (pow im 2) re)))))
#s(approx (sqrt (+ (* re re) (* im im))) #s(hole binary64 (+ re (* (pow im 2) (+ (* -1/8 (/ (pow im 2) (pow re 3))) (* 1/2 (/ 1 re)))))))
#s(approx (sqrt (+ (* re re) (* im im))) #s(hole binary64 (+ re (* (pow im 2) (+ (* (pow im 2) (- (* 1/16 (/ (pow im 2) (pow re 5))) (* 1/8 (/ 1 (pow re 3))))) (* 1/2 (/ 1 re)))))))
#s(approx (* 1/2 (* 1 im)) #s(hole binary64 (* 1/2 im)))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2)))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (+ (* 1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (+ (* -1/16 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2)))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2)))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2))))))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* im (+ 2 (* -2 (/ re im))))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* im (+ 2 (+ (* -2 (/ re im)) (/ (pow re 2) (pow im 2)))))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* im (+ 2 (+ (* -2 (/ re im)) (+ (* -1/4 (/ (pow re 4) (pow im 4))) (/ (pow re 2) (pow im 2))))))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (* im (+ 1 (* -1 (/ re im))))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (* im (- (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))) (/ re im)))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (* im (- (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2))))) (/ re im)))))
#s(approx (sqrt (+ (* re re) (* im im))) #s(hole binary64 (* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))))))
#s(approx (sqrt (+ (* re re) (* im im))) #s(hole binary64 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2))))))))
#s(approx (sqrt (+ (* re re) (* im im))) #s(hole binary64 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (+ (* 1/16 (/ (pow re 6) (pow im 6))) (* 1/2 (/ (pow re 2) (pow im 2)))))))))
#s(approx (+ (* im im) (* re re)) #s(hole binary64 (* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* -1/2 (* (sqrt im) (* (sqrt -1) (sqrt 2))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* -1 (* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* -1 (* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* -1 (* im (+ (* -1 (/ (+ (* 1/16 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* 1/8 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2)))))) (pow im 3))) (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* -1 (* (sqrt im) (* (sqrt -1) (sqrt 2))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* -1 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* -1 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (+ (* -1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* -1 (* im (+ (* -1 (/ (+ (* 1/8 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* 1/4 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2)))))) (pow im 3))) (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* -2 im)))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* -1 (* im (+ 2 (* 2 (/ re im)))))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* -1 (* im (+ 2 (* -1 (/ (+ (* -2 re) (* -1 (/ (pow re 2) im))) im)))))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* -1 (* im (+ 2 (* -1 (/ (+ (* -2 re) (* -1 (/ (+ (* -1/4 (/ (pow re 4) (pow im 2))) (pow re 2)) im))) im)))))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (* -1 im)))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (* -1 (* im (+ 1 (/ re im))))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (* -1 (* im (+ 1 (* -1 (/ (- (* -1/2 (/ (pow re 2) im)) re) im)))))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (* -1 (* im (+ 1 (* -1 (/ (- (* -1 (/ (+ (* -1/8 (/ (pow re 4) (pow im 2))) (* 1/2 (pow re 2))) im)) re) im)))))))
#s(approx (sqrt (+ (* re re) (* im im))) #s(hole binary64 (* -1 (* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2))))))))
#s(approx (sqrt (+ (* re re) (* im im))) #s(hole binary64 (* -1 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2)))))))))
#s(approx (sqrt (+ (* re re) (* im im))) #s(hole binary64 (* -1 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (+ (* 1/16 (/ (pow re 6) (pow im 6))) (* 1/2 (/ (pow re 2) (pow im 2))))))))))
Calls

6 calls:

TimeVariablePointExpression
8.0ms
im
@0
((* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (* 2 (- (sqrt (+ (* re re) (* im im))) re)) 2 (- (sqrt (+ (* re re) (* im im))) re) (sqrt (+ (* re re) (* im im))) re im (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (+ im im) (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (/ (* im im) re) (* im im) (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (* (* 1/2 (* 1 im)) (sqrt (/ 1 re))) (* 1/2 (* 1 im)) (* 1 im) 1 (sqrt (/ 1 re)) (/ 1 re) (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) (* (- (sqrt (+ (* im im) (* re re))) re) 2) (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re))) (+ (* im im) (* re re)) (* re re))
4.0ms
re
@-inf
((* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (* 2 (- (sqrt (+ (* re re) (* im im))) re)) 2 (- (sqrt (+ (* re re) (* im im))) re) (sqrt (+ (* re re) (* im im))) re im (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (+ im im) (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (/ (* im im) re) (* im im) (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (* (* 1/2 (* 1 im)) (sqrt (/ 1 re))) (* 1/2 (* 1 im)) (* 1 im) 1 (sqrt (/ 1 re)) (/ 1 re) (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) (* (- (sqrt (+ (* im im) (* re re))) re) 2) (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re))) (+ (* im im) (* re re)) (* re re))
3.0ms
im
@-inf
((* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (* 2 (- (sqrt (+ (* re re) (* im im))) re)) 2 (- (sqrt (+ (* re re) (* im im))) re) (sqrt (+ (* re re) (* im im))) re im (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (+ im im) (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (/ (* im im) re) (* im im) (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (* (* 1/2 (* 1 im)) (sqrt (/ 1 re))) (* 1/2 (* 1 im)) (* 1 im) 1 (sqrt (/ 1 re)) (/ 1 re) (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) (* (- (sqrt (+ (* im im) (* re re))) re) 2) (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re))) (+ (* im im) (* re re)) (* re re))
3.0ms
im
@inf
((* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (* 2 (- (sqrt (+ (* re re) (* im im))) re)) 2 (- (sqrt (+ (* re re) (* im im))) re) (sqrt (+ (* re re) (* im im))) re im (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (+ im im) (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (/ (* im im) re) (* im im) (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (* (* 1/2 (* 1 im)) (sqrt (/ 1 re))) (* 1/2 (* 1 im)) (* 1 im) 1 (sqrt (/ 1 re)) (/ 1 re) (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) (* (- (sqrt (+ (* im im) (* re re))) re) 2) (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re))) (+ (* im im) (* re re)) (* re re))
3.0ms
re
@inf
((* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (* 2 (- (sqrt (+ (* re re) (* im im))) re)) 2 (- (sqrt (+ (* re re) (* im im))) re) (sqrt (+ (* re re) (* im im))) re im (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (+ im im) (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (/ (* im im) re) (* im im) (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (* (* 1/2 (* 1 im)) (sqrt (/ 1 re))) (* 1/2 (* 1 im)) (* 1 im) 1 (sqrt (/ 1 re)) (/ 1 re) (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) (* (- (sqrt (+ (* im im) (* re re))) re) 2) (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re))) (+ (* im im) (* re re)) (* re re))

rewrite78.0ms (2.4%)

Memory
-45.8MiB live, 160.5MiB allocated; 21ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
07184348
07484197
120464197
Stop Event
saturated
iter-limit
unsound
iter-limit
Counts
151 → 154
Calls
Call 1
Inputs
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 re im) re))))
#s(literal 1/2 binary64)
(sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 re im) re)))
(*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 re im) re))
#s(literal 2 binary64)
(-.f64 (hypot.f64 re im) re)
(hypot.f64 re im)
re
im
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (+.f64 im im))))
(sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (+.f64 im im)))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (+.f64 im im))
(+.f64 im im)
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 im im) re))))
(sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 im im) re)))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 im im) re))
(/.f64 (*.f64 im im) re)
(*.f64 im im)
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1 binary64) im)) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))))
(*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1 binary64) im)) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))
(*.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1 binary64) im))
(*.f64 #s(literal 1 binary64) im)
#s(literal 1 binary64)
(sqrt.f64 (/.f64 #s(literal 1 binary64) re))
(/.f64 #s(literal 1 binary64) re)
(*.f64 (sqrt.f64 (*.f64 (-.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re))) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))
(sqrt.f64 (*.f64 (-.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re))) re) #s(literal 2 binary64)))
(*.f64 (-.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re))) re) #s(literal 2 binary64))
(-.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re))) re)
(sqrt.f64 (fma.f64 im im (*.f64 re re)))
(fma.f64 im im (*.f64 re re))
(*.f64 re re)
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* 1/2 (* (sqrt im) (sqrt 2)))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (+ (* -1/4 (* (sqrt (/ 1 im)) (* re (sqrt 2)))) (* 1/2 (* (sqrt im) (sqrt 2))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (+ (* 1/2 (* (sqrt im) (sqrt 2))) (* re (+ (* -1/4 (* (sqrt (/ 1 im)) (sqrt 2))) (* 1/16 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (+ (* 1/2 (* (sqrt im) (sqrt 2))) (* re (+ (* -1/4 (* (sqrt (/ 1 im)) (sqrt 2))) (* re (+ (* 1/32 (* (sqrt (/ 1 (pow im 5))) (* re (sqrt 2)))) (* 1/16 (* (sqrt (/ 1 (pow im 3))) (sqrt 2))))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* (sqrt im) (sqrt 2))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (+ (* -1/2 (* (sqrt (/ 1 im)) (* re (sqrt 2)))) (* (sqrt im) (sqrt 2)))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (+ (* re (+ (* -1/2 (* (sqrt (/ 1 im)) (sqrt 2))) (* 1/8 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))))) (* (sqrt im) (sqrt 2)))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (+ (* re (+ (* -1/2 (* (sqrt (/ 1 im)) (sqrt 2))) (* re (+ (* 1/16 (* (sqrt (/ 1 (pow im 5))) (* re (sqrt 2)))) (* 1/8 (* (sqrt (/ 1 (pow im 3))) (sqrt 2))))))) (* (sqrt im) (sqrt 2)))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* 2 im)))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (+ (* -2 re) (* 2 im))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (+ (* 2 im) (* re (- (/ re im) 2)))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (+ (* 2 im) (* re (- (* re (+ (* -1/4 (/ (pow re 2) (pow im 3))) (/ 1 im))) 2)))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 im))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (+ im (* -1 re))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (+ im (* re (- (* 1/2 (/ re im)) 1)))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (+ im (* re (- (* re (+ (* -1/8 (/ (pow re 2) (pow im 3))) (* 1/2 (/ 1 im)))) 1)))))
#s(approx (sqrt (+ (* re re) (* im im))) #s(hole binary64 (+ im (* 1/2 (/ (pow re 2) im)))))
#s(approx (sqrt (+ (* re re) (* im im))) #s(hole binary64 (+ im (* (pow re 2) (+ (* -1/8 (/ (pow re 2) (pow im 3))) (* 1/2 (/ 1 im)))))))
#s(approx (sqrt (+ (* re re) (* im im))) #s(hole binary64 (+ im (* (pow re 2) (+ (* (pow re 2) (- (* 1/16 (/ (pow re 2) (pow im 5))) (* 1/8 (/ 1 (pow im 3))))) (* 1/2 (/ 1 im)))))))
#s(approx re #s(hole binary64 re))
#s(approx (/ (* im im) re) #s(hole binary64 (/ (pow im 2) re)))
#s(approx (* (* 1/2 (* 1 im)) (sqrt (/ 1 re))) #s(hole binary64 (* 1/2 (* im (sqrt (/ 1 re))))))
#s(approx (sqrt (/ 1 re)) #s(hole binary64 (sqrt (/ 1 re))))
#s(approx (/ 1 re) #s(hole binary64 (/ 1 re)))
#s(approx (+ (* im im) (* re re)) #s(hole binary64 (pow im 2)))
#s(approx (+ (* im im) (* re re)) #s(hole binary64 (+ (pow im 2) (pow re 2))))
#s(approx (* re re) #s(hole binary64 (pow re 2)))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* 1/2 (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (+ (* -1/32 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re)))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (+ (* -1/32 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* 1/64 (* (/ (* (pow im 5) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* 1/2 (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (+ (* -1/32 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* -1/1024 (* (/ (* (pow im 5) (sqrt 2)) (pow (sqrt 1/2) 3)) (sqrt (/ 1 (pow re 9))))) (+ (* 1/64 (* (/ (* (pow im 5) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* 1/2 (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re)))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re)))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (+ (* -1/16 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (+ (* -1/16 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* 1/32 (* (/ (* (pow im 5) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re)))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (+ (* -1/16 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* -1/512 (* (/ (* (pow im 5) (sqrt 2)) (pow (sqrt 1/2) 3)) (sqrt (/ 1 (pow re 9))))) (+ (* 1/32 (* (/ (* (pow im 5) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re))))))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (/ (+ (* -1/4 (/ (pow im 4) (pow re 2))) (pow im 2)) re)))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (/ (+ (* -1/4 (/ (pow im 4) (pow re 2))) (+ (* 1/8 (/ (pow im 6) (pow re 4))) (pow im 2))) re)))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (/ (+ (* -1 (/ (+ (* 1/64 (pow im 8)) (* 1/16 (pow im 8))) (pow re 6))) (+ (* -1/4 (/ (pow im 4) (pow re 2))) (+ (* 1/8 (/ (pow im 6) (pow re 4))) (pow im 2)))) re)))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (* 1/2 (/ (pow im 2) re))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (/ (+ (* -1/8 (/ (pow im 4) (pow re 2))) (* 1/2 (pow im 2))) re)))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (/ (+ (* -1/8 (/ (pow im 4) (pow re 2))) (+ (* 1/16 (/ (pow im 6) (pow re 4))) (* 1/2 (pow im 2)))) re)))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (/ (+ (* -1/2 (/ (+ (* 1/64 (pow im 8)) (* 1/16 (pow im 8))) (pow re 6))) (+ (* -1/8 (/ (pow im 4) (pow re 2))) (+ (* 1/16 (/ (pow im 6) (pow re 4))) (* 1/2 (pow im 2))))) re)))
#s(approx (sqrt (+ (* re re) (* im im))) #s(hole binary64 (* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2)))))))
#s(approx (sqrt (+ (* re re) (* im im))) #s(hole binary64 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2))))))))
#s(approx (sqrt (+ (* re re) (* im im))) #s(hole binary64 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2)))))))))
#s(approx (+ (* im im) (* re re)) #s(hole binary64 (* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* -1/2 (* (sqrt re) (* (sqrt -1) (pow (sqrt 2) 2))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* -1 (* re (+ (* -1/8 (* (* (pow im 2) (sqrt -1)) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2)))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* -1 (* re (+ (* -1 (/ (+ (* -1/32 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (* 1/8 (* (* (pow im 2) (sqrt -1)) (sqrt re)))) (pow re 3))) (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2)))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* -1 (* re (+ (* -1 (/ (+ (* -1/32 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (+ (* 1/64 (* (/ (* (pow im 4) (sqrt -1)) (pow (sqrt 2) 2)) (sqrt (/ 1 (pow re 3))))) (* 1/8 (* (* (pow im 2) (sqrt -1)) (sqrt re))))) (pow re 3))) (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2)))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* -1 (* (sqrt re) (* (sqrt -1) (pow (sqrt 2) 2))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* -1 (* re (+ (* -1/4 (* (* (pow im 2) (sqrt -1)) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* -1 (* re (+ (* -1 (/ (+ (* -1/16 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (* 1/4 (* (* (pow im 2) (sqrt -1)) (sqrt re)))) (pow re 3))) (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* -1 (* re (+ (* -1 (/ (+ (* -1/16 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (+ (* 1/32 (* (/ (* (pow im 4) (sqrt -1)) (pow (sqrt 2) 2)) (sqrt (/ 1 (pow re 3))))) (* 1/4 (* (* (pow im 2) (sqrt -1)) (sqrt re))))) (pow re 3))) (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2))))))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* -4 re)))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* -1 (* re (+ 4 (/ (pow im 2) (pow re 2)))))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* -1 (* re (+ 4 (+ (* -1/4 (/ (pow im 4) (pow re 4))) (/ (pow im 2) (pow re 2))))))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* -1 (* re (+ 4 (+ (* -1/4 (/ (pow im 4) (pow re 4))) (+ (* 1/8 (/ (pow im 6) (pow re 6))) (/ (pow im 2) (pow re 2)))))))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (* -2 re)))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (* -1 (* re (+ 2 (* 1/2 (/ (pow im 2) (pow re 2))))))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (* -1 (* re (+ 2 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2)))))))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (* -1 (* re (+ 2 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2))))))))))
#s(approx (sqrt (+ (* re re) (* im im))) #s(hole binary64 (* -1 re)))
#s(approx (sqrt (+ (* re re) (* im im))) #s(hole binary64 (* -1 (* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2))))))))
#s(approx (sqrt (+ (* re re) (* im im))) #s(hole binary64 (* -1 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2)))))))))
#s(approx (sqrt (+ (* re re) (* im im))) #s(hole binary64 (* -1 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2))))))))))
#s(approx (* (* 1/2 (* 1 im)) (sqrt (/ 1 re))) #s(hole binary64 (* 1/2 (* (* im (pow (sqrt -1) 2)) (sqrt (/ 1 re))))))
#s(approx (sqrt (/ 1 re)) #s(hole binary64 (* (sqrt (/ 1 re)) (pow (sqrt -1) 2))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* im (+ (* -1/32 (* (/ (* (pow im 2) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* im (+ (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2)))) (* (pow im 2) (+ (* -1/32 (* (sqrt (/ 1 (pow re 5))) (/ (sqrt 2) (sqrt 1/2)))) (* 1/4 (* (/ (* (pow im 2) (* (sqrt 2) (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2))))))) (sqrt 1/2)) (sqrt re)))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* im (+ (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2)))) (* (pow im 2) (+ (* -1/32 (* (sqrt (/ 1 (pow re 5))) (/ (sqrt 2) (sqrt 1/2)))) (* (pow im 2) (+ (* -1/4 (* (/ (* (pow im 2) (* (sqrt 2) (+ (* -1/16 (/ (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2))))) (* (pow re 2) (pow (sqrt 1/2) 2)))) (* 5/128 (/ 1 (pow re 7)))))) (sqrt 1/2)) (sqrt re))) (* 1/4 (* (sqrt re) (/ (* (sqrt 2) (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2)))))) (sqrt 1/2))))))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* im (+ (* -1/16 (* (/ (* (pow im 2) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2)))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* im (+ (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2))) (* (pow im 2) (+ (* -1/16 (* (sqrt (/ 1 (pow re 5))) (/ (sqrt 2) (sqrt 1/2)))) (* 1/2 (* (/ (* (pow im 2) (* (sqrt 2) (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2))))))) (sqrt 1/2)) (sqrt re)))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* im (+ (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2))) (* (pow im 2) (+ (* -1/16 (* (sqrt (/ 1 (pow re 5))) (/ (sqrt 2) (sqrt 1/2)))) (* (pow im 2) (+ (* -1/2 (* (/ (* (pow im 2) (* (sqrt 2) (+ (* -1/16 (/ (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2))))) (* (pow re 2) (pow (sqrt 1/2) 2)))) (* 5/128 (/ 1 (pow re 7)))))) (sqrt 1/2)) (sqrt re))) (* 1/2 (* (sqrt re) (/ (* (sqrt 2) (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2)))))) (sqrt 1/2))))))))))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* (pow im 2) (+ (* -1/4 (/ (pow im 2) (pow re 3))) (/ 1 re)))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* (pow im 2) (+ (* (pow im 2) (- (* 1/8 (/ (pow im 2) (pow re 5))) (* 1/4 (/ 1 (pow re 3))))) (/ 1 re)))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* (pow im 2) (+ (* (pow im 2) (- (* (pow im 2) (+ (* -5/64 (/ (pow im 2) (pow re 7))) (* 1/8 (/ 1 (pow re 5))))) (* 1/4 (/ 1 (pow re 3))))) (/ 1 re)))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (* (pow im 2) (+ (* -1/8 (/ (pow im 2) (pow re 3))) (* 1/2 (/ 1 re))))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (* (pow im 2) (+ (* (pow im 2) (- (* 1/16 (/ (pow im 2) (pow re 5))) (* 1/8 (/ 1 (pow re 3))))) (* 1/2 (/ 1 re))))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (* (pow im 2) (+ (* (pow im 2) (- (* (pow im 2) (+ (* -5/128 (/ (pow im 2) (pow re 7))) (* 1/16 (/ 1 (pow re 5))))) (* 1/8 (/ 1 (pow re 3))))) (* 1/2 (/ 1 re))))))
#s(approx (sqrt (+ (* re re) (* im im))) #s(hole binary64 (+ re (* 1/2 (/ (pow im 2) re)))))
#s(approx (sqrt (+ (* re re) (* im im))) #s(hole binary64 (+ re (* (pow im 2) (+ (* -1/8 (/ (pow im 2) (pow re 3))) (* 1/2 (/ 1 re)))))))
#s(approx (sqrt (+ (* re re) (* im im))) #s(hole binary64 (+ re (* (pow im 2) (+ (* (pow im 2) (- (* 1/16 (/ (pow im 2) (pow re 5))) (* 1/8 (/ 1 (pow re 3))))) (* 1/2 (/ 1 re)))))))
#s(approx (* 1/2 (* 1 im)) #s(hole binary64 (* 1/2 im)))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2)))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (+ (* 1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (+ (* -1/16 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2)))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2)))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2))))))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* im (+ 2 (* -2 (/ re im))))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* im (+ 2 (+ (* -2 (/ re im)) (/ (pow re 2) (pow im 2)))))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* im (+ 2 (+ (* -2 (/ re im)) (+ (* -1/4 (/ (pow re 4) (pow im 4))) (/ (pow re 2) (pow im 2))))))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (* im (+ 1 (* -1 (/ re im))))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (* im (- (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))) (/ re im)))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (* im (- (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2))))) (/ re im)))))
#s(approx (sqrt (+ (* re re) (* im im))) #s(hole binary64 (* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))))))
#s(approx (sqrt (+ (* re re) (* im im))) #s(hole binary64 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2))))))))
#s(approx (sqrt (+ (* re re) (* im im))) #s(hole binary64 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (+ (* 1/16 (/ (pow re 6) (pow im 6))) (* 1/2 (/ (pow re 2) (pow im 2)))))))))
#s(approx (+ (* im im) (* re re)) #s(hole binary64 (* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* -1/2 (* (sqrt im) (* (sqrt -1) (sqrt 2))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* -1 (* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* -1 (* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* -1 (* im (+ (* -1 (/ (+ (* 1/16 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* 1/8 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2)))))) (pow im 3))) (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* -1 (* (sqrt im) (* (sqrt -1) (sqrt 2))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* -1 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* -1 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (+ (* -1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* -1 (* im (+ (* -1 (/ (+ (* 1/8 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* 1/4 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2)))))) (pow im 3))) (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* -2 im)))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* -1 (* im (+ 2 (* 2 (/ re im)))))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* -1 (* im (+ 2 (* -1 (/ (+ (* -2 re) (* -1 (/ (pow re 2) im))) im)))))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* -1 (* im (+ 2 (* -1 (/ (+ (* -2 re) (* -1 (/ (+ (* -1/4 (/ (pow re 4) (pow im 2))) (pow re 2)) im))) im)))))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (* -1 im)))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (* -1 (* im (+ 1 (/ re im))))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (* -1 (* im (+ 1 (* -1 (/ (- (* -1/2 (/ (pow re 2) im)) re) im)))))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (* -1 (* im (+ 1 (* -1 (/ (- (* -1 (/ (+ (* -1/8 (/ (pow re 4) (pow im 2))) (* 1/2 (pow re 2))) im)) re) im)))))))
#s(approx (sqrt (+ (* re re) (* im im))) #s(hole binary64 (* -1 (* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2))))))))
#s(approx (sqrt (+ (* re re) (* im im))) #s(hole binary64 (* -1 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2)))))))))
#s(approx (sqrt (+ (* re re) (* im im))) #s(hole binary64 (* -1 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (+ (* 1/16 (/ (pow re 6) (pow im 6))) (* 1/2 (/ (pow re 2) (pow im 2))))))))))
Outputs
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (fma.f64 re re (*.f64 im im))) re))))
#s(literal 1/2 binary64)
(sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (fma.f64 re re (*.f64 im im))) re)))
(*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (fma.f64 re re (*.f64 im im))) re))
#s(literal 2 binary64)
(-.f64 (sqrt.f64 (fma.f64 re re (*.f64 im im))) re)
(sqrt.f64 (fma.f64 re re (*.f64 im im)))
(hypot.f64 re im)
re
im
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (+.f64 im im))))
(sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (+.f64 im im)))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (+.f64 im im))
(+.f64 im im)
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 im im) re))))
(sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 im im) re)))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 im im) re))
(/.f64 (*.f64 im im) re)
(*.f64 im im)
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1 binary64) im)) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))))
(*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1 binary64) im)) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))
(*.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1 binary64) im))
(*.f64 #s(literal 1 binary64) im)
#s(literal 1 binary64)
(sqrt.f64 (/.f64 #s(literal 1 binary64) re))
(/.f64 #s(literal 1 binary64) re)
(*.f64 (sqrt.f64 (*.f64 (-.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re))) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))
(sqrt.f64 (*.f64 (-.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re))) re) #s(literal 2 binary64)))
(*.f64 (-.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re))) re) #s(literal 2 binary64))
(-.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re))) re)
(sqrt.f64 (fma.f64 im im (*.f64 re re)))
(hypot.f64 im re)
(fma.f64 im im (*.f64 re re))
(+.f64 (*.f64 im im) (*.f64 re re))
(*.f64 re re)
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 im) (sqrt.f64 #s(literal 2 binary64)))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (fma.f64 #s(literal -1/4 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (*.f64 re (sqrt.f64 #s(literal 2 binary64)))) (*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 im) (sqrt.f64 #s(literal 2 binary64))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (fma.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 im) (sqrt.f64 #s(literal 2 binary64))) (*.f64 re (fma.f64 #s(literal -1/4 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 #s(literal 1/16 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (*.f64 re (sqrt.f64 #s(literal 2 binary64)))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (fma.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 im) (sqrt.f64 #s(literal 2 binary64))) (*.f64 re (fma.f64 #s(literal -1/4 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 re (fma.f64 #s(literal 1/32 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) (*.f64 re (sqrt.f64 #s(literal 2 binary64)))) (*.f64 #s(literal 1/16 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (sqrt.f64 #s(literal 2 binary64))))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (sqrt.f64 im) (sqrt.f64 #s(literal 2 binary64))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (fma.f64 #s(literal -1/2 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (*.f64 re (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (sqrt.f64 im) (sqrt.f64 #s(literal 2 binary64)))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (fma.f64 re (fma.f64 #s(literal -1/2 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 #s(literal 1/8 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (*.f64 re (sqrt.f64 #s(literal 2 binary64)))))) (*.f64 (sqrt.f64 im) (sqrt.f64 #s(literal 2 binary64)))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (fma.f64 re (fma.f64 #s(literal -1/2 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 re (fma.f64 #s(literal 1/16 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) (*.f64 re (sqrt.f64 #s(literal 2 binary64)))) (*.f64 #s(literal 1/8 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (sqrt.f64 #s(literal 2 binary64))))))) (*.f64 (sqrt.f64 im) (sqrt.f64 #s(literal 2 binary64)))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal 2 binary64) im))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (fma.f64 #s(literal -2 binary64) re (*.f64 #s(literal 2 binary64) im)))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (fma.f64 #s(literal 2 binary64) im (*.f64 re (-.f64 (/.f64 re im) #s(literal 2 binary64)))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (fma.f64 #s(literal 2 binary64) im (*.f64 re (-.f64 (*.f64 re (fma.f64 #s(literal -1/4 binary64) (/.f64 (pow.f64 re #s(literal 2 binary64)) (pow.f64 im #s(literal 3 binary64))) (/.f64 #s(literal 1 binary64) im))) #s(literal 2 binary64)))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) im)
#s(approx (- (sqrt (+ (* re re) (* im im))) re) (+.f64 im (*.f64 #s(literal -1 binary64) re)))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) (+.f64 im (*.f64 re (-.f64 (*.f64 #s(literal 1/2 binary64) (/.f64 re im)) #s(literal 1 binary64)))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) (+.f64 im (*.f64 re (-.f64 (*.f64 re (fma.f64 #s(literal -1/8 binary64) (/.f64 (pow.f64 re #s(literal 2 binary64)) (pow.f64 im #s(literal 3 binary64))) (*.f64 #s(literal 1/2 binary64) (/.f64 #s(literal 1 binary64) im)))) #s(literal 1 binary64)))))
#s(approx (sqrt (+ (* re re) (* im im))) (+.f64 im (*.f64 #s(literal 1/2 binary64) (/.f64 (pow.f64 re #s(literal 2 binary64)) im))))
#s(approx (sqrt (+ (* re re) (* im im))) (+.f64 im (*.f64 (pow.f64 re #s(literal 2 binary64)) (fma.f64 #s(literal -1/8 binary64) (/.f64 (pow.f64 re #s(literal 2 binary64)) (pow.f64 im #s(literal 3 binary64))) (*.f64 #s(literal 1/2 binary64) (/.f64 #s(literal 1 binary64) im))))))
#s(approx (sqrt (+ (* re re) (* im im))) (+.f64 im (*.f64 (pow.f64 re #s(literal 2 binary64)) (fma.f64 (pow.f64 re #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal 1/16 binary64) (/.f64 (pow.f64 re #s(literal 2 binary64)) (pow.f64 im #s(literal 5 binary64)))) (*.f64 #s(literal 1/8 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64))))) (*.f64 #s(literal 1/2 binary64) (/.f64 #s(literal 1 binary64) im))))))
#s(approx re re)
#s(approx (/ (* im im) re) (/.f64 (pow.f64 im #s(literal 2 binary64)) re))
#s(approx (* (* 1/2 (* 1 im)) (sqrt (/ 1 re))) (*.f64 #s(literal 1/2 binary64) (*.f64 im (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))))
#s(approx (sqrt (/ 1 re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))
#s(approx (/ 1 re) (/.f64 #s(literal 1 binary64) re))
#s(approx (+ (* im im) (* re re)) (pow.f64 im #s(literal 2 binary64)))
#s(approx (+ (* im im) (* re re)) (+.f64 (pow.f64 im #s(literal 2 binary64)) (pow.f64 re #s(literal 2 binary64))))
#s(approx (* re re) (pow.f64 re #s(literal 2 binary64)))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 im (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (fma.f64 #s(literal -1/32 binary64) (*.f64 (/.f64 (*.f64 (pow.f64 im #s(literal 3 binary64)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64))))) (*.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 im (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (fma.f64 #s(literal -1/32 binary64) (*.f64 (/.f64 (*.f64 (pow.f64 im #s(literal 3 binary64)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64))))) (fma.f64 #s(literal 1/64 binary64) (*.f64 (/.f64 (*.f64 (pow.f64 im #s(literal 5 binary64)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 9 binary64))))) (*.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 im (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (fma.f64 #s(literal -1/32 binary64) (*.f64 (/.f64 (*.f64 (pow.f64 im #s(literal 3 binary64)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64))))) (fma.f64 #s(literal -1/1024 binary64) (*.f64 (/.f64 (*.f64 (pow.f64 im #s(literal 5 binary64)) (sqrt.f64 #s(literal 2 binary64))) (pow.f64 (sqrt.f64 #s(literal 1/2 binary64)) #s(literal 3 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 9 binary64))))) (fma.f64 #s(literal 1/64 binary64) (*.f64 (/.f64 (*.f64 (pow.f64 im #s(literal 5 binary64)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 9 binary64))))) (*.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 im (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (*.f64 im (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (fma.f64 #s(literal -1/16 binary64) (*.f64 (/.f64 (*.f64 (pow.f64 im #s(literal 3 binary64)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64))))) (*.f64 (*.f64 im (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (fma.f64 #s(literal -1/16 binary64) (*.f64 (/.f64 (*.f64 (pow.f64 im #s(literal 3 binary64)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64))))) (fma.f64 #s(literal 1/32 binary64) (*.f64 (/.f64 (*.f64 (pow.f64 im #s(literal 5 binary64)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 9 binary64))))) (*.f64 (*.f64 im (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (fma.f64 #s(literal -1/16 binary64) (*.f64 (/.f64 (*.f64 (pow.f64 im #s(literal 3 binary64)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64))))) (fma.f64 #s(literal -1/512 binary64) (*.f64 (/.f64 (*.f64 (pow.f64 im #s(literal 5 binary64)) (sqrt.f64 #s(literal 2 binary64))) (pow.f64 (sqrt.f64 #s(literal 1/2 binary64)) #s(literal 3 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 9 binary64))))) (fma.f64 #s(literal 1/32 binary64) (*.f64 (/.f64 (*.f64 (pow.f64 im #s(literal 5 binary64)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 9 binary64))))) (*.f64 (*.f64 im (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (/.f64 (fma.f64 #s(literal -1/4 binary64) (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 2 binary64))) (pow.f64 im #s(literal 2 binary64))) re))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (/.f64 (fma.f64 #s(literal -1/4 binary64) (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 2 binary64))) (fma.f64 #s(literal 1/8 binary64) (/.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 im #s(literal 2 binary64)))) re))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (/.f64 (fma.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal 1/64 binary64) (pow.f64 im #s(literal 8 binary64)) (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64)))) (pow.f64 re #s(literal 6 binary64))) (fma.f64 #s(literal -1/4 binary64) (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 2 binary64))) (fma.f64 #s(literal 1/8 binary64) (/.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 im #s(literal 2 binary64))))) re))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 #s(literal 1/2 binary64) (/.f64 (pow.f64 im #s(literal 2 binary64)) re)))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) (/.f64 (fma.f64 #s(literal -1/8 binary64) (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 2 binary64))) (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)))) re))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) (/.f64 (fma.f64 #s(literal -1/8 binary64) (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 2 binary64))) (fma.f64 #s(literal 1/16 binary64) (/.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 4 binary64))) (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64))))) re))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) (/.f64 (fma.f64 #s(literal -1/2 binary64) (/.f64 (fma.f64 #s(literal 1/64 binary64) (pow.f64 im #s(literal 8 binary64)) (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64)))) (pow.f64 re #s(literal 6 binary64))) (fma.f64 #s(literal -1/8 binary64) (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 2 binary64))) (fma.f64 #s(literal 1/16 binary64) (/.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 4 binary64))) (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)))))) re))
#s(approx (sqrt (+ (* re re) (* im im))) (*.f64 re (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (/.f64 (pow.f64 im #s(literal 2 binary64)) (pow.f64 re #s(literal 2 binary64)))))))
#s(approx (sqrt (+ (* re re) (* im im))) (*.f64 re (+.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/8 binary64) (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (*.f64 #s(literal 1/2 binary64) (/.f64 (pow.f64 im #s(literal 2 binary64)) (pow.f64 re #s(literal 2 binary64))))))))
#s(approx (sqrt (+ (* re re) (* im im))) (*.f64 re (+.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/8 binary64) (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (fma.f64 #s(literal 1/16 binary64) (/.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) (*.f64 #s(literal 1/2 binary64) (/.f64 (pow.f64 im #s(literal 2 binary64)) (pow.f64 re #s(literal 2 binary64)))))))))
#s(approx (+ (* im im) (* re re)) (*.f64 (pow.f64 re #s(literal 2 binary64)) (+.f64 #s(literal 1 binary64) (/.f64 (pow.f64 im #s(literal 2 binary64)) (pow.f64 re #s(literal 2 binary64))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 #s(literal -1/2 binary64) (*.f64 (sqrt.f64 re) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (pow.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 2 binary64))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 #s(literal -1 binary64) (*.f64 re (fma.f64 #s(literal -1/8 binary64) (*.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) (sqrt.f64 #s(literal -1 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64))))) (*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (pow.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 2 binary64)))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 #s(literal -1 binary64) (*.f64 re (fma.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1/32 binary64) (*.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) (sqrt.f64 #s(literal -1 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64))))) (*.f64 #s(literal 1/8 binary64) (*.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) (sqrt.f64 #s(literal -1 binary64))) (sqrt.f64 re)))) (pow.f64 re #s(literal 3 binary64))) (*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (pow.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 2 binary64)))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 #s(literal -1 binary64) (*.f64 re (fma.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1/32 binary64) (*.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) (sqrt.f64 #s(literal -1 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64))))) (fma.f64 #s(literal 1/64 binary64) (*.f64 (/.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) (sqrt.f64 #s(literal -1 binary64))) (pow.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64))))) (*.f64 #s(literal 1/8 binary64) (*.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) (sqrt.f64 #s(literal -1 binary64))) (sqrt.f64 re))))) (pow.f64 re #s(literal 3 binary64))) (*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (pow.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 2 binary64)))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 #s(literal -1 binary64) (*.f64 (sqrt.f64 re) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (pow.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 2 binary64))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 #s(literal -1 binary64) (*.f64 re (fma.f64 #s(literal -1/4 binary64) (*.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) (sqrt.f64 #s(literal -1 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (pow.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 2 binary64))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 #s(literal -1 binary64) (*.f64 re (fma.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1/16 binary64) (*.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) (sqrt.f64 #s(literal -1 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64))))) (*.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) (sqrt.f64 #s(literal -1 binary64))) (sqrt.f64 re)))) (pow.f64 re #s(literal 3 binary64))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (pow.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 2 binary64))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 #s(literal -1 binary64) (*.f64 re (fma.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1/16 binary64) (*.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) (sqrt.f64 #s(literal -1 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64))))) (fma.f64 #s(literal 1/32 binary64) (*.f64 (/.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) (sqrt.f64 #s(literal -1 binary64))) (pow.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64))))) (*.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) (sqrt.f64 #s(literal -1 binary64))) (sqrt.f64 re))))) (pow.f64 re #s(literal 3 binary64))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (pow.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 2 binary64))))))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -1 binary64) (*.f64 re (+.f64 #s(literal 4 binary64) (/.f64 (pow.f64 im #s(literal 2 binary64)) (pow.f64 re #s(literal 2 binary64)))))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -1 binary64) (*.f64 re (+.f64 #s(literal 4 binary64) (fma.f64 #s(literal -1/4 binary64) (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (/.f64 (pow.f64 im #s(literal 2 binary64)) (pow.f64 re #s(literal 2 binary64))))))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -1 binary64) (*.f64 re (+.f64 #s(literal 4 binary64) (fma.f64 #s(literal -1/4 binary64) (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (fma.f64 #s(literal 1/8 binary64) (/.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) (/.f64 (pow.f64 im #s(literal 2 binary64)) (pow.f64 re #s(literal 2 binary64)))))))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 #s(literal -2 binary64) re))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 #s(literal -1 binary64) (*.f64 re (+.f64 #s(literal 2 binary64) (*.f64 #s(literal 1/2 binary64) (/.f64 (pow.f64 im #s(literal 2 binary64)) (pow.f64 re #s(literal 2 binary64))))))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 #s(literal -1 binary64) (*.f64 re (+.f64 #s(literal 2 binary64) (fma.f64 #s(literal -1/8 binary64) (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (*.f64 #s(literal 1/2 binary64) (/.f64 (pow.f64 im #s(literal 2 binary64)) (pow.f64 re #s(literal 2 binary64)))))))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 #s(literal -1 binary64) (*.f64 re (+.f64 #s(literal 2 binary64) (fma.f64 #s(literal -1/8 binary64) (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (fma.f64 #s(literal 1/16 binary64) (/.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) (*.f64 #s(literal 1/2 binary64) (/.f64 (pow.f64 im #s(literal 2 binary64)) (pow.f64 re #s(literal 2 binary64))))))))))
#s(approx (sqrt (+ (* re re) (* im im))) (*.f64 #s(literal -1 binary64) re))
#s(approx (sqrt (+ (* re re) (* im im))) (*.f64 #s(literal -1 binary64) (*.f64 re (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (/.f64 (pow.f64 im #s(literal 2 binary64)) (pow.f64 re #s(literal 2 binary64))))))))
#s(approx (sqrt (+ (* re re) (* im im))) (*.f64 #s(literal -1 binary64) (*.f64 re (+.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/8 binary64) (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (*.f64 #s(literal 1/2 binary64) (/.f64 (pow.f64 im #s(literal 2 binary64)) (pow.f64 re #s(literal 2 binary64)))))))))
#s(approx (sqrt (+ (* re re) (* im im))) (*.f64 #s(literal -1 binary64) (*.f64 re (+.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/8 binary64) (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (fma.f64 #s(literal 1/16 binary64) (/.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) (*.f64 #s(literal 1/2 binary64) (/.f64 (pow.f64 im #s(literal 2 binary64)) (pow.f64 re #s(literal 2 binary64))))))))))
#s(approx (* (* 1/2 (* 1 im)) (sqrt (/ 1 re))) (*.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 im (pow.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))))
#s(approx (sqrt (/ 1 re)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (pow.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 2 binary64))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 im (fma.f64 #s(literal -1/32 binary64) (*.f64 (/.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64))))) (*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 im (fma.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (pow.f64 im #s(literal 2 binary64)) (fma.f64 #s(literal -1/32 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (/.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 1/2 binary64)))) (*.f64 #s(literal 1/4 binary64) (*.f64 (/.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal 1/16 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (*.f64 #s(literal 1/256 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 re #s(literal 5 binary64)) (pow.f64 (sqrt.f64 #s(literal 1/2 binary64)) #s(literal 2 binary64)))))))) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 re))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 im (fma.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (pow.f64 im #s(literal 2 binary64)) (fma.f64 #s(literal -1/32 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (/.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 1/2 binary64)))) (*.f64 (pow.f64 im #s(literal 2 binary64)) (fma.f64 #s(literal -1/4 binary64) (*.f64 (/.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (fma.f64 #s(literal -1/16 binary64) (/.f64 (-.f64 (*.f64 #s(literal 1/16 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (*.f64 #s(literal 1/256 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 re #s(literal 5 binary64)) (pow.f64 (sqrt.f64 #s(literal 1/2 binary64)) #s(literal 2 binary64)))))) (*.f64 (pow.f64 re #s(literal 2 binary64)) (pow.f64 (sqrt.f64 #s(literal 1/2 binary64)) #s(literal 2 binary64)))) (*.f64 #s(literal 5/128 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 7 binary64))))))) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 re)) (*.f64 #s(literal 1/4 binary64) (*.f64 (sqrt.f64 re) (/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal 1/16 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (*.f64 #s(literal 1/256 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 re #s(literal 5 binary64)) (pow.f64 (sqrt.f64 #s(literal 1/2 binary64)) #s(literal 2 binary64))))))) (sqrt.f64 #s(literal 1/2 binary64))))))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 im (fma.f64 #s(literal -1/16 binary64) (*.f64 (/.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64)))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 im (fma.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (pow.f64 im #s(literal 2 binary64)) (fma.f64 #s(literal -1/16 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (/.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 1/2 binary64)))) (*.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal 1/16 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (*.f64 #s(literal 1/256 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 re #s(literal 5 binary64)) (pow.f64 (sqrt.f64 #s(literal 1/2 binary64)) #s(literal 2 binary64)))))))) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 re))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 im (fma.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (pow.f64 im #s(literal 2 binary64)) (fma.f64 #s(literal -1/16 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (/.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 1/2 binary64)))) (*.f64 (pow.f64 im #s(literal 2 binary64)) (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (fma.f64 #s(literal -1/16 binary64) (/.f64 (-.f64 (*.f64 #s(literal 1/16 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (*.f64 #s(literal 1/256 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 re #s(literal 5 binary64)) (pow.f64 (sqrt.f64 #s(literal 1/2 binary64)) #s(literal 2 binary64)))))) (*.f64 (pow.f64 re #s(literal 2 binary64)) (pow.f64 (sqrt.f64 #s(literal 1/2 binary64)) #s(literal 2 binary64)))) (*.f64 #s(literal 5/128 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 7 binary64))))))) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 re)) (*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 re) (/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal 1/16 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (*.f64 #s(literal 1/256 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 re #s(literal 5 binary64)) (pow.f64 (sqrt.f64 #s(literal 1/2 binary64)) #s(literal 2 binary64))))))) (sqrt.f64 #s(literal 1/2 binary64))))))))))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (pow.f64 im #s(literal 2 binary64)) (fma.f64 #s(literal -1/4 binary64) (/.f64 (pow.f64 im #s(literal 2 binary64)) (pow.f64 re #s(literal 3 binary64))) (/.f64 #s(literal 1 binary64) re))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (pow.f64 im #s(literal 2 binary64)) (fma.f64 (pow.f64 im #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal 1/8 binary64) (/.f64 (pow.f64 im #s(literal 2 binary64)) (pow.f64 re #s(literal 5 binary64)))) (*.f64 #s(literal 1/4 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64))))) (/.f64 #s(literal 1 binary64) re))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (pow.f64 im #s(literal 2 binary64)) (fma.f64 (pow.f64 im #s(literal 2 binary64)) (-.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) (fma.f64 #s(literal -5/64 binary64) (/.f64 (pow.f64 im #s(literal 2 binary64)) (pow.f64 re #s(literal 7 binary64))) (*.f64 #s(literal 1/8 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))))) (*.f64 #s(literal 1/4 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64))))) (/.f64 #s(literal 1 binary64) re))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (pow.f64 im #s(literal 2 binary64)) (fma.f64 #s(literal -1/8 binary64) (/.f64 (pow.f64 im #s(literal 2 binary64)) (pow.f64 re #s(literal 3 binary64))) (*.f64 #s(literal 1/2 binary64) (/.f64 #s(literal 1 binary64) re)))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (pow.f64 im #s(literal 2 binary64)) (fma.f64 (pow.f64 im #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal 1/16 binary64) (/.f64 (pow.f64 im #s(literal 2 binary64)) (pow.f64 re #s(literal 5 binary64)))) (*.f64 #s(literal 1/8 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64))))) (*.f64 #s(literal 1/2 binary64) (/.f64 #s(literal 1 binary64) re)))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (pow.f64 im #s(literal 2 binary64)) (fma.f64 (pow.f64 im #s(literal 2 binary64)) (-.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) (fma.f64 #s(literal -5/128 binary64) (/.f64 (pow.f64 im #s(literal 2 binary64)) (pow.f64 re #s(literal 7 binary64))) (*.f64 #s(literal 1/16 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))))) (*.f64 #s(literal 1/8 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64))))) (*.f64 #s(literal 1/2 binary64) (/.f64 #s(literal 1 binary64) re)))))
#s(approx (sqrt (+ (* re re) (* im im))) (+.f64 re (*.f64 #s(literal 1/2 binary64) (/.f64 (pow.f64 im #s(literal 2 binary64)) re))))
#s(approx (sqrt (+ (* re re) (* im im))) (+.f64 re (*.f64 (pow.f64 im #s(literal 2 binary64)) (fma.f64 #s(literal -1/8 binary64) (/.f64 (pow.f64 im #s(literal 2 binary64)) (pow.f64 re #s(literal 3 binary64))) (*.f64 #s(literal 1/2 binary64) (/.f64 #s(literal 1 binary64) re))))))
#s(approx (sqrt (+ (* re re) (* im im))) (+.f64 re (*.f64 (pow.f64 im #s(literal 2 binary64)) (fma.f64 (pow.f64 im #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal 1/16 binary64) (/.f64 (pow.f64 im #s(literal 2 binary64)) (pow.f64 re #s(literal 5 binary64)))) (*.f64 #s(literal 1/8 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64))))) (*.f64 #s(literal 1/2 binary64) (/.f64 #s(literal 1 binary64) re))))))
#s(approx (* 1/2 (* 1 im)) (*.f64 #s(literal 1/2 binary64) im))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 im (fma.f64 #s(literal -1/4 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (*.f64 re (sqrt.f64 #s(literal 2 binary64)))) (*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal 2 binary64)))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 im (fma.f64 #s(literal -1/4 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (*.f64 re (sqrt.f64 #s(literal 2 binary64)))) (fma.f64 #s(literal 1/8 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) (*.f64 (pow.f64 re #s(literal 2 binary64)) (sqrt.f64 #s(literal 2 binary64)))) (*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal 2 binary64))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 im (fma.f64 #s(literal -1/4 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (*.f64 re (sqrt.f64 #s(literal 2 binary64)))) (fma.f64 #s(literal -1/16 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) (*.f64 (pow.f64 re #s(literal 2 binary64)) (sqrt.f64 #s(literal 2 binary64)))) (fma.f64 #s(literal 1/8 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) (*.f64 (pow.f64 re #s(literal 2 binary64)) (sqrt.f64 #s(literal 2 binary64)))) (*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal 2 binary64)))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 im (fma.f64 #s(literal -1/2 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (*.f64 re (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal 2 binary64))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 im (fma.f64 #s(literal -1/2 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (*.f64 re (sqrt.f64 #s(literal 2 binary64)))) (fma.f64 #s(literal 1/4 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) (*.f64 (pow.f64 re #s(literal 2 binary64)) (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal 2 binary64)))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 im (fma.f64 #s(literal -1/2 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (*.f64 re (sqrt.f64 #s(literal 2 binary64)))) (fma.f64 #s(literal -1/8 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) (*.f64 (pow.f64 re #s(literal 2 binary64)) (sqrt.f64 #s(literal 2 binary64)))) (fma.f64 #s(literal 1/4 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) (*.f64 (pow.f64 re #s(literal 2 binary64)) (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal 2 binary64))))))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 im (+.f64 #s(literal 2 binary64) (*.f64 #s(literal -2 binary64) (/.f64 re im)))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 im (+.f64 #s(literal 2 binary64) (fma.f64 #s(literal -2 binary64) (/.f64 re im) (/.f64 (pow.f64 re #s(literal 2 binary64)) (pow.f64 im #s(literal 2 binary64)))))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 im (+.f64 #s(literal 2 binary64) (fma.f64 #s(literal -2 binary64) (/.f64 re im) (fma.f64 #s(literal -1/4 binary64) (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) (/.f64 (pow.f64 re #s(literal 2 binary64)) (pow.f64 im #s(literal 2 binary64))))))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 im (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1 binary64) (/.f64 re im)))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 im (-.f64 (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (/.f64 (pow.f64 re #s(literal 2 binary64)) (pow.f64 im #s(literal 2 binary64))))) (/.f64 re im))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 im (-.f64 (+.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/8 binary64) (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) (*.f64 #s(literal 1/2 binary64) (/.f64 (pow.f64 re #s(literal 2 binary64)) (pow.f64 im #s(literal 2 binary64)))))) (/.f64 re im))))
#s(approx (sqrt (+ (* re re) (* im im))) (*.f64 im (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (/.f64 (pow.f64 re #s(literal 2 binary64)) (pow.f64 im #s(literal 2 binary64)))))))
#s(approx (sqrt (+ (* re re) (* im im))) (*.f64 im (+.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/8 binary64) (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) (*.f64 #s(literal 1/2 binary64) (/.f64 (pow.f64 re #s(literal 2 binary64)) (pow.f64 im #s(literal 2 binary64))))))))
#s(approx (sqrt (+ (* re re) (* im im))) (*.f64 im (+.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/8 binary64) (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) (fma.f64 #s(literal 1/16 binary64) (/.f64 (pow.f64 re #s(literal 6 binary64)) (pow.f64 im #s(literal 6 binary64))) (*.f64 #s(literal 1/2 binary64) (/.f64 (pow.f64 re #s(literal 2 binary64)) (pow.f64 im #s(literal 2 binary64)))))))))
#s(approx (+ (* im im) (* re re)) (*.f64 (pow.f64 im #s(literal 2 binary64)) (+.f64 #s(literal 1 binary64) (/.f64 (pow.f64 re #s(literal 2 binary64)) (pow.f64 im #s(literal 2 binary64))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 #s(literal -1/2 binary64) (*.f64 (sqrt.f64 im) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 #s(literal -1 binary64) (*.f64 im (fma.f64 #s(literal -1/4 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (*.f64 re (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))))) (*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64)))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 #s(literal -1 binary64) (*.f64 im (fma.f64 #s(literal -1/4 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (*.f64 re (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))))) (fma.f64 #s(literal -1/8 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) (*.f64 (pow.f64 re #s(literal 2 binary64)) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))))) (*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 #s(literal -1 binary64) (*.f64 im (fma.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal 1/16 binary64) (*.f64 (sqrt.f64 im) (*.f64 (pow.f64 re #s(literal 2 binary64)) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))))) (*.f64 #s(literal 1/8 binary64) (*.f64 (sqrt.f64 im) (*.f64 (pow.f64 re #s(literal 2 binary64)) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))))))) (pow.f64 im #s(literal 3 binary64))) (fma.f64 #s(literal -1/4 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (*.f64 re (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))))) (*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 #s(literal -1 binary64) (*.f64 (sqrt.f64 im) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 #s(literal -1 binary64) (*.f64 im (fma.f64 #s(literal -1/2 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (*.f64 re (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 #s(literal -1 binary64) (*.f64 im (fma.f64 #s(literal -1/2 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (*.f64 re (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))))) (fma.f64 #s(literal -1/4 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) (*.f64 (pow.f64 re #s(literal 2 binary64)) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64)))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 #s(literal -1 binary64) (*.f64 im (fma.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal 1/8 binary64) (*.f64 (sqrt.f64 im) (*.f64 (pow.f64 re #s(literal 2 binary64)) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))))) (*.f64 #s(literal 1/4 binary64) (*.f64 (sqrt.f64 im) (*.f64 (pow.f64 re #s(literal 2 binary64)) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))))))) (pow.f64 im #s(literal 3 binary64))) (fma.f64 #s(literal -1/2 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (*.f64 re (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64)))))))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -2 binary64) im))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -1 binary64) (*.f64 im (+.f64 #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (/.f64 re im))))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -1 binary64) (*.f64 im (+.f64 #s(literal 2 binary64) (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -2 binary64) re (*.f64 #s(literal -1 binary64) (/.f64 (pow.f64 re #s(literal 2 binary64)) im))) im))))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -1 binary64) (*.f64 im (+.f64 #s(literal 2 binary64) (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -2 binary64) re (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1/4 binary64) (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 2 binary64))) (pow.f64 re #s(literal 2 binary64))) im))) im))))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 #s(literal -1 binary64) im))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 #s(literal -1 binary64) (*.f64 im (+.f64 #s(literal 1 binary64) (/.f64 re im)))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 #s(literal -1 binary64) (*.f64 im (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1 binary64) (/.f64 (-.f64 (*.f64 #s(literal -1/2 binary64) (/.f64 (pow.f64 re #s(literal 2 binary64)) im)) re) im))))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 #s(literal -1 binary64) (*.f64 im (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1 binary64) (/.f64 (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1/8 binary64) (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 2 binary64))) (*.f64 #s(literal 1/2 binary64) (pow.f64 re #s(literal 2 binary64)))) im)) re) im))))))
#s(approx (sqrt (+ (* re re) (* im im))) (*.f64 #s(literal -1 binary64) (*.f64 im (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (/.f64 (pow.f64 re #s(literal 2 binary64)) (pow.f64 im #s(literal 2 binary64))))))))
#s(approx (sqrt (+ (* re re) (* im im))) (*.f64 #s(literal -1 binary64) (*.f64 im (+.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/8 binary64) (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) (*.f64 #s(literal 1/2 binary64) (/.f64 (pow.f64 re #s(literal 2 binary64)) (pow.f64 im #s(literal 2 binary64)))))))))
#s(approx (sqrt (+ (* re re) (* im im))) (*.f64 #s(literal -1 binary64) (*.f64 im (+.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/8 binary64) (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) (fma.f64 #s(literal 1/16 binary64) (/.f64 (pow.f64 re #s(literal 6 binary64)) (pow.f64 im #s(literal 6 binary64))) (*.f64 #s(literal 1/2 binary64) (/.f64 (pow.f64 re #s(literal 2 binary64)) (pow.f64 im #s(literal 2 binary64))))))))))

eval17.0ms (0.5%)

Memory
8.5MiB live, 54.1MiB allocated; 4ms collecting garbage
Compiler

Compiled 2 728 to 907 computations (66.8% saved)

prune7.0ms (0.2%)

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

10 alts after pruning (7 fresh and 3 done)

PrunedKeptTotal
New1244128
Fresh033
Picked235
Done000
Total12610136
Accuracy
99.9%
Counts
136 → 10
Alt Table
Click to see full alt table
StatusAccuracyProgram
78.9%
(*.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))
43.1%
(*.f64 (sqrt.f64 (*.f64 (-.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re))) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))
55.9%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (+.f64 (neg.f64 re) im)))))
53.6%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (+.f64 im im)))))
14.8%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 im im) re))))
53.8%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (+.f64 im im))))
24.5%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re))))
52.8%
(*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (fma.f64 #s(literal -1/2 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (*.f64 re (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (sqrt.f64 im) (sqrt.f64 #s(literal 2 binary64))))))
26.5%
(*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (*.f64 im (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))))
26.8%
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 #s(approx (* 1/2 (* 1 im)) (*.f64 #s(literal 1/2 binary64) im)) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))))
Compiler

Compiled 294 to 292 computations (0.7% saved)

series25.0ms (0.8%)

Memory
-19.9MiB live, 79.3MiB allocated; 5ms collecting garbage
Counts
34 → 132
Calls
Call 1
Inputs
(*.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))
(sqrt.f64 (*.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64)))
(*.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64))
(-.f64 (hypot.f64 im re) re)
(hypot.f64 im re)
im
re
#s(literal 2 binary64)
#s(literal 1/2 binary64)
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re))))
(sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re)))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re))
(*.f64 #s(literal -4 binary64) re)
#s(literal -4 binary64)
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 #s(approx (* 1/2 (* 1 im)) (*.f64 #s(literal 1/2 binary64) im)) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))))
(*.f64 #s(approx (* 1/2 (* 1 im)) (*.f64 #s(literal 1/2 binary64) im)) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))
#s(approx (* 1/2 (* 1 im)) (*.f64 #s(literal 1/2 binary64) im))
(*.f64 #s(literal 1/2 binary64) im)
(sqrt.f64 (/.f64 #s(literal 1 binary64) re))
(/.f64 #s(literal 1 binary64) re)
#s(literal 1 binary64)
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (+.f64 (neg.f64 re) im)))))
(sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (+.f64 (neg.f64 re) im))))
(*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (+.f64 (neg.f64 re) im)))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) (+.f64 (neg.f64 re) im))
(+.f64 (neg.f64 re) im)
(neg.f64 re)
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (+.f64 im im)))))
(sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (+.f64 im im))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (+.f64 im im)))
(fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (+.f64 im im))
(-.f64 (/.f64 re im) #s(literal 2 binary64))
(/.f64 re im)
(+.f64 im im)
Outputs
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) #s(hole binary64 (* 1/2 (* (sqrt im) (sqrt 2)))))
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) #s(hole binary64 (+ (* -1/4 (* (sqrt (/ 1 im)) (* re (sqrt 2)))) (* 1/2 (* (sqrt im) (sqrt 2))))))
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) #s(hole binary64 (+ (* 1/2 (* (sqrt im) (sqrt 2))) (* re (+ (* -1/4 (* (sqrt (/ 1 im)) (sqrt 2))) (* 1/16 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))))))))
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) #s(hole binary64 (+ (* 1/2 (* (sqrt im) (sqrt 2))) (* re (+ (* -1/4 (* (sqrt (/ 1 im)) (sqrt 2))) (* re (+ (* 1/32 (* (sqrt (/ 1 (pow im 5))) (* re (sqrt 2)))) (* 1/16 (* (sqrt (/ 1 (pow im 3))) (sqrt 2))))))))))
#s(approx (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) #s(hole binary64 (* (sqrt im) (sqrt 2))))
#s(approx (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) #s(hole binary64 (+ (* -1/2 (* (sqrt (/ 1 im)) (* re (sqrt 2)))) (* (sqrt im) (sqrt 2)))))
#s(approx (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) #s(hole binary64 (+ (* re (+ (* -1/2 (* (sqrt (/ 1 im)) (sqrt 2))) (* 1/8 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))))) (* (sqrt im) (sqrt 2)))))
#s(approx (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) #s(hole binary64 (+ (* re (+ (* -1/2 (* (sqrt (/ 1 im)) (sqrt 2))) (* re (+ (* 1/16 (* (sqrt (/ 1 (pow im 5))) (* re (sqrt 2)))) (* 1/8 (* (sqrt (/ 1 (pow im 3))) (sqrt 2))))))) (* (sqrt im) (sqrt 2)))))
#s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) #s(hole binary64 (* 2 im)))
#s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) #s(hole binary64 (+ (* -2 re) (* 2 im))))
#s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) #s(hole binary64 (+ (* 2 im) (* re (- (/ re im) 2)))))
#s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) #s(hole binary64 (+ (* 2 im) (* re (- (* re (+ (* -1/4 (/ (pow re 2) (pow im 3))) (/ 1 im))) 2)))))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) #s(hole binary64 im))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) #s(hole binary64 (+ im (* -1 re))))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) #s(hole binary64 (+ im (* re (- (* 1/2 (/ re im)) 1)))))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) #s(hole binary64 (+ im (* re (- (* re (+ (* -1/8 (/ (pow re 2) (pow im 3))) (* 1/2 (/ 1 im)))) 1)))))
#s(approx (sqrt (+ (* im im) (* re re))) #s(hole binary64 (+ im (* 1/2 (/ (pow re 2) im)))))
#s(approx (sqrt (+ (* im im) (* re re))) #s(hole binary64 (+ im (* (pow re 2) (+ (* -1/8 (/ (pow re 2) (pow im 3))) (* 1/2 (/ 1 im)))))))
#s(approx (sqrt (+ (* im im) (* re re))) #s(hole binary64 (+ im (* (pow re 2) (+ (* (pow re 2) (- (* 1/16 (/ (pow re 2) (pow im 5))) (* 1/8 (/ 1 (pow im 3))))) (* 1/2 (/ 1 im)))))))
#s(approx re #s(hole binary64 re))
#s(approx (* -4 re) #s(hole binary64 (* -4 re)))
#s(approx (* (* 1/2 (* 1 im)) (sqrt (/ 1 re))) #s(hole binary64 (* 1/2 (* im (sqrt (/ 1 re))))))
#s(approx (sqrt (/ 1 re)) #s(hole binary64 (sqrt (/ 1 re))))
#s(approx (/ 1 re) #s(hole binary64 (/ 1 re)))
#s(approx (neg re) #s(hole binary64 (* -1 re)))
#s(approx (- (/ re im) 2) #s(hole binary64 -2))
#s(approx (- (/ re im) 2) #s(hole binary64 (- (/ re im) 2)))
#s(approx (/ re im) #s(hole binary64 (/ re im)))
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) #s(hole binary64 (* 1/2 (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re))))))
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) #s(hole binary64 (+ (* -1/32 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re)))))))
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) #s(hole binary64 (+ (* -1/32 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* 1/64 (* (/ (* (pow im 5) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* 1/2 (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re))))))))
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) #s(hole binary64 (+ (* -1/32 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* -1/1024 (* (/ (* (pow im 5) (sqrt 2)) (pow (sqrt 1/2) 3)) (sqrt (/ 1 (pow re 9))))) (+ (* 1/64 (* (/ (* (pow im 5) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* 1/2 (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re)))))))))
#s(approx (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) #s(hole binary64 (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re)))))
#s(approx (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) #s(hole binary64 (+ (* -1/16 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re))))))
#s(approx (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) #s(hole binary64 (+ (* -1/16 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* 1/32 (* (/ (* (pow im 5) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re)))))))
#s(approx (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) #s(hole binary64 (+ (* -1/16 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* -1/512 (* (/ (* (pow im 5) (sqrt 2)) (pow (sqrt 1/2) 3)) (sqrt (/ 1 (pow re 9))))) (+ (* 1/32 (* (/ (* (pow im 5) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re))))))))
#s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) #s(hole binary64 (/ (pow im 2) re)))
#s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) #s(hole binary64 (/ (+ (* -1/4 (/ (pow im 4) (pow re 2))) (pow im 2)) re)))
#s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) #s(hole binary64 (/ (+ (* -1/4 (/ (pow im 4) (pow re 2))) (+ (* 1/8 (/ (pow im 6) (pow re 4))) (pow im 2))) re)))
#s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) #s(hole binary64 (/ (+ (* -1 (/ (+ (* 1/64 (pow im 8)) (* 1/16 (pow im 8))) (pow re 6))) (+ (* -1/4 (/ (pow im 4) (pow re 2))) (+ (* 1/8 (/ (pow im 6) (pow re 4))) (pow im 2)))) re)))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) #s(hole binary64 (* 1/2 (/ (pow im 2) re))))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) #s(hole binary64 (/ (+ (* -1/8 (/ (pow im 4) (pow re 2))) (* 1/2 (pow im 2))) re)))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) #s(hole binary64 (/ (+ (* -1/8 (/ (pow im 4) (pow re 2))) (+ (* 1/16 (/ (pow im 6) (pow re 4))) (* 1/2 (pow im 2)))) re)))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) #s(hole binary64 (/ (+ (* -1/2 (/ (+ (* 1/64 (pow im 8)) (* 1/16 (pow im 8))) (pow re 6))) (+ (* -1/8 (/ (pow im 4) (pow re 2))) (+ (* 1/16 (/ (pow im 6) (pow re 4))) (* 1/2 (pow im 2))))) re)))
#s(approx (sqrt (+ (* im im) (* re re))) #s(hole binary64 (* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2)))))))
#s(approx (sqrt (+ (* im im) (* re re))) #s(hole binary64 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2))))))))
#s(approx (sqrt (+ (* im im) (* re re))) #s(hole binary64 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2)))))))))
#s(approx (+ (neg re) im) #s(hole binary64 (* re (- (/ im re) 1))))
#s(approx (+ (* (- (/ re im) 2) re) (+ im im)) #s(hole binary64 (/ (pow re 2) im)))
#s(approx (+ (* (- (/ re im) 2) re) (+ im im)) #s(hole binary64 (* (pow re 2) (- (/ 1 im) (* 2 (/ 1 re))))))
#s(approx (+ (* (- (/ re im) 2) re) (+ im im)) #s(hole binary64 (* (pow re 2) (- (+ (* 2 (/ im (pow re 2))) (/ 1 im)) (* 2 (/ 1 re))))))
#s(approx (- (/ re im) 2) #s(hole binary64 (* re (- (/ 1 im) (* 2 (/ 1 re))))))
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) #s(hole binary64 (* -1/2 (* (sqrt re) (* (sqrt -1) (pow (sqrt 2) 2))))))
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) #s(hole binary64 (* -1 (* re (+ (* -1/8 (* (* (pow im 2) (sqrt -1)) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2)))))))))
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) #s(hole binary64 (* -1 (* re (+ (* -1 (/ (+ (* -1/32 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (* 1/8 (* (* (pow im 2) (sqrt -1)) (sqrt re)))) (pow re 3))) (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2)))))))))
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) #s(hole binary64 (* -1 (* re (+ (* -1 (/ (+ (* -1/32 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (+ (* 1/64 (* (/ (* (pow im 4) (sqrt -1)) (pow (sqrt 2) 2)) (sqrt (/ 1 (pow re 3))))) (* 1/8 (* (* (pow im 2) (sqrt -1)) (sqrt re))))) (pow re 3))) (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2)))))))))
#s(approx (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) #s(hole binary64 (* -1 (* (sqrt re) (* (sqrt -1) (pow (sqrt 2) 2))))))
#s(approx (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) #s(hole binary64 (* -1 (* re (+ (* -1/4 (* (* (pow im 2) (sqrt -1)) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2))))))))
#s(approx (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) #s(hole binary64 (* -1 (* re (+ (* -1 (/ (+ (* -1/16 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (* 1/4 (* (* (pow im 2) (sqrt -1)) (sqrt re)))) (pow re 3))) (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2))))))))
#s(approx (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) #s(hole binary64 (* -1 (* re (+ (* -1 (/ (+ (* -1/16 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (+ (* 1/32 (* (/ (* (pow im 4) (sqrt -1)) (pow (sqrt 2) 2)) (sqrt (/ 1 (pow re 3))))) (* 1/4 (* (* (pow im 2) (sqrt -1)) (sqrt re))))) (pow re 3))) (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2))))))))
#s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) #s(hole binary64 (* -1 (* re (+ 4 (/ (pow im 2) (pow re 2)))))))
#s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) #s(hole binary64 (* -1 (* re (+ 4 (+ (* -1/4 (/ (pow im 4) (pow re 4))) (/ (pow im 2) (pow re 2))))))))
#s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) #s(hole binary64 (* -1 (* re (+ 4 (+ (* -1/4 (/ (pow im 4) (pow re 4))) (+ (* 1/8 (/ (pow im 6) (pow re 6))) (/ (pow im 2) (pow re 2)))))))))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) #s(hole binary64 (* -2 re)))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) #s(hole binary64 (* -1 (* re (+ 2 (* 1/2 (/ (pow im 2) (pow re 2))))))))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) #s(hole binary64 (* -1 (* re (+ 2 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2)))))))))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) #s(hole binary64 (* -1 (* re (+ 2 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2))))))))))
#s(approx (sqrt (+ (* im im) (* re re))) #s(hole binary64 (* -1 (* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2))))))))
#s(approx (sqrt (+ (* im im) (* re re))) #s(hole binary64 (* -1 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2)))))))))
#s(approx (sqrt (+ (* im im) (* re re))) #s(hole binary64 (* -1 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2))))))))))
#s(approx (* (* 1/2 (* 1 im)) (sqrt (/ 1 re))) #s(hole binary64 (* 1/2 (* (* im (pow (sqrt -1) 2)) (sqrt (/ 1 re))))))
#s(approx (sqrt (/ 1 re)) #s(hole binary64 (* (sqrt (/ 1 re)) (pow (sqrt -1) 2))))
#s(approx (+ (neg re) im) #s(hole binary64 (* -1 (* re (+ 1 (* -1 (/ im re)))))))
#s(approx (+ (* (- (/ re im) 2) re) (+ im im)) #s(hole binary64 (* (pow re 2) (+ (* -1 (/ (+ 2 (* -2 (/ im re))) re)) (/ 1 im)))))
#s(approx (- (/ re im) 2) #s(hole binary64 (* -1 (* re (- (* 2 (/ 1 re)) (/ 1 im))))))
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) #s(hole binary64 (* im (+ (* -1/32 (* (/ (* (pow im 2) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2))))))))
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) #s(hole binary64 (* im (+ (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2)))) (* (pow im 2) (+ (* -1/32 (* (sqrt (/ 1 (pow re 5))) (/ (sqrt 2) (sqrt 1/2)))) (* 1/4 (* (/ (* (pow im 2) (* (sqrt 2) (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2))))))) (sqrt 1/2)) (sqrt re)))))))))
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) #s(hole binary64 (* im (+ (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2)))) (* (pow im 2) (+ (* -1/32 (* (sqrt (/ 1 (pow re 5))) (/ (sqrt 2) (sqrt 1/2)))) (* (pow im 2) (+ (* -1/4 (* (/ (* (pow im 2) (* (sqrt 2) (+ (* -1/16 (/ (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2))))) (* (pow re 2) (pow (sqrt 1/2) 2)))) (* 5/128 (/ 1 (pow re 7)))))) (sqrt 1/2)) (sqrt re))) (* 1/4 (* (sqrt re) (/ (* (sqrt 2) (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2)))))) (sqrt 1/2))))))))))))
#s(approx (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) #s(hole binary64 (* im (+ (* -1/16 (* (/ (* (pow im 2) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2)))))))
#s(approx (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) #s(hole binary64 (* im (+ (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2))) (* (pow im 2) (+ (* -1/16 (* (sqrt (/ 1 (pow re 5))) (/ (sqrt 2) (sqrt 1/2)))) (* 1/2 (* (/ (* (pow im 2) (* (sqrt 2) (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2))))))) (sqrt 1/2)) (sqrt re)))))))))
#s(approx (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) #s(hole binary64 (* im (+ (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2))) (* (pow im 2) (+ (* -1/16 (* (sqrt (/ 1 (pow re 5))) (/ (sqrt 2) (sqrt 1/2)))) (* (pow im 2) (+ (* -1/2 (* (/ (* (pow im 2) (* (sqrt 2) (+ (* -1/16 (/ (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2))))) (* (pow re 2) (pow (sqrt 1/2) 2)))) (* 5/128 (/ 1 (pow re 7)))))) (sqrt 1/2)) (sqrt re))) (* 1/2 (* (sqrt re) (/ (* (sqrt 2) (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2)))))) (sqrt 1/2))))))))))))
#s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) #s(hole binary64 (* (pow im 2) (+ (* -1/4 (/ (pow im 2) (pow re 3))) (/ 1 re)))))
#s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) #s(hole binary64 (* (pow im 2) (+ (* (pow im 2) (- (* 1/8 (/ (pow im 2) (pow re 5))) (* 1/4 (/ 1 (pow re 3))))) (/ 1 re)))))
#s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) #s(hole binary64 (* (pow im 2) (+ (* (pow im 2) (- (* (pow im 2) (+ (* -5/64 (/ (pow im 2) (pow re 7))) (* 1/8 (/ 1 (pow re 5))))) (* 1/4 (/ 1 (pow re 3))))) (/ 1 re)))))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) #s(hole binary64 (* (pow im 2) (+ (* -1/8 (/ (pow im 2) (pow re 3))) (* 1/2 (/ 1 re))))))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) #s(hole binary64 (* (pow im 2) (+ (* (pow im 2) (- (* 1/16 (/ (pow im 2) (pow re 5))) (* 1/8 (/ 1 (pow re 3))))) (* 1/2 (/ 1 re))))))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) #s(hole binary64 (* (pow im 2) (+ (* (pow im 2) (- (* (pow im 2) (+ (* -5/128 (/ (pow im 2) (pow re 7))) (* 1/16 (/ 1 (pow re 5))))) (* 1/8 (/ 1 (pow re 3))))) (* 1/2 (/ 1 re))))))
#s(approx (sqrt (+ (* im im) (* re re))) #s(hole binary64 (+ re (* 1/2 (/ (pow im 2) re)))))
#s(approx (sqrt (+ (* im im) (* re re))) #s(hole binary64 (+ re (* (pow im 2) (+ (* -1/8 (/ (pow im 2) (pow re 3))) (* 1/2 (/ 1 re)))))))
#s(approx (sqrt (+ (* im im) (* re re))) #s(hole binary64 (+ re (* (pow im 2) (+ (* (pow im 2) (- (* 1/16 (/ (pow im 2) (pow re 5))) (* 1/8 (/ 1 (pow re 3))))) (* 1/2 (/ 1 re)))))))
#s(approx (* 1/2 (* 1 im)) #s(hole binary64 (* 1/2 im)))
#s(approx (+ (neg re) im) #s(hole binary64 (- im re)))
#s(approx (+ (* (- (/ re im) 2) re) (+ im im)) #s(hole binary64 (/ (+ (* -2 (* im re)) (pow re 2)) im)))
#s(approx (+ (* (- (/ re im) 2) re) (+ im im)) #s(hole binary64 (/ (+ (* im (+ (* -2 re) (* 2 im))) (pow re 2)) im)))
#s(approx (- (/ re im) 2) #s(hole binary64 (/ (+ re (* -2 im)) im)))
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) #s(hole binary64 (* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2)))))))
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) #s(hole binary64 (* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (+ (* 1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2))))))))
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) #s(hole binary64 (* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (+ (* -1/16 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2)))))))))
#s(approx (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) #s(hole binary64 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2))))))
#s(approx (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) #s(hole binary64 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2)))))))
#s(approx (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) #s(hole binary64 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2))))))))
#s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) #s(hole binary64 (* im (+ 2 (* -2 (/ re im))))))
#s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) #s(hole binary64 (* im (+ 2 (+ (* -2 (/ re im)) (/ (pow re 2) (pow im 2)))))))
#s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) #s(hole binary64 (* im (+ 2 (+ (* -2 (/ re im)) (+ (* -1/4 (/ (pow re 4) (pow im 4))) (/ (pow re 2) (pow im 2))))))))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) #s(hole binary64 (* im (+ 1 (* -1 (/ re im))))))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) #s(hole binary64 (* im (- (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))) (/ re im)))))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) #s(hole binary64 (* im (- (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2))))) (/ re im)))))
#s(approx (sqrt (+ (* im im) (* re re))) #s(hole binary64 (* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))))))
#s(approx (sqrt (+ (* im im) (* re re))) #s(hole binary64 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2))))))))
#s(approx (sqrt (+ (* im im) (* re re))) #s(hole binary64 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (+ (* 1/16 (/ (pow re 6) (pow im 6))) (* 1/2 (/ (pow re 2) (pow im 2)))))))))
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) #s(hole binary64 (* -1/2 (* (sqrt im) (* (sqrt -1) (sqrt 2))))))
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) #s(hole binary64 (* -1 (* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))))
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) #s(hole binary64 (* -1 (* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))))))
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) #s(hole binary64 (* -1 (* im (+ (* -1 (/ (+ (* 1/16 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* 1/8 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2)))))) (pow im 3))) (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))))))
#s(approx (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) #s(hole binary64 (* -1 (* (sqrt im) (* (sqrt -1) (sqrt 2))))))
#s(approx (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) #s(hole binary64 (* -1 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))))
#s(approx (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) #s(hole binary64 (* -1 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (+ (* -1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))))
#s(approx (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) #s(hole binary64 (* -1 (* im (+ (* -1 (/ (+ (* 1/8 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* 1/4 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2)))))) (pow im 3))) (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))))
#s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) #s(hole binary64 (* -2 im)))
#s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) #s(hole binary64 (* -1 (* im (+ 2 (* 2 (/ re im)))))))
#s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) #s(hole binary64 (* -1 (* im (+ 2 (* -1 (/ (+ (* -2 re) (* -1 (/ (pow re 2) im))) im)))))))
#s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) #s(hole binary64 (* -1 (* im (+ 2 (* -1 (/ (+ (* -2 re) (* -1 (/ (+ (* -1/4 (/ (pow re 4) (pow im 2))) (pow re 2)) im))) im)))))))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) #s(hole binary64 (* -1 im)))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) #s(hole binary64 (* -1 (* im (+ 1 (/ re im))))))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) #s(hole binary64 (* -1 (* im (+ 1 (* -1 (/ (- (* -1/2 (/ (pow re 2) im)) re) im)))))))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) #s(hole binary64 (* -1 (* im (+ 1 (* -1 (/ (- (* -1 (/ (+ (* -1/8 (/ (pow re 4) (pow im 2))) (* 1/2 (pow re 2))) im)) re) im)))))))
#s(approx (sqrt (+ (* im im) (* re re))) #s(hole binary64 (* -1 (* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2))))))))
#s(approx (sqrt (+ (* im im) (* re re))) #s(hole binary64 (* -1 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2)))))))))
#s(approx (sqrt (+ (* im im) (* re re))) #s(hole binary64 (* -1 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (+ (* 1/16 (/ (pow re 6) (pow im 6))) (* 1/2 (/ (pow re 2) (pow im 2))))))))))
#s(approx (+ (neg re) im) #s(hole binary64 (* -1 (* im (- (/ re im) 1)))))
#s(approx (+ (* (- (/ re im) 2) re) (+ im im)) #s(hole binary64 (* -1 (* im (- (* 2 (/ re im)) 2)))))
#s(approx (+ (* (- (/ re im) 2) re) (+ im im)) #s(hole binary64 (* -1 (* im (- (* -1 (/ (+ (* -2 re) (/ (pow re 2) im)) im)) 2)))))
Calls

6 calls:

TimeVariablePointExpression
6.0ms
re
@0
((* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) (* (- (sqrt (+ (* im im) (* re re))) re) 2) (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re))) im re 2 1/2 (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (* -4 re) -4 (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (* (* 1/2 (* 1 im)) (sqrt (/ 1 re))) (* 1/2 (* 1 im)) (* 1/2 im) (sqrt (/ 1 re)) (/ 1 re) 1 (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (- (sqrt (+ (* re re) (* im im))) re) (+ (neg re) im) (neg re) (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (+ (* (- (/ re im) 2) re) (+ im im)) (- (/ re im) 2) (/ re im) (+ im im))
4.0ms
re
@-inf
((* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) (* (- (sqrt (+ (* im im) (* re re))) re) 2) (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re))) im re 2 1/2 (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (* -4 re) -4 (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (* (* 1/2 (* 1 im)) (sqrt (/ 1 re))) (* 1/2 (* 1 im)) (* 1/2 im) (sqrt (/ 1 re)) (/ 1 re) 1 (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (- (sqrt (+ (* re re) (* im im))) re) (+ (neg re) im) (neg re) (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (+ (* (- (/ re im) 2) re) (+ im im)) (- (/ re im) 2) (/ re im) (+ im im))
3.0ms
im
@inf
((* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) (* (- (sqrt (+ (* im im) (* re re))) re) 2) (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re))) im re 2 1/2 (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (* -4 re) -4 (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (* (* 1/2 (* 1 im)) (sqrt (/ 1 re))) (* 1/2 (* 1 im)) (* 1/2 im) (sqrt (/ 1 re)) (/ 1 re) 1 (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (- (sqrt (+ (* re re) (* im im))) re) (+ (neg re) im) (neg re) (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (+ (* (- (/ re im) 2) re) (+ im im)) (- (/ re im) 2) (/ re im) (+ im im))
3.0ms
im
@-inf
((* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) (* (- (sqrt (+ (* im im) (* re re))) re) 2) (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re))) im re 2 1/2 (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (* -4 re) -4 (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (* (* 1/2 (* 1 im)) (sqrt (/ 1 re))) (* 1/2 (* 1 im)) (* 1/2 im) (sqrt (/ 1 re)) (/ 1 re) 1 (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (- (sqrt (+ (* re re) (* im im))) re) (+ (neg re) im) (neg re) (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (+ (* (- (/ re im) 2) re) (+ im im)) (- (/ re im) 2) (/ re im) (+ im im))
3.0ms
re
@inf
((* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) (* (- (sqrt (+ (* im im) (* re re))) re) 2) (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re))) im re 2 1/2 (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (* -4 re) -4 (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (* (* 1/2 (* 1 im)) (sqrt (/ 1 re))) (* 1/2 (* 1 im)) (* 1/2 im) (sqrt (/ 1 re)) (/ 1 re) 1 (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (- (sqrt (+ (* re re) (* im im))) re) (+ (neg re) im) (neg re) (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (+ (* (- (/ re im) 2) re) (+ im im)) (- (/ re im) 2) (/ re im) (+ im im))

rewrite182.0ms (5.7%)

Memory
-10.5MiB live, 179.0MiB allocated; 8ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
07834690
08134498
122224498
Stop Event
saturated
iter-limit
unsound
iter-limit
Counts
166 → 168
Calls
Call 1
Inputs
(*.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))
(sqrt.f64 (*.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64)))
(*.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64))
(-.f64 (hypot.f64 im re) re)
(hypot.f64 im re)
im
re
#s(literal 2 binary64)
#s(literal 1/2 binary64)
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re))))
(sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re)))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re))
(*.f64 #s(literal -4 binary64) re)
#s(literal -4 binary64)
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 #s(approx (* 1/2 (* 1 im)) (*.f64 #s(literal 1/2 binary64) im)) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))))
(*.f64 #s(approx (* 1/2 (* 1 im)) (*.f64 #s(literal 1/2 binary64) im)) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))
#s(approx (* 1/2 (* 1 im)) (*.f64 #s(literal 1/2 binary64) im))
(*.f64 #s(literal 1/2 binary64) im)
(sqrt.f64 (/.f64 #s(literal 1 binary64) re))
(/.f64 #s(literal 1 binary64) re)
#s(literal 1 binary64)
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (+.f64 (neg.f64 re) im)))))
(sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (+.f64 (neg.f64 re) im))))
(*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (+.f64 (neg.f64 re) im)))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) (+.f64 (neg.f64 re) im))
(+.f64 (neg.f64 re) im)
(neg.f64 re)
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (+.f64 im im)))))
(sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (+.f64 im im))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (+.f64 im im)))
(fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (+.f64 im im))
(-.f64 (/.f64 re im) #s(literal 2 binary64))
(/.f64 re im)
(+.f64 im im)
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) #s(hole binary64 (* 1/2 (* (sqrt im) (sqrt 2)))))
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) #s(hole binary64 (+ (* -1/4 (* (sqrt (/ 1 im)) (* re (sqrt 2)))) (* 1/2 (* (sqrt im) (sqrt 2))))))
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) #s(hole binary64 (+ (* 1/2 (* (sqrt im) (sqrt 2))) (* re (+ (* -1/4 (* (sqrt (/ 1 im)) (sqrt 2))) (* 1/16 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))))))))
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) #s(hole binary64 (+ (* 1/2 (* (sqrt im) (sqrt 2))) (* re (+ (* -1/4 (* (sqrt (/ 1 im)) (sqrt 2))) (* re (+ (* 1/32 (* (sqrt (/ 1 (pow im 5))) (* re (sqrt 2)))) (* 1/16 (* (sqrt (/ 1 (pow im 3))) (sqrt 2))))))))))
#s(approx (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) #s(hole binary64 (* (sqrt im) (sqrt 2))))
#s(approx (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) #s(hole binary64 (+ (* -1/2 (* (sqrt (/ 1 im)) (* re (sqrt 2)))) (* (sqrt im) (sqrt 2)))))
#s(approx (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) #s(hole binary64 (+ (* re (+ (* -1/2 (* (sqrt (/ 1 im)) (sqrt 2))) (* 1/8 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))))) (* (sqrt im) (sqrt 2)))))
#s(approx (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) #s(hole binary64 (+ (* re (+ (* -1/2 (* (sqrt (/ 1 im)) (sqrt 2))) (* re (+ (* 1/16 (* (sqrt (/ 1 (pow im 5))) (* re (sqrt 2)))) (* 1/8 (* (sqrt (/ 1 (pow im 3))) (sqrt 2))))))) (* (sqrt im) (sqrt 2)))))
#s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) #s(hole binary64 (* 2 im)))
#s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) #s(hole binary64 (+ (* -2 re) (* 2 im))))
#s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) #s(hole binary64 (+ (* 2 im) (* re (- (/ re im) 2)))))
#s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) #s(hole binary64 (+ (* 2 im) (* re (- (* re (+ (* -1/4 (/ (pow re 2) (pow im 3))) (/ 1 im))) 2)))))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) #s(hole binary64 im))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) #s(hole binary64 (+ im (* -1 re))))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) #s(hole binary64 (+ im (* re (- (* 1/2 (/ re im)) 1)))))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) #s(hole binary64 (+ im (* re (- (* re (+ (* -1/8 (/ (pow re 2) (pow im 3))) (* 1/2 (/ 1 im)))) 1)))))
#s(approx (sqrt (+ (* im im) (* re re))) #s(hole binary64 (+ im (* 1/2 (/ (pow re 2) im)))))
#s(approx (sqrt (+ (* im im) (* re re))) #s(hole binary64 (+ im (* (pow re 2) (+ (* -1/8 (/ (pow re 2) (pow im 3))) (* 1/2 (/ 1 im)))))))
#s(approx (sqrt (+ (* im im) (* re re))) #s(hole binary64 (+ im (* (pow re 2) (+ (* (pow re 2) (- (* 1/16 (/ (pow re 2) (pow im 5))) (* 1/8 (/ 1 (pow im 3))))) (* 1/2 (/ 1 im)))))))
#s(approx re #s(hole binary64 re))
#s(approx (* -4 re) #s(hole binary64 (* -4 re)))
#s(approx (* (* 1/2 (* 1 im)) (sqrt (/ 1 re))) #s(hole binary64 (* 1/2 (* im (sqrt (/ 1 re))))))
#s(approx (sqrt (/ 1 re)) #s(hole binary64 (sqrt (/ 1 re))))
#s(approx (/ 1 re) #s(hole binary64 (/ 1 re)))
#s(approx (neg re) #s(hole binary64 (* -1 re)))
#s(approx (- (/ re im) 2) #s(hole binary64 -2))
#s(approx (- (/ re im) 2) #s(hole binary64 (- (/ re im) 2)))
#s(approx (/ re im) #s(hole binary64 (/ re im)))
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) #s(hole binary64 (* 1/2 (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re))))))
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) #s(hole binary64 (+ (* -1/32 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re)))))))
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) #s(hole binary64 (+ (* -1/32 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* 1/64 (* (/ (* (pow im 5) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* 1/2 (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re))))))))
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) #s(hole binary64 (+ (* -1/32 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* -1/1024 (* (/ (* (pow im 5) (sqrt 2)) (pow (sqrt 1/2) 3)) (sqrt (/ 1 (pow re 9))))) (+ (* 1/64 (* (/ (* (pow im 5) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* 1/2 (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re)))))))))
#s(approx (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) #s(hole binary64 (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re)))))
#s(approx (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) #s(hole binary64 (+ (* -1/16 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re))))))
#s(approx (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) #s(hole binary64 (+ (* -1/16 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* 1/32 (* (/ (* (pow im 5) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re)))))))
#s(approx (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) #s(hole binary64 (+ (* -1/16 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* -1/512 (* (/ (* (pow im 5) (sqrt 2)) (pow (sqrt 1/2) 3)) (sqrt (/ 1 (pow re 9))))) (+ (* 1/32 (* (/ (* (pow im 5) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re))))))))
#s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) #s(hole binary64 (/ (pow im 2) re)))
#s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) #s(hole binary64 (/ (+ (* -1/4 (/ (pow im 4) (pow re 2))) (pow im 2)) re)))
#s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) #s(hole binary64 (/ (+ (* -1/4 (/ (pow im 4) (pow re 2))) (+ (* 1/8 (/ (pow im 6) (pow re 4))) (pow im 2))) re)))
#s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) #s(hole binary64 (/ (+ (* -1 (/ (+ (* 1/64 (pow im 8)) (* 1/16 (pow im 8))) (pow re 6))) (+ (* -1/4 (/ (pow im 4) (pow re 2))) (+ (* 1/8 (/ (pow im 6) (pow re 4))) (pow im 2)))) re)))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) #s(hole binary64 (* 1/2 (/ (pow im 2) re))))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) #s(hole binary64 (/ (+ (* -1/8 (/ (pow im 4) (pow re 2))) (* 1/2 (pow im 2))) re)))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) #s(hole binary64 (/ (+ (* -1/8 (/ (pow im 4) (pow re 2))) (+ (* 1/16 (/ (pow im 6) (pow re 4))) (* 1/2 (pow im 2)))) re)))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) #s(hole binary64 (/ (+ (* -1/2 (/ (+ (* 1/64 (pow im 8)) (* 1/16 (pow im 8))) (pow re 6))) (+ (* -1/8 (/ (pow im 4) (pow re 2))) (+ (* 1/16 (/ (pow im 6) (pow re 4))) (* 1/2 (pow im 2))))) re)))
#s(approx (sqrt (+ (* im im) (* re re))) #s(hole binary64 (* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2)))))))
#s(approx (sqrt (+ (* im im) (* re re))) #s(hole binary64 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2))))))))
#s(approx (sqrt (+ (* im im) (* re re))) #s(hole binary64 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2)))))))))
#s(approx (+ (neg re) im) #s(hole binary64 (* re (- (/ im re) 1))))
#s(approx (+ (* (- (/ re im) 2) re) (+ im im)) #s(hole binary64 (/ (pow re 2) im)))
#s(approx (+ (* (- (/ re im) 2) re) (+ im im)) #s(hole binary64 (* (pow re 2) (- (/ 1 im) (* 2 (/ 1 re))))))
#s(approx (+ (* (- (/ re im) 2) re) (+ im im)) #s(hole binary64 (* (pow re 2) (- (+ (* 2 (/ im (pow re 2))) (/ 1 im)) (* 2 (/ 1 re))))))
#s(approx (- (/ re im) 2) #s(hole binary64 (* re (- (/ 1 im) (* 2 (/ 1 re))))))
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) #s(hole binary64 (* -1/2 (* (sqrt re) (* (sqrt -1) (pow (sqrt 2) 2))))))
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) #s(hole binary64 (* -1 (* re (+ (* -1/8 (* (* (pow im 2) (sqrt -1)) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2)))))))))
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) #s(hole binary64 (* -1 (* re (+ (* -1 (/ (+ (* -1/32 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (* 1/8 (* (* (pow im 2) (sqrt -1)) (sqrt re)))) (pow re 3))) (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2)))))))))
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) #s(hole binary64 (* -1 (* re (+ (* -1 (/ (+ (* -1/32 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (+ (* 1/64 (* (/ (* (pow im 4) (sqrt -1)) (pow (sqrt 2) 2)) (sqrt (/ 1 (pow re 3))))) (* 1/8 (* (* (pow im 2) (sqrt -1)) (sqrt re))))) (pow re 3))) (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2)))))))))
#s(approx (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) #s(hole binary64 (* -1 (* (sqrt re) (* (sqrt -1) (pow (sqrt 2) 2))))))
#s(approx (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) #s(hole binary64 (* -1 (* re (+ (* -1/4 (* (* (pow im 2) (sqrt -1)) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2))))))))
#s(approx (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) #s(hole binary64 (* -1 (* re (+ (* -1 (/ (+ (* -1/16 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (* 1/4 (* (* (pow im 2) (sqrt -1)) (sqrt re)))) (pow re 3))) (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2))))))))
#s(approx (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) #s(hole binary64 (* -1 (* re (+ (* -1 (/ (+ (* -1/16 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (+ (* 1/32 (* (/ (* (pow im 4) (sqrt -1)) (pow (sqrt 2) 2)) (sqrt (/ 1 (pow re 3))))) (* 1/4 (* (* (pow im 2) (sqrt -1)) (sqrt re))))) (pow re 3))) (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2))))))))
#s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) #s(hole binary64 (* -1 (* re (+ 4 (/ (pow im 2) (pow re 2)))))))
#s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) #s(hole binary64 (* -1 (* re (+ 4 (+ (* -1/4 (/ (pow im 4) (pow re 4))) (/ (pow im 2) (pow re 2))))))))
#s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) #s(hole binary64 (* -1 (* re (+ 4 (+ (* -1/4 (/ (pow im 4) (pow re 4))) (+ (* 1/8 (/ (pow im 6) (pow re 6))) (/ (pow im 2) (pow re 2)))))))))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) #s(hole binary64 (* -2 re)))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) #s(hole binary64 (* -1 (* re (+ 2 (* 1/2 (/ (pow im 2) (pow re 2))))))))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) #s(hole binary64 (* -1 (* re (+ 2 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2)))))))))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) #s(hole binary64 (* -1 (* re (+ 2 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2))))))))))
#s(approx (sqrt (+ (* im im) (* re re))) #s(hole binary64 (* -1 (* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2))))))))
#s(approx (sqrt (+ (* im im) (* re re))) #s(hole binary64 (* -1 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2)))))))))
#s(approx (sqrt (+ (* im im) (* re re))) #s(hole binary64 (* -1 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2))))))))))
#s(approx (* (* 1/2 (* 1 im)) (sqrt (/ 1 re))) #s(hole binary64 (* 1/2 (* (* im (pow (sqrt -1) 2)) (sqrt (/ 1 re))))))
#s(approx (sqrt (/ 1 re)) #s(hole binary64 (* (sqrt (/ 1 re)) (pow (sqrt -1) 2))))
#s(approx (+ (neg re) im) #s(hole binary64 (* -1 (* re (+ 1 (* -1 (/ im re)))))))
#s(approx (+ (* (- (/ re im) 2) re) (+ im im)) #s(hole binary64 (* (pow re 2) (+ (* -1 (/ (+ 2 (* -2 (/ im re))) re)) (/ 1 im)))))
#s(approx (- (/ re im) 2) #s(hole binary64 (* -1 (* re (- (* 2 (/ 1 re)) (/ 1 im))))))
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) #s(hole binary64 (* im (+ (* -1/32 (* (/ (* (pow im 2) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2))))))))
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) #s(hole binary64 (* im (+ (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2)))) (* (pow im 2) (+ (* -1/32 (* (sqrt (/ 1 (pow re 5))) (/ (sqrt 2) (sqrt 1/2)))) (* 1/4 (* (/ (* (pow im 2) (* (sqrt 2) (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2))))))) (sqrt 1/2)) (sqrt re)))))))))
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) #s(hole binary64 (* im (+ (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2)))) (* (pow im 2) (+ (* -1/32 (* (sqrt (/ 1 (pow re 5))) (/ (sqrt 2) (sqrt 1/2)))) (* (pow im 2) (+ (* -1/4 (* (/ (* (pow im 2) (* (sqrt 2) (+ (* -1/16 (/ (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2))))) (* (pow re 2) (pow (sqrt 1/2) 2)))) (* 5/128 (/ 1 (pow re 7)))))) (sqrt 1/2)) (sqrt re))) (* 1/4 (* (sqrt re) (/ (* (sqrt 2) (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2)))))) (sqrt 1/2))))))))))))
#s(approx (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) #s(hole binary64 (* im (+ (* -1/16 (* (/ (* (pow im 2) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2)))))))
#s(approx (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) #s(hole binary64 (* im (+ (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2))) (* (pow im 2) (+ (* -1/16 (* (sqrt (/ 1 (pow re 5))) (/ (sqrt 2) (sqrt 1/2)))) (* 1/2 (* (/ (* (pow im 2) (* (sqrt 2) (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2))))))) (sqrt 1/2)) (sqrt re)))))))))
#s(approx (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) #s(hole binary64 (* im (+ (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2))) (* (pow im 2) (+ (* -1/16 (* (sqrt (/ 1 (pow re 5))) (/ (sqrt 2) (sqrt 1/2)))) (* (pow im 2) (+ (* -1/2 (* (/ (* (pow im 2) (* (sqrt 2) (+ (* -1/16 (/ (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2))))) (* (pow re 2) (pow (sqrt 1/2) 2)))) (* 5/128 (/ 1 (pow re 7)))))) (sqrt 1/2)) (sqrt re))) (* 1/2 (* (sqrt re) (/ (* (sqrt 2) (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2)))))) (sqrt 1/2))))))))))))
#s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) #s(hole binary64 (* (pow im 2) (+ (* -1/4 (/ (pow im 2) (pow re 3))) (/ 1 re)))))
#s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) #s(hole binary64 (* (pow im 2) (+ (* (pow im 2) (- (* 1/8 (/ (pow im 2) (pow re 5))) (* 1/4 (/ 1 (pow re 3))))) (/ 1 re)))))
#s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) #s(hole binary64 (* (pow im 2) (+ (* (pow im 2) (- (* (pow im 2) (+ (* -5/64 (/ (pow im 2) (pow re 7))) (* 1/8 (/ 1 (pow re 5))))) (* 1/4 (/ 1 (pow re 3))))) (/ 1 re)))))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) #s(hole binary64 (* (pow im 2) (+ (* -1/8 (/ (pow im 2) (pow re 3))) (* 1/2 (/ 1 re))))))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) #s(hole binary64 (* (pow im 2) (+ (* (pow im 2) (- (* 1/16 (/ (pow im 2) (pow re 5))) (* 1/8 (/ 1 (pow re 3))))) (* 1/2 (/ 1 re))))))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) #s(hole binary64 (* (pow im 2) (+ (* (pow im 2) (- (* (pow im 2) (+ (* -5/128 (/ (pow im 2) (pow re 7))) (* 1/16 (/ 1 (pow re 5))))) (* 1/8 (/ 1 (pow re 3))))) (* 1/2 (/ 1 re))))))
#s(approx (sqrt (+ (* im im) (* re re))) #s(hole binary64 (+ re (* 1/2 (/ (pow im 2) re)))))
#s(approx (sqrt (+ (* im im) (* re re))) #s(hole binary64 (+ re (* (pow im 2) (+ (* -1/8 (/ (pow im 2) (pow re 3))) (* 1/2 (/ 1 re)))))))
#s(approx (sqrt (+ (* im im) (* re re))) #s(hole binary64 (+ re (* (pow im 2) (+ (* (pow im 2) (- (* 1/16 (/ (pow im 2) (pow re 5))) (* 1/8 (/ 1 (pow re 3))))) (* 1/2 (/ 1 re)))))))
#s(approx (* 1/2 (* 1 im)) #s(hole binary64 (* 1/2 im)))
#s(approx (+ (neg re) im) #s(hole binary64 (- im re)))
#s(approx (+ (* (- (/ re im) 2) re) (+ im im)) #s(hole binary64 (/ (+ (* -2 (* im re)) (pow re 2)) im)))
#s(approx (+ (* (- (/ re im) 2) re) (+ im im)) #s(hole binary64 (/ (+ (* im (+ (* -2 re) (* 2 im))) (pow re 2)) im)))
#s(approx (- (/ re im) 2) #s(hole binary64 (/ (+ re (* -2 im)) im)))
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) #s(hole binary64 (* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2)))))))
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) #s(hole binary64 (* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (+ (* 1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2))))))))
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) #s(hole binary64 (* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (+ (* -1/16 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2)))))))))
#s(approx (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) #s(hole binary64 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2))))))
#s(approx (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) #s(hole binary64 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2)))))))
#s(approx (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) #s(hole binary64 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2))))))))
#s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) #s(hole binary64 (* im (+ 2 (* -2 (/ re im))))))
#s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) #s(hole binary64 (* im (+ 2 (+ (* -2 (/ re im)) (/ (pow re 2) (pow im 2)))))))
#s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) #s(hole binary64 (* im (+ 2 (+ (* -2 (/ re im)) (+ (* -1/4 (/ (pow re 4) (pow im 4))) (/ (pow re 2) (pow im 2))))))))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) #s(hole binary64 (* im (+ 1 (* -1 (/ re im))))))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) #s(hole binary64 (* im (- (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))) (/ re im)))))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) #s(hole binary64 (* im (- (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2))))) (/ re im)))))
#s(approx (sqrt (+ (* im im) (* re re))) #s(hole binary64 (* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))))))
#s(approx (sqrt (+ (* im im) (* re re))) #s(hole binary64 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2))))))))
#s(approx (sqrt (+ (* im im) (* re re))) #s(hole binary64 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (+ (* 1/16 (/ (pow re 6) (pow im 6))) (* 1/2 (/ (pow re 2) (pow im 2)))))))))
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) #s(hole binary64 (* -1/2 (* (sqrt im) (* (sqrt -1) (sqrt 2))))))
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) #s(hole binary64 (* -1 (* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))))
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) #s(hole binary64 (* -1 (* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))))))
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) #s(hole binary64 (* -1 (* im (+ (* -1 (/ (+ (* 1/16 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* 1/8 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2)))))) (pow im 3))) (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))))))
#s(approx (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) #s(hole binary64 (* -1 (* (sqrt im) (* (sqrt -1) (sqrt 2))))))
#s(approx (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) #s(hole binary64 (* -1 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))))
#s(approx (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) #s(hole binary64 (* -1 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (+ (* -1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))))
#s(approx (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) #s(hole binary64 (* -1 (* im (+ (* -1 (/ (+ (* 1/8 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* 1/4 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2)))))) (pow im 3))) (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))))
#s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) #s(hole binary64 (* -2 im)))
#s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) #s(hole binary64 (* -1 (* im (+ 2 (* 2 (/ re im)))))))
#s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) #s(hole binary64 (* -1 (* im (+ 2 (* -1 (/ (+ (* -2 re) (* -1 (/ (pow re 2) im))) im)))))))
#s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) #s(hole binary64 (* -1 (* im (+ 2 (* -1 (/ (+ (* -2 re) (* -1 (/ (+ (* -1/4 (/ (pow re 4) (pow im 2))) (pow re 2)) im))) im)))))))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) #s(hole binary64 (* -1 im)))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) #s(hole binary64 (* -1 (* im (+ 1 (/ re im))))))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) #s(hole binary64 (* -1 (* im (+ 1 (* -1 (/ (- (* -1/2 (/ (pow re 2) im)) re) im)))))))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) #s(hole binary64 (* -1 (* im (+ 1 (* -1 (/ (- (* -1 (/ (+ (* -1/8 (/ (pow re 4) (pow im 2))) (* 1/2 (pow re 2))) im)) re) im)))))))
#s(approx (sqrt (+ (* im im) (* re re))) #s(hole binary64 (* -1 (* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2))))))))
#s(approx (sqrt (+ (* im im) (* re re))) #s(hole binary64 (* -1 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2)))))))))
#s(approx (sqrt (+ (* im im) (* re re))) #s(hole binary64 (* -1 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (+ (* 1/16 (/ (pow re 6) (pow im 6))) (* 1/2 (/ (pow re 2) (pow im 2))))))))))
#s(approx (+ (neg re) im) #s(hole binary64 (* -1 (* im (- (/ re im) 1)))))
#s(approx (+ (* (- (/ re im) 2) re) (+ im im)) #s(hole binary64 (* -1 (* im (- (* 2 (/ re im)) 2)))))
#s(approx (+ (* (- (/ re im) 2) re) (+ im im)) #s(hole binary64 (* -1 (* im (- (* -1 (/ (+ (* -2 re) (/ (pow re 2) im)) im)) 2)))))
Outputs
(*.f64 (sqrt.f64 (*.f64 (-.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re))) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))
(sqrt.f64 (*.f64 (-.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re))) re) #s(literal 2 binary64)))
(*.f64 (-.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re))) re) #s(literal 2 binary64))
(-.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re))) re)
(sqrt.f64 (fma.f64 im im (*.f64 re re)))
(hypot.f64 im re)
im
re
#s(literal 2 binary64)
#s(literal 1/2 binary64)
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re))))
(sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re)))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re))
(*.f64 #s(literal -4 binary64) re)
#s(literal -4 binary64)
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 #s(approx (* 1/2 (* 1 im)) (*.f64 #s(literal 1/2 binary64) im)) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))))
(*.f64 #s(approx (* 1/2 (* 1 im)) (*.f64 #s(literal 1/2 binary64) im)) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))
#s(approx (* 1/2 (* 1 im)) (*.f64 #s(literal 1/2 binary64) im))
(*.f64 #s(literal 1/2 binary64) im)
(sqrt.f64 (/.f64 #s(literal 1 binary64) re))
(/.f64 #s(literal 1 binary64) re)
#s(literal 1 binary64)
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (+.f64 (neg.f64 re) im)))))
(sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (+.f64 (neg.f64 re) im))))
(*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (+.f64 (neg.f64 re) im)))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) (+.f64 (neg.f64 re) im))
(+.f64 (neg.f64 re) im)
(neg.f64 re)
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (+.f64 im im)))))
(sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (+.f64 im im))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (+.f64 im im)))
(fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (+.f64 im im))
(+.f64 (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re) (+.f64 im im))
(-.f64 (/.f64 re im) #s(literal 2 binary64))
(/.f64 re im)
(+.f64 im im)
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 im) (sqrt.f64 #s(literal 2 binary64)))))
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (fma.f64 #s(literal -1/4 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (*.f64 re (sqrt.f64 #s(literal 2 binary64)))) (*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 im) (sqrt.f64 #s(literal 2 binary64))))))
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (fma.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 im) (sqrt.f64 #s(literal 2 binary64))) (*.f64 re (fma.f64 #s(literal -1/4 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 #s(literal 1/16 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (*.f64 re (sqrt.f64 #s(literal 2 binary64)))))))))
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (fma.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 im) (sqrt.f64 #s(literal 2 binary64))) (*.f64 re (fma.f64 #s(literal -1/4 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 re (fma.f64 #s(literal 1/32 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) (*.f64 re (sqrt.f64 #s(literal 2 binary64)))) (*.f64 #s(literal 1/16 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (sqrt.f64 #s(literal 2 binary64))))))))))
#s(approx (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) (*.f64 (sqrt.f64 im) (sqrt.f64 #s(literal 2 binary64))))
#s(approx (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) (fma.f64 #s(literal -1/2 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (*.f64 re (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (sqrt.f64 im) (sqrt.f64 #s(literal 2 binary64)))))
#s(approx (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) (fma.f64 re (fma.f64 #s(literal -1/2 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 #s(literal 1/8 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (*.f64 re (sqrt.f64 #s(literal 2 binary64)))))) (*.f64 (sqrt.f64 im) (sqrt.f64 #s(literal 2 binary64)))))
#s(approx (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) (fma.f64 re (fma.f64 #s(literal -1/2 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 re (fma.f64 #s(literal 1/16 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) (*.f64 re (sqrt.f64 #s(literal 2 binary64)))) (*.f64 #s(literal 1/8 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (sqrt.f64 #s(literal 2 binary64))))))) (*.f64 (sqrt.f64 im) (sqrt.f64 #s(literal 2 binary64)))))
#s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im))
#s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (fma.f64 #s(literal -2 binary64) re (*.f64 #s(literal 2 binary64) im)))
#s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (fma.f64 #s(literal 2 binary64) im (*.f64 re (-.f64 (/.f64 re im) #s(literal 2 binary64)))))
#s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (fma.f64 #s(literal 2 binary64) im (*.f64 re (-.f64 (*.f64 re (fma.f64 #s(literal -1/4 binary64) (/.f64 (pow.f64 re #s(literal 2 binary64)) (pow.f64 im #s(literal 3 binary64))) (/.f64 #s(literal 1 binary64) im))) #s(literal 2 binary64)))))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) im)
#s(approx (- (sqrt (+ (* im im) (* re re))) re) (+.f64 im (*.f64 #s(literal -1 binary64) re)))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) (+.f64 im (*.f64 re (-.f64 (*.f64 #s(literal 1/2 binary64) (/.f64 re im)) #s(literal 1 binary64)))))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) (+.f64 im (*.f64 re (-.f64 (*.f64 re (fma.f64 #s(literal -1/8 binary64) (/.f64 (pow.f64 re #s(literal 2 binary64)) (pow.f64 im #s(literal 3 binary64))) (*.f64 #s(literal 1/2 binary64) (/.f64 #s(literal 1 binary64) im)))) #s(literal 1 binary64)))))
#s(approx (sqrt (+ (* im im) (* re re))) (+.f64 im (*.f64 #s(literal 1/2 binary64) (/.f64 (pow.f64 re #s(literal 2 binary64)) im))))
#s(approx (sqrt (+ (* im im) (* re re))) (+.f64 im (*.f64 (pow.f64 re #s(literal 2 binary64)) (fma.f64 #s(literal -1/8 binary64) (/.f64 (pow.f64 re #s(literal 2 binary64)) (pow.f64 im #s(literal 3 binary64))) (*.f64 #s(literal 1/2 binary64) (/.f64 #s(literal 1 binary64) im))))))
#s(approx (sqrt (+ (* im im) (* re re))) (+.f64 im (*.f64 (pow.f64 re #s(literal 2 binary64)) (fma.f64 (pow.f64 re #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal 1/16 binary64) (/.f64 (pow.f64 re #s(literal 2 binary64)) (pow.f64 im #s(literal 5 binary64)))) (*.f64 #s(literal 1/8 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64))))) (*.f64 #s(literal 1/2 binary64) (/.f64 #s(literal 1 binary64) im))))))
#s(approx re re)
#s(approx (* -4 re) (*.f64 #s(literal -4 binary64) re))
#s(approx (* (* 1/2 (* 1 im)) (sqrt (/ 1 re))) (*.f64 #s(literal 1/2 binary64) (*.f64 im (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))))
#s(approx (sqrt (/ 1 re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))
#s(approx (/ 1 re) (/.f64 #s(literal 1 binary64) re))
#s(approx (neg re) (*.f64 #s(literal -1 binary64) re))
#s(approx (- (/ re im) 2) #s(literal -2 binary64))
#s(approx (- (/ re im) 2) (-.f64 (/.f64 re im) #s(literal 2 binary64)))
#s(approx (/ re im) (/.f64 re im))
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (*.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 im (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))))
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (fma.f64 #s(literal -1/32 binary64) (*.f64 (/.f64 (*.f64 (pow.f64 im #s(literal 3 binary64)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64))))) (*.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 im (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))))))
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (fma.f64 #s(literal -1/32 binary64) (*.f64 (/.f64 (*.f64 (pow.f64 im #s(literal 3 binary64)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64))))) (fma.f64 #s(literal 1/64 binary64) (*.f64 (/.f64 (*.f64 (pow.f64 im #s(literal 5 binary64)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 9 binary64))))) (*.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 im (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))))))
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (fma.f64 #s(literal -1/32 binary64) (*.f64 (/.f64 (*.f64 (pow.f64 im #s(literal 3 binary64)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64))))) (fma.f64 #s(literal -1/1024 binary64) (*.f64 (/.f64 (*.f64 (pow.f64 im #s(literal 5 binary64)) (sqrt.f64 #s(literal 2 binary64))) (pow.f64 (sqrt.f64 #s(literal 1/2 binary64)) #s(literal 3 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 9 binary64))))) (fma.f64 #s(literal 1/64 binary64) (*.f64 (/.f64 (*.f64 (pow.f64 im #s(literal 5 binary64)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 9 binary64))))) (*.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 im (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))))))))
#s(approx (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) (*.f64 (*.f64 im (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))))
#s(approx (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) (fma.f64 #s(literal -1/16 binary64) (*.f64 (/.f64 (*.f64 (pow.f64 im #s(literal 3 binary64)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64))))) (*.f64 (*.f64 im (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))))
#s(approx (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) (fma.f64 #s(literal -1/16 binary64) (*.f64 (/.f64 (*.f64 (pow.f64 im #s(literal 3 binary64)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64))))) (fma.f64 #s(literal 1/32 binary64) (*.f64 (/.f64 (*.f64 (pow.f64 im #s(literal 5 binary64)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 9 binary64))))) (*.f64 (*.f64 im (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))))))
#s(approx (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) (fma.f64 #s(literal -1/16 binary64) (*.f64 (/.f64 (*.f64 (pow.f64 im #s(literal 3 binary64)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64))))) (fma.f64 #s(literal -1/512 binary64) (*.f64 (/.f64 (*.f64 (pow.f64 im #s(literal 5 binary64)) (sqrt.f64 #s(literal 2 binary64))) (pow.f64 (sqrt.f64 #s(literal 1/2 binary64)) #s(literal 3 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 9 binary64))))) (fma.f64 #s(literal 1/32 binary64) (*.f64 (/.f64 (*.f64 (pow.f64 im #s(literal 5 binary64)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 9 binary64))))) (*.f64 (*.f64 im (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))))))
#s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (/.f64 (pow.f64 im #s(literal 2 binary64)) re))
#s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (/.f64 (fma.f64 #s(literal -1/4 binary64) (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 2 binary64))) (pow.f64 im #s(literal 2 binary64))) re))
#s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (/.f64 (fma.f64 #s(literal -1/4 binary64) (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 2 binary64))) (fma.f64 #s(literal 1/8 binary64) (/.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 im #s(literal 2 binary64)))) re))
#s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (/.f64 (fma.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal 1/64 binary64) (pow.f64 im #s(literal 8 binary64)) (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64)))) (pow.f64 re #s(literal 6 binary64))) (fma.f64 #s(literal -1/4 binary64) (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 2 binary64))) (fma.f64 #s(literal 1/8 binary64) (/.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 im #s(literal 2 binary64))))) re))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) (*.f64 #s(literal 1/2 binary64) (/.f64 (pow.f64 im #s(literal 2 binary64)) re)))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) (/.f64 (fma.f64 #s(literal -1/8 binary64) (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 2 binary64))) (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)))) re))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) (/.f64 (fma.f64 #s(literal -1/8 binary64) (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 2 binary64))) (fma.f64 #s(literal 1/16 binary64) (/.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 4 binary64))) (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64))))) re))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) (/.f64 (fma.f64 #s(literal -1/2 binary64) (/.f64 (fma.f64 #s(literal 1/64 binary64) (pow.f64 im #s(literal 8 binary64)) (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64)))) (pow.f64 re #s(literal 6 binary64))) (fma.f64 #s(literal -1/8 binary64) (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 2 binary64))) (fma.f64 #s(literal 1/16 binary64) (/.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 4 binary64))) (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)))))) re))
#s(approx (sqrt (+ (* im im) (* re re))) (*.f64 re (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (/.f64 (pow.f64 im #s(literal 2 binary64)) (pow.f64 re #s(literal 2 binary64)))))))
#s(approx (sqrt (+ (* im im) (* re re))) (*.f64 re (+.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/8 binary64) (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (*.f64 #s(literal 1/2 binary64) (/.f64 (pow.f64 im #s(literal 2 binary64)) (pow.f64 re #s(literal 2 binary64))))))))
#s(approx (sqrt (+ (* im im) (* re re))) (*.f64 re (+.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/8 binary64) (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (fma.f64 #s(literal 1/16 binary64) (/.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) (*.f64 #s(literal 1/2 binary64) (/.f64 (pow.f64 im #s(literal 2 binary64)) (pow.f64 re #s(literal 2 binary64)))))))))
#s(approx (+ (neg re) im) (*.f64 re (-.f64 (/.f64 im re) #s(literal 1 binary64))))
#s(approx (+ (* (- (/ re im) 2) re) (+ im im)) (/.f64 (pow.f64 re #s(literal 2 binary64)) im))
#s(approx (+ (* (- (/ re im) 2) re) (+ im im)) (*.f64 (pow.f64 re #s(literal 2 binary64)) (-.f64 (/.f64 #s(literal 1 binary64) im) (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) re)))))
#s(approx (+ (* (- (/ re im) 2) re) (+ im im)) (*.f64 (pow.f64 re #s(literal 2 binary64)) (-.f64 (fma.f64 #s(literal 2 binary64) (/.f64 im (pow.f64 re #s(literal 2 binary64))) (/.f64 #s(literal 1 binary64) im)) (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) re)))))
#s(approx (- (/ re im) 2) (*.f64 re (-.f64 (/.f64 #s(literal 1 binary64) im) (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) re)))))
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (*.f64 #s(literal -1/2 binary64) (*.f64 (sqrt.f64 re) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (pow.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 2 binary64))))))
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (*.f64 #s(literal -1 binary64) (*.f64 re (fma.f64 #s(literal -1/8 binary64) (*.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) (sqrt.f64 #s(literal -1 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64))))) (*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (pow.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 2 binary64)))))))))
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (*.f64 #s(literal -1 binary64) (*.f64 re (fma.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1/32 binary64) (*.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) (sqrt.f64 #s(literal -1 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64))))) (*.f64 #s(literal 1/8 binary64) (*.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) (sqrt.f64 #s(literal -1 binary64))) (sqrt.f64 re)))) (pow.f64 re #s(literal 3 binary64))) (*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (pow.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 2 binary64)))))))))
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (*.f64 #s(literal -1 binary64) (*.f64 re (fma.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1/32 binary64) (*.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) (sqrt.f64 #s(literal -1 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64))))) (fma.f64 #s(literal 1/64 binary64) (*.f64 (/.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) (sqrt.f64 #s(literal -1 binary64))) (pow.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64))))) (*.f64 #s(literal 1/8 binary64) (*.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) (sqrt.f64 #s(literal -1 binary64))) (sqrt.f64 re))))) (pow.f64 re #s(literal 3 binary64))) (*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (pow.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 2 binary64)))))))))
#s(approx (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) (*.f64 #s(literal -1 binary64) (*.f64 (sqrt.f64 re) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (pow.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 2 binary64))))))
#s(approx (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) (*.f64 #s(literal -1 binary64) (*.f64 re (fma.f64 #s(literal -1/4 binary64) (*.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) (sqrt.f64 #s(literal -1 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (pow.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 2 binary64))))))))
#s(approx (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) (*.f64 #s(literal -1 binary64) (*.f64 re (fma.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1/16 binary64) (*.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) (sqrt.f64 #s(literal -1 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64))))) (*.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) (sqrt.f64 #s(literal -1 binary64))) (sqrt.f64 re)))) (pow.f64 re #s(literal 3 binary64))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (pow.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 2 binary64))))))))
#s(approx (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) (*.f64 #s(literal -1 binary64) (*.f64 re (fma.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1/16 binary64) (*.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) (sqrt.f64 #s(literal -1 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64))))) (fma.f64 #s(literal 1/32 binary64) (*.f64 (/.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) (sqrt.f64 #s(literal -1 binary64))) (pow.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64))))) (*.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) (sqrt.f64 #s(literal -1 binary64))) (sqrt.f64 re))))) (pow.f64 re #s(literal 3 binary64))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (pow.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 2 binary64))))))))
#s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal -1 binary64) (*.f64 re (+.f64 #s(literal 4 binary64) (/.f64 (pow.f64 im #s(literal 2 binary64)) (pow.f64 re #s(literal 2 binary64)))))))
#s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal -1 binary64) (*.f64 re (+.f64 #s(literal 4 binary64) (fma.f64 #s(literal -1/4 binary64) (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (/.f64 (pow.f64 im #s(literal 2 binary64)) (pow.f64 re #s(literal 2 binary64))))))))
#s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal -1 binary64) (*.f64 re (+.f64 #s(literal 4 binary64) (fma.f64 #s(literal -1/4 binary64) (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (fma.f64 #s(literal 1/8 binary64) (/.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) (/.f64 (pow.f64 im #s(literal 2 binary64)) (pow.f64 re #s(literal 2 binary64)))))))))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) (*.f64 #s(literal -2 binary64) re))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) (*.f64 #s(literal -1 binary64) (*.f64 re (+.f64 #s(literal 2 binary64) (*.f64 #s(literal 1/2 binary64) (/.f64 (pow.f64 im #s(literal 2 binary64)) (pow.f64 re #s(literal 2 binary64))))))))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) (*.f64 #s(literal -1 binary64) (*.f64 re (+.f64 #s(literal 2 binary64) (fma.f64 #s(literal -1/8 binary64) (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (*.f64 #s(literal 1/2 binary64) (/.f64 (pow.f64 im #s(literal 2 binary64)) (pow.f64 re #s(literal 2 binary64)))))))))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) (*.f64 #s(literal -1 binary64) (*.f64 re (+.f64 #s(literal 2 binary64) (fma.f64 #s(literal -1/8 binary64) (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (fma.f64 #s(literal 1/16 binary64) (/.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) (*.f64 #s(literal 1/2 binary64) (/.f64 (pow.f64 im #s(literal 2 binary64)) (pow.f64 re #s(literal 2 binary64))))))))))
#s(approx (sqrt (+ (* im im) (* re re))) (*.f64 #s(literal -1 binary64) (*.f64 re (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (/.f64 (pow.f64 im #s(literal 2 binary64)) (pow.f64 re #s(literal 2 binary64))))))))
#s(approx (sqrt (+ (* im im) (* re re))) (*.f64 #s(literal -1 binary64) (*.f64 re (+.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/8 binary64) (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (*.f64 #s(literal 1/2 binary64) (/.f64 (pow.f64 im #s(literal 2 binary64)) (pow.f64 re #s(literal 2 binary64)))))))))
#s(approx (sqrt (+ (* im im) (* re re))) (*.f64 #s(literal -1 binary64) (*.f64 re (+.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/8 binary64) (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (fma.f64 #s(literal 1/16 binary64) (/.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) (*.f64 #s(literal 1/2 binary64) (/.f64 (pow.f64 im #s(literal 2 binary64)) (pow.f64 re #s(literal 2 binary64))))))))))
#s(approx (* (* 1/2 (* 1 im)) (sqrt (/ 1 re))) (*.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 im (pow.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))))
#s(approx (sqrt (/ 1 re)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (pow.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 2 binary64))))
#s(approx (+ (neg re) im) (*.f64 #s(literal -1 binary64) (*.f64 re (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1 binary64) (/.f64 im re))))))
#s(approx (+ (* (- (/ re im) 2) re) (+ im im)) (*.f64 (pow.f64 re #s(literal 2 binary64)) (fma.f64 #s(literal -1 binary64) (/.f64 (+.f64 #s(literal 2 binary64) (*.f64 #s(literal -2 binary64) (/.f64 im re))) re) (/.f64 #s(literal 1 binary64) im))))
#s(approx (- (/ re im) 2) (*.f64 #s(literal -1 binary64) (*.f64 re (-.f64 (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) re)) (/.f64 #s(literal 1 binary64) im)))))
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (*.f64 im (fma.f64 #s(literal -1/32 binary64) (*.f64 (/.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64))))) (*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64))))))))
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (*.f64 im (fma.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (pow.f64 im #s(literal 2 binary64)) (fma.f64 #s(literal -1/32 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (/.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 1/2 binary64)))) (*.f64 #s(literal 1/4 binary64) (*.f64 (/.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal 1/16 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (*.f64 #s(literal 1/256 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 re #s(literal 5 binary64)) (pow.f64 (sqrt.f64 #s(literal 1/2 binary64)) #s(literal 2 binary64)))))))) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 re))))))))
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (*.f64 im (fma.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (pow.f64 im #s(literal 2 binary64)) (fma.f64 #s(literal -1/32 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (/.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 1/2 binary64)))) (*.f64 (pow.f64 im #s(literal 2 binary64)) (fma.f64 #s(literal -1/4 binary64) (*.f64 (/.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (fma.f64 #s(literal -1/16 binary64) (/.f64 (-.f64 (*.f64 #s(literal 1/16 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (*.f64 #s(literal 1/256 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 re #s(literal 5 binary64)) (pow.f64 (sqrt.f64 #s(literal 1/2 binary64)) #s(literal 2 binary64)))))) (*.f64 (pow.f64 re #s(literal 2 binary64)) (pow.f64 (sqrt.f64 #s(literal 1/2 binary64)) #s(literal 2 binary64)))) (*.f64 #s(literal 5/128 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 7 binary64))))))) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 re)) (*.f64 #s(literal 1/4 binary64) (*.f64 (sqrt.f64 re) (/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal 1/16 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (*.f64 #s(literal 1/256 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 re #s(literal 5 binary64)) (pow.f64 (sqrt.f64 #s(literal 1/2 binary64)) #s(literal 2 binary64))))))) (sqrt.f64 #s(literal 1/2 binary64))))))))))))
#s(approx (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) (*.f64 im (fma.f64 #s(literal -1/16 binary64) (*.f64 (/.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64)))))))
#s(approx (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) (*.f64 im (fma.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (pow.f64 im #s(literal 2 binary64)) (fma.f64 #s(literal -1/16 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (/.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 1/2 binary64)))) (*.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal 1/16 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (*.f64 #s(literal 1/256 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 re #s(literal 5 binary64)) (pow.f64 (sqrt.f64 #s(literal 1/2 binary64)) #s(literal 2 binary64)))))))) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 re))))))))
#s(approx (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) (*.f64 im (fma.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (pow.f64 im #s(literal 2 binary64)) (fma.f64 #s(literal -1/16 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (/.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 1/2 binary64)))) (*.f64 (pow.f64 im #s(literal 2 binary64)) (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (fma.f64 #s(literal -1/16 binary64) (/.f64 (-.f64 (*.f64 #s(literal 1/16 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (*.f64 #s(literal 1/256 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 re #s(literal 5 binary64)) (pow.f64 (sqrt.f64 #s(literal 1/2 binary64)) #s(literal 2 binary64)))))) (*.f64 (pow.f64 re #s(literal 2 binary64)) (pow.f64 (sqrt.f64 #s(literal 1/2 binary64)) #s(literal 2 binary64)))) (*.f64 #s(literal 5/128 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 7 binary64))))))) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 re)) (*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 re) (/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal 1/16 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (*.f64 #s(literal 1/256 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 re #s(literal 5 binary64)) (pow.f64 (sqrt.f64 #s(literal 1/2 binary64)) #s(literal 2 binary64))))))) (sqrt.f64 #s(literal 1/2 binary64))))))))))))
#s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 (pow.f64 im #s(literal 2 binary64)) (fma.f64 #s(literal -1/4 binary64) (/.f64 (pow.f64 im #s(literal 2 binary64)) (pow.f64 re #s(literal 3 binary64))) (/.f64 #s(literal 1 binary64) re))))
#s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 (pow.f64 im #s(literal 2 binary64)) (fma.f64 (pow.f64 im #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal 1/8 binary64) (/.f64 (pow.f64 im #s(literal 2 binary64)) (pow.f64 re #s(literal 5 binary64)))) (*.f64 #s(literal 1/4 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64))))) (/.f64 #s(literal 1 binary64) re))))
#s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 (pow.f64 im #s(literal 2 binary64)) (fma.f64 (pow.f64 im #s(literal 2 binary64)) (-.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) (fma.f64 #s(literal -5/64 binary64) (/.f64 (pow.f64 im #s(literal 2 binary64)) (pow.f64 re #s(literal 7 binary64))) (*.f64 #s(literal 1/8 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))))) (*.f64 #s(literal 1/4 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64))))) (/.f64 #s(literal 1 binary64) re))))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) (*.f64 (pow.f64 im #s(literal 2 binary64)) (fma.f64 #s(literal -1/8 binary64) (/.f64 (pow.f64 im #s(literal 2 binary64)) (pow.f64 re #s(literal 3 binary64))) (*.f64 #s(literal 1/2 binary64) (/.f64 #s(literal 1 binary64) re)))))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) (*.f64 (pow.f64 im #s(literal 2 binary64)) (fma.f64 (pow.f64 im #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal 1/16 binary64) (/.f64 (pow.f64 im #s(literal 2 binary64)) (pow.f64 re #s(literal 5 binary64)))) (*.f64 #s(literal 1/8 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64))))) (*.f64 #s(literal 1/2 binary64) (/.f64 #s(literal 1 binary64) re)))))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) (*.f64 (pow.f64 im #s(literal 2 binary64)) (fma.f64 (pow.f64 im #s(literal 2 binary64)) (-.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) (fma.f64 #s(literal -5/128 binary64) (/.f64 (pow.f64 im #s(literal 2 binary64)) (pow.f64 re #s(literal 7 binary64))) (*.f64 #s(literal 1/16 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))))) (*.f64 #s(literal 1/8 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64))))) (*.f64 #s(literal 1/2 binary64) (/.f64 #s(literal 1 binary64) re)))))
#s(approx (sqrt (+ (* im im) (* re re))) (+.f64 re (*.f64 #s(literal 1/2 binary64) (/.f64 (pow.f64 im #s(literal 2 binary64)) re))))
#s(approx (sqrt (+ (* im im) (* re re))) (+.f64 re (*.f64 (pow.f64 im #s(literal 2 binary64)) (fma.f64 #s(literal -1/8 binary64) (/.f64 (pow.f64 im #s(literal 2 binary64)) (pow.f64 re #s(literal 3 binary64))) (*.f64 #s(literal 1/2 binary64) (/.f64 #s(literal 1 binary64) re))))))
#s(approx (sqrt (+ (* im im) (* re re))) (+.f64 re (*.f64 (pow.f64 im #s(literal 2 binary64)) (fma.f64 (pow.f64 im #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal 1/16 binary64) (/.f64 (pow.f64 im #s(literal 2 binary64)) (pow.f64 re #s(literal 5 binary64)))) (*.f64 #s(literal 1/8 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64))))) (*.f64 #s(literal 1/2 binary64) (/.f64 #s(literal 1 binary64) re))))))
#s(approx (* 1/2 (* 1 im)) (*.f64 #s(literal 1/2 binary64) im))
#s(approx (+ (neg re) im) (-.f64 im re))
#s(approx (+ (* (- (/ re im) 2) re) (+ im im)) (/.f64 (fma.f64 #s(literal -2 binary64) (*.f64 im re) (pow.f64 re #s(literal 2 binary64))) im))
#s(approx (+ (* (- (/ re im) 2) re) (+ im im)) (/.f64 (fma.f64 im (fma.f64 #s(literal -2 binary64) re (*.f64 #s(literal 2 binary64) im)) (pow.f64 re #s(literal 2 binary64))) im))
#s(approx (- (/ re im) 2) (/.f64 (+.f64 re (*.f64 #s(literal -2 binary64) im)) im))
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (*.f64 im (fma.f64 #s(literal -1/4 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (*.f64 re (sqrt.f64 #s(literal 2 binary64)))) (*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal 2 binary64)))))))
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (*.f64 im (fma.f64 #s(literal -1/4 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (*.f64 re (sqrt.f64 #s(literal 2 binary64)))) (fma.f64 #s(literal 1/8 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) (*.f64 (pow.f64 re #s(literal 2 binary64)) (sqrt.f64 #s(literal 2 binary64)))) (*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal 2 binary64))))))))
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (*.f64 im (fma.f64 #s(literal -1/4 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (*.f64 re (sqrt.f64 #s(literal 2 binary64)))) (fma.f64 #s(literal -1/16 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) (*.f64 (pow.f64 re #s(literal 2 binary64)) (sqrt.f64 #s(literal 2 binary64)))) (fma.f64 #s(literal 1/8 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) (*.f64 (pow.f64 re #s(literal 2 binary64)) (sqrt.f64 #s(literal 2 binary64)))) (*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal 2 binary64)))))))))
#s(approx (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) (*.f64 im (fma.f64 #s(literal -1/2 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (*.f64 re (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal 2 binary64))))))
#s(approx (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) (*.f64 im (fma.f64 #s(literal -1/2 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (*.f64 re (sqrt.f64 #s(literal 2 binary64)))) (fma.f64 #s(literal 1/4 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) (*.f64 (pow.f64 re #s(literal 2 binary64)) (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal 2 binary64)))))))
#s(approx (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) (*.f64 im (fma.f64 #s(literal -1/2 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (*.f64 re (sqrt.f64 #s(literal 2 binary64)))) (fma.f64 #s(literal -1/8 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) (*.f64 (pow.f64 re #s(literal 2 binary64)) (sqrt.f64 #s(literal 2 binary64)))) (fma.f64 #s(literal 1/4 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) (*.f64 (pow.f64 re #s(literal 2 binary64)) (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal 2 binary64))))))))
#s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 im (+.f64 #s(literal 2 binary64) (*.f64 #s(literal -2 binary64) (/.f64 re im)))))
#s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 im (+.f64 #s(literal 2 binary64) (fma.f64 #s(literal -2 binary64) (/.f64 re im) (/.f64 (pow.f64 re #s(literal 2 binary64)) (pow.f64 im #s(literal 2 binary64)))))))
#s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 im (+.f64 #s(literal 2 binary64) (fma.f64 #s(literal -2 binary64) (/.f64 re im) (fma.f64 #s(literal -1/4 binary64) (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) (/.f64 (pow.f64 re #s(literal 2 binary64)) (pow.f64 im #s(literal 2 binary64))))))))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) (*.f64 im (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1 binary64) (/.f64 re im)))))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) (*.f64 im (-.f64 (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (/.f64 (pow.f64 re #s(literal 2 binary64)) (pow.f64 im #s(literal 2 binary64))))) (/.f64 re im))))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) (*.f64 im (-.f64 (+.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/8 binary64) (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) (*.f64 #s(literal 1/2 binary64) (/.f64 (pow.f64 re #s(literal 2 binary64)) (pow.f64 im #s(literal 2 binary64)))))) (/.f64 re im))))
#s(approx (sqrt (+ (* im im) (* re re))) (*.f64 im (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (/.f64 (pow.f64 re #s(literal 2 binary64)) (pow.f64 im #s(literal 2 binary64)))))))
#s(approx (sqrt (+ (* im im) (* re re))) (*.f64 im (+.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/8 binary64) (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) (*.f64 #s(literal 1/2 binary64) (/.f64 (pow.f64 re #s(literal 2 binary64)) (pow.f64 im #s(literal 2 binary64))))))))
#s(approx (sqrt (+ (* im im) (* re re))) (*.f64 im (+.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/8 binary64) (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) (fma.f64 #s(literal 1/16 binary64) (/.f64 (pow.f64 re #s(literal 6 binary64)) (pow.f64 im #s(literal 6 binary64))) (*.f64 #s(literal 1/2 binary64) (/.f64 (pow.f64 re #s(literal 2 binary64)) (pow.f64 im #s(literal 2 binary64)))))))))
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (*.f64 #s(literal -1/2 binary64) (*.f64 (sqrt.f64 im) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))))))
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (*.f64 #s(literal -1 binary64) (*.f64 im (fma.f64 #s(literal -1/4 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (*.f64 re (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))))) (*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64)))))))))
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (*.f64 #s(literal -1 binary64) (*.f64 im (fma.f64 #s(literal -1/4 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (*.f64 re (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))))) (fma.f64 #s(literal -1/8 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) (*.f64 (pow.f64 re #s(literal 2 binary64)) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))))) (*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))))))))))
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (*.f64 #s(literal -1 binary64) (*.f64 im (fma.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal 1/16 binary64) (*.f64 (sqrt.f64 im) (*.f64 (pow.f64 re #s(literal 2 binary64)) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))))) (*.f64 #s(literal 1/8 binary64) (*.f64 (sqrt.f64 im) (*.f64 (pow.f64 re #s(literal 2 binary64)) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))))))) (pow.f64 im #s(literal 3 binary64))) (fma.f64 #s(literal -1/4 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (*.f64 re (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))))) (*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))))))))))
#s(approx (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) (*.f64 #s(literal -1 binary64) (*.f64 (sqrt.f64 im) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))))))
#s(approx (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) (*.f64 #s(literal -1 binary64) (*.f64 im (fma.f64 #s(literal -1/2 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (*.f64 re (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))))))))
#s(approx (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) (*.f64 #s(literal -1 binary64) (*.f64 im (fma.f64 #s(literal -1/2 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (*.f64 re (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))))) (fma.f64 #s(literal -1/4 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) (*.f64 (pow.f64 re #s(literal 2 binary64)) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64)))))))))
#s(approx (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) (*.f64 #s(literal -1 binary64) (*.f64 im (fma.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal 1/8 binary64) (*.f64 (sqrt.f64 im) (*.f64 (pow.f64 re #s(literal 2 binary64)) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))))) (*.f64 #s(literal 1/4 binary64) (*.f64 (sqrt.f64 im) (*.f64 (pow.f64 re #s(literal 2 binary64)) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))))))) (pow.f64 im #s(literal 3 binary64))) (fma.f64 #s(literal -1/2 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (*.f64 re (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64)))))))))
#s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal -2 binary64) im))
#s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal -1 binary64) (*.f64 im (+.f64 #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (/.f64 re im))))))
#s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal -1 binary64) (*.f64 im (+.f64 #s(literal 2 binary64) (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -2 binary64) re (*.f64 #s(literal -1 binary64) (/.f64 (pow.f64 re #s(literal 2 binary64)) im))) im))))))
#s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal -1 binary64) (*.f64 im (+.f64 #s(literal 2 binary64) (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -2 binary64) re (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1/4 binary64) (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 2 binary64))) (pow.f64 re #s(literal 2 binary64))) im))) im))))))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) (*.f64 #s(literal -1 binary64) im))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) (*.f64 #s(literal -1 binary64) (*.f64 im (+.f64 #s(literal 1 binary64) (/.f64 re im)))))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) (*.f64 #s(literal -1 binary64) (*.f64 im (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1 binary64) (/.f64 (-.f64 (*.f64 #s(literal -1/2 binary64) (/.f64 (pow.f64 re #s(literal 2 binary64)) im)) re) im))))))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) (*.f64 #s(literal -1 binary64) (*.f64 im (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1 binary64) (/.f64 (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1/8 binary64) (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 2 binary64))) (*.f64 #s(literal 1/2 binary64) (pow.f64 re #s(literal 2 binary64)))) im)) re) im))))))
#s(approx (sqrt (+ (* im im) (* re re))) (*.f64 #s(literal -1 binary64) (*.f64 im (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (/.f64 (pow.f64 re #s(literal 2 binary64)) (pow.f64 im #s(literal 2 binary64))))))))
#s(approx (sqrt (+ (* im im) (* re re))) (*.f64 #s(literal -1 binary64) (*.f64 im (+.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/8 binary64) (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) (*.f64 #s(literal 1/2 binary64) (/.f64 (pow.f64 re #s(literal 2 binary64)) (pow.f64 im #s(literal 2 binary64)))))))))
#s(approx (sqrt (+ (* im im) (* re re))) (*.f64 #s(literal -1 binary64) (*.f64 im (+.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/8 binary64) (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) (fma.f64 #s(literal 1/16 binary64) (/.f64 (pow.f64 re #s(literal 6 binary64)) (pow.f64 im #s(literal 6 binary64))) (*.f64 #s(literal 1/2 binary64) (/.f64 (pow.f64 re #s(literal 2 binary64)) (pow.f64 im #s(literal 2 binary64))))))))))
#s(approx (+ (neg re) im) (*.f64 #s(literal -1 binary64) (*.f64 im (-.f64 (/.f64 re im) #s(literal 1 binary64)))))
#s(approx (+ (* (- (/ re im) 2) re) (+ im im)) (*.f64 #s(literal -1 binary64) (*.f64 im (-.f64 (*.f64 #s(literal 2 binary64) (/.f64 re im)) #s(literal 2 binary64)))))
#s(approx (+ (* (- (/ re im) 2) re) (+ im im)) (*.f64 #s(literal -1 binary64) (*.f64 im (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -2 binary64) re (/.f64 (pow.f64 re #s(literal 2 binary64)) im)) im)) #s(literal 2 binary64)))))

eval18.0ms (0.6%)

Memory
18.1MiB live, 63.7MiB allocated; 4ms collecting garbage
Compiler

Compiled 2 865 to 1 004 computations (65% saved)

prune5.0ms (0.2%)

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

10 alts after pruning (3 fresh and 7 done)

PrunedKeptTotal
New1333136
Fresh202
Picked145
Done033
Total13610146
Accuracy
99.9%
Counts
146 → 10
Alt Table
Click to see full alt table
StatusAccuracyProgram
78.9%
(*.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))
43.1%
(*.f64 (sqrt.f64 (*.f64 (-.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re))) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))
52.8%
(*.f64 #s(approx (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) (fma.f64 #s(literal -1/2 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (*.f64 re (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (sqrt.f64 im) (sqrt.f64 #s(literal 2 binary64))))) #s(literal 1/2 binary64))
26.5%
(*.f64 #s(approx (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) (*.f64 (*.f64 im (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))) #s(literal 1/2 binary64))
55.9%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (+ (neg re) im) (-.f64 im re))))))
53.6%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (+.f64 im im)))))
14.8%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 im im) re))))
53.8%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (+.f64 im im))))
24.5%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re))))
26.8%
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 #s(approx (* 1/2 (* 1 im)) (*.f64 #s(literal 1/2 binary64) im)) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))))
Compiler

Compiled 169 to 168 computations (0.6% saved)

series39.0ms (1.2%)

Memory
5.8MiB live, 94.6MiB allocated; 22ms collecting garbage
Counts
30 → 113
Calls
Call 1
Inputs
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (+ (neg re) im) (-.f64 im re))))))
#s(literal 1/2 binary64)
(sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (+ (neg re) im) (-.f64 im re)))))
(*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (+ (neg re) im) (-.f64 im re))))
#s(literal 2 binary64)
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (+ (neg re) im) (-.f64 im re)))
#s(approx (+ (neg re) im) (-.f64 im re))
(-.f64 im re)
im
re
(*.f64 #s(approx (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) (*.f64 (*.f64 im (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))) #s(literal 1/2 binary64))
#s(approx (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) (*.f64 (*.f64 im (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))))
(*.f64 (*.f64 im (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))
(*.f64 im (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64))))
(*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64)))
(sqrt.f64 #s(literal 1/2 binary64))
(sqrt.f64 #s(literal 2 binary64))
(sqrt.f64 (/.f64 #s(literal 1 binary64) re))
(/.f64 #s(literal 1 binary64) re)
#s(literal 1 binary64)
(*.f64 #s(approx (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) (fma.f64 #s(literal -1/2 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (*.f64 re (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (sqrt.f64 im) (sqrt.f64 #s(literal 2 binary64))))) #s(literal 1/2 binary64))
#s(approx (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) (fma.f64 #s(literal -1/2 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (*.f64 re (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (sqrt.f64 im) (sqrt.f64 #s(literal 2 binary64)))))
(fma.f64 #s(literal -1/2 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (*.f64 re (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (sqrt.f64 im) (sqrt.f64 #s(literal 2 binary64))))
#s(literal -1/2 binary64)
(*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (*.f64 re (sqrt.f64 #s(literal 2 binary64))))
(sqrt.f64 (/.f64 #s(literal 1 binary64) im))
(/.f64 #s(literal 1 binary64) im)
(*.f64 re (sqrt.f64 #s(literal 2 binary64)))
(*.f64 (sqrt.f64 im) (sqrt.f64 #s(literal 2 binary64)))
(sqrt.f64 im)
Outputs
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* 1/2 (* (sqrt im) (sqrt 2)))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (+ (* -1/4 (* (sqrt (/ 1 im)) (* re (sqrt 2)))) (* 1/2 (* (sqrt im) (sqrt 2))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (+ (* 1/2 (* (sqrt im) (sqrt 2))) (* re (+ (* -1/4 (* (sqrt (/ 1 im)) (sqrt 2))) (* 1/16 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (+ (* 1/2 (* (sqrt im) (sqrt 2))) (* re (+ (* -1/4 (* (sqrt (/ 1 im)) (sqrt 2))) (* re (+ (* 1/32 (* (sqrt (/ 1 (pow im 5))) (* re (sqrt 2)))) (* 1/16 (* (sqrt (/ 1 (pow im 3))) (sqrt 2))))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* (sqrt im) (sqrt 2))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (+ (* -1/2 (* (sqrt (/ 1 im)) (* re (sqrt 2)))) (* (sqrt im) (sqrt 2)))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (+ (* re (+ (* -1/2 (* (sqrt (/ 1 im)) (sqrt 2))) (* 1/8 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))))) (* (sqrt im) (sqrt 2)))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (+ (* re (+ (* -1/2 (* (sqrt (/ 1 im)) (sqrt 2))) (* re (+ (* 1/16 (* (sqrt (/ 1 (pow im 5))) (* re (sqrt 2)))) (* 1/8 (* (sqrt (/ 1 (pow im 3))) (sqrt 2))))))) (* (sqrt im) (sqrt 2)))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* 2 im)))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (+ (* -2 re) (* 2 im))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (+ (* 2 im) (* re (- (/ re im) 2)))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (+ (* 2 im) (* re (- (* re (+ (* -1/4 (/ (pow re 2) (pow im 3))) (/ 1 im))) 2)))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 im))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (+ im (* -1 re))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (+ im (* re (- (* 1/2 (/ re im)) 1)))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (+ im (* re (- (* re (+ (* -1/8 (/ (pow re 2) (pow im 3))) (* 1/2 (/ 1 im)))) 1)))))
#s(approx re #s(hole binary64 re))
#s(approx (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re))) #s(hole binary64 (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re)))))
#s(approx (sqrt (/ 1 re)) #s(hole binary64 (sqrt (/ 1 re))))
#s(approx (/ 1 re) #s(hole binary64 (/ 1 re)))
#s(approx (* (sqrt (/ 1 im)) (* re (sqrt 2))) #s(hole binary64 (* (sqrt (/ 1 im)) (* re (sqrt 2)))))
#s(approx (* re (sqrt 2)) #s(hole binary64 (* re (sqrt 2))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* 1/2 (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (+ (* -1/32 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re)))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (+ (* -1/32 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* 1/64 (* (/ (* (pow im 5) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* 1/2 (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (+ (* -1/32 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* -1/1024 (* (/ (* (pow im 5) (sqrt 2)) (pow (sqrt 1/2) 3)) (sqrt (/ 1 (pow re 9))))) (+ (* 1/64 (* (/ (* (pow im 5) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* 1/2 (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re)))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (+ (* -1/16 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (+ (* -1/16 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* 1/32 (* (/ (* (pow im 5) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re)))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (+ (* -1/16 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* -1/512 (* (/ (* (pow im 5) (sqrt 2)) (pow (sqrt 1/2) 3)) (sqrt (/ 1 (pow re 9))))) (+ (* 1/32 (* (/ (* (pow im 5) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re))))))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (/ (pow im 2) re)))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (/ (+ (* -1/4 (/ (pow im 4) (pow re 2))) (pow im 2)) re)))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (/ (+ (* -1/4 (/ (pow im 4) (pow re 2))) (+ (* 1/8 (/ (pow im 6) (pow re 4))) (pow im 2))) re)))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (/ (+ (* -1 (/ (+ (* 1/64 (pow im 8)) (* 1/16 (pow im 8))) (pow re 6))) (+ (* -1/4 (/ (pow im 4) (pow re 2))) (+ (* 1/8 (/ (pow im 6) (pow re 4))) (pow im 2)))) re)))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (* 1/2 (/ (pow im 2) re))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (/ (+ (* -1/8 (/ (pow im 4) (pow re 2))) (* 1/2 (pow im 2))) re)))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (/ (+ (* -1/8 (/ (pow im 4) (pow re 2))) (+ (* 1/16 (/ (pow im 6) (pow re 4))) (* 1/2 (pow im 2)))) re)))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (/ (+ (* -1/2 (/ (+ (* 1/64 (pow im 8)) (* 1/16 (pow im 8))) (pow re 6))) (+ (* -1/8 (/ (pow im 4) (pow re 2))) (+ (* 1/16 (/ (pow im 6) (pow re 4))) (* 1/2 (pow im 2))))) re)))
#s(approx (+ (neg re) im) #s(hole binary64 (* -1 re)))
#s(approx (+ (neg re) im) #s(hole binary64 (* re (- (/ im re) 1))))
#s(approx (+ (* -1/2 (* (sqrt (/ 1 im)) (* re (sqrt 2)))) (* (sqrt im) (sqrt 2))) #s(hole binary64 (* -1/2 (* (sqrt (/ 1 im)) (* re (sqrt 2))))))
#s(approx (+ (* -1/2 (* (sqrt (/ 1 im)) (* re (sqrt 2)))) (* (sqrt im) (sqrt 2))) #s(hole binary64 (* re (+ (* -1/2 (* (sqrt (/ 1 im)) (sqrt 2))) (* (sqrt im) (/ (sqrt 2) re))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* -1/2 (* (sqrt re) (* (sqrt -1) (pow (sqrt 2) 2))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* -1 (* re (+ (* -1/8 (* (* (pow im 2) (sqrt -1)) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2)))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* -1 (* re (+ (* -1 (/ (+ (* -1/32 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (* 1/8 (* (* (pow im 2) (sqrt -1)) (sqrt re)))) (pow re 3))) (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2)))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* -1 (* re (+ (* -1 (/ (+ (* -1/32 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (+ (* 1/64 (* (/ (* (pow im 4) (sqrt -1)) (pow (sqrt 2) 2)) (sqrt (/ 1 (pow re 3))))) (* 1/8 (* (* (pow im 2) (sqrt -1)) (sqrt re))))) (pow re 3))) (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2)))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* -1 (* (sqrt re) (* (sqrt -1) (pow (sqrt 2) 2))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* -1 (* re (+ (* -1/4 (* (* (pow im 2) (sqrt -1)) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* -1 (* re (+ (* -1 (/ (+ (* -1/16 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (* 1/4 (* (* (pow im 2) (sqrt -1)) (sqrt re)))) (pow re 3))) (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* -1 (* re (+ (* -1 (/ (+ (* -1/16 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (+ (* 1/32 (* (/ (* (pow im 4) (sqrt -1)) (pow (sqrt 2) 2)) (sqrt (/ 1 (pow re 3))))) (* 1/4 (* (* (pow im 2) (sqrt -1)) (sqrt re))))) (pow re 3))) (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2))))))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* -4 re)))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* -1 (* re (+ 4 (/ (pow im 2) (pow re 2)))))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* -1 (* re (+ 4 (+ (* -1/4 (/ (pow im 4) (pow re 4))) (/ (pow im 2) (pow re 2))))))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* -1 (* re (+ 4 (+ (* -1/4 (/ (pow im 4) (pow re 4))) (+ (* 1/8 (/ (pow im 6) (pow re 6))) (/ (pow im 2) (pow re 2)))))))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (* -2 re)))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (* -1 (* re (+ 2 (* 1/2 (/ (pow im 2) (pow re 2))))))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (* -1 (* re (+ 2 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2)))))))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (* -1 (* re (+ 2 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2))))))))))
#s(approx (+ (neg re) im) #s(hole binary64 (* -1 (* re (+ 1 (* -1 (/ im re)))))))
#s(approx (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re))) #s(hole binary64 (* (* im (* (pow (sqrt -1) 2) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re)))))
#s(approx (sqrt (/ 1 re)) #s(hole binary64 (* (sqrt (/ 1 re)) (pow (sqrt -1) 2))))
#s(approx (+ (* -1/2 (* (sqrt (/ 1 im)) (* re (sqrt 2)))) (* (sqrt im) (sqrt 2))) #s(hole binary64 (* -1 (* re (+ (* -1 (* (sqrt im) (/ (sqrt 2) re))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* im (+ (* -1/32 (* (/ (* (pow im 2) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* im (+ (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2)))) (* (pow im 2) (+ (* -1/32 (* (sqrt (/ 1 (pow re 5))) (/ (sqrt 2) (sqrt 1/2)))) (* 1/4 (* (/ (* (pow im 2) (* (sqrt 2) (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2))))))) (sqrt 1/2)) (sqrt re)))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* im (+ (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2)))) (* (pow im 2) (+ (* -1/32 (* (sqrt (/ 1 (pow re 5))) (/ (sqrt 2) (sqrt 1/2)))) (* (pow im 2) (+ (* -1/4 (* (/ (* (pow im 2) (* (sqrt 2) (+ (* -1/16 (/ (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2))))) (* (pow re 2) (pow (sqrt 1/2) 2)))) (* 5/128 (/ 1 (pow re 7)))))) (sqrt 1/2)) (sqrt re))) (* 1/4 (* (sqrt re) (/ (* (sqrt 2) (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2)))))) (sqrt 1/2))))))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* im (+ (* -1/16 (* (/ (* (pow im 2) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2)))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* im (+ (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2))) (* (pow im 2) (+ (* -1/16 (* (sqrt (/ 1 (pow re 5))) (/ (sqrt 2) (sqrt 1/2)))) (* 1/2 (* (/ (* (pow im 2) (* (sqrt 2) (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2))))))) (sqrt 1/2)) (sqrt re)))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* im (+ (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2))) (* (pow im 2) (+ (* -1/16 (* (sqrt (/ 1 (pow re 5))) (/ (sqrt 2) (sqrt 1/2)))) (* (pow im 2) (+ (* -1/2 (* (/ (* (pow im 2) (* (sqrt 2) (+ (* -1/16 (/ (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2))))) (* (pow re 2) (pow (sqrt 1/2) 2)))) (* 5/128 (/ 1 (pow re 7)))))) (sqrt 1/2)) (sqrt re))) (* 1/2 (* (sqrt re) (/ (* (sqrt 2) (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2)))))) (sqrt 1/2))))))))))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* (pow im 2) (+ (* -1/4 (/ (pow im 2) (pow re 3))) (/ 1 re)))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* (pow im 2) (+ (* (pow im 2) (- (* 1/8 (/ (pow im 2) (pow re 5))) (* 1/4 (/ 1 (pow re 3))))) (/ 1 re)))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* (pow im 2) (+ (* (pow im 2) (- (* (pow im 2) (+ (* -5/64 (/ (pow im 2) (pow re 7))) (* 1/8 (/ 1 (pow re 5))))) (* 1/4 (/ 1 (pow re 3))))) (/ 1 re)))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (* (pow im 2) (+ (* -1/8 (/ (pow im 2) (pow re 3))) (* 1/2 (/ 1 re))))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (* (pow im 2) (+ (* (pow im 2) (- (* 1/16 (/ (pow im 2) (pow re 5))) (* 1/8 (/ 1 (pow re 3))))) (* 1/2 (/ 1 re))))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (* (pow im 2) (+ (* (pow im 2) (- (* (pow im 2) (+ (* -5/128 (/ (pow im 2) (pow re 7))) (* 1/16 (/ 1 (pow re 5))))) (* 1/8 (/ 1 (pow re 3))))) (* 1/2 (/ 1 re))))))
#s(approx (+ (neg re) im) #s(hole binary64 (- im re)))
#s(approx (* im (* (sqrt 1/2) (sqrt 2))) #s(hole binary64 (* im (* (sqrt 1/2) (sqrt 2)))))
#s(approx (+ (* -1/2 (* (sqrt (/ 1 im)) (* re (sqrt 2)))) (* (sqrt im) (sqrt 2))) #s(hole binary64 (/ (+ (* -1/2 (* (sqrt im) (* re (sqrt 2)))) (* (sqrt (pow im 3)) (sqrt 2))) im)))
#s(approx (sqrt (/ 1 im)) #s(hole binary64 (sqrt (/ 1 im))))
#s(approx (/ 1 im) #s(hole binary64 (/ 1 im)))
#s(approx (sqrt im) #s(hole binary64 (sqrt im)))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2)))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (+ (* 1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (+ (* -1/16 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2)))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2)))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2))))))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* im (+ 2 (* -2 (/ re im))))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* im (+ 2 (+ (* -2 (/ re im)) (/ (pow re 2) (pow im 2)))))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* im (+ 2 (+ (* -2 (/ re im)) (+ (* -1/4 (/ (pow re 4) (pow im 4))) (/ (pow re 2) (pow im 2))))))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (* im (+ 1 (* -1 (/ re im))))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (* im (- (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))) (/ re im)))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (* im (- (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2))))) (/ re im)))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* -1/2 (* (sqrt im) (* (sqrt -1) (sqrt 2))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* -1 (* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* -1 (* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* -1 (* im (+ (* -1 (/ (+ (* 1/16 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* 1/8 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2)))))) (pow im 3))) (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* -1 (* (sqrt im) (* (sqrt -1) (sqrt 2))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* -1 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* -1 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (+ (* -1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* -1 (* im (+ (* -1 (/ (+ (* 1/8 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* 1/4 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2)))))) (pow im 3))) (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* -2 im)))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* -1 (* im (+ 2 (* 2 (/ re im)))))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* -1 (* im (+ 2 (* -1 (/ (+ (* -2 re) (* -1 (/ (pow re 2) im))) im)))))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* -1 (* im (+ 2 (* -1 (/ (+ (* -2 re) (* -1 (/ (+ (* -1/4 (/ (pow re 4) (pow im 2))) (pow re 2)) im))) im)))))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (* -1 im)))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (* -1 (* im (+ 1 (/ re im))))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (* -1 (* im (+ 1 (* -1 (/ (- (* -1/2 (/ (pow re 2) im)) re) im)))))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (* -1 (* im (+ 1 (* -1 (/ (- (* -1 (/ (+ (* -1/8 (/ (pow re 4) (pow im 2))) (* 1/2 (pow re 2))) im)) re) im)))))))
#s(approx (+ (neg re) im) #s(hole binary64 (* -1 (* im (- (/ re im) 1)))))
#s(approx (+ (* -1/2 (* (sqrt (/ 1 im)) (* re (sqrt 2)))) (* (sqrt im) (sqrt 2))) #s(hole binary64 (* -1 (* (sqrt im) (* (pow (sqrt -1) 2) (sqrt 2))))))
#s(approx (+ (* -1/2 (* (sqrt (/ 1 im)) (* re (sqrt 2)))) (* (sqrt im) (sqrt 2))) #s(hole binary64 (* -1 (* im (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) (* re (* (pow (sqrt -1) 2) (sqrt 2))))) (* (sqrt (/ 1 im)) (* (pow (sqrt -1) 2) (sqrt 2))))))))
#s(approx (* (sqrt (/ 1 im)) (* re (sqrt 2))) #s(hole binary64 (* (sqrt (/ 1 im)) (* re (* (pow (sqrt -1) 2) (sqrt 2))))))
#s(approx (sqrt (/ 1 im)) #s(hole binary64 (* (sqrt (/ 1 im)) (pow (sqrt -1) 2))))
#s(approx (sqrt im) #s(hole binary64 (* -1 (* (sqrt im) (pow (sqrt -1) 2)))))
Calls

6 calls:

TimeVariablePointExpression
13.0ms
im
@0
((* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (* 2 (- (sqrt (+ (* re re) (* im im))) re)) 2 (- (sqrt (+ (* re re) (* im im))) re) (+ (neg re) im) (- im re) im re (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re))) (* im (* (sqrt 1/2) (sqrt 2))) (* (sqrt 1/2) (sqrt 2)) (sqrt 1/2) (sqrt 2) (sqrt (/ 1 re)) (/ 1 re) 1 (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) (+ (* -1/2 (* (sqrt (/ 1 im)) (* re (sqrt 2)))) (* (sqrt im) (sqrt 2))) -1/2 (* (sqrt (/ 1 im)) (* re (sqrt 2))) (sqrt (/ 1 im)) (/ 1 im) (* re (sqrt 2)) (* (sqrt im) (sqrt 2)) (sqrt im))
6.0ms
re
@0
((* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (* 2 (- (sqrt (+ (* re re) (* im im))) re)) 2 (- (sqrt (+ (* re re) (* im im))) re) (+ (neg re) im) (- im re) im re (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re))) (* im (* (sqrt 1/2) (sqrt 2))) (* (sqrt 1/2) (sqrt 2)) (sqrt 1/2) (sqrt 2) (sqrt (/ 1 re)) (/ 1 re) 1 (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) (+ (* -1/2 (* (sqrt (/ 1 im)) (* re (sqrt 2)))) (* (sqrt im) (sqrt 2))) -1/2 (* (sqrt (/ 1 im)) (* re (sqrt 2))) (sqrt (/ 1 im)) (/ 1 im) (* re (sqrt 2)) (* (sqrt im) (sqrt 2)) (sqrt im))
5.0ms
im
@-inf
((* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (* 2 (- (sqrt (+ (* re re) (* im im))) re)) 2 (- (sqrt (+ (* re re) (* im im))) re) (+ (neg re) im) (- im re) im re (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re))) (* im (* (sqrt 1/2) (sqrt 2))) (* (sqrt 1/2) (sqrt 2)) (sqrt 1/2) (sqrt 2) (sqrt (/ 1 re)) (/ 1 re) 1 (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) (+ (* -1/2 (* (sqrt (/ 1 im)) (* re (sqrt 2)))) (* (sqrt im) (sqrt 2))) -1/2 (* (sqrt (/ 1 im)) (* re (sqrt 2))) (sqrt (/ 1 im)) (/ 1 im) (* re (sqrt 2)) (* (sqrt im) (sqrt 2)) (sqrt im))
4.0ms
re
@-inf
((* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (* 2 (- (sqrt (+ (* re re) (* im im))) re)) 2 (- (sqrt (+ (* re re) (* im im))) re) (+ (neg re) im) (- im re) im re (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re))) (* im (* (sqrt 1/2) (sqrt 2))) (* (sqrt 1/2) (sqrt 2)) (sqrt 1/2) (sqrt 2) (sqrt (/ 1 re)) (/ 1 re) 1 (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) (+ (* -1/2 (* (sqrt (/ 1 im)) (* re (sqrt 2)))) (* (sqrt im) (sqrt 2))) -1/2 (* (sqrt (/ 1 im)) (* re (sqrt 2))) (sqrt (/ 1 im)) (/ 1 im) (* re (sqrt 2)) (* (sqrt im) (sqrt 2)) (sqrt im))
3.0ms
re
@inf
((* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (* 2 (- (sqrt (+ (* re re) (* im im))) re)) 2 (- (sqrt (+ (* re re) (* im im))) re) (+ (neg re) im) (- im re) im re (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re))) (* im (* (sqrt 1/2) (sqrt 2))) (* (sqrt 1/2) (sqrt 2)) (sqrt 1/2) (sqrt 2) (sqrt (/ 1 re)) (/ 1 re) 1 (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) (+ (* -1/2 (* (sqrt (/ 1 im)) (* re (sqrt 2)))) (* (sqrt im) (sqrt 2))) -1/2 (* (sqrt (/ 1 im)) (* re (sqrt 2))) (sqrt (/ 1 im)) (/ 1 im) (* re (sqrt 2)) (* (sqrt im) (sqrt 2)) (sqrt im))

rewrite127.0ms (4%)

Memory
-6.7MiB live, 170.5MiB allocated; 76ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
07074655
07374062
120274062
Stop Event
saturated
iter-limit
unsound
iter-limit
Counts
143 → 144
Calls
Call 1
Inputs
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (+ (neg re) im) (-.f64 im re))))))
#s(literal 1/2 binary64)
(sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (+ (neg re) im) (-.f64 im re)))))
(*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (+ (neg re) im) (-.f64 im re))))
#s(literal 2 binary64)
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (+ (neg re) im) (-.f64 im re)))
#s(approx (+ (neg re) im) (-.f64 im re))
(-.f64 im re)
im
re
(*.f64 #s(approx (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) (*.f64 (*.f64 im (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))) #s(literal 1/2 binary64))
#s(approx (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) (*.f64 (*.f64 im (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))))
(*.f64 (*.f64 im (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))
(*.f64 im (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64))))
(*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64)))
(sqrt.f64 #s(literal 1/2 binary64))
(sqrt.f64 #s(literal 2 binary64))
(sqrt.f64 (/.f64 #s(literal 1 binary64) re))
(/.f64 #s(literal 1 binary64) re)
#s(literal 1 binary64)
(*.f64 #s(approx (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) (fma.f64 #s(literal -1/2 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (*.f64 re (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (sqrt.f64 im) (sqrt.f64 #s(literal 2 binary64))))) #s(literal 1/2 binary64))
#s(approx (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) (fma.f64 #s(literal -1/2 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (*.f64 re (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (sqrt.f64 im) (sqrt.f64 #s(literal 2 binary64)))))
(fma.f64 #s(literal -1/2 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (*.f64 re (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (sqrt.f64 im) (sqrt.f64 #s(literal 2 binary64))))
#s(literal -1/2 binary64)
(*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (*.f64 re (sqrt.f64 #s(literal 2 binary64))))
(sqrt.f64 (/.f64 #s(literal 1 binary64) im))
(/.f64 #s(literal 1 binary64) im)
(*.f64 re (sqrt.f64 #s(literal 2 binary64)))
(*.f64 (sqrt.f64 im) (sqrt.f64 #s(literal 2 binary64)))
(sqrt.f64 im)
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* 1/2 (* (sqrt im) (sqrt 2)))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (+ (* -1/4 (* (sqrt (/ 1 im)) (* re (sqrt 2)))) (* 1/2 (* (sqrt im) (sqrt 2))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (+ (* 1/2 (* (sqrt im) (sqrt 2))) (* re (+ (* -1/4 (* (sqrt (/ 1 im)) (sqrt 2))) (* 1/16 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (+ (* 1/2 (* (sqrt im) (sqrt 2))) (* re (+ (* -1/4 (* (sqrt (/ 1 im)) (sqrt 2))) (* re (+ (* 1/32 (* (sqrt (/ 1 (pow im 5))) (* re (sqrt 2)))) (* 1/16 (* (sqrt (/ 1 (pow im 3))) (sqrt 2))))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* (sqrt im) (sqrt 2))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (+ (* -1/2 (* (sqrt (/ 1 im)) (* re (sqrt 2)))) (* (sqrt im) (sqrt 2)))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (+ (* re (+ (* -1/2 (* (sqrt (/ 1 im)) (sqrt 2))) (* 1/8 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))))) (* (sqrt im) (sqrt 2)))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (+ (* re (+ (* -1/2 (* (sqrt (/ 1 im)) (sqrt 2))) (* re (+ (* 1/16 (* (sqrt (/ 1 (pow im 5))) (* re (sqrt 2)))) (* 1/8 (* (sqrt (/ 1 (pow im 3))) (sqrt 2))))))) (* (sqrt im) (sqrt 2)))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* 2 im)))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (+ (* -2 re) (* 2 im))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (+ (* 2 im) (* re (- (/ re im) 2)))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (+ (* 2 im) (* re (- (* re (+ (* -1/4 (/ (pow re 2) (pow im 3))) (/ 1 im))) 2)))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 im))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (+ im (* -1 re))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (+ im (* re (- (* 1/2 (/ re im)) 1)))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (+ im (* re (- (* re (+ (* -1/8 (/ (pow re 2) (pow im 3))) (* 1/2 (/ 1 im)))) 1)))))
#s(approx re #s(hole binary64 re))
#s(approx (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re))) #s(hole binary64 (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re)))))
#s(approx (sqrt (/ 1 re)) #s(hole binary64 (sqrt (/ 1 re))))
#s(approx (/ 1 re) #s(hole binary64 (/ 1 re)))
#s(approx (* (sqrt (/ 1 im)) (* re (sqrt 2))) #s(hole binary64 (* (sqrt (/ 1 im)) (* re (sqrt 2)))))
#s(approx (* re (sqrt 2)) #s(hole binary64 (* re (sqrt 2))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* 1/2 (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (+ (* -1/32 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re)))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (+ (* -1/32 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* 1/64 (* (/ (* (pow im 5) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* 1/2 (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (+ (* -1/32 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* -1/1024 (* (/ (* (pow im 5) (sqrt 2)) (pow (sqrt 1/2) 3)) (sqrt (/ 1 (pow re 9))))) (+ (* 1/64 (* (/ (* (pow im 5) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* 1/2 (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re)))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (+ (* -1/16 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (+ (* -1/16 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* 1/32 (* (/ (* (pow im 5) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re)))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (+ (* -1/16 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* -1/512 (* (/ (* (pow im 5) (sqrt 2)) (pow (sqrt 1/2) 3)) (sqrt (/ 1 (pow re 9))))) (+ (* 1/32 (* (/ (* (pow im 5) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re))))))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (/ (pow im 2) re)))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (/ (+ (* -1/4 (/ (pow im 4) (pow re 2))) (pow im 2)) re)))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (/ (+ (* -1/4 (/ (pow im 4) (pow re 2))) (+ (* 1/8 (/ (pow im 6) (pow re 4))) (pow im 2))) re)))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (/ (+ (* -1 (/ (+ (* 1/64 (pow im 8)) (* 1/16 (pow im 8))) (pow re 6))) (+ (* -1/4 (/ (pow im 4) (pow re 2))) (+ (* 1/8 (/ (pow im 6) (pow re 4))) (pow im 2)))) re)))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (* 1/2 (/ (pow im 2) re))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (/ (+ (* -1/8 (/ (pow im 4) (pow re 2))) (* 1/2 (pow im 2))) re)))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (/ (+ (* -1/8 (/ (pow im 4) (pow re 2))) (+ (* 1/16 (/ (pow im 6) (pow re 4))) (* 1/2 (pow im 2)))) re)))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (/ (+ (* -1/2 (/ (+ (* 1/64 (pow im 8)) (* 1/16 (pow im 8))) (pow re 6))) (+ (* -1/8 (/ (pow im 4) (pow re 2))) (+ (* 1/16 (/ (pow im 6) (pow re 4))) (* 1/2 (pow im 2))))) re)))
#s(approx (+ (neg re) im) #s(hole binary64 (* -1 re)))
#s(approx (+ (neg re) im) #s(hole binary64 (* re (- (/ im re) 1))))
#s(approx (+ (* -1/2 (* (sqrt (/ 1 im)) (* re (sqrt 2)))) (* (sqrt im) (sqrt 2))) #s(hole binary64 (* -1/2 (* (sqrt (/ 1 im)) (* re (sqrt 2))))))
#s(approx (+ (* -1/2 (* (sqrt (/ 1 im)) (* re (sqrt 2)))) (* (sqrt im) (sqrt 2))) #s(hole binary64 (* re (+ (* -1/2 (* (sqrt (/ 1 im)) (sqrt 2))) (* (sqrt im) (/ (sqrt 2) re))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* -1/2 (* (sqrt re) (* (sqrt -1) (pow (sqrt 2) 2))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* -1 (* re (+ (* -1/8 (* (* (pow im 2) (sqrt -1)) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2)))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* -1 (* re (+ (* -1 (/ (+ (* -1/32 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (* 1/8 (* (* (pow im 2) (sqrt -1)) (sqrt re)))) (pow re 3))) (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2)))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* -1 (* re (+ (* -1 (/ (+ (* -1/32 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (+ (* 1/64 (* (/ (* (pow im 4) (sqrt -1)) (pow (sqrt 2) 2)) (sqrt (/ 1 (pow re 3))))) (* 1/8 (* (* (pow im 2) (sqrt -1)) (sqrt re))))) (pow re 3))) (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2)))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* -1 (* (sqrt re) (* (sqrt -1) (pow (sqrt 2) 2))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* -1 (* re (+ (* -1/4 (* (* (pow im 2) (sqrt -1)) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* -1 (* re (+ (* -1 (/ (+ (* -1/16 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (* 1/4 (* (* (pow im 2) (sqrt -1)) (sqrt re)))) (pow re 3))) (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* -1 (* re (+ (* -1 (/ (+ (* -1/16 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (+ (* 1/32 (* (/ (* (pow im 4) (sqrt -1)) (pow (sqrt 2) 2)) (sqrt (/ 1 (pow re 3))))) (* 1/4 (* (* (pow im 2) (sqrt -1)) (sqrt re))))) (pow re 3))) (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2))))))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* -4 re)))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* -1 (* re (+ 4 (/ (pow im 2) (pow re 2)))))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* -1 (* re (+ 4 (+ (* -1/4 (/ (pow im 4) (pow re 4))) (/ (pow im 2) (pow re 2))))))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* -1 (* re (+ 4 (+ (* -1/4 (/ (pow im 4) (pow re 4))) (+ (* 1/8 (/ (pow im 6) (pow re 6))) (/ (pow im 2) (pow re 2)))))))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (* -2 re)))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (* -1 (* re (+ 2 (* 1/2 (/ (pow im 2) (pow re 2))))))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (* -1 (* re (+ 2 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2)))))))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (* -1 (* re (+ 2 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2))))))))))
#s(approx (+ (neg re) im) #s(hole binary64 (* -1 (* re (+ 1 (* -1 (/ im re)))))))
#s(approx (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re))) #s(hole binary64 (* (* im (* (pow (sqrt -1) 2) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re)))))
#s(approx (sqrt (/ 1 re)) #s(hole binary64 (* (sqrt (/ 1 re)) (pow (sqrt -1) 2))))
#s(approx (+ (* -1/2 (* (sqrt (/ 1 im)) (* re (sqrt 2)))) (* (sqrt im) (sqrt 2))) #s(hole binary64 (* -1 (* re (+ (* -1 (* (sqrt im) (/ (sqrt 2) re))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* im (+ (* -1/32 (* (/ (* (pow im 2) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* im (+ (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2)))) (* (pow im 2) (+ (* -1/32 (* (sqrt (/ 1 (pow re 5))) (/ (sqrt 2) (sqrt 1/2)))) (* 1/4 (* (/ (* (pow im 2) (* (sqrt 2) (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2))))))) (sqrt 1/2)) (sqrt re)))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* im (+ (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2)))) (* (pow im 2) (+ (* -1/32 (* (sqrt (/ 1 (pow re 5))) (/ (sqrt 2) (sqrt 1/2)))) (* (pow im 2) (+ (* -1/4 (* (/ (* (pow im 2) (* (sqrt 2) (+ (* -1/16 (/ (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2))))) (* (pow re 2) (pow (sqrt 1/2) 2)))) (* 5/128 (/ 1 (pow re 7)))))) (sqrt 1/2)) (sqrt re))) (* 1/4 (* (sqrt re) (/ (* (sqrt 2) (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2)))))) (sqrt 1/2))))))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* im (+ (* -1/16 (* (/ (* (pow im 2) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2)))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* im (+ (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2))) (* (pow im 2) (+ (* -1/16 (* (sqrt (/ 1 (pow re 5))) (/ (sqrt 2) (sqrt 1/2)))) (* 1/2 (* (/ (* (pow im 2) (* (sqrt 2) (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2))))))) (sqrt 1/2)) (sqrt re)))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* im (+ (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2))) (* (pow im 2) (+ (* -1/16 (* (sqrt (/ 1 (pow re 5))) (/ (sqrt 2) (sqrt 1/2)))) (* (pow im 2) (+ (* -1/2 (* (/ (* (pow im 2) (* (sqrt 2) (+ (* -1/16 (/ (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2))))) (* (pow re 2) (pow (sqrt 1/2) 2)))) (* 5/128 (/ 1 (pow re 7)))))) (sqrt 1/2)) (sqrt re))) (* 1/2 (* (sqrt re) (/ (* (sqrt 2) (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2)))))) (sqrt 1/2))))))))))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* (pow im 2) (+ (* -1/4 (/ (pow im 2) (pow re 3))) (/ 1 re)))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* (pow im 2) (+ (* (pow im 2) (- (* 1/8 (/ (pow im 2) (pow re 5))) (* 1/4 (/ 1 (pow re 3))))) (/ 1 re)))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* (pow im 2) (+ (* (pow im 2) (- (* (pow im 2) (+ (* -5/64 (/ (pow im 2) (pow re 7))) (* 1/8 (/ 1 (pow re 5))))) (* 1/4 (/ 1 (pow re 3))))) (/ 1 re)))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (* (pow im 2) (+ (* -1/8 (/ (pow im 2) (pow re 3))) (* 1/2 (/ 1 re))))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (* (pow im 2) (+ (* (pow im 2) (- (* 1/16 (/ (pow im 2) (pow re 5))) (* 1/8 (/ 1 (pow re 3))))) (* 1/2 (/ 1 re))))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (* (pow im 2) (+ (* (pow im 2) (- (* (pow im 2) (+ (* -5/128 (/ (pow im 2) (pow re 7))) (* 1/16 (/ 1 (pow re 5))))) (* 1/8 (/ 1 (pow re 3))))) (* 1/2 (/ 1 re))))))
#s(approx (+ (neg re) im) #s(hole binary64 (- im re)))
#s(approx (* im (* (sqrt 1/2) (sqrt 2))) #s(hole binary64 (* im (* (sqrt 1/2) (sqrt 2)))))
#s(approx (+ (* -1/2 (* (sqrt (/ 1 im)) (* re (sqrt 2)))) (* (sqrt im) (sqrt 2))) #s(hole binary64 (/ (+ (* -1/2 (* (sqrt im) (* re (sqrt 2)))) (* (sqrt (pow im 3)) (sqrt 2))) im)))
#s(approx (sqrt (/ 1 im)) #s(hole binary64 (sqrt (/ 1 im))))
#s(approx (/ 1 im) #s(hole binary64 (/ 1 im)))
#s(approx (sqrt im) #s(hole binary64 (sqrt im)))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2)))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (+ (* 1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (+ (* -1/16 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2)))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2)))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2))))))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* im (+ 2 (* -2 (/ re im))))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* im (+ 2 (+ (* -2 (/ re im)) (/ (pow re 2) (pow im 2)))))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* im (+ 2 (+ (* -2 (/ re im)) (+ (* -1/4 (/ (pow re 4) (pow im 4))) (/ (pow re 2) (pow im 2))))))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (* im (+ 1 (* -1 (/ re im))))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (* im (- (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))) (/ re im)))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (* im (- (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2))))) (/ re im)))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* -1/2 (* (sqrt im) (* (sqrt -1) (sqrt 2))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* -1 (* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* -1 (* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* -1 (* im (+ (* -1 (/ (+ (* 1/16 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* 1/8 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2)))))) (pow im 3))) (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* -1 (* (sqrt im) (* (sqrt -1) (sqrt 2))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* -1 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* -1 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (+ (* -1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* -1 (* im (+ (* -1 (/ (+ (* 1/8 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* 1/4 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2)))))) (pow im 3))) (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* -2 im)))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* -1 (* im (+ 2 (* 2 (/ re im)))))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* -1 (* im (+ 2 (* -1 (/ (+ (* -2 re) (* -1 (/ (pow re 2) im))) im)))))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* -1 (* im (+ 2 (* -1 (/ (+ (* -2 re) (* -1 (/ (+ (* -1/4 (/ (pow re 4) (pow im 2))) (pow re 2)) im))) im)))))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (* -1 im)))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (* -1 (* im (+ 1 (/ re im))))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (* -1 (* im (+ 1 (* -1 (/ (- (* -1/2 (/ (pow re 2) im)) re) im)))))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (* -1 (* im (+ 1 (* -1 (/ (- (* -1 (/ (+ (* -1/8 (/ (pow re 4) (pow im 2))) (* 1/2 (pow re 2))) im)) re) im)))))))
#s(approx (+ (neg re) im) #s(hole binary64 (* -1 (* im (- (/ re im) 1)))))
#s(approx (+ (* -1/2 (* (sqrt (/ 1 im)) (* re (sqrt 2)))) (* (sqrt im) (sqrt 2))) #s(hole binary64 (* -1 (* (sqrt im) (* (pow (sqrt -1) 2) (sqrt 2))))))
#s(approx (+ (* -1/2 (* (sqrt (/ 1 im)) (* re (sqrt 2)))) (* (sqrt im) (sqrt 2))) #s(hole binary64 (* -1 (* im (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) (* re (* (pow (sqrt -1) 2) (sqrt 2))))) (* (sqrt (/ 1 im)) (* (pow (sqrt -1) 2) (sqrt 2))))))))
#s(approx (* (sqrt (/ 1 im)) (* re (sqrt 2))) #s(hole binary64 (* (sqrt (/ 1 im)) (* re (* (pow (sqrt -1) 2) (sqrt 2))))))
#s(approx (sqrt (/ 1 im)) #s(hole binary64 (* (sqrt (/ 1 im)) (pow (sqrt -1) 2))))
#s(approx (sqrt im) #s(hole binary64 (* -1 (* (sqrt im) (pow (sqrt -1) 2)))))
Outputs
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (+ (neg re) im) (-.f64 im re))))))
#s(literal 1/2 binary64)
(sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (+ (neg re) im) (-.f64 im re)))))
(*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (+ (neg re) im) (-.f64 im re))))
#s(literal 2 binary64)
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (+ (neg re) im) (-.f64 im re)))
#s(approx (+ (neg re) im) (-.f64 im re))
(-.f64 im re)
im
re
(*.f64 #s(approx (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) (*.f64 (*.f64 im (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))) #s(literal 1/2 binary64))
#s(approx (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) (*.f64 (*.f64 im (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))))
(*.f64 (*.f64 im (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))
(*.f64 im (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64))))
(*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64)))
(sqrt.f64 #s(literal 1/2 binary64))
(sqrt.f64 #s(literal 2 binary64))
(sqrt.f64 (/.f64 #s(literal 1 binary64) re))
(/.f64 #s(literal 1 binary64) re)
#s(literal 1 binary64)
(*.f64 #s(approx (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) (fma.f64 #s(literal -1/2 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (*.f64 re (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (sqrt.f64 im) (sqrt.f64 #s(literal 2 binary64))))) #s(literal 1/2 binary64))
#s(approx (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) (fma.f64 #s(literal -1/2 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (*.f64 re (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (sqrt.f64 im) (sqrt.f64 #s(literal 2 binary64)))))
(fma.f64 #s(literal -1/2 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (*.f64 re (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (sqrt.f64 im) (sqrt.f64 #s(literal 2 binary64))))
(+.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (*.f64 re (sqrt.f64 #s(literal 2 binary64))))) (*.f64 (sqrt.f64 im) (sqrt.f64 #s(literal 2 binary64))))
#s(literal -1/2 binary64)
(*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (*.f64 re (sqrt.f64 #s(literal 2 binary64))))
(sqrt.f64 (/.f64 #s(literal 1 binary64) im))
(/.f64 #s(literal 1 binary64) im)
(*.f64 re (sqrt.f64 #s(literal 2 binary64)))
(*.f64 (sqrt.f64 im) (sqrt.f64 #s(literal 2 binary64)))
(sqrt.f64 im)
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 im) (sqrt.f64 #s(literal 2 binary64)))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (fma.f64 #s(literal -1/4 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (*.f64 re (sqrt.f64 #s(literal 2 binary64)))) (*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 im) (sqrt.f64 #s(literal 2 binary64))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (fma.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 im) (sqrt.f64 #s(literal 2 binary64))) (*.f64 re (fma.f64 #s(literal -1/4 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 #s(literal 1/16 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (*.f64 re (sqrt.f64 #s(literal 2 binary64)))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (fma.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 im) (sqrt.f64 #s(literal 2 binary64))) (*.f64 re (fma.f64 #s(literal -1/4 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 re (fma.f64 #s(literal 1/32 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) (*.f64 re (sqrt.f64 #s(literal 2 binary64)))) (*.f64 #s(literal 1/16 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (sqrt.f64 #s(literal 2 binary64))))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (sqrt.f64 im) (sqrt.f64 #s(literal 2 binary64))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (fma.f64 #s(literal -1/2 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (*.f64 re (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (sqrt.f64 im) (sqrt.f64 #s(literal 2 binary64)))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (fma.f64 re (fma.f64 #s(literal -1/2 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 #s(literal 1/8 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (*.f64 re (sqrt.f64 #s(literal 2 binary64)))))) (*.f64 (sqrt.f64 im) (sqrt.f64 #s(literal 2 binary64)))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (fma.f64 re (fma.f64 #s(literal -1/2 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 re (fma.f64 #s(literal 1/16 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) (*.f64 re (sqrt.f64 #s(literal 2 binary64)))) (*.f64 #s(literal 1/8 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (sqrt.f64 #s(literal 2 binary64))))))) (*.f64 (sqrt.f64 im) (sqrt.f64 #s(literal 2 binary64)))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal 2 binary64) im))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (fma.f64 #s(literal -2 binary64) re (*.f64 #s(literal 2 binary64) im)))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (fma.f64 #s(literal 2 binary64) im (*.f64 re (-.f64 (/.f64 re im) #s(literal 2 binary64)))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (fma.f64 #s(literal 2 binary64) im (*.f64 re (-.f64 (*.f64 re (fma.f64 #s(literal -1/4 binary64) (/.f64 (pow.f64 re #s(literal 2 binary64)) (pow.f64 im #s(literal 3 binary64))) (/.f64 #s(literal 1 binary64) im))) #s(literal 2 binary64)))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) im)
#s(approx (- (sqrt (+ (* re re) (* im im))) re) (+.f64 im (*.f64 #s(literal -1 binary64) re)))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) (+.f64 im (*.f64 re (-.f64 (*.f64 #s(literal 1/2 binary64) (/.f64 re im)) #s(literal 1 binary64)))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) (+.f64 im (*.f64 re (-.f64 (*.f64 re (fma.f64 #s(literal -1/8 binary64) (/.f64 (pow.f64 re #s(literal 2 binary64)) (pow.f64 im #s(literal 3 binary64))) (*.f64 #s(literal 1/2 binary64) (/.f64 #s(literal 1 binary64) im)))) #s(literal 1 binary64)))))
#s(approx re re)
#s(approx (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re))) (*.f64 (*.f64 im (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))))
#s(approx (sqrt (/ 1 re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))
#s(approx (/ 1 re) (/.f64 #s(literal 1 binary64) re))
#s(approx (* (sqrt (/ 1 im)) (* re (sqrt 2))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (*.f64 re (sqrt.f64 #s(literal 2 binary64)))))
#s(approx (* re (sqrt 2)) (*.f64 re (sqrt.f64 #s(literal 2 binary64))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 im (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (fma.f64 #s(literal -1/32 binary64) (*.f64 (/.f64 (*.f64 (pow.f64 im #s(literal 3 binary64)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64))))) (*.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 im (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (fma.f64 #s(literal -1/32 binary64) (*.f64 (/.f64 (*.f64 (pow.f64 im #s(literal 3 binary64)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64))))) (fma.f64 #s(literal 1/64 binary64) (*.f64 (/.f64 (*.f64 (pow.f64 im #s(literal 5 binary64)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 9 binary64))))) (*.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 im (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (fma.f64 #s(literal -1/32 binary64) (*.f64 (/.f64 (*.f64 (pow.f64 im #s(literal 3 binary64)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64))))) (fma.f64 #s(literal -1/1024 binary64) (*.f64 (/.f64 (*.f64 (pow.f64 im #s(literal 5 binary64)) (sqrt.f64 #s(literal 2 binary64))) (pow.f64 (sqrt.f64 #s(literal 1/2 binary64)) #s(literal 3 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 9 binary64))))) (fma.f64 #s(literal 1/64 binary64) (*.f64 (/.f64 (*.f64 (pow.f64 im #s(literal 5 binary64)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 9 binary64))))) (*.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 im (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (fma.f64 #s(literal -1/16 binary64) (*.f64 (/.f64 (*.f64 (pow.f64 im #s(literal 3 binary64)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64))))) (*.f64 (*.f64 im (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (fma.f64 #s(literal -1/16 binary64) (*.f64 (/.f64 (*.f64 (pow.f64 im #s(literal 3 binary64)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64))))) (fma.f64 #s(literal 1/32 binary64) (*.f64 (/.f64 (*.f64 (pow.f64 im #s(literal 5 binary64)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 9 binary64))))) (*.f64 (*.f64 im (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (fma.f64 #s(literal -1/16 binary64) (*.f64 (/.f64 (*.f64 (pow.f64 im #s(literal 3 binary64)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64))))) (fma.f64 #s(literal -1/512 binary64) (*.f64 (/.f64 (*.f64 (pow.f64 im #s(literal 5 binary64)) (sqrt.f64 #s(literal 2 binary64))) (pow.f64 (sqrt.f64 #s(literal 1/2 binary64)) #s(literal 3 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 9 binary64))))) (fma.f64 #s(literal 1/32 binary64) (*.f64 (/.f64 (*.f64 (pow.f64 im #s(literal 5 binary64)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 9 binary64))))) (*.f64 (*.f64 im (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (/.f64 (pow.f64 im #s(literal 2 binary64)) re))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (/.f64 (fma.f64 #s(literal -1/4 binary64) (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 2 binary64))) (pow.f64 im #s(literal 2 binary64))) re))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (/.f64 (fma.f64 #s(literal -1/4 binary64) (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 2 binary64))) (fma.f64 #s(literal 1/8 binary64) (/.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 im #s(literal 2 binary64)))) re))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (/.f64 (fma.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal 1/64 binary64) (pow.f64 im #s(literal 8 binary64)) (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64)))) (pow.f64 re #s(literal 6 binary64))) (fma.f64 #s(literal -1/4 binary64) (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 2 binary64))) (fma.f64 #s(literal 1/8 binary64) (/.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 im #s(literal 2 binary64))))) re))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 #s(literal 1/2 binary64) (/.f64 (pow.f64 im #s(literal 2 binary64)) re)))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) (/.f64 (fma.f64 #s(literal -1/8 binary64) (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 2 binary64))) (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)))) re))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) (/.f64 (fma.f64 #s(literal -1/8 binary64) (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 2 binary64))) (fma.f64 #s(literal 1/16 binary64) (/.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 4 binary64))) (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64))))) re))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) (/.f64 (fma.f64 #s(literal -1/2 binary64) (/.f64 (fma.f64 #s(literal 1/64 binary64) (pow.f64 im #s(literal 8 binary64)) (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64)))) (pow.f64 re #s(literal 6 binary64))) (fma.f64 #s(literal -1/8 binary64) (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 2 binary64))) (fma.f64 #s(literal 1/16 binary64) (/.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 4 binary64))) (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)))))) re))
#s(approx (+ (neg re) im) (*.f64 #s(literal -1 binary64) re))
#s(approx (+ (neg re) im) (*.f64 re (-.f64 (/.f64 im re) #s(literal 1 binary64))))
#s(approx (+ (* -1/2 (* (sqrt (/ 1 im)) (* re (sqrt 2)))) (* (sqrt im) (sqrt 2))) (*.f64 #s(literal -1/2 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (*.f64 re (sqrt.f64 #s(literal 2 binary64))))))
#s(approx (+ (* -1/2 (* (sqrt (/ 1 im)) (* re (sqrt 2)))) (* (sqrt im) (sqrt 2))) (*.f64 re (fma.f64 #s(literal -1/2 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (sqrt.f64 im) (/.f64 (sqrt.f64 #s(literal 2 binary64)) re)))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 #s(literal -1/2 binary64) (*.f64 (sqrt.f64 re) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (pow.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 2 binary64))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 #s(literal -1 binary64) (*.f64 re (fma.f64 #s(literal -1/8 binary64) (*.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) (sqrt.f64 #s(literal -1 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64))))) (*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (pow.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 2 binary64)))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 #s(literal -1 binary64) (*.f64 re (fma.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1/32 binary64) (*.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) (sqrt.f64 #s(literal -1 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64))))) (*.f64 #s(literal 1/8 binary64) (*.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) (sqrt.f64 #s(literal -1 binary64))) (sqrt.f64 re)))) (pow.f64 re #s(literal 3 binary64))) (*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (pow.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 2 binary64)))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 #s(literal -1 binary64) (*.f64 re (fma.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1/32 binary64) (*.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) (sqrt.f64 #s(literal -1 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64))))) (fma.f64 #s(literal 1/64 binary64) (*.f64 (/.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) (sqrt.f64 #s(literal -1 binary64))) (pow.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64))))) (*.f64 #s(literal 1/8 binary64) (*.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) (sqrt.f64 #s(literal -1 binary64))) (sqrt.f64 re))))) (pow.f64 re #s(literal 3 binary64))) (*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (pow.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 2 binary64)))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 #s(literal -1 binary64) (*.f64 (sqrt.f64 re) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (pow.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 2 binary64))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 #s(literal -1 binary64) (*.f64 re (fma.f64 #s(literal -1/4 binary64) (*.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) (sqrt.f64 #s(literal -1 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (pow.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 2 binary64))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 #s(literal -1 binary64) (*.f64 re (fma.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1/16 binary64) (*.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) (sqrt.f64 #s(literal -1 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64))))) (*.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) (sqrt.f64 #s(literal -1 binary64))) (sqrt.f64 re)))) (pow.f64 re #s(literal 3 binary64))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (pow.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 2 binary64))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 #s(literal -1 binary64) (*.f64 re (fma.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1/16 binary64) (*.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) (sqrt.f64 #s(literal -1 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64))))) (fma.f64 #s(literal 1/32 binary64) (*.f64 (/.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) (sqrt.f64 #s(literal -1 binary64))) (pow.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64))))) (*.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) (sqrt.f64 #s(literal -1 binary64))) (sqrt.f64 re))))) (pow.f64 re #s(literal 3 binary64))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (pow.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 2 binary64))))))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -1 binary64) (*.f64 re (+.f64 #s(literal 4 binary64) (/.f64 (pow.f64 im #s(literal 2 binary64)) (pow.f64 re #s(literal 2 binary64)))))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -1 binary64) (*.f64 re (+.f64 #s(literal 4 binary64) (fma.f64 #s(literal -1/4 binary64) (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (/.f64 (pow.f64 im #s(literal 2 binary64)) (pow.f64 re #s(literal 2 binary64))))))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -1 binary64) (*.f64 re (+.f64 #s(literal 4 binary64) (fma.f64 #s(literal -1/4 binary64) (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (fma.f64 #s(literal 1/8 binary64) (/.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) (/.f64 (pow.f64 im #s(literal 2 binary64)) (pow.f64 re #s(literal 2 binary64)))))))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 #s(literal -2 binary64) re))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 #s(literal -1 binary64) (*.f64 re (+.f64 #s(literal 2 binary64) (*.f64 #s(literal 1/2 binary64) (/.f64 (pow.f64 im #s(literal 2 binary64)) (pow.f64 re #s(literal 2 binary64))))))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 #s(literal -1 binary64) (*.f64 re (+.f64 #s(literal 2 binary64) (fma.f64 #s(literal -1/8 binary64) (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (*.f64 #s(literal 1/2 binary64) (/.f64 (pow.f64 im #s(literal 2 binary64)) (pow.f64 re #s(literal 2 binary64)))))))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 #s(literal -1 binary64) (*.f64 re (+.f64 #s(literal 2 binary64) (fma.f64 #s(literal -1/8 binary64) (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (fma.f64 #s(literal 1/16 binary64) (/.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) (*.f64 #s(literal 1/2 binary64) (/.f64 (pow.f64 im #s(literal 2 binary64)) (pow.f64 re #s(literal 2 binary64))))))))))
#s(approx (+ (neg re) im) (*.f64 #s(literal -1 binary64) (*.f64 re (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1 binary64) (/.f64 im re))))))
#s(approx (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re))) (*.f64 (*.f64 im (*.f64 (pow.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 2 binary64)) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64))))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))))
#s(approx (sqrt (/ 1 re)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (pow.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 2 binary64))))
#s(approx (+ (* -1/2 (* (sqrt (/ 1 im)) (* re (sqrt 2)))) (* (sqrt im) (sqrt 2))) (*.f64 #s(literal -1 binary64) (*.f64 re (fma.f64 #s(literal -1 binary64) (*.f64 (sqrt.f64 im) (/.f64 (sqrt.f64 #s(literal 2 binary64)) re)) (*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal 2 binary64))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 im (fma.f64 #s(literal -1/32 binary64) (*.f64 (/.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64))))) (*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 im (fma.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (pow.f64 im #s(literal 2 binary64)) (fma.f64 #s(literal -1/32 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (/.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 1/2 binary64)))) (*.f64 #s(literal 1/4 binary64) (*.f64 (/.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal 1/16 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (*.f64 #s(literal 1/256 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 re #s(literal 5 binary64)) (pow.f64 (sqrt.f64 #s(literal 1/2 binary64)) #s(literal 2 binary64)))))))) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 re))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 im (fma.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (pow.f64 im #s(literal 2 binary64)) (fma.f64 #s(literal -1/32 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (/.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 1/2 binary64)))) (*.f64 (pow.f64 im #s(literal 2 binary64)) (fma.f64 #s(literal -1/4 binary64) (*.f64 (/.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (fma.f64 #s(literal -1/16 binary64) (/.f64 (-.f64 (*.f64 #s(literal 1/16 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (*.f64 #s(literal 1/256 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 re #s(literal 5 binary64)) (pow.f64 (sqrt.f64 #s(literal 1/2 binary64)) #s(literal 2 binary64)))))) (*.f64 (pow.f64 re #s(literal 2 binary64)) (pow.f64 (sqrt.f64 #s(literal 1/2 binary64)) #s(literal 2 binary64)))) (*.f64 #s(literal 5/128 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 7 binary64))))))) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 re)) (*.f64 #s(literal 1/4 binary64) (*.f64 (sqrt.f64 re) (/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal 1/16 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (*.f64 #s(literal 1/256 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 re #s(literal 5 binary64)) (pow.f64 (sqrt.f64 #s(literal 1/2 binary64)) #s(literal 2 binary64))))))) (sqrt.f64 #s(literal 1/2 binary64))))))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 im (fma.f64 #s(literal -1/16 binary64) (*.f64 (/.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64)))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 im (fma.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (pow.f64 im #s(literal 2 binary64)) (fma.f64 #s(literal -1/16 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (/.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 1/2 binary64)))) (*.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal 1/16 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (*.f64 #s(literal 1/256 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 re #s(literal 5 binary64)) (pow.f64 (sqrt.f64 #s(literal 1/2 binary64)) #s(literal 2 binary64)))))))) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 re))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 im (fma.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (pow.f64 im #s(literal 2 binary64)) (fma.f64 #s(literal -1/16 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (/.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 1/2 binary64)))) (*.f64 (pow.f64 im #s(literal 2 binary64)) (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (fma.f64 #s(literal -1/16 binary64) (/.f64 (-.f64 (*.f64 #s(literal 1/16 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (*.f64 #s(literal 1/256 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 re #s(literal 5 binary64)) (pow.f64 (sqrt.f64 #s(literal 1/2 binary64)) #s(literal 2 binary64)))))) (*.f64 (pow.f64 re #s(literal 2 binary64)) (pow.f64 (sqrt.f64 #s(literal 1/2 binary64)) #s(literal 2 binary64)))) (*.f64 #s(literal 5/128 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 7 binary64))))))) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 re)) (*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 re) (/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal 1/16 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (*.f64 #s(literal 1/256 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 re #s(literal 5 binary64)) (pow.f64 (sqrt.f64 #s(literal 1/2 binary64)) #s(literal 2 binary64))))))) (sqrt.f64 #s(literal 1/2 binary64))))))))))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (pow.f64 im #s(literal 2 binary64)) (fma.f64 #s(literal -1/4 binary64) (/.f64 (pow.f64 im #s(literal 2 binary64)) (pow.f64 re #s(literal 3 binary64))) (/.f64 #s(literal 1 binary64) re))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (pow.f64 im #s(literal 2 binary64)) (fma.f64 (pow.f64 im #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal 1/8 binary64) (/.f64 (pow.f64 im #s(literal 2 binary64)) (pow.f64 re #s(literal 5 binary64)))) (*.f64 #s(literal 1/4 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64))))) (/.f64 #s(literal 1 binary64) re))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (pow.f64 im #s(literal 2 binary64)) (fma.f64 (pow.f64 im #s(literal 2 binary64)) (-.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) (fma.f64 #s(literal -5/64 binary64) (/.f64 (pow.f64 im #s(literal 2 binary64)) (pow.f64 re #s(literal 7 binary64))) (*.f64 #s(literal 1/8 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))))) (*.f64 #s(literal 1/4 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64))))) (/.f64 #s(literal 1 binary64) re))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (pow.f64 im #s(literal 2 binary64)) (fma.f64 #s(literal -1/8 binary64) (/.f64 (pow.f64 im #s(literal 2 binary64)) (pow.f64 re #s(literal 3 binary64))) (*.f64 #s(literal 1/2 binary64) (/.f64 #s(literal 1 binary64) re)))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (pow.f64 im #s(literal 2 binary64)) (fma.f64 (pow.f64 im #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal 1/16 binary64) (/.f64 (pow.f64 im #s(literal 2 binary64)) (pow.f64 re #s(literal 5 binary64)))) (*.f64 #s(literal 1/8 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64))))) (*.f64 #s(literal 1/2 binary64) (/.f64 #s(literal 1 binary64) re)))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (pow.f64 im #s(literal 2 binary64)) (fma.f64 (pow.f64 im #s(literal 2 binary64)) (-.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) (fma.f64 #s(literal -5/128 binary64) (/.f64 (pow.f64 im #s(literal 2 binary64)) (pow.f64 re #s(literal 7 binary64))) (*.f64 #s(literal 1/16 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))))) (*.f64 #s(literal 1/8 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64))))) (*.f64 #s(literal 1/2 binary64) (/.f64 #s(literal 1 binary64) re)))))
#s(approx (+ (neg re) im) (-.f64 im re))
#s(approx (* im (* (sqrt 1/2) (sqrt 2))) (*.f64 im (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64)))))
#s(approx (+ (* -1/2 (* (sqrt (/ 1 im)) (* re (sqrt 2)))) (* (sqrt im) (sqrt 2))) (/.f64 (fma.f64 #s(literal -1/2 binary64) (*.f64 (sqrt.f64 im) (*.f64 re (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (sqrt.f64 (pow.f64 im #s(literal 3 binary64))) (sqrt.f64 #s(literal 2 binary64)))) im))
#s(approx (sqrt (/ 1 im)) (sqrt.f64 (/.f64 #s(literal 1 binary64) im)))
#s(approx (/ 1 im) (/.f64 #s(literal 1 binary64) im))
#s(approx (sqrt im) (sqrt.f64 im))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 im (fma.f64 #s(literal -1/4 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (*.f64 re (sqrt.f64 #s(literal 2 binary64)))) (*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal 2 binary64)))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 im (fma.f64 #s(literal -1/4 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (*.f64 re (sqrt.f64 #s(literal 2 binary64)))) (fma.f64 #s(literal 1/8 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) (*.f64 (pow.f64 re #s(literal 2 binary64)) (sqrt.f64 #s(literal 2 binary64)))) (*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal 2 binary64))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 im (fma.f64 #s(literal -1/4 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (*.f64 re (sqrt.f64 #s(literal 2 binary64)))) (fma.f64 #s(literal -1/16 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) (*.f64 (pow.f64 re #s(literal 2 binary64)) (sqrt.f64 #s(literal 2 binary64)))) (fma.f64 #s(literal 1/8 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) (*.f64 (pow.f64 re #s(literal 2 binary64)) (sqrt.f64 #s(literal 2 binary64)))) (*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal 2 binary64)))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 im (fma.f64 #s(literal -1/2 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (*.f64 re (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal 2 binary64))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 im (fma.f64 #s(literal -1/2 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (*.f64 re (sqrt.f64 #s(literal 2 binary64)))) (fma.f64 #s(literal 1/4 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) (*.f64 (pow.f64 re #s(literal 2 binary64)) (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal 2 binary64)))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 im (fma.f64 #s(literal -1/2 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (*.f64 re (sqrt.f64 #s(literal 2 binary64)))) (fma.f64 #s(literal -1/8 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) (*.f64 (pow.f64 re #s(literal 2 binary64)) (sqrt.f64 #s(literal 2 binary64)))) (fma.f64 #s(literal 1/4 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) (*.f64 (pow.f64 re #s(literal 2 binary64)) (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal 2 binary64))))))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 im (+.f64 #s(literal 2 binary64) (*.f64 #s(literal -2 binary64) (/.f64 re im)))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 im (+.f64 #s(literal 2 binary64) (fma.f64 #s(literal -2 binary64) (/.f64 re im) (/.f64 (pow.f64 re #s(literal 2 binary64)) (pow.f64 im #s(literal 2 binary64)))))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 im (+.f64 #s(literal 2 binary64) (fma.f64 #s(literal -2 binary64) (/.f64 re im) (fma.f64 #s(literal -1/4 binary64) (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) (/.f64 (pow.f64 re #s(literal 2 binary64)) (pow.f64 im #s(literal 2 binary64))))))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 im (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1 binary64) (/.f64 re im)))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 im (-.f64 (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (/.f64 (pow.f64 re #s(literal 2 binary64)) (pow.f64 im #s(literal 2 binary64))))) (/.f64 re im))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 im (-.f64 (+.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/8 binary64) (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) (*.f64 #s(literal 1/2 binary64) (/.f64 (pow.f64 re #s(literal 2 binary64)) (pow.f64 im #s(literal 2 binary64)))))) (/.f64 re im))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 #s(literal -1/2 binary64) (*.f64 (sqrt.f64 im) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 #s(literal -1 binary64) (*.f64 im (fma.f64 #s(literal -1/4 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (*.f64 re (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))))) (*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64)))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 #s(literal -1 binary64) (*.f64 im (fma.f64 #s(literal -1/4 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (*.f64 re (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))))) (fma.f64 #s(literal -1/8 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) (*.f64 (pow.f64 re #s(literal 2 binary64)) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))))) (*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 #s(literal -1 binary64) (*.f64 im (fma.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal 1/16 binary64) (*.f64 (sqrt.f64 im) (*.f64 (pow.f64 re #s(literal 2 binary64)) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))))) (*.f64 #s(literal 1/8 binary64) (*.f64 (sqrt.f64 im) (*.f64 (pow.f64 re #s(literal 2 binary64)) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))))))) (pow.f64 im #s(literal 3 binary64))) (fma.f64 #s(literal -1/4 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (*.f64 re (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))))) (*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 #s(literal -1 binary64) (*.f64 (sqrt.f64 im) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 #s(literal -1 binary64) (*.f64 im (fma.f64 #s(literal -1/2 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (*.f64 re (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 #s(literal -1 binary64) (*.f64 im (fma.f64 #s(literal -1/2 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (*.f64 re (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))))) (fma.f64 #s(literal -1/4 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) (*.f64 (pow.f64 re #s(literal 2 binary64)) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64)))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 #s(literal -1 binary64) (*.f64 im (fma.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal 1/8 binary64) (*.f64 (sqrt.f64 im) (*.f64 (pow.f64 re #s(literal 2 binary64)) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))))) (*.f64 #s(literal 1/4 binary64) (*.f64 (sqrt.f64 im) (*.f64 (pow.f64 re #s(literal 2 binary64)) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))))))) (pow.f64 im #s(literal 3 binary64))) (fma.f64 #s(literal -1/2 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (*.f64 re (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64)))))))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -2 binary64) im))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -1 binary64) (*.f64 im (+.f64 #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (/.f64 re im))))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -1 binary64) (*.f64 im (+.f64 #s(literal 2 binary64) (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -2 binary64) re (*.f64 #s(literal -1 binary64) (/.f64 (pow.f64 re #s(literal 2 binary64)) im))) im))))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -1 binary64) (*.f64 im (+.f64 #s(literal 2 binary64) (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -2 binary64) re (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1/4 binary64) (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 2 binary64))) (pow.f64 re #s(literal 2 binary64))) im))) im))))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 #s(literal -1 binary64) im))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 #s(literal -1 binary64) (*.f64 im (+.f64 #s(literal 1 binary64) (/.f64 re im)))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 #s(literal -1 binary64) (*.f64 im (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1 binary64) (/.f64 (-.f64 (*.f64 #s(literal -1/2 binary64) (/.f64 (pow.f64 re #s(literal 2 binary64)) im)) re) im))))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 #s(literal -1 binary64) (*.f64 im (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1 binary64) (/.f64 (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1/8 binary64) (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 2 binary64))) (*.f64 #s(literal 1/2 binary64) (pow.f64 re #s(literal 2 binary64)))) im)) re) im))))))
#s(approx (+ (neg re) im) (*.f64 #s(literal -1 binary64) (*.f64 im (-.f64 (/.f64 re im) #s(literal 1 binary64)))))
#s(approx (+ (* -1/2 (* (sqrt (/ 1 im)) (* re (sqrt 2)))) (* (sqrt im) (sqrt 2))) (*.f64 #s(literal -1 binary64) (*.f64 (sqrt.f64 im) (*.f64 (pow.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 2 binary64)) (sqrt.f64 #s(literal 2 binary64))))))
#s(approx (+ (* -1/2 (* (sqrt (/ 1 im)) (* re (sqrt 2)))) (* (sqrt im) (sqrt 2))) (*.f64 #s(literal -1 binary64) (*.f64 im (fma.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (*.f64 re (*.f64 (pow.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 2 binary64)) (sqrt.f64 #s(literal 2 binary64))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (*.f64 (pow.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 2 binary64)) (sqrt.f64 #s(literal 2 binary64))))))))
#s(approx (* (sqrt (/ 1 im)) (* re (sqrt 2))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (*.f64 re (*.f64 (pow.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 2 binary64)) (sqrt.f64 #s(literal 2 binary64))))))
#s(approx (sqrt (/ 1 im)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (pow.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 2 binary64))))
#s(approx (sqrt im) (*.f64 #s(literal -1 binary64) (*.f64 (sqrt.f64 im) (pow.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 2 binary64)))))

eval41.0ms (1.3%)

Memory
23.7MiB live, 58.8MiB allocated; 20ms collecting garbage
Compiler

Compiled 2 564 to 850 computations (66.8% saved)

prune21.0ms (0.6%)

Memory
-7.2MiB live, 39.5MiB allocated; 8ms collecting garbage
Pruning

10 alts after pruning (0 fresh and 10 done)

PrunedKeptTotal
New1140114
Fresh000
Picked033
Done077
Total11410124
Accuracy
99.9%
Counts
124 → 10
Alt Table
Click to see full alt table
StatusAccuracyProgram
78.9%
(*.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))
43.1%
(*.f64 (sqrt.f64 (*.f64 (-.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re))) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))
52.8%
(*.f64 #s(approx (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) (fma.f64 #s(literal -1/2 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (*.f64 re (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (sqrt.f64 im) (sqrt.f64 #s(literal 2 binary64))))) #s(literal 1/2 binary64))
26.5%
(*.f64 #s(approx (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) (*.f64 (*.f64 im (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))) #s(literal 1/2 binary64))
55.9%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (+ (neg re) im) (-.f64 im re))))))
53.6%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (+.f64 im im)))))
14.8%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 im im) re))))
53.8%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (+.f64 im im))))
24.5%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re))))
26.8%
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 #s(approx (* 1/2 (* 1 im)) (*.f64 #s(literal 1/2 binary64) im)) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))))
Compiler

Compiled 356 to 279 computations (21.6% saved)

regimes92.0ms (2.9%)

Memory
-14.8MiB live, 86.7MiB allocated; 43ms collecting garbage
Counts
16 → 2
Calls
Call 1
Inputs
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (+.f64 im im))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (+ (neg re) im) (-.f64 im re))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 #s(approx (* 1/2 (* 1 im)) (*.f64 #s(literal 1/2 binary64) im)) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 im im) re))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (+.f64 (neg.f64 re) im)))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1 binary64) im)) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (+.f64 im im)))))
(*.f64 (sqrt.f64 (*.f64 (-.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re))) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))
(*.f64 #s(approx (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) (*.f64 (*.f64 im (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (*.f64 im (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
(*.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 re im) re))))
(*.f64 #s(approx (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) (fma.f64 #s(literal -1/2 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (*.f64 re (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (sqrt.f64 im) (sqrt.f64 #s(literal 2 binary64))))) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (fma.f64 #s(literal -1/2 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (*.f64 re (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (sqrt.f64 im) (sqrt.f64 #s(literal 2 binary64))))))
Outputs
(*.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 #s(approx (* 1/2 (* 1 im)) (*.f64 #s(literal 1/2 binary64) im)) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))))
Calls

7 calls:

48.0ms
(*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
18.0ms
im
8.0ms
re
5.0ms
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
4.0ms
(sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))
Results
AccuracySegmentsBranch
78.9%1(*.f64 im im)
90.5%2(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
90.5%2(*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
90.8%2(sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))
90.8%2(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
90.9%2re
78.9%1im
Compiler

Compiled 42 to 45 computations (-7.1% saved)

regimes23.0ms (0.7%)

Memory
33.3MiB live, 33.3MiB allocated; 0ms collecting garbage
Counts
12 → 5
Calls
Call 1
Inputs
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (+.f64 im im))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (+ (neg re) im) (-.f64 im re))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 #s(approx (* 1/2 (* 1 im)) (*.f64 #s(literal 1/2 binary64) im)) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 im im) re))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (+.f64 (neg.f64 re) im)))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1 binary64) im)) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (+.f64 im im)))))
(*.f64 (sqrt.f64 (*.f64 (-.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re))) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))
(*.f64 #s(approx (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) (*.f64 (*.f64 im (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (*.f64 im (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
Outputs
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (+ (neg re) im) (-.f64 im re))))))
(*.f64 (sqrt.f64 (*.f64 (-.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re))) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (+.f64 im im)))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 #s(approx (* 1/2 (* 1 im)) (*.f64 #s(literal 1/2 binary64) im)) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))))
Calls

7 calls:

3.0ms
im
3.0ms
re
3.0ms
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
3.0ms
(*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
3.0ms
(sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))
Results
AccuracySegmentsBranch
67.5%3(*.f64 im im)
69.8%4im
81.0%4(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
81.0%4(*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
80.7%4(sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))
80.7%4(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
84.0%5re
Compiler

Compiled 42 to 45 computations (-7.1% saved)

regimes106.0ms (3.3%)

Memory
-34.1MiB live, 16.5MiB allocated; 8ms collecting garbage
Counts
8 → 3
Calls
Call 1
Inputs
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (+.f64 im im))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (+ (neg re) im) (-.f64 im re))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 #s(approx (* 1/2 (* 1 im)) (*.f64 #s(literal 1/2 binary64) im)) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 im im) re))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (+.f64 (neg.f64 re) im)))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1 binary64) im)) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (+.f64 im im)))))
Outputs
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (+ (neg re) im) (-.f64 im re))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 #s(approx (* 1/2 (* 1 im)) (*.f64 #s(literal 1/2 binary64) im)) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))))
Calls

3 calls:

101.0ms
re
2.0ms
(*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
2.0ms
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
Results
AccuracySegmentsBranch
69.4%2(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
69.4%2(*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
79.3%3re
Compiler

Compiled 17 to 18 computations (-5.9% saved)

regimes10.0ms (0.3%)

Memory
24.1MiB live, 24.1MiB allocated; 0ms collecting garbage
Counts
3 → 4
Calls
Call 1
Inputs
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (+.f64 im im))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (+ (neg re) im) (-.f64 im re))))))
Outputs
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (+ (neg re) im) (-.f64 im re))))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (+.f64 im im))))
Calls

7 calls:

1.0ms
im
1.0ms
re
1.0ms
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
1.0ms
(sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))
1.0ms
(*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
Results
AccuracySegmentsBranch
63.4%2(*.f64 im im)
63.4%2im
55.9%1(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
55.9%1(*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
55.9%1(sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))
55.9%1(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
67.1%4re
Compiler

Compiled 42 to 45 computations (-7.1% saved)

regimes1.0ms (0%)

Memory
3.6MiB live, 3.6MiB allocated; 0ms collecting garbage
Counts
2 → 4
Calls
Call 1
Inputs
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (+.f64 im im))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re))))
Outputs
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (+.f64 im im))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (+.f64 im im))))
Calls

1 calls:

1.0ms
re
Results
AccuracySegmentsBranch
66.7%4re
Compiler

Compiled 1 to 2 computations (-100% saved)

regimes10.0ms (0.3%)

Memory
-26.9MiB live, 17.9MiB allocated; 4ms collecting garbage
Accuracy

Total -0.0b remaining (-0%)

Threshold costs -0b (-0%)

Counts
1 → 1
Calls
Call 1
Inputs
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (+.f64 im im))))
Outputs
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (+.f64 im im))))
Calls

7 calls:

4.0ms
im
1.0ms
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
1.0ms
re
1.0ms
(sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))
1.0ms
(*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
Results
AccuracySegmentsBranch
53.8%1(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
53.8%1(*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
53.8%1(sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))
53.8%1(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
53.8%1(*.f64 im im)
53.8%1im
53.8%1re
Compiler

Compiled 42 to 45 computations (-7.1% saved)

bsearch17.0ms (0.5%)

Memory
28.2MiB live, 28.2MiB allocated; 0ms collecting garbage
Algorithm
binary-search
Stop Event
narrow-enough
Steps
TimeLeftRight
16.0ms
1.991135297199896e-17
3.421621663338337e-16
Samples
5.0ms27×2valid
4.0ms65×0valid
2.0ms15×1valid
1.0ms3valid
Compiler

Compiled 242 to 252 computations (-4.1% saved)

Precisions
Click to see histograms. Total time spent on operations: 8.0ms
ival-hypot: 4.0ms (47.9% of total)
ival-mult!: 2.0ms (24% of total)
ival-sqrt: 1.0ms (12% of total)
adjust: 1.0ms (12% of total)
ival-sub!: 1.0ms (12% of total)

bsearch57.0ms (1.8%)

Memory
-16.3MiB live, 76.5MiB allocated; 18ms collecting garbage
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
narrow-enough
narrow-enough
Steps
TimeLeftRight
1.0ms
1.991135297199896e-17
3.421621663338337e-16
22.0ms
-1.9995168090479257e-149
-1.4900567894437873e-155
12.0ms
-1.7112814520468627e+29
-7.518909275532601e+25
18.0ms
-3.4216631273159886e+88
-6.240219082911076e+77
Samples
32.0ms432×0valid
Compiler

Compiled 1 110 to 1 174 computations (-5.8% saved)

Precisions
Click to see histograms. Total time spent on operations: 15.0ms
ival-hypot: 8.0ms (52.6% of total)
ival-mult!: 4.0ms (26.3% of total)
ival-sqrt: 3.0ms (19.7% of total)
ival-sub!: 1.0ms (6.6% of total)
adjust: 0.0ms (0% of total)

bsearch2.0ms (0.1%)

Memory
4.3MiB live, 4.3MiB allocated; 0ms collecting garbage
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
1.0ms
1.991135297199896e-17
3.421621663338337e-16
1.0ms
-3.4216631273159886e+88
-6.240219082911076e+77
Compiler

Compiled 618 to 648 computations (-4.9% saved)

bsearch32.0ms (1%)

Memory
9.1MiB live, 55.3MiB allocated; 6ms collecting garbage
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
narrow-enough
Steps
TimeLeftRight
12.0ms
-1.9995168090479257e-149
-1.4900567894437873e-155
16.0ms
-6.810229398874346e-30
-3.629477879503071e-38
1.0ms
-3.4216631273159886e+88
-6.240219082911076e+77
Samples
15.0ms272×0valid
Compiler

Compiled 887 to 939 computations (-5.9% saved)

Precisions
Click to see histograms. Total time spent on operations: 10.0ms
ival-hypot: 5.0ms (52.6% of total)
ival-sqrt: 2.0ms (21% of total)
ival-mult!: 2.0ms (21% of total)
ival-sub!: 1.0ms (10.5% of total)
adjust: 0.0ms (0% of total)

bsearch5.0ms (0.2%)

Memory
9.9MiB live, 9.9MiB allocated; 0ms collecting garbage
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
narrow-enough
Steps
TimeLeftRight
1.0ms
-1.9995168090479257e-149
-1.4900567894437873e-155
1.0ms
-6.810229398874346e-30
-3.629477879503071e-38
2.0ms
-3.4216631273159886e+88
-6.240219082911076e+77
Samples
1.0ms16×0valid
Compiler

Compiled 830 to 882 computations (-6.3% saved)

Precisions
Click to see histograms. Total time spent on operations: 1.0ms
ival-sub!: 0.0ms (0% of total)
adjust: 0.0ms (0% of total)
ival-hypot: 0.0ms (0% of total)
ival-sqrt: 0.0ms (0% of total)
ival-mult!: 0.0ms (0% of total)

derivations155.0ms (4.8%)

Memory
-9.3MiB live, 135.8MiB allocated; 12ms collecting garbage
Stop Event
done
Compiler

Compiled 122 to 85 computations (30.3% saved)

preprocess82.0ms (2.6%)

Memory
-11.7MiB live, 79.8MiB allocated; 9ms collecting garbage
Remove

(abs im)

Compiler

Compiled 658 to 531 computations (19.3% saved)

end0.0ms (0%)

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

Profiling

Loading profile data...