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

Time bar (total: 4.0s)

start0.0ms (0%)

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

analyze176.0ms (4.4%)

Memory
-14.5MiB live, 269.6MiB allocated; 82ms 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 (34.1%)

Memory
17.7MiB live, 1 774.6MiB allocated; 429ms collecting garbage
Samples
614.0ms6 251×0valid
203.0ms771×2valid
140.0ms472×3valid
136.0ms762×1valid
Precisions
Click to see histograms. Total time spent on operations: 728.0ms
ival-hypot: 318.0ms (43.7% of total)
ival-mult!: 183.0ms (25.2% of total)
ival-sqrt: 111.0ms (15.3% of total)
adjust: 81.0ms (11.1% of total)
ival-sub!: 34.0ms (4.7% of total)
Bogosity

preprocess74.0ms (1.8%)

Memory
-17.0MiB live, 33.6MiB allocated; 13ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
03692
19792
220392
330492
465492
5371892
Stop Event
node-limit
Alt Table
Click to see full alt table
StatusAccuracyProgram
38.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))))
Symmetry

(abs im)

Compiler

Compiled 24 to 24 computations (0% saved)

series25.0ms (0.6%)

Memory
17.2MiB live, 62.5MiB allocated; 5ms 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
6.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)
4.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)

rewrite678.0ms (16.9%)

Memory
18.7MiB live, 344.1MiB allocated; 137ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
06804645
06924139
140844031
090073307
Stop Event
iter-limit
node-limit
iter-limit
Counts
125 → 307
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)
(*.f64 (sqrt.f64 (-.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re))) re)) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 (-.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re))) re)))
(pow.f64 (pow.f64 (*.f64 (-.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re))) re) #s(literal 2 binary64)) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 #s(literal 1/2 binary64)))
(pow.f64 (sqrt.f64 (*.f64 (-.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re))) re) #s(literal 2 binary64))) #s(literal 1 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)))
(exp.f64 (*.f64 (log.f64 (*.f64 (-.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re))) re) #s(literal 2 binary64))) #s(literal 1/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 (neg.f64 (-.f64 (fma.f64 im im (*.f64 re re)) (*.f64 re re))) (neg.f64 (+.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re))) re)))
(/.f64 (neg.f64 (-.f64 (*.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re))) (fma.f64 im im (*.f64 re re))) (*.f64 (*.f64 re re) re))) (neg.f64 (+.f64 (fma.f64 im im (*.f64 re re)) (fma.f64 re re (*.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re))) re)))))
(/.f64 (-.f64 (fma.f64 im im (*.f64 re re)) (*.f64 re re)) (+.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re))) re))
(/.f64 (-.f64 (*.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re))) (fma.f64 im im (*.f64 re re))) (*.f64 (*.f64 re re) re)) (+.f64 (fma.f64 im im (*.f64 re re)) (fma.f64 re re (*.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re))) re))))
(-.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re))) re)
(pow.f64 (pow.f64 (fma.f64 im im (*.f64 re re)) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 #s(literal 1/2 binary64)))
(pow.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re))) #s(literal 1 binary64))
(pow.f64 (fma.f64 im im (*.f64 re re)) #s(literal 1/2 binary64))
(/.f64 (sqrt.f64 (-.f64 (*.f64 (*.f64 im im) (*.f64 im im)) (*.f64 (*.f64 re re) (*.f64 re re)))) (sqrt.f64 (-.f64 (*.f64 im im) (*.f64 re re))))
(/.f64 (sqrt.f64 (-.f64 (*.f64 (*.f64 re re) (*.f64 re re)) (*.f64 (*.f64 im im) (*.f64 im im)))) (sqrt.f64 (-.f64 (*.f64 re re) (*.f64 im im))))
(/.f64 (hypot.f64 (*.f64 (*.f64 im im) im) (*.f64 (*.f64 re re) re)) (sqrt.f64 (fma.f64 (*.f64 im im) (*.f64 im im) (-.f64 (*.f64 (*.f64 re re) (*.f64 re re)) (*.f64 (*.f64 im im) (*.f64 re re))))))
(/.f64 (hypot.f64 (*.f64 (*.f64 re re) re) (*.f64 (*.f64 im im) im)) (sqrt.f64 (fma.f64 (*.f64 re re) (*.f64 re re) (-.f64 (*.f64 (*.f64 im im) (*.f64 im im)) (*.f64 (*.f64 re re) (*.f64 im im))))))
(sqrt.f64 (fma.f64 im im (*.f64 re re)))
(hypot.f64 (fabs.f64 (fabs.f64 im)) (fabs.f64 (fabs.f64 re)))
(hypot.f64 (fabs.f64 (fabs.f64 im)) (neg.f64 (fabs.f64 re)))
(hypot.f64 (fabs.f64 (fabs.f64 im)) (neg.f64 (neg.f64 re)))
(hypot.f64 (fabs.f64 (fabs.f64 im)) (exp.f64 (log.f64 re)))
(hypot.f64 (fabs.f64 (fabs.f64 im)) (fabs.f64 re))
(hypot.f64 (fabs.f64 (fabs.f64 im)) (neg.f64 re))
(hypot.f64 (fabs.f64 (fabs.f64 im)) re)
(hypot.f64 (fabs.f64 (fabs.f64 re)) (fabs.f64 (fabs.f64 im)))
(hypot.f64 (fabs.f64 (fabs.f64 re)) (neg.f64 (fabs.f64 im)))
(hypot.f64 (fabs.f64 (fabs.f64 re)) (neg.f64 (neg.f64 im)))
(hypot.f64 (fabs.f64 (fabs.f64 re)) (exp.f64 (log.f64 im)))
(hypot.f64 (fabs.f64 (fabs.f64 re)) (fabs.f64 im))
(hypot.f64 (fabs.f64 (fabs.f64 re)) (neg.f64 im))
(hypot.f64 (fabs.f64 (fabs.f64 re)) im)
(hypot.f64 (neg.f64 (fabs.f64 im)) (fabs.f64 (fabs.f64 re)))
(hypot.f64 (neg.f64 (fabs.f64 im)) (neg.f64 (fabs.f64 re)))
(hypot.f64 (neg.f64 (fabs.f64 im)) (neg.f64 (neg.f64 re)))
(hypot.f64 (neg.f64 (fabs.f64 im)) (exp.f64 (log.f64 re)))
(hypot.f64 (neg.f64 (fabs.f64 im)) (fabs.f64 re))
(hypot.f64 (neg.f64 (fabs.f64 im)) (neg.f64 re))
(hypot.f64 (neg.f64 (fabs.f64 im)) re)
(hypot.f64 (neg.f64 (neg.f64 im)) (fabs.f64 (fabs.f64 re)))
(hypot.f64 (neg.f64 (neg.f64 im)) (neg.f64 (fabs.f64 re)))
(hypot.f64 (neg.f64 (neg.f64 im)) (neg.f64 (neg.f64 re)))
(hypot.f64 (neg.f64 (neg.f64 im)) (exp.f64 (log.f64 re)))
(hypot.f64 (neg.f64 (neg.f64 im)) (fabs.f64 re))
(hypot.f64 (neg.f64 (neg.f64 im)) (neg.f64 re))
(hypot.f64 (neg.f64 (neg.f64 im)) re)
(hypot.f64 (neg.f64 (fabs.f64 re)) (fabs.f64 (fabs.f64 im)))
(hypot.f64 (neg.f64 (fabs.f64 re)) (neg.f64 (fabs.f64 im)))
(hypot.f64 (neg.f64 (fabs.f64 re)) (neg.f64 (neg.f64 im)))
(hypot.f64 (neg.f64 (fabs.f64 re)) (exp.f64 (log.f64 im)))
(hypot.f64 (neg.f64 (fabs.f64 re)) (fabs.f64 im))
(hypot.f64 (neg.f64 (fabs.f64 re)) (neg.f64 im))
(hypot.f64 (neg.f64 (fabs.f64 re)) im)
(hypot.f64 (neg.f64 (neg.f64 re)) (fabs.f64 (fabs.f64 im)))
(hypot.f64 (neg.f64 (neg.f64 re)) (neg.f64 (fabs.f64 im)))
(hypot.f64 (neg.f64 (neg.f64 re)) (neg.f64 (neg.f64 im)))
(hypot.f64 (neg.f64 (neg.f64 re)) (exp.f64 (log.f64 im)))
(hypot.f64 (neg.f64 (neg.f64 re)) (fabs.f64 im))
(hypot.f64 (neg.f64 (neg.f64 re)) (neg.f64 im))
(hypot.f64 (neg.f64 (neg.f64 re)) im)
(hypot.f64 (exp.f64 (log.f64 re)) (fabs.f64 (fabs.f64 im)))
(hypot.f64 (exp.f64 (log.f64 re)) (neg.f64 (fabs.f64 im)))
(hypot.f64 (exp.f64 (log.f64 re)) (neg.f64 (neg.f64 im)))
(hypot.f64 (exp.f64 (log.f64 re)) (exp.f64 (log.f64 im)))
(hypot.f64 (exp.f64 (log.f64 re)) (fabs.f64 im))
(hypot.f64 (exp.f64 (log.f64 re)) (neg.f64 im))
(hypot.f64 (exp.f64 (log.f64 re)) im)
(hypot.f64 (exp.f64 (log.f64 im)) (fabs.f64 (fabs.f64 re)))
(hypot.f64 (exp.f64 (log.f64 im)) (neg.f64 (fabs.f64 re)))
(hypot.f64 (exp.f64 (log.f64 im)) (neg.f64 (neg.f64 re)))
(hypot.f64 (exp.f64 (log.f64 im)) (exp.f64 (log.f64 re)))
(hypot.f64 (exp.f64 (log.f64 im)) (fabs.f64 re))
(hypot.f64 (exp.f64 (log.f64 im)) (neg.f64 re))
(hypot.f64 (exp.f64 (log.f64 im)) re)
(hypot.f64 (fabs.f64 re) (fabs.f64 (fabs.f64 im)))
(hypot.f64 (fabs.f64 re) (neg.f64 (fabs.f64 im)))
(hypot.f64 (fabs.f64 re) (neg.f64 (neg.f64 im)))
(hypot.f64 (fabs.f64 re) (exp.f64 (log.f64 im)))
(hypot.f64 (fabs.f64 re) (fabs.f64 im))
(hypot.f64 (fabs.f64 re) (neg.f64 im))
(hypot.f64 (fabs.f64 re) im)
(hypot.f64 (fabs.f64 im) (fabs.f64 (fabs.f64 re)))
(hypot.f64 (fabs.f64 im) (neg.f64 (fabs.f64 re)))
(hypot.f64 (fabs.f64 im) (neg.f64 (neg.f64 re)))
(hypot.f64 (fabs.f64 im) (exp.f64 (log.f64 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 (neg.f64 re) (fabs.f64 (fabs.f64 im)))
(hypot.f64 (neg.f64 re) (neg.f64 (fabs.f64 im)))
(hypot.f64 (neg.f64 re) (neg.f64 (neg.f64 im)))
(hypot.f64 (neg.f64 re) (exp.f64 (log.f64 im)))
(hypot.f64 (neg.f64 re) (fabs.f64 im))
(hypot.f64 (neg.f64 re) (neg.f64 im))
(hypot.f64 (neg.f64 re) im)
(hypot.f64 (neg.f64 im) (fabs.f64 (fabs.f64 re)))
(hypot.f64 (neg.f64 im) (neg.f64 (fabs.f64 re)))
(hypot.f64 (neg.f64 im) (neg.f64 (neg.f64 re)))
(hypot.f64 (neg.f64 im) (exp.f64 (log.f64 re)))
(hypot.f64 (neg.f64 im) (fabs.f64 re))
(hypot.f64 (neg.f64 im) (neg.f64 re))
(hypot.f64 (neg.f64 im) re)
(hypot.f64 im (fabs.f64 (fabs.f64 re)))
(hypot.f64 im (neg.f64 (fabs.f64 re)))
(hypot.f64 im (neg.f64 (neg.f64 re)))
(hypot.f64 im (exp.f64 (log.f64 re)))
(hypot.f64 im (fabs.f64 re))
(hypot.f64 im (neg.f64 re))
(hypot.f64 im re)
(hypot.f64 re (fabs.f64 (fabs.f64 im)))
(hypot.f64 re (neg.f64 (fabs.f64 im)))
(hypot.f64 re (neg.f64 (neg.f64 im)))
(hypot.f64 re (exp.f64 (log.f64 im)))
(hypot.f64 re (fabs.f64 im))
(hypot.f64 re (neg.f64 im))
(hypot.f64 re im)
(exp.f64 (*.f64 (log.f64 (fma.f64 im im (*.f64 re re))) #s(literal 1/2 binary64)))
(*.f64 (fabs.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re)))) (fabs.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re)))))
(*.f64 (neg.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re)))) (neg.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re)))))
(*.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re))) (sqrt.f64 (fma.f64 im im (*.f64 re re))))
(pow.f64 (*.f64 (fma.f64 im im (*.f64 re re)) (fma.f64 im im (*.f64 re re))) #s(literal 1/2 binary64))
(pow.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re))) #s(literal 2 binary64))
(pow.f64 (fma.f64 im im (*.f64 re re)) #s(literal 1 binary64))
(/.f64 (neg.f64 (-.f64 (*.f64 (*.f64 im im) (*.f64 im im)) (*.f64 (*.f64 re re) (*.f64 re re)))) (neg.f64 (-.f64 (*.f64 im im) (*.f64 re re))))
(/.f64 (neg.f64 (-.f64 (*.f64 (*.f64 re re) (*.f64 re re)) (*.f64 (*.f64 im im) (*.f64 im im)))) (neg.f64 (-.f64 (*.f64 re re) (*.f64 im im))))
(/.f64 (neg.f64 (fma.f64 (*.f64 (*.f64 im im) (*.f64 im im)) (*.f64 im im) (*.f64 (*.f64 (*.f64 re re) re) (*.f64 (*.f64 re re) re)))) (neg.f64 (fma.f64 (*.f64 im im) (*.f64 im im) (-.f64 (*.f64 (*.f64 re re) (*.f64 re re)) (*.f64 (*.f64 im im) (*.f64 re re))))))
(/.f64 (neg.f64 (fma.f64 (*.f64 (*.f64 re re) re) (*.f64 (*.f64 re re) re) (*.f64 (*.f64 (*.f64 im im) im) (*.f64 (*.f64 im im) im)))) (neg.f64 (fma.f64 (*.f64 re re) (*.f64 re re) (-.f64 (*.f64 (*.f64 im im) (*.f64 im im)) (*.f64 (*.f64 re re) (*.f64 im 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) im) (*.f64 (*.f64 im 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 (fabs.f64 im)) (fabs.f64 (fabs.f64 im)) (*.f64 re re))
(fma.f64 (fabs.f64 (fabs.f64 re)) (fabs.f64 (fabs.f64 re)) (*.f64 im im))
(fma.f64 (neg.f64 (fabs.f64 im)) (neg.f64 (fabs.f64 im)) (*.f64 re re))
(fma.f64 (neg.f64 (neg.f64 im)) (neg.f64 (neg.f64 im)) (*.f64 re re))
(fma.f64 (neg.f64 (fabs.f64 re)) (neg.f64 (fabs.f64 re)) (*.f64 im im))
(fma.f64 (neg.f64 (neg.f64 re)) (neg.f64 (neg.f64 re)) (*.f64 im im))
(fma.f64 (exp.f64 (log.f64 re)) (exp.f64 (log.f64 re)) (*.f64 im im))
(fma.f64 (exp.f64 (log.f64 im)) (exp.f64 (log.f64 im)) (*.f64 re re))
(fma.f64 (fabs.f64 re) (fabs.f64 re) (*.f64 im im))
(fma.f64 (fabs.f64 im) (fabs.f64 im) (*.f64 re re))
(fma.f64 (neg.f64 re) (neg.f64 re) (*.f64 im im))
(fma.f64 (neg.f64 im) (neg.f64 im) (*.f64 re re))
(fma.f64 im im (*.f64 re re))
(fma.f64 re re (*.f64 im im))
(sqrt.f64 (*.f64 (fma.f64 im im (*.f64 re re)) (fma.f64 im im (*.f64 re re))))
(-.f64 (*.f64 re re) (*.f64 (neg.f64 im) im))
(+.f64 (*.f64 im im) (*.f64 re re))
(+.f64 (*.f64 re re) (*.f64 im im))
(*.f64 (fabs.f64 (fabs.f64 re)) (fabs.f64 (fabs.f64 re)))
(*.f64 (neg.f64 (fabs.f64 re)) (neg.f64 (fabs.f64 re)))
(*.f64 (neg.f64 (neg.f64 re)) (neg.f64 (neg.f64 re)))
(*.f64 (exp.f64 (log.f64 re)) (exp.f64 (log.f64 re)))
(*.f64 (fabs.f64 re) (fabs.f64 re))
(*.f64 (neg.f64 re) (neg.f64 re))
(*.f64 re re)
(pow.f64 (exp.f64 (log.f64 re)) #s(literal 2 binary64))
(pow.f64 (pow.f64 re (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 2 binary64)))
(pow.f64 (fabs.f64 re) #s(literal 2 binary64))
(pow.f64 (neg.f64 re) #s(literal 2 binary64))
(pow.f64 (*.f64 re re) #s(literal 1 binary64))
(pow.f64 re #s(literal 2 binary64))
(/.f64 #s(literal 1 binary64) (*.f64 (/.f64 #s(literal 1 binary64) re) (/.f64 #s(literal 1 binary64) re)))
(fabs.f64 (*.f64 re re))
(exp.f64 (*.f64 (log.f64 re) #s(literal 2 binary64)))
(+.f64 (cosh.f64 (*.f64 (log.f64 re) #s(literal 2 binary64))) (sinh.f64 (*.f64 (log.f64 re) #s(literal 2 binary64))))
re
(*.f64 (fabs.f64 (fabs.f64 im)) (fabs.f64 (fabs.f64 im)))
(*.f64 (neg.f64 (fabs.f64 im)) (neg.f64 (fabs.f64 im)))
(*.f64 (neg.f64 (neg.f64 im)) (neg.f64 (neg.f64 im)))
(*.f64 (exp.f64 (log.f64 im)) (exp.f64 (log.f64 im)))
(*.f64 (fabs.f64 im) (fabs.f64 im))
(*.f64 (neg.f64 im) (neg.f64 im))
(*.f64 im im)
(pow.f64 (exp.f64 (log.f64 im)) #s(literal 2 binary64))
(pow.f64 (pow.f64 im (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 2 binary64)))
(pow.f64 (fabs.f64 im) #s(literal 2 binary64))
(pow.f64 (neg.f64 im) #s(literal 2 binary64))
(pow.f64 (*.f64 im im) #s(literal 1 binary64))
(pow.f64 im #s(literal 2 binary64))
(/.f64 #s(literal 1 binary64) (*.f64 (/.f64 #s(literal 1 binary64) im) (/.f64 #s(literal 1 binary64) im)))
(fabs.f64 (*.f64 im im))
(exp.f64 (*.f64 (log.f64 im) #s(literal 2 binary64)))
(+.f64 (cosh.f64 (*.f64 (log.f64 im) #s(literal 2 binary64))) (sinh.f64 (*.f64 (log.f64 im) #s(literal 2 binary64))))
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) (/.f64 #s(literal 1 binary64) (sqrt.f64 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 (/.f64 #s(literal 1 binary64) (*.f64 (fabs.f64 im) (sqrt.f64 im))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) #s(literal 1/16 binary64) (*.f64 (sqrt.f64 (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) im))) #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 (sqrt.f64 (+.f64 im im)) #s(literal 1/2 binary64) (*.f64 re (fma.f64 (fma.f64 (sqrt.f64 (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (*.f64 im im) im)))) #s(literal 1/16 binary64) (*.f64 (*.f64 (*.f64 (pow.f64 im #s(literal -5/2 binary64)) re) (sqrt.f64 #s(literal 2 binary64))) #s(literal 1/32 binary64))) re (*.f64 (sqrt.f64 (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) im))) #s(literal -1/4 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) (/.f64 #s(literal 1 binary64) (sqrt.f64 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/8 binary64) (*.f64 (/.f64 #s(literal 1 binary64) (*.f64 (fabs.f64 im) (sqrt.f64 im))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) (*.f64 #s(literal -1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) im))))) re (sqrt.f64 (+.f64 im im))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/8 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (*.f64 im im) im)))) (*.f64 (*.f64 (*.f64 (pow.f64 im #s(literal -5/2 binary64)) re) (sqrt.f64 #s(literal 2 binary64))) #s(literal 1/16 binary64))) re (*.f64 #s(literal -1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) im))))) re (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 (-.f64 (*.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 (-.f64 (*.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 (-.f64 (*.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 #s(literal 1/16 binary64) (*.f64 re re)) (pow.f64 im #s(literal 5 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)) (/.f64 #s(literal 1 binary64) (sqrt.f64 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))) (pow.f64 re #s(literal -5/2 binary64)) (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1 binary64) im)) (/.f64 #s(literal 1 binary64) (sqrt.f64 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))) (pow.f64 re #s(literal -5/2 binary64)) (fma.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1 binary64) im)) (/.f64 #s(literal 1 binary64) (sqrt.f64 re)) (*.f64 (*.f64 (pow.f64 re #s(literal -9/2 binary64)) (*.f64 (pow.f64 im #s(literal 5 binary64)) #s(literal 2 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))) (pow.f64 re #s(literal -5/2 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)))) (pow.f64 re #s(literal -9/2 binary64))) #s(literal -1/1024 binary64) (fma.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1 binary64) im)) (/.f64 #s(literal 1 binary64) (sqrt.f64 re)) (*.f64 (*.f64 (pow.f64 re #s(literal -9/2 binary64)) (*.f64 (pow.f64 im #s(literal 5 binary64)) #s(literal 2 binary64))) #s(literal 1/64 binary64))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (*.f64 #s(literal 1 binary64) im) (/.f64 #s(literal 1 binary64) (sqrt.f64 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))) (pow.f64 re #s(literal -5/2 binary64)) (*.f64 (*.f64 #s(literal 1 binary64) im) (/.f64 #s(literal 1 binary64) (sqrt.f64 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))) (pow.f64 re #s(literal -5/2 binary64)) (fma.f64 (*.f64 #s(literal 1 binary64) im) (/.f64 #s(literal 1 binary64) (sqrt.f64 re)) (*.f64 (*.f64 (pow.f64 re #s(literal -9/2 binary64)) (*.f64 (pow.f64 im #s(literal 5 binary64)) #s(literal 2 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))) (pow.f64 re #s(literal -5/2 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)))) (pow.f64 re #s(literal -9/2 binary64))) (fma.f64 (*.f64 #s(literal 1 binary64) im) (/.f64 #s(literal 1 binary64) (sqrt.f64 re)) (*.f64 (*.f64 (pow.f64 re #s(literal -9/2 binary64)) (*.f64 (pow.f64 im #s(literal 5 binary64)) #s(literal 2 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) im) (*.f64 (*.f64 im 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) im) (*.f64 (*.f64 im 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) im) (*.f64 (*.f64 im 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) im) (*.f64 (*.f64 im 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 (sqrt.f64 (neg.f64 re)) #s(literal 2 binary64)) #s(literal -1/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) (/.f64 #s(literal 1 binary64) (sqrt.f64 re))) (sqrt.f64 #s(literal -4 binary64)) (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (*.f64 im im)) (pow.f64 re #s(literal -5/2 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) (/.f64 #s(literal 1 binary64) (sqrt.f64 re))) (sqrt.f64 #s(literal -4 binary64)) (neg.f64 (/.f64 (fma.f64 (*.f64 (*.f64 im im) (sqrt.f64 (neg.f64 re))) #s(literal 1/8 binary64) (*.f64 (*.f64 (*.f64 (*.f64 im im) (*.f64 im im)) (sqrt.f64 (*.f64 #s(literal -1 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (*.f64 re re) re))))) #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) (/.f64 #s(literal 1 binary64) (sqrt.f64 re))) (sqrt.f64 #s(literal -4 binary64)) (neg.f64 (/.f64 (fma.f64 (*.f64 (*.f64 (*.f64 im im) (*.f64 im im)) (sqrt.f64 (*.f64 #s(literal -1 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (*.f64 re re) re))))) #s(literal -1/32 binary64) (fma.f64 (*.f64 (*.f64 (*.f64 (*.f64 im im) (*.f64 im im)) (sqrt.f64 #s(literal -1/4 binary64))) (/.f64 #s(literal 1 binary64) (*.f64 (fabs.f64 re) (sqrt.f64 re)))) #s(literal 1/64 binary64) (*.f64 (*.f64 (*.f64 im im) (sqrt.f64 (neg.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 (sqrt.f64 (neg.f64 re)) #s(literal 2 binary64))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (neg.f64 re) (fma.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (*.f64 im im)) (pow.f64 re #s(literal -5/2 binary64))) #s(literal -1/4 binary64) (*.f64 (sqrt.f64 #s(literal -4 binary64)) (/.f64 #s(literal 1 binary64) (sqrt.f64 re))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (neg.f64 re) (fma.f64 (sqrt.f64 #s(literal -4 binary64)) (/.f64 #s(literal 1 binary64) (sqrt.f64 re)) (neg.f64 (/.f64 (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 im im) (sqrt.f64 (neg.f64 re))) (*.f64 (*.f64 (*.f64 (*.f64 im im) (*.f64 im im)) (sqrt.f64 (*.f64 #s(literal -1 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (*.f64 re re) re))))) #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 (sqrt.f64 #s(literal -4 binary64)) (/.f64 #s(literal 1 binary64) (sqrt.f64 re)) (neg.f64 (/.f64 (fma.f64 (*.f64 (*.f64 (*.f64 im im) (*.f64 im im)) (sqrt.f64 (*.f64 #s(literal -1 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (*.f64 re re) re))))) #s(literal -1/16 binary64) (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 im im) (sqrt.f64 (neg.f64 re))) (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 im im) (*.f64 im im)) (sqrt.f64 #s(literal -1/4 binary64))) (/.f64 #s(literal 1 binary64) (*.f64 (fabs.f64 re) (sqrt.f64 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 (pow.f64 re #s(literal -5/2 binary64)) (*.f64 (*.f64 im im) #s(literal 2 binary64))) #s(literal -1/32 binary64) (*.f64 (*.f64 (/.f64 #s(literal 1 binary64) (sqrt.f64 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 (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 2 binary64)))) (sqrt.f64 #s(literal 2 binary64))) (*.f64 im im)) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 re)) (*.f64 (*.f64 (pow.f64 re #s(literal -5/2 binary64)) #s(literal 2 binary64)) #s(literal -1/32 binary64))) (*.f64 im im) (*.f64 (*.f64 (/.f64 #s(literal 1 binary64) (sqrt.f64 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 (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 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 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 (pow.f64 re #s(literal -5/2 binary64)) #s(literal 2 binary64)) #s(literal -1/32 binary64))) (*.f64 im im) (*.f64 (*.f64 (/.f64 #s(literal 1 binary64) (sqrt.f64 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))) (pow.f64 re #s(literal -5/2 binary64)) (*.f64 (/.f64 #s(literal 1 binary64) (sqrt.f64 re)) #s(literal 1 binary64))) im))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (fma.f64 (/.f64 #s(literal 1 binary64) (sqrt.f64 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 2 binary64)))) (sqrt.f64 #s(literal 2 binary64))) (*.f64 im im)) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 re)) (*.f64 (*.f64 (pow.f64 re #s(literal -5/2 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 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 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 (pow.f64 re #s(literal -5/2 binary64)) #s(literal 2 binary64)) #s(literal -1/16 binary64))) (*.f64 im im) (*.f64 (/.f64 #s(literal 1 binary64) (sqrt.f64 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 #s(literal 1/8 binary64) (*.f64 im im)) (pow.f64 re #s(literal 5 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 #s(literal 1/16 binary64) (*.f64 im im)) (pow.f64 re #s(literal 5 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 #s(literal 1/16 binary64) (*.f64 im im)) (pow.f64 re #s(literal 5 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 (/.f64 #s(literal 1 binary64) (*.f64 (fabs.f64 im) (sqrt.f64 im))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) #s(literal -1/4 binary64) (*.f64 (sqrt.f64 (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) im))) #s(literal 1/2 binary64))) im))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 (fma.f64 (*.f64 (/.f64 #s(literal 1 binary64) (*.f64 (fabs.f64 im) (sqrt.f64 im))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) #s(literal -1/4 binary64) (fma.f64 (*.f64 (*.f64 (*.f64 re re) (sqrt.f64 #s(literal 2 binary64))) (pow.f64 im #s(literal -5/2 binary64))) #s(literal 1/8 binary64) (*.f64 (sqrt.f64 (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) im))) #s(literal 1/2 binary64)))) im))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 (fma.f64 (*.f64 (/.f64 #s(literal 1 binary64) (*.f64 (fabs.f64 im) (sqrt.f64 im))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) #s(literal -1/4 binary64) (fma.f64 (*.f64 #s(literal -1/16 binary64) (pow.f64 im #s(literal -5/2 binary64))) (*.f64 (*.f64 re re) (sqrt.f64 #s(literal 2 binary64))) (fma.f64 (*.f64 (*.f64 (*.f64 re re) (sqrt.f64 #s(literal 2 binary64))) (pow.f64 im #s(literal -5/2 binary64))) #s(literal 1/8 binary64) (*.f64 (sqrt.f64 (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) im))) #s(literal 1/2 binary64))))) im))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 #s(literal 1 binary64) (*.f64 (fabs.f64 im) (sqrt.f64 im))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) (sqrt.f64 (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) im)))) im))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 im (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 #s(literal 1 binary64) (*.f64 (fabs.f64 im) (sqrt.f64 im))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) (fma.f64 (*.f64 #s(literal 1/4 binary64) (pow.f64 im #s(literal -5/2 binary64))) (*.f64 (*.f64 re re) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) im)))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 #s(literal 1 binary64) (*.f64 (fabs.f64 im) (sqrt.f64 im))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) (fma.f64 (*.f64 #s(literal -1/8 binary64) (pow.f64 im #s(literal -5/2 binary64))) (*.f64 (*.f64 re re) (sqrt.f64 #s(literal 2 binary64))) (fma.f64 (*.f64 #s(literal 1/4 binary64) (pow.f64 im #s(literal -5/2 binary64))) (*.f64 (*.f64 re re) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) im)))))) 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 (sqrt.f64 (*.f64 #s(literal -2 binary64) im)) #s(literal -1/2 binary64)))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 (neg.f64 im) (fma.f64 (sqrt.f64 (*.f64 #s(literal -2 binary64) (/.f64 #s(literal 1 binary64) im))) #s(literal 1/2 binary64) (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -2 binary64)) re) (/.f64 #s(literal 1 binary64) (*.f64 (fabs.f64 im) (sqrt.f64 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 (*.f64 (sqrt.f64 #s(literal -2 binary64)) re) (/.f64 #s(literal 1 binary64) (*.f64 (fabs.f64 im) (sqrt.f64 im)))) #s(literal -1/4 binary64) (fma.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -2 binary64)) (*.f64 re re)) (pow.f64 im #s(literal -5/2 binary64))) #s(literal -1/8 binary64) (*.f64 (sqrt.f64 (*.f64 #s(literal -2 binary64) (/.f64 #s(literal 1 binary64) im))) #s(literal 1/2 binary64))))))
#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 (sqrt.f64 (*.f64 #s(literal -2 binary64) (/.f64 #s(literal 1 binary64) im))) #s(literal 1/2 binary64) (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -2 binary64)) re) (/.f64 #s(literal 1 binary64) (*.f64 (fabs.f64 im) (sqrt.f64 im)))) #s(literal -1/4 binary64))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (neg.f64 (sqrt.f64 (*.f64 #s(literal -2 binary64) 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) (/.f64 #s(literal 1 binary64) (*.f64 (fabs.f64 im) (sqrt.f64 im)))) #s(literal -1/2 binary64) (sqrt.f64 (*.f64 #s(literal -2 binary64) (/.f64 #s(literal 1 binary64) im))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (neg.f64 (*.f64 im (fma.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -2 binary64)) re) (/.f64 #s(literal 1 binary64) (*.f64 (fabs.f64 im) (sqrt.f64 im)))) #s(literal -1/2 binary64) (fma.f64 (*.f64 #s(literal -1/4 binary64) (pow.f64 im #s(literal -5/2 binary64))) (*.f64 (sqrt.f64 #s(literal -2 binary64)) (*.f64 re re)) (sqrt.f64 (*.f64 #s(literal -2 binary64) (/.f64 #s(literal 1 binary64) im))))))))
#s(approx (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/8 binary64)) (*.f64 (*.f64 im im) im))) (fma.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -2 binary64)) re) (/.f64 #s(literal 1 binary64) (*.f64 (fabs.f64 im) (sqrt.f64 im)))) #s(literal -1/2 binary64) (sqrt.f64 (*.f64 #s(literal -2 binary64) (/.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))))

eval43.0ms (1.1%)

Memory
-8.6MiB live, 82.4MiB allocated; 17ms collecting garbage
Compiler

Compiled 4 214 to 1 872 computations (55.6% saved)

prune8.0ms (0.2%)

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

7 alts after pruning (7 fresh and 0 done)

PrunedKeptTotal
New2937300
Fresh000
Picked101
Done000
Total2947301
Accuracy
99.9%
Counts
301 → 7
Alt Table
Click to see full alt table
StatusAccuracyProgram
76.2%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 re im) re))))
50.7%
(*.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)))))
48.7%
(*.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)))))
20.6%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 im im) re))))
49.1%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (+.f64 im im))))
24.3%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re))))
32.2%
#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)) (/.f64 #s(literal 1 binary64) (sqrt.f64 re))))
Compiler

Compiled 212 to 212 computations (0% saved)

series19.0ms (0.5%)

Memory
-2.6MiB live, 42.8MiB allocated; 5ms collecting garbage
Counts
29 → 113
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 #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)
(*.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)
(*.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)
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 (* -4 re) #s(hole binary64 (* -4 re)))
#s(approx (/ (* im im) re) #s(hole binary64 (/ (pow im 2) re)))
#s(approx (neg re) #s(hole binary64 (* -1 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 (/ (+ (* -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 (+ (neg re) im) #s(hole binary64 (* re (- (/ im re) 1))))
#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 (* -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 (+ 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 (+ (neg re) im) #s(hole binary64 (* -1 (* re (+ 1 (* -1 (/ im re)))))))
#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 (* im im) #s(hole binary64 (pow im 2)))
#s(approx (+ (neg re) im) #s(hole binary64 (- im 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 (* 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))))))))))
#s(approx (+ (neg re) im) #s(hole binary64 (* -1 (* im (- (/ re im) 1)))))
Calls

6 calls:

TimeVariablePointExpression
6.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)) (* -4 re) -4 (* 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)))) (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))
2.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)) (* -4 re) -4 (* 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)))) (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))
2.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)) (* -4 re) -4 (* 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)))) (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))
2.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)) (* -4 re) -4 (* 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)))) (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))
2.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)) (* -4 re) -4 (* 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)))) (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))

rewrite239.0ms (6%)

Memory
1.5MiB live, 318.0MiB allocated; 97ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
07054235
07293726
141593618
091643466
Stop Event
iter-limit
node-limit
iter-limit
Counts
142 → 328
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 #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)
(*.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)
(*.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)
#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 (* -4 re) #s(hole binary64 (* -4 re)))
#s(approx (/ (* im im) re) #s(hole binary64 (/ (pow im 2) re)))
#s(approx (neg re) #s(hole binary64 (* -1 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 (/ (+ (* -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 (+ (neg re) im) #s(hole binary64 (* re (- (/ im re) 1))))
#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 (* -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 (+ 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 (+ (neg re) im) #s(hole binary64 (* -1 (* re (+ 1 (* -1 (/ im re)))))))
#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 (* im im) #s(hole binary64 (pow im 2)))
#s(approx (+ (neg re) im) #s(hole binary64 (- im 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 (* 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))))))))))
#s(approx (+ (neg re) im) #s(hole binary64 (* -1 (* im (- (/ re im) 1)))))
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)
(*.f64 (sqrt.f64 (-.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re))) re)) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 (-.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re))) re)))
(pow.f64 (pow.f64 (*.f64 (-.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re))) re) #s(literal 2 binary64)) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 #s(literal 1/2 binary64)))
(pow.f64 (sqrt.f64 (*.f64 (-.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re))) re) #s(literal 2 binary64))) #s(literal 1 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)))
(exp.f64 (*.f64 (log.f64 (*.f64 (-.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re))) re) #s(literal 2 binary64))) #s(literal 1/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 (neg.f64 (-.f64 (fma.f64 im im (*.f64 re re)) (*.f64 re re))) (neg.f64 (+.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re))) re)))
(/.f64 (neg.f64 (-.f64 (*.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re))) (fma.f64 im im (*.f64 re re))) (*.f64 (*.f64 re re) re))) (neg.f64 (+.f64 (fma.f64 im im (*.f64 re re)) (fma.f64 re re (*.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re))) re)))))
(/.f64 (-.f64 (fma.f64 im im (*.f64 re re)) (*.f64 re re)) (+.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re))) re))
(/.f64 (-.f64 (*.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re))) (fma.f64 im im (*.f64 re re))) (*.f64 (*.f64 re re) re)) (+.f64 (fma.f64 im im (*.f64 re re)) (fma.f64 re re (*.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re))) re))))
(-.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re))) re)
(pow.f64 (pow.f64 (fma.f64 im im (*.f64 re re)) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 #s(literal 1/2 binary64)))
(pow.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re))) #s(literal 1 binary64))
(pow.f64 (fma.f64 im im (*.f64 re re)) #s(literal 1/2 binary64))
(/.f64 (sqrt.f64 (-.f64 (*.f64 (*.f64 re re) (*.f64 re re)) (*.f64 (*.f64 im im) (*.f64 im im)))) (sqrt.f64 (-.f64 (*.f64 re re) (*.f64 im im))))
(/.f64 (hypot.f64 (*.f64 (*.f64 re re) re) (*.f64 (*.f64 im im) im)) (sqrt.f64 (fma.f64 (*.f64 re re) (*.f64 re re) (-.f64 (*.f64 (*.f64 im im) (*.f64 im im)) (*.f64 (*.f64 re re) (*.f64 im im))))))
(sqrt.f64 (fma.f64 im im (*.f64 re re)))
(hypot.f64 (fabs.f64 (fabs.f64 im)) (fabs.f64 (fabs.f64 re)))
(hypot.f64 (fabs.f64 (fabs.f64 im)) (neg.f64 (fabs.f64 re)))
(hypot.f64 (fabs.f64 (fabs.f64 im)) (neg.f64 (neg.f64 re)))
(hypot.f64 (fabs.f64 (fabs.f64 im)) (exp.f64 (log.f64 re)))
(hypot.f64 (fabs.f64 (fabs.f64 im)) (fabs.f64 re))
(hypot.f64 (fabs.f64 (fabs.f64 im)) (neg.f64 re))
(hypot.f64 (fabs.f64 (fabs.f64 im)) re)
(hypot.f64 (fabs.f64 (fabs.f64 re)) (fabs.f64 (fabs.f64 im)))
(hypot.f64 (fabs.f64 (fabs.f64 re)) (neg.f64 (fabs.f64 im)))
(hypot.f64 (fabs.f64 (fabs.f64 re)) (neg.f64 (neg.f64 im)))
(hypot.f64 (fabs.f64 (fabs.f64 re)) (exp.f64 (log.f64 im)))
(hypot.f64 (fabs.f64 (fabs.f64 re)) (fabs.f64 im))
(hypot.f64 (fabs.f64 (fabs.f64 re)) (neg.f64 im))
(hypot.f64 (fabs.f64 (fabs.f64 re)) im)
(hypot.f64 (neg.f64 (fabs.f64 im)) (fabs.f64 (fabs.f64 re)))
(hypot.f64 (neg.f64 (fabs.f64 im)) (neg.f64 (fabs.f64 re)))
(hypot.f64 (neg.f64 (fabs.f64 im)) (neg.f64 (neg.f64 re)))
(hypot.f64 (neg.f64 (fabs.f64 im)) (exp.f64 (log.f64 re)))
(hypot.f64 (neg.f64 (fabs.f64 im)) (fabs.f64 re))
(hypot.f64 (neg.f64 (fabs.f64 im)) (neg.f64 re))
(hypot.f64 (neg.f64 (fabs.f64 im)) re)
(hypot.f64 (neg.f64 (neg.f64 im)) (fabs.f64 (fabs.f64 re)))
(hypot.f64 (neg.f64 (neg.f64 im)) (neg.f64 (fabs.f64 re)))
(hypot.f64 (neg.f64 (neg.f64 im)) (neg.f64 (neg.f64 re)))
(hypot.f64 (neg.f64 (neg.f64 im)) (exp.f64 (log.f64 re)))
(hypot.f64 (neg.f64 (neg.f64 im)) (fabs.f64 re))
(hypot.f64 (neg.f64 (neg.f64 im)) (neg.f64 re))
(hypot.f64 (neg.f64 (neg.f64 im)) re)
(hypot.f64 (neg.f64 (fabs.f64 re)) (fabs.f64 (fabs.f64 im)))
(hypot.f64 (neg.f64 (fabs.f64 re)) (neg.f64 (fabs.f64 im)))
(hypot.f64 (neg.f64 (fabs.f64 re)) (neg.f64 (neg.f64 im)))
(hypot.f64 (neg.f64 (fabs.f64 re)) (exp.f64 (log.f64 im)))
(hypot.f64 (neg.f64 (fabs.f64 re)) (fabs.f64 im))
(hypot.f64 (neg.f64 (fabs.f64 re)) (neg.f64 im))
(hypot.f64 (neg.f64 (fabs.f64 re)) im)
(hypot.f64 (neg.f64 (neg.f64 re)) (fabs.f64 (fabs.f64 im)))
(hypot.f64 (neg.f64 (neg.f64 re)) (neg.f64 (fabs.f64 im)))
(hypot.f64 (neg.f64 (neg.f64 re)) (neg.f64 (neg.f64 im)))
(hypot.f64 (neg.f64 (neg.f64 re)) (exp.f64 (log.f64 im)))
(hypot.f64 (neg.f64 (neg.f64 re)) (fabs.f64 im))
(hypot.f64 (neg.f64 (neg.f64 re)) (neg.f64 im))
(hypot.f64 (neg.f64 (neg.f64 re)) im)
(hypot.f64 (exp.f64 (log.f64 re)) (fabs.f64 (fabs.f64 im)))
(hypot.f64 (exp.f64 (log.f64 re)) (neg.f64 (fabs.f64 im)))
(hypot.f64 (exp.f64 (log.f64 re)) (neg.f64 (neg.f64 im)))
(hypot.f64 (exp.f64 (log.f64 re)) (exp.f64 (log.f64 im)))
(hypot.f64 (exp.f64 (log.f64 re)) (fabs.f64 im))
(hypot.f64 (exp.f64 (log.f64 re)) (neg.f64 im))
(hypot.f64 (exp.f64 (log.f64 re)) im)
(hypot.f64 (exp.f64 (log.f64 im)) (fabs.f64 (fabs.f64 re)))
(hypot.f64 (exp.f64 (log.f64 im)) (neg.f64 (fabs.f64 re)))
(hypot.f64 (exp.f64 (log.f64 im)) (neg.f64 (neg.f64 re)))
(hypot.f64 (exp.f64 (log.f64 im)) (exp.f64 (log.f64 re)))
(hypot.f64 (exp.f64 (log.f64 im)) (fabs.f64 re))
(hypot.f64 (exp.f64 (log.f64 im)) (neg.f64 re))
(hypot.f64 (exp.f64 (log.f64 im)) re)
(hypot.f64 (fabs.f64 im) (fabs.f64 (fabs.f64 re)))
(hypot.f64 (fabs.f64 im) (neg.f64 (fabs.f64 re)))
(hypot.f64 (fabs.f64 im) (neg.f64 (neg.f64 re)))
(hypot.f64 (fabs.f64 im) (exp.f64 (log.f64 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 (fabs.f64 im)))
(hypot.f64 (fabs.f64 re) (neg.f64 (fabs.f64 im)))
(hypot.f64 (fabs.f64 re) (neg.f64 (neg.f64 im)))
(hypot.f64 (fabs.f64 re) (exp.f64 (log.f64 im)))
(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 (fabs.f64 re)))
(hypot.f64 (neg.f64 im) (neg.f64 (fabs.f64 re)))
(hypot.f64 (neg.f64 im) (neg.f64 (neg.f64 re)))
(hypot.f64 (neg.f64 im) (exp.f64 (log.f64 re)))
(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 (fabs.f64 im)))
(hypot.f64 (neg.f64 re) (neg.f64 (fabs.f64 im)))
(hypot.f64 (neg.f64 re) (neg.f64 (neg.f64 im)))
(hypot.f64 (neg.f64 re) (exp.f64 (log.f64 im)))
(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 (fabs.f64 re)))
(hypot.f64 im (neg.f64 (fabs.f64 re)))
(hypot.f64 im (neg.f64 (neg.f64 re)))
(hypot.f64 im (exp.f64 (log.f64 re)))
(hypot.f64 im (fabs.f64 re))
(hypot.f64 im (neg.f64 re))
(hypot.f64 im re)
(hypot.f64 re (fabs.f64 (fabs.f64 im)))
(hypot.f64 re (neg.f64 (fabs.f64 im)))
(hypot.f64 re (neg.f64 (neg.f64 im)))
(hypot.f64 re (exp.f64 (log.f64 im)))
(hypot.f64 re (fabs.f64 im))
(hypot.f64 re (neg.f64 im))
(hypot.f64 re im)
(exp.f64 (*.f64 (log.f64 (fma.f64 im im (*.f64 re re))) #s(literal 1/2 binary64)))
re
im
(*.f64 (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (+.f64 im im))) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (+.f64 im im))))
(pow.f64 (pow.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (+.f64 im im)) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 #s(literal 1/2 binary64)))
(pow.f64 (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (+.f64 im im))) #s(literal 1 binary64))
(pow.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (+.f64 im im)) #s(literal 1/2 binary64))
(sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (+.f64 im im)))
(exp.f64 (*.f64 (log.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (+.f64 im im))) #s(literal 1/2 binary64)))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (+.f64 im im))
(*.f64 (fabs.f64 (sqrt.f64 (+.f64 im im))) (fabs.f64 (sqrt.f64 (+.f64 im im))))
(*.f64 (neg.f64 (sqrt.f64 (+.f64 im im))) (neg.f64 (sqrt.f64 (+.f64 im im))))
(*.f64 (sqrt.f64 (+.f64 im im)) (sqrt.f64 (+.f64 im im)))
(*.f64 im #s(literal 2 binary64))
(*.f64 #s(literal 2 binary64) im)
(pow.f64 (sqrt.f64 (+.f64 im im)) #s(literal 2 binary64))
(/.f64 (neg.f64 (-.f64 (*.f64 im im) (*.f64 im im))) (neg.f64 (-.f64 im im)))
(/.f64 (neg.f64 (fma.f64 (*.f64 im im) im (*.f64 (*.f64 im im) im))) (neg.f64 (fma.f64 im im (-.f64 (*.f64 im im) (*.f64 im im)))))
(/.f64 (-.f64 (*.f64 im im) (*.f64 im im)) (-.f64 im im))
(/.f64 (fma.f64 (*.f64 im im) im (*.f64 (*.f64 im im) im)) (fma.f64 im im (-.f64 (*.f64 im im) (*.f64 im im))))
(sqrt.f64 (*.f64 (+.f64 im im) (+.f64 im im)))
(+.f64 im im)
(*.f64 (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re))) #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))))
(pow.f64 (pow.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re)) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 #s(literal 1/2 binary64)))
(pow.f64 (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re))) #s(literal 1 binary64))
(pow.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re)) #s(literal 1/2 binary64))
(sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re)))
(exp.f64 (*.f64 (log.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re))) #s(literal 1/2 binary64)))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re))
(*.f64 #s(literal -4 binary64) re)
(*.f64 re #s(literal -4 binary64))
#s(literal -4 binary64)
(*.f64 (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 im im) re))) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 im im) re))))
(pow.f64 (pow.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 im im) re)) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 #s(literal 1/2 binary64)))
(pow.f64 (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 im im) re))) #s(literal 1 binary64))
(pow.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 im im) re)) #s(literal 1/2 binary64))
(sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 im im) re)))
(exp.f64 (*.f64 (log.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 im im) re))) #s(literal 1/2 binary64)))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 im im) re))
(*.f64 im (/.f64 im re))
(/.f64 (neg.f64 (neg.f64 (*.f64 im im))) (neg.f64 (neg.f64 re)))
(/.f64 (neg.f64 (*.f64 im im)) (neg.f64 re))
(/.f64 (*.f64 im im) re)
(*.f64 (fabs.f64 (fabs.f64 im)) (fabs.f64 (fabs.f64 im)))
(*.f64 (neg.f64 (fabs.f64 im)) (neg.f64 (fabs.f64 im)))
(*.f64 (neg.f64 (neg.f64 im)) (neg.f64 (neg.f64 im)))
(*.f64 (exp.f64 (log.f64 im)) (exp.f64 (log.f64 im)))
(*.f64 (fabs.f64 im) (fabs.f64 im))
(*.f64 (neg.f64 im) (neg.f64 im))
(*.f64 im im)
(pow.f64 (exp.f64 (log.f64 im)) #s(literal 2 binary64))
(pow.f64 (pow.f64 im (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 2 binary64)))
(pow.f64 (fabs.f64 im) #s(literal 2 binary64))
(pow.f64 (neg.f64 im) #s(literal 2 binary64))
(pow.f64 (*.f64 im im) #s(literal 1 binary64))
(pow.f64 im #s(literal 2 binary64))
(/.f64 #s(literal 1 binary64) (*.f64 (/.f64 #s(literal 1 binary64) im) (/.f64 #s(literal 1 binary64) im)))
(fabs.f64 (*.f64 im im))
(exp.f64 (*.f64 (log.f64 im) #s(literal 2 binary64)))
(+.f64 (cosh.f64 (*.f64 (log.f64 im) #s(literal 2 binary64))) (sinh.f64 (*.f64 (log.f64 im) #s(literal 2 binary64))))
(*.f64 (sqrt.f64 (*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (+.f64 (neg.f64 re) im)) #s(literal 2 binary64))) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (+.f64 (neg.f64 re) im)) #s(literal 2 binary64))))
(*.f64 (sqrt.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (+.f64 (neg.f64 re) im))) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (+.f64 (neg.f64 re) im))))
(pow.f64 (pow.f64 (*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (+.f64 (neg.f64 re) im)) #s(literal 2 binary64)) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 #s(literal 1/2 binary64)))
(pow.f64 (sqrt.f64 (*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (+.f64 (neg.f64 re) im)) #s(literal 2 binary64))) #s(literal 1 binary64))
(pow.f64 (*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (+.f64 (neg.f64 re) im)) #s(literal 2 binary64)) #s(literal 1/2 binary64))
(sqrt.f64 (*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (+.f64 (neg.f64 re) im)) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (+.f64 (neg.f64 re) im)) #s(literal 2 binary64))) #s(literal 1/2 binary64)))
(*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (+.f64 (neg.f64 re) im)) #s(literal 2 binary64))
(*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (+.f64 (neg.f64 re) im)))
(+.f64 #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)))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) (+.f64 (neg.f64 re) im))
(/.f64 (neg.f64 (-.f64 (*.f64 re re) (*.f64 im im))) (neg.f64 (-.f64 (neg.f64 re) im)))
(/.f64 (neg.f64 (-.f64 (*.f64 im im) (*.f64 re re))) (neg.f64 (-.f64 im (neg.f64 re))))
(/.f64 (neg.f64 (fma.f64 (*.f64 re re) (neg.f64 re) (*.f64 (*.f64 im im) im))) (neg.f64 (fma.f64 re re (-.f64 (*.f64 im im) (*.f64 (neg.f64 re) im)))))
(/.f64 (neg.f64 (fma.f64 (*.f64 im im) im (*.f64 (*.f64 re re) (neg.f64 re)))) (neg.f64 (fma.f64 im im (-.f64 (*.f64 re re) (*.f64 im (neg.f64 re))))))
(/.f64 (-.f64 (*.f64 re re) (*.f64 im im)) (-.f64 (neg.f64 re) im))
(/.f64 (-.f64 (*.f64 im im) (*.f64 re re)) (-.f64 im (neg.f64 re)))
(/.f64 (fma.f64 (*.f64 re re) (neg.f64 re) (*.f64 (*.f64 im im) im)) (fma.f64 re re (-.f64 (*.f64 im im) (*.f64 (neg.f64 re) im))))
(/.f64 (fma.f64 (*.f64 im im) im (*.f64 (*.f64 re re) (neg.f64 re))) (fma.f64 im im (-.f64 (*.f64 re re) (*.f64 im (neg.f64 re)))))
(fma.f64 #s(literal -1 binary64) re im)
(fma.f64 re #s(literal -1 binary64) im)
(-.f64 im (*.f64 #s(literal 1 binary64) re))
(+.f64 (neg.f64 re) im)
(+.f64 im (neg.f64 re))
(*.f64 #s(literal -1 binary64) re)
(*.f64 re #s(literal -1 binary64))
(neg.f64 re)
#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) (/.f64 #s(literal 1 binary64) (sqrt.f64 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 (/.f64 #s(literal 1 binary64) (*.f64 (fabs.f64 im) (sqrt.f64 im))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) #s(literal 1/16 binary64) (*.f64 (sqrt.f64 (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) im))) #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 (sqrt.f64 (+.f64 im im)) #s(literal 1/2 binary64) (*.f64 re (fma.f64 (fma.f64 (sqrt.f64 (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (*.f64 im im) im)))) #s(literal 1/16 binary64) (*.f64 (*.f64 (*.f64 (pow.f64 im #s(literal -5/2 binary64)) re) (sqrt.f64 #s(literal 2 binary64))) #s(literal 1/32 binary64))) re (*.f64 (sqrt.f64 (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) im))) #s(literal -1/4 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) (/.f64 #s(literal 1 binary64) (sqrt.f64 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/8 binary64) (*.f64 (/.f64 #s(literal 1 binary64) (*.f64 (fabs.f64 im) (sqrt.f64 im))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) (*.f64 #s(literal -1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) im))))) re (sqrt.f64 (+.f64 im im))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/8 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (*.f64 im im) im)))) (*.f64 (*.f64 (*.f64 (pow.f64 im #s(literal -5/2 binary64)) re) (sqrt.f64 #s(literal 2 binary64))) #s(literal 1/16 binary64))) re (*.f64 #s(literal -1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) im))))) re (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 (-.f64 (*.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 (-.f64 (*.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 (-.f64 (*.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 #s(literal 1/16 binary64) (*.f64 re re)) (pow.f64 im #s(literal 5 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)
#s(approx (* -4 re) (*.f64 #s(literal -4 binary64) re))
#s(approx (/ (* im im) re) (/.f64 (*.f64 im im) re))
#s(approx (neg re) (neg.f64 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)) (/.f64 #s(literal 1 binary64) (sqrt.f64 re))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (fma.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1 binary64) im)) (/.f64 #s(literal 1 binary64) (sqrt.f64 re)) (*.f64 (*.f64 (pow.f64 re #s(literal -5/2 binary64)) (*.f64 (*.f64 (*.f64 im im) im) #s(literal 2 binary64))) #s(literal -1/32 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))) (pow.f64 re #s(literal -5/2 binary64)) (fma.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1 binary64) im)) (/.f64 #s(literal 1 binary64) (sqrt.f64 re)) (*.f64 (*.f64 (pow.f64 re #s(literal -9/2 binary64)) (*.f64 (pow.f64 im #s(literal 5 binary64)) #s(literal 2 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))) (pow.f64 re #s(literal -5/2 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)))) (pow.f64 re #s(literal -9/2 binary64))) #s(literal -1/1024 binary64) (fma.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1 binary64) im)) (/.f64 #s(literal 1 binary64) (sqrt.f64 re)) (*.f64 (*.f64 (pow.f64 re #s(literal -9/2 binary64)) (*.f64 (pow.f64 im #s(literal 5 binary64)) #s(literal 2 binary64))) #s(literal 1/64 binary64))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (*.f64 #s(literal 1 binary64) im) (/.f64 #s(literal 1 binary64) (sqrt.f64 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))) (pow.f64 re #s(literal -5/2 binary64)) (*.f64 (*.f64 #s(literal 1 binary64) im) (/.f64 #s(literal 1 binary64) (sqrt.f64 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))) (pow.f64 re #s(literal -5/2 binary64)) (fma.f64 (*.f64 #s(literal 1 binary64) im) (/.f64 #s(literal 1 binary64) (sqrt.f64 re)) (*.f64 (*.f64 (pow.f64 re #s(literal -9/2 binary64)) (*.f64 (pow.f64 im #s(literal 5 binary64)) #s(literal 2 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))) (pow.f64 re #s(literal -5/2 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)))) (pow.f64 re #s(literal -9/2 binary64))) (fma.f64 (*.f64 #s(literal 1 binary64) im) (/.f64 #s(literal 1 binary64) (sqrt.f64 re)) (*.f64 (*.f64 (pow.f64 re #s(literal -9/2 binary64)) (*.f64 (pow.f64 im #s(literal 5 binary64)) #s(literal 2 binary64))) #s(literal 1/32 binary64))))))
#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) im) (*.f64 (*.f64 im 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) im) (*.f64 (*.f64 im 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) im) (*.f64 (*.f64 im 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) im) (*.f64 (*.f64 im 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 (+ (neg re) im) (*.f64 (-.f64 (/.f64 im re) #s(literal 1 binary64)) re))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 (*.f64 (sqrt.f64 (neg.f64 re)) #s(literal 2 binary64)) #s(literal -1/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) (/.f64 #s(literal 1 binary64) (sqrt.f64 re))) (sqrt.f64 #s(literal -4 binary64)) (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (*.f64 im im)) (pow.f64 re #s(literal -5/2 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) (/.f64 #s(literal 1 binary64) (sqrt.f64 re))) (sqrt.f64 #s(literal -4 binary64)) (neg.f64 (/.f64 (fma.f64 (*.f64 (*.f64 im im) (sqrt.f64 (neg.f64 re))) #s(literal 1/8 binary64) (*.f64 (*.f64 (*.f64 (*.f64 im im) (*.f64 im im)) (sqrt.f64 (*.f64 #s(literal -1 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (*.f64 re re) re))))) #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) (/.f64 #s(literal 1 binary64) (sqrt.f64 re))) (sqrt.f64 #s(literal -4 binary64)) (neg.f64 (/.f64 (fma.f64 (*.f64 (*.f64 (*.f64 im im) (*.f64 im im)) (sqrt.f64 (*.f64 #s(literal -1 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (*.f64 re re) re))))) #s(literal -1/32 binary64) (fma.f64 (*.f64 (*.f64 (*.f64 (*.f64 im im) (*.f64 im im)) (sqrt.f64 #s(literal -1/4 binary64))) (/.f64 #s(literal 1 binary64) (*.f64 (fabs.f64 re) (sqrt.f64 re)))) #s(literal 1/64 binary64) (*.f64 (*.f64 (*.f64 im im) (sqrt.f64 (neg.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 (sqrt.f64 (neg.f64 re)) #s(literal 2 binary64))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (neg.f64 re) (fma.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (*.f64 im im)) (pow.f64 re #s(literal -5/2 binary64))) #s(literal -1/4 binary64) (*.f64 (sqrt.f64 #s(literal -4 binary64)) (/.f64 #s(literal 1 binary64) (sqrt.f64 re))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (neg.f64 re) (fma.f64 (sqrt.f64 #s(literal -4 binary64)) (/.f64 #s(literal 1 binary64) (sqrt.f64 re)) (neg.f64 (/.f64 (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 im im) (sqrt.f64 (neg.f64 re))) (*.f64 (*.f64 (*.f64 (*.f64 im im) (*.f64 im im)) (sqrt.f64 (*.f64 #s(literal -1 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (*.f64 re re) re))))) #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 (sqrt.f64 #s(literal -4 binary64)) (/.f64 #s(literal 1 binary64) (sqrt.f64 re)) (neg.f64 (/.f64 (fma.f64 (*.f64 (*.f64 (*.f64 im im) (*.f64 im im)) (sqrt.f64 (*.f64 #s(literal -1 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (*.f64 re re) re))))) #s(literal -1/16 binary64) (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 im im) (sqrt.f64 (neg.f64 re))) (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 im im) (*.f64 im im)) (sqrt.f64 #s(literal -1/4 binary64))) (/.f64 #s(literal 1 binary64) (*.f64 (fabs.f64 re) (sqrt.f64 re)))) #s(literal 1/32 binary64)))) (*.f64 (*.f64 re re) 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))) (*.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 (+ (neg re) im) (*.f64 (neg.f64 re) (+.f64 (/.f64 (neg.f64 im) re) #s(literal 1 binary64))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 (fma.f64 (*.f64 (pow.f64 re #s(literal -5/2 binary64)) (*.f64 (*.f64 im im) #s(literal 2 binary64))) #s(literal -1/32 binary64) (*.f64 (*.f64 (/.f64 #s(literal 1 binary64) (sqrt.f64 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 (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 2 binary64)))) (sqrt.f64 #s(literal 2 binary64))) (*.f64 im im)) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 re)) (*.f64 (*.f64 (pow.f64 re #s(literal -5/2 binary64)) #s(literal 2 binary64)) #s(literal -1/32 binary64))) (*.f64 im im) (*.f64 (*.f64 (/.f64 #s(literal 1 binary64) (sqrt.f64 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 (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 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 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 (pow.f64 re #s(literal -5/2 binary64)) #s(literal 2 binary64)) #s(literal -1/32 binary64))) (*.f64 im im) (*.f64 (*.f64 (/.f64 #s(literal 1 binary64) (sqrt.f64 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))) (pow.f64 re #s(literal -5/2 binary64)) (*.f64 (/.f64 #s(literal 1 binary64) (sqrt.f64 re)) #s(literal 1 binary64))) im))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (fma.f64 (/.f64 #s(literal 1 binary64) (sqrt.f64 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 2 binary64)))) (sqrt.f64 #s(literal 2 binary64))) (*.f64 im im)) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 re)) (*.f64 (*.f64 (pow.f64 re #s(literal -5/2 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 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 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 (pow.f64 re #s(literal -5/2 binary64)) #s(literal 2 binary64)) #s(literal -1/16 binary64))) (*.f64 im im) (*.f64 (/.f64 #s(literal 1 binary64) (sqrt.f64 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 #s(literal 1/8 binary64) (*.f64 im im)) (pow.f64 re #s(literal 5 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 #s(literal 1/16 binary64) (*.f64 im im)) (pow.f64 re #s(literal 5 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 #s(literal 1/16 binary64) (*.f64 im im)) (pow.f64 re #s(literal 5 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 (* im im) (*.f64 im im))
#s(approx (+ (neg re) im) (-.f64 im re))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 (fma.f64 (*.f64 (/.f64 #s(literal 1 binary64) (*.f64 (fabs.f64 im) (sqrt.f64 im))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) #s(literal -1/4 binary64) (*.f64 (sqrt.f64 (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) im))) #s(literal 1/2 binary64))) im))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 (fma.f64 (*.f64 (/.f64 #s(literal 1 binary64) (*.f64 (fabs.f64 im) (sqrt.f64 im))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) #s(literal -1/4 binary64) (fma.f64 (*.f64 (*.f64 (*.f64 re re) (sqrt.f64 #s(literal 2 binary64))) (pow.f64 im #s(literal -5/2 binary64))) #s(literal 1/8 binary64) (*.f64 (sqrt.f64 (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) im))) #s(literal 1/2 binary64)))) im))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 (fma.f64 (*.f64 (/.f64 #s(literal 1 binary64) (*.f64 (fabs.f64 im) (sqrt.f64 im))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) #s(literal -1/4 binary64) (fma.f64 (*.f64 #s(literal -1/16 binary64) (pow.f64 im #s(literal -5/2 binary64))) (*.f64 (*.f64 re re) (sqrt.f64 #s(literal 2 binary64))) (fma.f64 (*.f64 (*.f64 (*.f64 re re) (sqrt.f64 #s(literal 2 binary64))) (pow.f64 im #s(literal -5/2 binary64))) #s(literal 1/8 binary64) (*.f64 (sqrt.f64 (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) im))) #s(literal 1/2 binary64))))) im))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 #s(literal 1 binary64) (*.f64 (fabs.f64 im) (sqrt.f64 im))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) (sqrt.f64 (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) im)))) im))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 im (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 #s(literal 1 binary64) (*.f64 (fabs.f64 im) (sqrt.f64 im))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) (fma.f64 (*.f64 #s(literal 1/4 binary64) (pow.f64 im #s(literal -5/2 binary64))) (*.f64 (*.f64 re re) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) im)))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 #s(literal 1 binary64) (*.f64 (fabs.f64 im) (sqrt.f64 im))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) (fma.f64 (*.f64 #s(literal -1/8 binary64) (pow.f64 im #s(literal -5/2 binary64))) (*.f64 (*.f64 re re) (sqrt.f64 #s(literal 2 binary64))) (fma.f64 (*.f64 #s(literal 1/4 binary64) (pow.f64 im #s(literal -5/2 binary64))) (*.f64 (*.f64 re re) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) im)))))) 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 (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 (sqrt.f64 (*.f64 #s(literal -2 binary64) im)) #s(literal -1/2 binary64)))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 (neg.f64 im) (fma.f64 (sqrt.f64 (*.f64 #s(literal -2 binary64) (/.f64 #s(literal 1 binary64) im))) #s(literal 1/2 binary64) (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -2 binary64)) re) (/.f64 #s(literal 1 binary64) (*.f64 (fabs.f64 im) (sqrt.f64 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 (*.f64 (sqrt.f64 #s(literal -2 binary64)) re) (/.f64 #s(literal 1 binary64) (*.f64 (fabs.f64 im) (sqrt.f64 im)))) #s(literal -1/4 binary64) (fma.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -2 binary64)) (*.f64 re re)) (pow.f64 im #s(literal -5/2 binary64))) #s(literal -1/8 binary64) (*.f64 (sqrt.f64 (*.f64 #s(literal -2 binary64) (/.f64 #s(literal 1 binary64) im))) #s(literal 1/2 binary64))))))
#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 (sqrt.f64 (*.f64 #s(literal -2 binary64) (/.f64 #s(literal 1 binary64) im))) #s(literal 1/2 binary64) (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -2 binary64)) re) (/.f64 #s(literal 1 binary64) (*.f64 (fabs.f64 im) (sqrt.f64 im)))) #s(literal -1/4 binary64))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (neg.f64 (sqrt.f64 (*.f64 #s(literal -2 binary64) 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) (/.f64 #s(literal 1 binary64) (*.f64 (fabs.f64 im) (sqrt.f64 im)))) #s(literal -1/2 binary64) (sqrt.f64 (*.f64 #s(literal -2 binary64) (/.f64 #s(literal 1 binary64) im))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (neg.f64 (*.f64 im (fma.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -2 binary64)) re) (/.f64 #s(literal 1 binary64) (*.f64 (fabs.f64 im) (sqrt.f64 im)))) #s(literal -1/2 binary64) (fma.f64 (*.f64 #s(literal -1/4 binary64) (pow.f64 im #s(literal -5/2 binary64))) (*.f64 (sqrt.f64 #s(literal -2 binary64)) (*.f64 re re)) (sqrt.f64 (*.f64 #s(literal -2 binary64) (/.f64 #s(literal 1 binary64) im))))))))
#s(approx (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/8 binary64)) (*.f64 (*.f64 im im) im))) (fma.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -2 binary64)) re) (/.f64 #s(literal 1 binary64) (*.f64 (fabs.f64 im) (sqrt.f64 im)))) #s(literal -1/2 binary64) (sqrt.f64 (*.f64 #s(literal -2 binary64) (/.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))))
#s(approx (+ (neg re) im) (*.f64 (neg.f64 im) (-.f64 (/.f64 re im) #s(literal 1 binary64))))

eval37.0ms (0.9%)

Memory
34.2MiB live, 78.5MiB allocated; 7ms collecting garbage
Compiler

Compiled 4 115 to 1 744 computations (57.6% saved)

prune22.0ms (0.6%)

Memory
-27.0MiB live, 22.3MiB allocated; 23ms collecting garbage
Pruning

9 alts after pruning (5 fresh and 4 done)

PrunedKeptTotal
New3013304
Fresh022
Picked145
Done000
Total3029311
Accuracy
99.9%
Counts
311 → 9
Alt Table
Click to see full alt table
StatusAccuracyProgram
50.4%
(*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (+.f64 (neg.f64 re) im))) (sqrt.f64 #s(literal 2 binary64))))
76.2%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 re im) re))))
50.7%
(*.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))))))
48.7%
(*.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)))))
20.6%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 im im) re))))
49.1%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (+.f64 im im))))
22.6%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 im (/.f64 im re)))))
24.3%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re))))
32.2%
#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)) (/.f64 #s(literal 1 binary64) (sqrt.f64 re))))
Compiler

Compiled 225 to 225 computations (0% saved)

series33.0ms (0.8%)

Memory
14.6MiB live, 60.0MiB allocated; 7ms collecting garbage
Counts
36 → 136
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(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 im (/.f64 im re)))))
(sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 im (/.f64 im re))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 im (/.f64 im re)))
(*.f64 im (/.f64 im re))
(/.f64 im re)
(*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (+.f64 (neg.f64 re) im))) (sqrt.f64 #s(literal 2 binary64))))
(*.f64 (sqrt.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (+.f64 (neg.f64 re) im))) (sqrt.f64 #s(literal 2 binary64)))
(sqrt.f64 #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)
(sqrt.f64 #s(literal 2 binary64))
#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)) (/.f64 #s(literal 1 binary64) (sqrt.f64 re))))
(*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1 binary64) im)) (/.f64 #s(literal 1 binary64) (sqrt.f64 re)))
(*.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1 binary64) im))
(*.f64 #s(literal 1 binary64) im)
#s(literal 1 binary64)
(/.f64 #s(literal 1 binary64) (sqrt.f64 re))
(sqrt.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 (* 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 (/ im re)) #s(hole binary64 (/ (pow im 2) re)))
#s(approx (/ im re) #s(hole binary64 (/ im re)))
#s(approx (sqrt (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (sqrt im)))
#s(approx (sqrt (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (+ (sqrt im) (* -1/2 (* (sqrt (/ 1 im)) re)))))
#s(approx (sqrt (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (+ (sqrt im) (* re (+ (* -1/2 (sqrt (/ 1 im))) (* 1/8 (* (sqrt (/ 1 (pow im 3))) re)))))))
#s(approx (sqrt (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (+ (sqrt im) (* re (+ (* -1/2 (sqrt (/ 1 im))) (* re (+ (* 1/16 (* (sqrt (/ 1 (pow im 5))) re)) (* 1/8 (sqrt (/ 1 (pow im 3)))))))))))
#s(approx (neg re) #s(hole binary64 (* -1 re)))
#s(approx (* (* 1/2 (* 1 im)) (/ 1 (sqrt re))) #s(hole binary64 (* 1/2 (* im (sqrt (/ 1 re))))))
#s(approx (/ 1 (sqrt re)) #s(hole binary64 (sqrt (/ 1 re))))
#s(approx (sqrt re) #s(hole binary64 (sqrt 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 (* 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 (+ (neg re) im) #s(hole binary64 (* re (- (/ im re) 1))))
#s(approx (sqrt (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* (* im (sqrt 1/2)) (sqrt (/ 1 re)))))
#s(approx (sqrt (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (+ (* -1/16 (* (/ (pow im 3) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* (* im (sqrt 1/2)) (sqrt (/ 1 re))))))
#s(approx (sqrt (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (+ (* -1/16 (* (/ (pow im 3) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* 1/32 (* (/ (pow im 5) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* (* im (sqrt 1/2)) (sqrt (/ 1 re)))))))
#s(approx (sqrt (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (+ (* -1/16 (* (/ (pow im 3) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* -1/512 (* (/ (pow im 5) (pow (sqrt 1/2) 3)) (sqrt (/ 1 (pow re 9))))) (+ (* 1/32 (* (/ (pow im 5) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* (* im (sqrt 1/2)) (sqrt (/ 1 re))))))))
#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 (* 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 (sqrt (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* -1 (* (sqrt re) (* (sqrt -1) (sqrt 2))))))
#s(approx (sqrt (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* -1 (* re (+ (* -1/4 (* (/ (* (pow im 2) (sqrt -1)) (sqrt 2)) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (* (sqrt -1) (sqrt 2))))))))
#s(approx (sqrt (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* -1 (* re (+ (* -1 (/ (+ (* -1/16 (* (/ (* (pow im 4) (sqrt -1)) (sqrt 2)) (sqrt (/ 1 (pow re 3))))) (* 1/4 (* (/ (* (pow im 2) (sqrt -1)) (sqrt 2)) (sqrt re)))) (pow re 3))) (* (sqrt (/ 1 re)) (* (sqrt -1) (sqrt 2))))))))
#s(approx (sqrt (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* -1 (* re (+ (* -1 (/ (+ (* -1/16 (* (/ (* (pow im 4) (sqrt -1)) (sqrt 2)) (sqrt (/ 1 (pow re 3))))) (+ (* 1/32 (* (/ (* (pow im 4) (sqrt -1)) (pow (sqrt 2) 3)) (sqrt (/ 1 (pow re 3))))) (* 1/4 (* (/ (* (pow im 2) (sqrt -1)) (sqrt 2)) (sqrt re))))) (pow re 3))) (* (sqrt (/ 1 re)) (* (sqrt -1) (sqrt 2))))))))
#s(approx (sqrt re) #s(hole binary64 (* -1 (* (sqrt re) (pow (sqrt -1) 2)))))
#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 (* 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 (sqrt (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* im (+ (* -1/16 (* (/ (pow im 2) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (sqrt 1/2))))))
#s(approx (sqrt (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* im (+ (* (sqrt (/ 1 re)) (sqrt 1/2)) (* (pow im 2) (+ (* -1/16 (* (sqrt (/ 1 (pow re 5))) (/ 1 (sqrt 1/2)))) (* 1/2 (* (/ (* (pow im 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 (+ (* re re) (* im im))) re)) #s(hole binary64 (* im (+ (* (sqrt (/ 1 re)) (sqrt 1/2)) (* (pow im 2) (+ (* -1/16 (* (sqrt (/ 1 (pow re 5))) (/ 1 (sqrt 1/2)))) (* (pow im 2) (+ (* -1/2 (* (/ (* (pow im 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) (/ (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2))))) (sqrt 1/2))))))))))))
#s(approx (* 1/2 (* 1 im)) #s(hole binary64 (* 1/2 im)))
#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 (* 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 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* im (+ (sqrt (/ 1 im)) (* -1/2 (* (sqrt (/ 1 (pow im 3))) re))))))
#s(approx (sqrt (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* im (+ (sqrt (/ 1 im)) (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) re)) (* 1/4 (* (sqrt (/ 1 (pow im 5))) (pow re 2))))))))
#s(approx (sqrt (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* im (+ (sqrt (/ 1 im)) (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) re)) (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (pow re 2))) (* 1/4 (* (sqrt (/ 1 (pow im 5))) (pow re 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 (+ (neg re) im) #s(hole binary64 (* -1 (* im (- (/ re im) 1)))))
#s(approx (sqrt (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* -1 (* (sqrt im) (sqrt -1)))))
#s(approx (sqrt (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* -1 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt -1)))) (* (sqrt (/ 1 im)) (sqrt -1)))))))
#s(approx (sqrt (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* -1 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt -1)))) (+ (* -1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt -1)))) (* (sqrt (/ 1 im)) (sqrt -1))))))))
#s(approx (sqrt (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* -1 (* im (+ (* -1 (/ (+ (* 1/8 (* (sqrt im) (* (pow re 2) (sqrt -1)))) (* 1/4 (* (sqrt im) (* (pow re 2) (sqrt -1))))) (pow im 3))) (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt -1)))) (* (sqrt (/ 1 im)) (sqrt -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
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) (+ (neg re) im) (- im re) im 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)) (* im (/ im re)) (/ im re) (* 1/2 (* (sqrt (- (sqrt (+ (* re re) (* im im))) re)) (sqrt 2))) (* (sqrt (- (sqrt (+ (* re re) (* im im))) re)) (sqrt 2)) (sqrt (- (sqrt (+ (* re re) (* im im))) re)) (- (sqrt (+ (* re re) (* im im))) re) (+ (neg re) im) (neg re) (sqrt 2) (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (* (* 1/2 (* 1 im)) (/ 1 (sqrt re))) (* 1/2 (* 1 im)) (* 1 im) 1 (/ 1 (sqrt re)) (sqrt 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))
5.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 (* 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 re) (* 1/2 (* (sqrt (- (sqrt (+ (* re re) (* im im))) re)) (sqrt 2))) (* (sqrt (- (sqrt (+ (* re re) (* im im))) re)) (sqrt 2)) (sqrt (- (sqrt (+ (* re re) (* im im))) re)) (- (sqrt (+ (* re re) (* im im))) re) (+ (neg re) im) (neg re) (sqrt 2) (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (* (* 1/2 (* 1 im)) (/ 1 (sqrt re))) (* 1/2 (* 1 im)) (* 1 im) 1 (/ 1 (sqrt re)) (sqrt 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))
5.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 (* 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 re) (* 1/2 (* (sqrt (- (sqrt (+ (* re re) (* im im))) re)) (sqrt 2))) (* (sqrt (- (sqrt (+ (* re re) (* im im))) re)) (sqrt 2)) (sqrt (- (sqrt (+ (* re re) (* im im))) re)) (- (sqrt (+ (* re re) (* im im))) re) (+ (neg re) im) (neg re) (sqrt 2) (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (* (* 1/2 (* 1 im)) (/ 1 (sqrt re))) (* 1/2 (* 1 im)) (* 1 im) 1 (/ 1 (sqrt re)) (sqrt 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
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 (* 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 re) (* 1/2 (* (sqrt (- (sqrt (+ (* re re) (* im im))) re)) (sqrt 2))) (* (sqrt (- (sqrt (+ (* re re) (* im im))) re)) (sqrt 2)) (sqrt (- (sqrt (+ (* re re) (* im im))) re)) (- (sqrt (+ (* re re) (* im im))) re) (+ (neg re) im) (neg re) (sqrt 2) (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (* (* 1/2 (* 1 im)) (/ 1 (sqrt re))) (* 1/2 (* 1 im)) (* 1 im) 1 (/ 1 (sqrt re)) (sqrt 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
((* 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 (* 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 re) (* 1/2 (* (sqrt (- (sqrt (+ (* re re) (* im im))) re)) (sqrt 2))) (* (sqrt (- (sqrt (+ (* re re) (* im im))) re)) (sqrt 2)) (sqrt (- (sqrt (+ (* re re) (* im im))) re)) (- (sqrt (+ (* re re) (* im im))) re) (+ (neg re) im) (neg re) (sqrt 2) (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (* (* 1/2 (* 1 im)) (/ 1 (sqrt re))) (* 1/2 (* 1 im)) (* 1 im) 1 (/ 1 (sqrt re)) (sqrt 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))

rewrite192.0ms (4.8%)

Memory
-32.2MiB live, 226.3MiB allocated; 66ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
08825737
09155046
051434261
Stop Event
iter-limit
iter-limit
node-limit
iter-limit
Counts
172 → 231
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(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 im (/.f64 im re)))))
(sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 im (/.f64 im re))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 im (/.f64 im re)))
(*.f64 im (/.f64 im re))
(/.f64 im re)
(*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (+.f64 (neg.f64 re) im))) (sqrt.f64 #s(literal 2 binary64))))
(*.f64 (sqrt.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (+.f64 (neg.f64 re) im))) (sqrt.f64 #s(literal 2 binary64)))
(sqrt.f64 #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)
(sqrt.f64 #s(literal 2 binary64))
#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)) (/.f64 #s(literal 1 binary64) (sqrt.f64 re))))
(*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1 binary64) im)) (/.f64 #s(literal 1 binary64) (sqrt.f64 re)))
(*.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1 binary64) im))
(*.f64 #s(literal 1 binary64) im)
#s(literal 1 binary64)
(/.f64 #s(literal 1 binary64) (sqrt.f64 re))
(sqrt.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 (* 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 (/ im re)) #s(hole binary64 (/ (pow im 2) re)))
#s(approx (/ im re) #s(hole binary64 (/ im re)))
#s(approx (sqrt (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (sqrt im)))
#s(approx (sqrt (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (+ (sqrt im) (* -1/2 (* (sqrt (/ 1 im)) re)))))
#s(approx (sqrt (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (+ (sqrt im) (* re (+ (* -1/2 (sqrt (/ 1 im))) (* 1/8 (* (sqrt (/ 1 (pow im 3))) re)))))))
#s(approx (sqrt (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (+ (sqrt im) (* re (+ (* -1/2 (sqrt (/ 1 im))) (* re (+ (* 1/16 (* (sqrt (/ 1 (pow im 5))) re)) (* 1/8 (sqrt (/ 1 (pow im 3)))))))))))
#s(approx (neg re) #s(hole binary64 (* -1 re)))
#s(approx (* (* 1/2 (* 1 im)) (/ 1 (sqrt re))) #s(hole binary64 (* 1/2 (* im (sqrt (/ 1 re))))))
#s(approx (/ 1 (sqrt re)) #s(hole binary64 (sqrt (/ 1 re))))
#s(approx (sqrt re) #s(hole binary64 (sqrt 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 (* 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 (+ (neg re) im) #s(hole binary64 (* re (- (/ im re) 1))))
#s(approx (sqrt (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* (* im (sqrt 1/2)) (sqrt (/ 1 re)))))
#s(approx (sqrt (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (+ (* -1/16 (* (/ (pow im 3) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* (* im (sqrt 1/2)) (sqrt (/ 1 re))))))
#s(approx (sqrt (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (+ (* -1/16 (* (/ (pow im 3) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* 1/32 (* (/ (pow im 5) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* (* im (sqrt 1/2)) (sqrt (/ 1 re)))))))
#s(approx (sqrt (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (+ (* -1/16 (* (/ (pow im 3) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* -1/512 (* (/ (pow im 5) (pow (sqrt 1/2) 3)) (sqrt (/ 1 (pow re 9))))) (+ (* 1/32 (* (/ (pow im 5) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* (* im (sqrt 1/2)) (sqrt (/ 1 re))))))))
#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 (* 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 (sqrt (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* -1 (* (sqrt re) (* (sqrt -1) (sqrt 2))))))
#s(approx (sqrt (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* -1 (* re (+ (* -1/4 (* (/ (* (pow im 2) (sqrt -1)) (sqrt 2)) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (* (sqrt -1) (sqrt 2))))))))
#s(approx (sqrt (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* -1 (* re (+ (* -1 (/ (+ (* -1/16 (* (/ (* (pow im 4) (sqrt -1)) (sqrt 2)) (sqrt (/ 1 (pow re 3))))) (* 1/4 (* (/ (* (pow im 2) (sqrt -1)) (sqrt 2)) (sqrt re)))) (pow re 3))) (* (sqrt (/ 1 re)) (* (sqrt -1) (sqrt 2))))))))
#s(approx (sqrt (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* -1 (* re (+ (* -1 (/ (+ (* -1/16 (* (/ (* (pow im 4) (sqrt -1)) (sqrt 2)) (sqrt (/ 1 (pow re 3))))) (+ (* 1/32 (* (/ (* (pow im 4) (sqrt -1)) (pow (sqrt 2) 3)) (sqrt (/ 1 (pow re 3))))) (* 1/4 (* (/ (* (pow im 2) (sqrt -1)) (sqrt 2)) (sqrt re))))) (pow re 3))) (* (sqrt (/ 1 re)) (* (sqrt -1) (sqrt 2))))))))
#s(approx (sqrt re) #s(hole binary64 (* -1 (* (sqrt re) (pow (sqrt -1) 2)))))
#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 (* 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 (sqrt (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* im (+ (* -1/16 (* (/ (pow im 2) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (sqrt 1/2))))))
#s(approx (sqrt (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* im (+ (* (sqrt (/ 1 re)) (sqrt 1/2)) (* (pow im 2) (+ (* -1/16 (* (sqrt (/ 1 (pow re 5))) (/ 1 (sqrt 1/2)))) (* 1/2 (* (/ (* (pow im 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 (+ (* re re) (* im im))) re)) #s(hole binary64 (* im (+ (* (sqrt (/ 1 re)) (sqrt 1/2)) (* (pow im 2) (+ (* -1/16 (* (sqrt (/ 1 (pow re 5))) (/ 1 (sqrt 1/2)))) (* (pow im 2) (+ (* -1/2 (* (/ (* (pow im 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) (/ (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2))))) (sqrt 1/2))))))))))))
#s(approx (* 1/2 (* 1 im)) #s(hole binary64 (* 1/2 im)))
#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 (* 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 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* im (+ (sqrt (/ 1 im)) (* -1/2 (* (sqrt (/ 1 (pow im 3))) re))))))
#s(approx (sqrt (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* im (+ (sqrt (/ 1 im)) (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) re)) (* 1/4 (* (sqrt (/ 1 (pow im 5))) (pow re 2))))))))
#s(approx (sqrt (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* im (+ (sqrt (/ 1 im)) (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) re)) (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (pow re 2))) (* 1/4 (* (sqrt (/ 1 (pow im 5))) (pow re 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 (+ (neg re) im) #s(hole binary64 (* -1 (* im (- (/ re im) 1)))))
#s(approx (sqrt (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* -1 (* (sqrt im) (sqrt -1)))))
#s(approx (sqrt (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* -1 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt -1)))) (* (sqrt (/ 1 im)) (sqrt -1)))))))
#s(approx (sqrt (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* -1 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt -1)))) (+ (* -1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt -1)))) (* (sqrt (/ 1 im)) (sqrt -1))))))))
#s(approx (sqrt (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* -1 (* im (+ (* -1 (/ (+ (* 1/8 (* (sqrt im) (* (pow re 2) (sqrt -1)))) (* 1/4 (* (sqrt im) (* (pow re 2) (sqrt -1))))) (pow im 3))) (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt -1)))) (* (sqrt (/ 1 im)) (sqrt -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 #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (+ (neg re) im) (-.f64 im re))) #s(literal 2 binary64))) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (+ (neg re) im) (-.f64 im re))) #s(literal 2 binary64))))
#s(literal 1/2 binary64)
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (+ (neg re) im) (-.f64 im re)))))
(pow.f64 (*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (+ (neg re) im) (-.f64 im re))) #s(literal 2 binary64)) #s(literal 1/2 binary64))
(sqrt.f64 (*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (+ (neg re) im) (-.f64 im re))) #s(literal 2 binary64)))
(*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (+ (neg re) im) (-.f64 im re))) #s(literal 2 binary64))
(*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (+ (neg re) im) (-.f64 im re))))
(+.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (+ (neg re) im) (-.f64 im re))) #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 (-.f64 (*.f64 im im) (*.f64 re re)) (+.f64 im re))
(/.f64 (-.f64 (*.f64 (*.f64 im im) im) (*.f64 (*.f64 re re) re)) (fma.f64 im im (fma.f64 re re (*.f64 im re))))
(-.f64 im re)
im
re
(*.f64 (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 im re) im))) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 im re) im))))
(pow.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 im re) im)) #s(literal 1/2 binary64))
(sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 im re) im)))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 im re) im))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 (neg.f64 (*.f64 im im)) (neg.f64 re))
(/.f64 (*.f64 im im) re)
(/.f64 (neg.f64 im) (neg.f64 re))
(/.f64 im re)
(*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (+.f64 (neg.f64 re) im)))) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 (sqrt.f64 (*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (+.f64 (neg.f64 re) im)) #s(literal 2 binary64))) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (+.f64 (neg.f64 re) im)) #s(literal 2 binary64))))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (+.f64 (neg.f64 re) im))))
(*.f64 (sqrt.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (+.f64 (neg.f64 re) im))) (sqrt.f64 #s(literal 2 binary64)))
(sqrt.f64 (*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (+.f64 (neg.f64 re) im)) #s(literal 2 binary64)))
(pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (+.f64 (neg.f64 re) im)) #s(literal 1/2 binary64))
(sqrt.f64 #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 (-.f64 (*.f64 re re) (*.f64 im im)) (-.f64 (neg.f64 re) im))
(/.f64 (-.f64 (*.f64 im im) (*.f64 re re)) (-.f64 im (neg.f64 re)))
(/.f64 (+.f64 (pow.f64 (neg.f64 re) #s(literal 3 binary64)) (*.f64 (*.f64 im im) im)) (fma.f64 re re (-.f64 (*.f64 im im) (*.f64 (neg.f64 re) im))))
(/.f64 (fma.f64 (*.f64 im im) im (pow.f64 (neg.f64 re) #s(literal 3 binary64))) (fma.f64 im im (-.f64 (*.f64 re re) (*.f64 im (neg.f64 re)))))
(fma.f64 #s(literal -1 binary64) re im)
(fma.f64 re #s(literal -1 binary64) im)
(-.f64 im (*.f64 #s(literal 1 binary64) re))
(+.f64 (neg.f64 re) im)
(+.f64 im (neg.f64 re))
(*.f64 #s(literal -1 binary64) re)
(*.f64 re #s(literal -1 binary64))
(neg.f64 re)
(pow.f64 #s(literal 2 binary64) #s(literal 1/2 binary64))
(sqrt.f64 #s(literal 2 binary64))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 (*.f64 (/.f64 #s(literal 1 binary64) (sqrt.f64 re)) im) #s(literal 1/2 binary64)))
(*.f64 (*.f64 (/.f64 #s(literal 1 binary64) (sqrt.f64 re)) im) #s(literal 1/2 binary64))
(*.f64 (/.f64 #s(literal 1 binary64) (sqrt.f64 re)) (*.f64 im #s(literal 1/2 binary64)))
(*.f64 (*.f64 im #s(literal 1/2 binary64)) (/.f64 #s(literal 1 binary64) (sqrt.f64 re)))
(*.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 #s(literal 1 binary64) (sqrt.f64 re)) im))
(/.f64 (*.f64 (*.f64 im #s(literal 1/2 binary64)) #s(literal 1 binary64)) (sqrt.f64 re))
(*.f64 im #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) im)
im
#s(literal 1 binary64)
(pow.f64 (/.f64 #s(literal 1 binary64) re) #s(literal 1/2 binary64))
(pow.f64 (sqrt.f64 re) #s(literal -1 binary64))
(/.f64 #s(literal -1 binary64) (neg.f64 (sqrt.f64 re)))
(/.f64 #s(literal 1 binary64) (sqrt.f64 re))
(sqrt.f64 (/.f64 #s(literal 1 binary64) re))
(pow.f64 re #s(literal 1/2 binary64))
(sqrt.f64 re)
(*.f64 (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(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)))))
(pow.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(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 (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (+.f64 im im)))
(/.f64 (-.f64 (*.f64 (+.f64 im im) (+.f64 im im)) (*.f64 (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re) (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re))) (-.f64 (+.f64 im im) (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re)))
(/.f64 (-.f64 (*.f64 (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re) (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re)) (*.f64 (+.f64 im im) (+.f64 im im))) (-.f64 (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re) (+.f64 im im)))
(/.f64 (+.f64 (pow.f64 (+.f64 im im) #s(literal 3 binary64)) (pow.f64 (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re) #s(literal 3 binary64))) (fma.f64 (+.f64 im im) (+.f64 im im) (-.f64 (*.f64 (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re) (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re)) (*.f64 (+.f64 im im) (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re)))))
(/.f64 (+.f64 (pow.f64 (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re) #s(literal 3 binary64)) (pow.f64 (+.f64 im im) #s(literal 3 binary64))) (fma.f64 (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re) (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re) (-.f64 (*.f64 (+.f64 im im) (+.f64 im im)) (*.f64 (*.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))
(fma.f64 im #s(literal 2 binary64) (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re))
(fma.f64 re (-.f64 (/.f64 re im) #s(literal 2 binary64)) (+.f64 im im))
(fma.f64 #s(literal 2 binary64) im (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re))
(-.f64 (+.f64 im im) (*.f64 (neg.f64 re) (-.f64 (/.f64 re im) #s(literal 2 binary64))))
(+.f64 (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re im) im)
(+.f64 (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re) (+.f64 im im))
(+.f64 (+.f64 im im) (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re))
(/.f64 (-.f64 (*.f64 (/.f64 re im) (/.f64 re im)) #s(literal 4 binary64)) (+.f64 (/.f64 re im) #s(literal 2 binary64)))
(/.f64 (-.f64 (pow.f64 (/.f64 re im) #s(literal 3 binary64)) #s(literal 8 binary64)) (fma.f64 (/.f64 re im) (/.f64 re im) (+.f64 #s(literal 4 binary64) (*.f64 (/.f64 re im) #s(literal 2 binary64)))))
(-.f64 (/.f64 re im) #s(literal 2 binary64))
(/.f64 (neg.f64 re) (neg.f64 im))
(/.f64 re im)
(*.f64 im #s(literal 2 binary64))
(*.f64 #s(literal 2 binary64) im)
(/.f64 (-.f64 (*.f64 im im) (*.f64 im im)) (-.f64 im im))
(/.f64 (fma.f64 (*.f64 im im) im (*.f64 (*.f64 im im) im)) (fma.f64 im im (-.f64 (*.f64 im im) (*.f64 im im))))
(+.f64 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) (/.f64 #s(literal 1 binary64) (sqrt.f64 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) (/.f64 #s(literal 1 binary64) (sqrt.f64 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 (-.f64 (*.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 (-.f64 (*.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 (-.f64 (*.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 re re)
#s(approx (* im (/ im re)) (*.f64 (/.f64 im re) im))
#s(approx (/ im re) (/.f64 im re))
#s(approx (sqrt (- (sqrt (+ (* re re) (* im im))) re)) (sqrt.f64 im))
#s(approx (sqrt (- (sqrt (+ (* re re) (* im im))) re)) (fma.f64 (*.f64 (/.f64 #s(literal 1 binary64) (sqrt.f64 im)) re) #s(literal -1/2 binary64) (sqrt.f64 im)))
#s(approx (sqrt (- (sqrt (+ (* re re) (* im im))) re)) (fma.f64 (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (*.f64 (*.f64 im im) im))) re) #s(literal 1/8 binary64) (*.f64 #s(literal -1/2 binary64) (/.f64 #s(literal 1 binary64) (sqrt.f64 im)))) re (sqrt.f64 im)))
#s(approx (sqrt (- (sqrt (+ (* re re) (* im im))) re)) (fma.f64 (fma.f64 (fma.f64 (*.f64 (sqrt.f64 (pow.f64 im #s(literal -5 binary64))) re) #s(literal 1/16 binary64) (*.f64 #s(literal 1/8 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (*.f64 (*.f64 im im) im))))) re (*.f64 #s(literal -1/2 binary64) (/.f64 #s(literal 1 binary64) (sqrt.f64 im)))) re (sqrt.f64 im)))
#s(approx (neg re) (neg.f64 re))
#s(approx (* (* 1/2 (* 1 im)) (/ 1 (sqrt re))) (*.f64 (*.f64 (/.f64 #s(literal 1 binary64) (sqrt.f64 re)) im) #s(literal 1/2 binary64)))
#s(approx (/ 1 (sqrt re)) (/.f64 #s(literal 1 binary64) (sqrt.f64 re)))
#s(approx (sqrt re) (sqrt.f64 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 (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 (*.f64 (/.f64 #s(literal 1 binary64) (sqrt.f64 re)) im) #s(literal 1/2 binary64)))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (fma.f64 (*.f64 (*.f64 (*.f64 (*.f64 im im) im) #s(literal 2 binary64)) (sqrt.f64 (pow.f64 re #s(literal -5 binary64)))) #s(literal -1/32 binary64) (*.f64 (*.f64 (/.f64 #s(literal 1 binary64) (sqrt.f64 re)) im) #s(literal 1/2 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)) #s(literal 2 binary64)) (sqrt.f64 (pow.f64 re #s(literal -9 binary64)))) #s(literal 1/64 binary64) (*.f64 (*.f64 (/.f64 #s(literal 1 binary64) (sqrt.f64 re)) im) #s(literal 1/2 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 (*.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) (*.f64 (*.f64 (/.f64 #s(literal 1 binary64) (sqrt.f64 re)) im) #s(literal 1/2 binary64))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (/.f64 #s(literal 1 binary64) (sqrt.f64 re)) im))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (fma.f64 #s(literal -1/16 binary64) (*.f64 (*.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) (sqrt.f64 re)) im)))
#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 (*.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) (*.f64 (/.f64 #s(literal 1 binary64) (sqrt.f64 re)) im))))
#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 (*.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) (*.f64 (/.f64 #s(literal 1 binary64) (sqrt.f64 re)) im)))))
#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) im) (*.f64 (*.f64 im 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) im) (*.f64 (*.f64 im 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 re) im) #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) im) (*.f64 (*.f64 im 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) im) (*.f64 (*.f64 im 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 (+ (neg re) im) (*.f64 (-.f64 (/.f64 im re) #s(literal 1 binary64)) re))
#s(approx (sqrt (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 im (sqrt.f64 (/.f64 #s(literal 1/2 binary64) re))))
#s(approx (sqrt (- (sqrt (+ (* re re) (* im im))) re)) (fma.f64 (*.f64 (/.f64 (*.f64 (*.f64 im im) im) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 (pow.f64 re #s(literal -5 binary64)))) #s(literal -1/16 binary64) (*.f64 im (sqrt.f64 (/.f64 #s(literal 1/2 binary64) re)))))
#s(approx (sqrt (- (sqrt (+ (* re re) (* im im))) re)) (fma.f64 (*.f64 (/.f64 (*.f64 (*.f64 im im) im) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 (pow.f64 re #s(literal -5 binary64)))) #s(literal -1/16 binary64) (fma.f64 (*.f64 (/.f64 (pow.f64 im #s(literal 5 binary64)) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 (pow.f64 re #s(literal -9 binary64)))) #s(literal 1/32 binary64) (*.f64 im (sqrt.f64 (/.f64 #s(literal 1/2 binary64) re))))))
#s(approx (sqrt (- (sqrt (+ (* re re) (* im im))) re)) (fma.f64 (*.f64 (/.f64 (*.f64 (*.f64 im im) im) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 (pow.f64 re #s(literal -5 binary64)))) #s(literal -1/16 binary64) (fma.f64 (*.f64 (/.f64 (pow.f64 im #s(literal 5 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/512 binary64) (fma.f64 (*.f64 (/.f64 (pow.f64 im #s(literal 5 binary64)) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 (pow.f64 re #s(literal -9 binary64)))) #s(literal 1/32 binary64) (*.f64 im (sqrt.f64 (/.f64 #s(literal 1/2 binary64) re)))))))
#s(approx (+ (* (- (/ re im) 2) re) (+ im im)) (/.f64 (*.f64 re re) im))
#s(approx (+ (* (- (/ re im) 2) re) (+ im im)) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) im) (/.f64 #s(literal 2 binary64) re)) (*.f64 re re)))
#s(approx (+ (* (- (/ re im) 2) re) (+ im im)) (*.f64 (-.f64 (fma.f64 (/.f64 im (*.f64 re re)) #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) im)) (/.f64 #s(literal 2 binary64) re)) (*.f64 re re)))
#s(approx (- (/ re im) 2) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) im) (/.f64 #s(literal 2 binary64) 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 (*.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 2 binary64)) (/.f64 #s(literal 1 binary64) (sqrt.f64 re))) #s(literal 1/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) (/.f64 #s(literal 1 binary64) (sqrt.f64 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 (*.f64 (*.f64 im im) (*.f64 im im)) (*.f64 (sqrt.f64 #s(literal -1 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 (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 (neg.f64 re) (fma.f64 (*.f64 #s(literal 1/2 binary64) (/.f64 #s(literal 1 binary64) (sqrt.f64 re))) (*.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 2 binary64)) (neg.f64 (/.f64 (fma.f64 (*.f64 (*.f64 (*.f64 im im) (*.f64 im im)) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (*.f64 (*.f64 re re) re))))) #s(literal -1/32 binary64) (fma.f64 (*.f64 (*.f64 (*.f64 (*.f64 im im) (*.f64 im im)) (/.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 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 (/.f64 #s(literal 1 binary64) (sqrt.f64 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 (/.f64 #s(literal 1 binary64) (sqrt.f64 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 (*.f64 (*.f64 im im) (*.f64 im im)) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (*.f64 (*.f64 re re) re))))) #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 (/.f64 #s(literal 1 binary64) (sqrt.f64 re)) (sqrt.f64 #s(literal -1 binary64))) #s(literal 2 binary64) (neg.f64 (/.f64 (fma.f64 (*.f64 (*.f64 (*.f64 im im) (*.f64 im im)) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (*.f64 (*.f64 re re) re))))) #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 (*.f64 im im) (*.f64 im im)) (/.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 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 (/.f64 (*.f64 (*.f64 (*.f64 im im) im) (*.f64 (*.f64 im im) im)) (*.f64 (*.f64 (*.f64 re re) re) (*.f64 (*.f64 re re) re))) #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 (/.f64 (*.f64 (*.f64 (*.f64 im im) im) (*.f64 (*.f64 im im) im)) (*.f64 (*.f64 (*.f64 re re) re) (*.f64 (*.f64 re re) re))) #s(literal 1/16 binary64) (/.f64 (*.f64 (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 re re)))) #s(literal 2 binary64))))
#s(approx (+ (neg re) im) (*.f64 (neg.f64 re) (+.f64 (/.f64 (neg.f64 im) re) #s(literal 1 binary64))))
#s(approx (sqrt (- (sqrt (+ (* re re) (* im im))) re)) (neg.f64 (*.f64 (sqrt.f64 #s(literal -2 binary64)) (sqrt.f64 re))))
#s(approx (sqrt (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (neg.f64 re) (fma.f64 (*.f64 (/.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (*.f64 im im)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (pow.f64 re #s(literal -5 binary64)))) #s(literal -1/4 binary64) (*.f64 (sqrt.f64 #s(literal -2 binary64)) (/.f64 #s(literal 1 binary64) (sqrt.f64 re))))))
#s(approx (sqrt (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (neg.f64 re) (fma.f64 (sqrt.f64 #s(literal -2 binary64)) (/.f64 #s(literal 1 binary64) (sqrt.f64 re)) (neg.f64 (/.f64 (fma.f64 (*.f64 (/.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (*.f64 im im)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 re)) #s(literal 1/4 binary64) (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 im im) (*.f64 im im)) (/.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (*.f64 (*.f64 re re) re)))) #s(literal -1/16 binary64))) (*.f64 (*.f64 re re) re))))))
#s(approx (sqrt (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (neg.f64 re) (fma.f64 (sqrt.f64 #s(literal -2 binary64)) (/.f64 #s(literal 1 binary64) (sqrt.f64 re)) (neg.f64 (/.f64 (fma.f64 (*.f64 (*.f64 (*.f64 (*.f64 im im) (*.f64 im im)) (/.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (*.f64 (*.f64 re re) re)))) #s(literal -1/16 binary64) (fma.f64 (*.f64 (*.f64 (*.f64 (*.f64 im im) (*.f64 im im)) (/.f64 (sqrt.f64 #s(literal -1 binary64)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (*.f64 (*.f64 re re) re)))) #s(literal 1/32 binary64) (*.f64 (*.f64 (/.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (*.f64 im im)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 re)) #s(literal 1/4 binary64)))) (*.f64 (*.f64 re re) re))))))
#s(approx (sqrt re) (neg.f64 (*.f64 (sqrt.f64 re) #s(literal -1 binary64))))
#s(approx (+ (* (- (/ re im) 2) re) (+ im im)) (*.f64 (+.f64 (neg.f64 (/.f64 (fma.f64 (/.f64 im re) #s(literal -2 binary64) #s(literal 2 binary64)) re)) (/.f64 #s(literal 1 binary64) im)) (*.f64 re re)))
#s(approx (- (/ re im) 2) (*.f64 (neg.f64 re) (-.f64 (/.f64 #s(literal 2 binary64) re) (/.f64 #s(literal 1 binary64) im))))
#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 (/.f64 #s(literal 1 binary64) (sqrt.f64 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 #s(literal 1/2 binary64) (/.f64 #s(literal 1 binary64) (sqrt.f64 re))) #s(literal 1 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 (/.f64 #s(literal 1 binary64) (sqrt.f64 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 (/.f64 #s(literal 1 binary64) (sqrt.f64 re)) #s(literal 1 binary64))) im))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (fma.f64 (/.f64 #s(literal 1 binary64) (sqrt.f64 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 (/.f64 #s(literal 1 binary64) (sqrt.f64 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 #s(literal 1/8 binary64) (*.f64 im im)) (pow.f64 re #s(literal 5 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 #s(literal 1/16 binary64) (*.f64 im im)) (pow.f64 re #s(literal 5 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 (+ (neg re) im) (-.f64 im re))
#s(approx (sqrt (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (fma.f64 (*.f64 (/.f64 (*.f64 im im) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 (pow.f64 re #s(literal -5 binary64)))) #s(literal -1/16 binary64) (sqrt.f64 (/.f64 #s(literal 1/2 binary64) re))) im))
#s(approx (sqrt (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -1/16 binary64) (sqrt.f64 (pow.f64 re #s(literal -5 binary64)))) (/.f64 #s(literal 1 binary64) (sqrt.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)))) (*.f64 im im)) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 re)) #s(literal 1/2 binary64))) (*.f64 im im) (sqrt.f64 (/.f64 #s(literal 1/2 binary64) re))) im))
#s(approx (sqrt (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 re)) (/.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 1/2 binary64))) (*.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))) (*.f64 im im)) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 re)) #s(literal -1/2 binary64))) (*.f64 im im) (*.f64 (*.f64 #s(literal -1/16 binary64) (sqrt.f64 (pow.f64 re #s(literal -5 binary64)))) (/.f64 #s(literal 1 binary64) (sqrt.f64 #s(literal 1/2 binary64))))) (*.f64 im im) (sqrt.f64 (/.f64 #s(literal 1/2 binary64) re))) im))
#s(approx (* 1/2 (* 1 im)) (*.f64 im #s(literal 1/2 binary64)))
#s(approx (+ (* (- (/ re im) 2) re) (+ im im)) (/.f64 (fma.f64 (*.f64 im re) #s(literal -2 binary64) (*.f64 re re)) im))
#s(approx (+ (* (- (/ re im) 2) re) (+ im im)) (/.f64 (fma.f64 (fma.f64 #s(literal -2 binary64) re (+.f64 im im)) im (*.f64 re re)) im))
#s(approx (- (/ re im) 2) (/.f64 (fma.f64 #s(literal -2 binary64) im re) 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) (*.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 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (*.f64 (*.f64 im im) im))) re) #s(literal -1/2 binary64) (/.f64 #s(literal 1 binary64) (sqrt.f64 im))) im))
#s(approx (sqrt (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (+.f64 (fma.f64 (*.f64 (*.f64 re re) (sqrt.f64 (pow.f64 im #s(literal -5 binary64)))) #s(literal 1/4 binary64) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (*.f64 (*.f64 im im) im))) re) #s(literal -1/2 binary64))) (/.f64 #s(literal 1 binary64) (sqrt.f64 im))) im))
#s(approx (sqrt (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (+.f64 (fma.f64 (*.f64 (*.f64 re re) (sqrt.f64 (pow.f64 im #s(literal -5 binary64)))) #s(literal 1/8 binary64) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (*.f64 (*.f64 im im) im))) re) #s(literal -1/2 binary64))) (/.f64 #s(literal 1 binary64) (sqrt.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) (/.f64 #s(literal 1 binary64) (sqrt.f64 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) (/.f64 #s(literal 1 binary64) (sqrt.f64 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) (/.f64 #s(literal 1 binary64) (sqrt.f64 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)) (/.f64 #s(literal 1 binary64) (sqrt.f64 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)) (/.f64 #s(literal 1 binary64) (sqrt.f64 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)) (/.f64 #s(literal 1 binary64) (sqrt.f64 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 (+ (neg re) im) (*.f64 (neg.f64 im) (-.f64 (/.f64 re im) #s(literal 1 binary64))))
#s(approx (sqrt (- (sqrt (+ (* re re) (* im im))) re)) (neg.f64 (sqrt.f64 (neg.f64 im))))
#s(approx (sqrt (- (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 -1 binary64)) re) (sqrt.f64 (*.f64 (/.f64 #s(literal 1 binary64) im) #s(literal -1 binary64))))))
#s(approx (sqrt (- (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 -1 binary64)) re) (fma.f64 (*.f64 #s(literal -1/4 binary64) (sqrt.f64 (pow.f64 im #s(literal -5 binary64)))) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (*.f64 re re)) (sqrt.f64 (*.f64 (/.f64 #s(literal 1 binary64) im) #s(literal -1 binary64)))))))
#s(approx (sqrt (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (neg.f64 im) (+.f64 (neg.f64 (/.f64 (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (*.f64 re re)) (sqrt.f64 im)) #s(literal 3/8 binary64)) (*.f64 (*.f64 im im) 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 -1 binary64)) re) (sqrt.f64 (*.f64 (/.f64 #s(literal 1 binary64) im) #s(literal -1 binary64)))))))
#s(approx (+ (* (- (/ re im) 2) re) (+ im im)) (*.f64 (neg.f64 im) (-.f64 (*.f64 (/.f64 re im) #s(literal 2 binary64)) #s(literal 2 binary64))))
#s(approx (+ (* (- (/ re im) 2) re) (+ im im)) (*.f64 (neg.f64 im) (-.f64 (neg.f64 (/.f64 (fma.f64 #s(literal -2 binary64) re (/.f64 (*.f64 re re) im)) im)) #s(literal 2 binary64))))

eval25.0ms (0.6%)

Memory
12.9MiB live, 57.7MiB allocated; 5ms collecting garbage
Compiler

Compiled 3 540 to 1 276 computations (64% saved)

prune9.0ms (0.2%)

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

12 alts after pruning (7 fresh and 5 done)

PrunedKeptTotal
New1947201
Fresh000
Picked325
Done134
Total19812210
Accuracy
100.0%
Counts
210 → 12
Alt Table
Click to see full alt table
StatusAccuracyProgram
48.7%
(*.f64 (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(literal 1/2 binary64))
50.4%
(*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (+ (neg re) im) (-.f64 im re))))))
32.1%
(*.f64 #s(literal 1/2 binary64) (*.f64 #s(approx (sqrt (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 im (sqrt.f64 (/.f64 #s(literal 1/2 binary64) re)))) (sqrt.f64 #s(literal 2 binary64))))
48.8%
(*.f64 #s(literal 1/2 binary64) (*.f64 #s(approx (sqrt (- (sqrt (+ (* re re) (* im im))) re)) (sqrt.f64 im)) (sqrt.f64 #s(literal 2 binary64))))
76.2%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 re im) re))))
50.7%
(*.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))))))
49.1%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (+.f64 im im))))
22.6%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 im (/.f64 im re)))))
24.3%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re))))
32.2%
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (/.f64 (*.f64 (*.f64 im #s(literal 1/2 binary64)) #s(literal 1 binary64)) (sqrt.f64 re)))
32.2%
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 (/.f64 #s(literal 1 binary64) (sqrt.f64 re)) (*.f64 im #s(literal 1/2 binary64))))
32.2%
#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 322 to 322 computations (0% saved)

series22.0ms (0.6%)

Memory
-12.4MiB live, 42.4MiB allocated; 7ms collecting garbage
Counts
30 → 103
Calls
Call 1
Inputs
(*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (+ (neg re) im) (-.f64 im re))))))
#s(literal 1/2 binary64)
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (+ (neg re) im) (-.f64 im re)))))
(sqrt.f64 #s(literal 2 binary64))
#s(literal 2 binary64)
(sqrt.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (+ (neg re) im) (-.f64 im re))))
#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(literal 1/2 binary64) (*.f64 #s(approx (sqrt (- (sqrt (+ (* re re) (* im im))) re)) (sqrt.f64 im)) (sqrt.f64 #s(literal 2 binary64))))
(*.f64 #s(approx (sqrt (- (sqrt (+ (* re re) (* im im))) re)) (sqrt.f64 im)) (sqrt.f64 #s(literal 2 binary64)))
#s(approx (sqrt (- (sqrt (+ (* re re) (* im im))) re)) (sqrt.f64 im))
(sqrt.f64 im)
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 (/.f64 #s(literal 1 binary64) (sqrt.f64 re)) (*.f64 im #s(literal 1/2 binary64))))
(*.f64 (/.f64 #s(literal 1 binary64) (sqrt.f64 re)) (*.f64 im #s(literal 1/2 binary64)))
(/.f64 #s(literal 1 binary64) (sqrt.f64 re))
#s(literal 1 binary64)
(sqrt.f64 re)
(*.f64 im #s(literal 1/2 binary64))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (/.f64 (*.f64 (*.f64 im #s(literal 1/2 binary64)) #s(literal 1 binary64)) (sqrt.f64 re)))
(/.f64 (*.f64 (*.f64 im #s(literal 1/2 binary64)) #s(literal 1 binary64)) (sqrt.f64 re))
(*.f64 (*.f64 im #s(literal 1/2 binary64)) #s(literal 1 binary64))
#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)
(sqrt.f64 (/.f64 #s(literal 1 binary64) re))
(/.f64 #s(literal 1 binary64) re)
Outputs
#s(approx (* 1/2 (* (sqrt 2) (sqrt (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* 1/2 (* (sqrt im) (sqrt 2)))))
#s(approx (* 1/2 (* (sqrt 2) (sqrt (- (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 (- (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 (- (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 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* (sqrt im) (sqrt 2))))
#s(approx (* (sqrt 2) (sqrt (- (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 (- (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 (- (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 (sqrt (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (sqrt im)))
#s(approx (sqrt (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (+ (sqrt im) (* -1/2 (* (sqrt (/ 1 im)) re)))))
#s(approx (sqrt (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (+ (sqrt im) (* re (+ (* -1/2 (sqrt (/ 1 im))) (* 1/8 (* (sqrt (/ 1 (pow im 3))) re)))))))
#s(approx (sqrt (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (+ (sqrt im) (* re (+ (* -1/2 (sqrt (/ 1 im))) (* re (+ (* 1/16 (* (sqrt (/ 1 (pow im 5))) re)) (* 1/8 (sqrt (/ 1 (pow im 3)))))))))))
#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 (* (/ 1 (sqrt re)) (* im 1/2)) #s(hole binary64 (* 1/2 (* im (sqrt (/ 1 re))))))
#s(approx (/ 1 (sqrt re)) #s(hole binary64 (sqrt (/ 1 re))))
#s(approx (sqrt re) #s(hole binary64 (sqrt re)))
#s(approx (/ 1 re) #s(hole binary64 (/ 1 re)))
#s(approx (* 1/2 (* (sqrt 2) (sqrt (- (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 (- (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 (- (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 (- (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 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re)))))
#s(approx (* (sqrt 2) (sqrt (- (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 (- (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 (- (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 (sqrt (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* (* im (sqrt 1/2)) (sqrt (/ 1 re)))))
#s(approx (sqrt (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (+ (* -1/16 (* (/ (pow im 3) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* (* im (sqrt 1/2)) (sqrt (/ 1 re))))))
#s(approx (sqrt (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (+ (* -1/16 (* (/ (pow im 3) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* 1/32 (* (/ (pow im 5) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* (* im (sqrt 1/2)) (sqrt (/ 1 re)))))))
#s(approx (sqrt (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (+ (* -1/16 (* (/ (pow im 3) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* -1/512 (* (/ (pow im 5) (pow (sqrt 1/2) 3)) (sqrt (/ 1 (pow re 9))))) (+ (* 1/32 (* (/ (pow im 5) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* (* im (sqrt 1/2)) (sqrt (/ 1 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 2) (sqrt (- (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 (- (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 (- (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 (- (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 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* -1 (* (sqrt re) (* (sqrt -1) (pow (sqrt 2) 2))))))
#s(approx (* (sqrt 2) (sqrt (- (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 (- (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 (- (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 (sqrt (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* -1 (* (sqrt re) (* (sqrt -1) (sqrt 2))))))
#s(approx (sqrt (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* -1 (* re (+ (* -1/4 (* (/ (* (pow im 2) (sqrt -1)) (sqrt 2)) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (* (sqrt -1) (sqrt 2))))))))
#s(approx (sqrt (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* -1 (* re (+ (* -1 (/ (+ (* -1/16 (* (/ (* (pow im 4) (sqrt -1)) (sqrt 2)) (sqrt (/ 1 (pow re 3))))) (* 1/4 (* (/ (* (pow im 2) (sqrt -1)) (sqrt 2)) (sqrt re)))) (pow re 3))) (* (sqrt (/ 1 re)) (* (sqrt -1) (sqrt 2))))))))
#s(approx (sqrt (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* -1 (* re (+ (* -1 (/ (+ (* -1/16 (* (/ (* (pow im 4) (sqrt -1)) (sqrt 2)) (sqrt (/ 1 (pow re 3))))) (+ (* 1/32 (* (/ (* (pow im 4) (sqrt -1)) (pow (sqrt 2) 3)) (sqrt (/ 1 (pow re 3))))) (* 1/4 (* (/ (* (pow im 2) (sqrt -1)) (sqrt 2)) (sqrt re))))) (pow re 3))) (* (sqrt (/ 1 re)) (* (sqrt -1) (sqrt 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 (sqrt re) #s(hole binary64 (* -1 (* (sqrt re) (pow (sqrt -1) 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 (- (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 (- (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 (- (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 (- (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 (- (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 (- (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 (sqrt (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* im (+ (* -1/16 (* (/ (pow im 2) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (sqrt 1/2))))))
#s(approx (sqrt (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* im (+ (* (sqrt (/ 1 re)) (sqrt 1/2)) (* (pow im 2) (+ (* -1/16 (* (sqrt (/ 1 (pow re 5))) (/ 1 (sqrt 1/2)))) (* 1/2 (* (/ (* (pow im 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 (+ (* re re) (* im im))) re)) #s(hole binary64 (* im (+ (* (sqrt (/ 1 re)) (sqrt 1/2)) (* (pow im 2) (+ (* -1/16 (* (sqrt (/ 1 (pow re 5))) (/ 1 (sqrt 1/2)))) (* (pow im 2) (+ (* -1/2 (* (/ (* (pow im 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) (/ (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2))))) (sqrt 1/2))))))))))))
#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 1/2) #s(hole binary64 (* 1/2 im)))
#s(approx (* 1/2 (* (sqrt 2) (sqrt (- (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 (- (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 (- (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 (- (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 (- (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 (- (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 (sqrt (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* im (+ (sqrt (/ 1 im)) (* -1/2 (* (sqrt (/ 1 (pow im 3))) re))))))
#s(approx (sqrt (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* im (+ (sqrt (/ 1 im)) (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) re)) (* 1/4 (* (sqrt (/ 1 (pow im 5))) (pow re 2))))))))
#s(approx (sqrt (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* im (+ (sqrt (/ 1 im)) (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) re)) (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (pow re 2))) (* 1/4 (* (sqrt (/ 1 (pow im 5))) (pow re 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 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* -1/2 (* (sqrt im) (* (sqrt -1) (sqrt 2))))))
#s(approx (* 1/2 (* (sqrt 2) (sqrt (- (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 (- (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 (- (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 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* -1 (* (sqrt im) (* (sqrt -1) (sqrt 2))))))
#s(approx (* (sqrt 2) (sqrt (- (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 (- (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 (- (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 (sqrt (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* -1 (* (sqrt im) (sqrt -1)))))
#s(approx (sqrt (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* -1 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt -1)))) (* (sqrt (/ 1 im)) (sqrt -1)))))))
#s(approx (sqrt (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* -1 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt -1)))) (+ (* -1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt -1)))) (* (sqrt (/ 1 im)) (sqrt -1))))))))
#s(approx (sqrt (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* -1 (* im (+ (* -1 (/ (+ (* 1/8 (* (sqrt im) (* (pow re 2) (sqrt -1)))) (* 1/4 (* (sqrt im) (* (pow re 2) (sqrt -1))))) (pow im 3))) (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt -1)))) (* (sqrt (/ 1 im)) (sqrt -1))))))))
#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 (sqrt im) #s(hole binary64 (* -1 (* (sqrt im) (pow (sqrt -1) 2)))))
Calls

6 calls:

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

rewrite165.0ms (4.1%)

Memory
10.9MiB live, 197.9MiB allocated; 17ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
07254759
07514024
041413401
Stop Event
iter-limit
iter-limit
node-limit
iter-limit
Counts
133 → 180
Calls
Call 1
Inputs
(*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (+ (neg re) im) (-.f64 im re))))))
#s(literal 1/2 binary64)
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (+ (neg re) im) (-.f64 im re)))))
(sqrt.f64 #s(literal 2 binary64))
#s(literal 2 binary64)
(sqrt.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (+ (neg re) im) (-.f64 im re))))
#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(literal 1/2 binary64) (*.f64 #s(approx (sqrt (- (sqrt (+ (* re re) (* im im))) re)) (sqrt.f64 im)) (sqrt.f64 #s(literal 2 binary64))))
(*.f64 #s(approx (sqrt (- (sqrt (+ (* re re) (* im im))) re)) (sqrt.f64 im)) (sqrt.f64 #s(literal 2 binary64)))
#s(approx (sqrt (- (sqrt (+ (* re re) (* im im))) re)) (sqrt.f64 im))
(sqrt.f64 im)
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 (/.f64 #s(literal 1 binary64) (sqrt.f64 re)) (*.f64 im #s(literal 1/2 binary64))))
(*.f64 (/.f64 #s(literal 1 binary64) (sqrt.f64 re)) (*.f64 im #s(literal 1/2 binary64)))
(/.f64 #s(literal 1 binary64) (sqrt.f64 re))
#s(literal 1 binary64)
(sqrt.f64 re)
(*.f64 im #s(literal 1/2 binary64))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (/.f64 (*.f64 (*.f64 im #s(literal 1/2 binary64)) #s(literal 1 binary64)) (sqrt.f64 re)))
(/.f64 (*.f64 (*.f64 im #s(literal 1/2 binary64)) #s(literal 1 binary64)) (sqrt.f64 re))
(*.f64 (*.f64 im #s(literal 1/2 binary64)) #s(literal 1 binary64))
#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)
(sqrt.f64 (/.f64 #s(literal 1 binary64) re))
(/.f64 #s(literal 1 binary64) re)
#s(approx (* 1/2 (* (sqrt 2) (sqrt (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* 1/2 (* (sqrt im) (sqrt 2)))))
#s(approx (* 1/2 (* (sqrt 2) (sqrt (- (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 (- (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 (- (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 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* (sqrt im) (sqrt 2))))
#s(approx (* (sqrt 2) (sqrt (- (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 (- (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 (- (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 (sqrt (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (sqrt im)))
#s(approx (sqrt (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (+ (sqrt im) (* -1/2 (* (sqrt (/ 1 im)) re)))))
#s(approx (sqrt (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (+ (sqrt im) (* re (+ (* -1/2 (sqrt (/ 1 im))) (* 1/8 (* (sqrt (/ 1 (pow im 3))) re)))))))
#s(approx (sqrt (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (+ (sqrt im) (* re (+ (* -1/2 (sqrt (/ 1 im))) (* re (+ (* 1/16 (* (sqrt (/ 1 (pow im 5))) re)) (* 1/8 (sqrt (/ 1 (pow im 3)))))))))))
#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 (* (/ 1 (sqrt re)) (* im 1/2)) #s(hole binary64 (* 1/2 (* im (sqrt (/ 1 re))))))
#s(approx (/ 1 (sqrt re)) #s(hole binary64 (sqrt (/ 1 re))))
#s(approx (sqrt re) #s(hole binary64 (sqrt re)))
#s(approx (/ 1 re) #s(hole binary64 (/ 1 re)))
#s(approx (* 1/2 (* (sqrt 2) (sqrt (- (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 (- (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 (- (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 (- (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 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re)))))
#s(approx (* (sqrt 2) (sqrt (- (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 (- (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 (- (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 (sqrt (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* (* im (sqrt 1/2)) (sqrt (/ 1 re)))))
#s(approx (sqrt (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (+ (* -1/16 (* (/ (pow im 3) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* (* im (sqrt 1/2)) (sqrt (/ 1 re))))))
#s(approx (sqrt (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (+ (* -1/16 (* (/ (pow im 3) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* 1/32 (* (/ (pow im 5) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* (* im (sqrt 1/2)) (sqrt (/ 1 re)))))))
#s(approx (sqrt (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (+ (* -1/16 (* (/ (pow im 3) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* -1/512 (* (/ (pow im 5) (pow (sqrt 1/2) 3)) (sqrt (/ 1 (pow re 9))))) (+ (* 1/32 (* (/ (pow im 5) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* (* im (sqrt 1/2)) (sqrt (/ 1 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 2) (sqrt (- (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 (- (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 (- (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 (- (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 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* -1 (* (sqrt re) (* (sqrt -1) (pow (sqrt 2) 2))))))
#s(approx (* (sqrt 2) (sqrt (- (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 (- (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 (- (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 (sqrt (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* -1 (* (sqrt re) (* (sqrt -1) (sqrt 2))))))
#s(approx (sqrt (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* -1 (* re (+ (* -1/4 (* (/ (* (pow im 2) (sqrt -1)) (sqrt 2)) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (* (sqrt -1) (sqrt 2))))))))
#s(approx (sqrt (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* -1 (* re (+ (* -1 (/ (+ (* -1/16 (* (/ (* (pow im 4) (sqrt -1)) (sqrt 2)) (sqrt (/ 1 (pow re 3))))) (* 1/4 (* (/ (* (pow im 2) (sqrt -1)) (sqrt 2)) (sqrt re)))) (pow re 3))) (* (sqrt (/ 1 re)) (* (sqrt -1) (sqrt 2))))))))
#s(approx (sqrt (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* -1 (* re (+ (* -1 (/ (+ (* -1/16 (* (/ (* (pow im 4) (sqrt -1)) (sqrt 2)) (sqrt (/ 1 (pow re 3))))) (+ (* 1/32 (* (/ (* (pow im 4) (sqrt -1)) (pow (sqrt 2) 3)) (sqrt (/ 1 (pow re 3))))) (* 1/4 (* (/ (* (pow im 2) (sqrt -1)) (sqrt 2)) (sqrt re))))) (pow re 3))) (* (sqrt (/ 1 re)) (* (sqrt -1) (sqrt 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 (sqrt re) #s(hole binary64 (* -1 (* (sqrt re) (pow (sqrt -1) 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 (- (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 (- (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 (- (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 (- (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 (- (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 (- (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 (sqrt (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* im (+ (* -1/16 (* (/ (pow im 2) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (sqrt 1/2))))))
#s(approx (sqrt (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* im (+ (* (sqrt (/ 1 re)) (sqrt 1/2)) (* (pow im 2) (+ (* -1/16 (* (sqrt (/ 1 (pow re 5))) (/ 1 (sqrt 1/2)))) (* 1/2 (* (/ (* (pow im 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 (+ (* re re) (* im im))) re)) #s(hole binary64 (* im (+ (* (sqrt (/ 1 re)) (sqrt 1/2)) (* (pow im 2) (+ (* -1/16 (* (sqrt (/ 1 (pow re 5))) (/ 1 (sqrt 1/2)))) (* (pow im 2) (+ (* -1/2 (* (/ (* (pow im 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) (/ (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2))))) (sqrt 1/2))))))))))))
#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 1/2) #s(hole binary64 (* 1/2 im)))
#s(approx (* 1/2 (* (sqrt 2) (sqrt (- (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 (- (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 (- (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 (- (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 (- (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 (- (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 (sqrt (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* im (+ (sqrt (/ 1 im)) (* -1/2 (* (sqrt (/ 1 (pow im 3))) re))))))
#s(approx (sqrt (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* im (+ (sqrt (/ 1 im)) (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) re)) (* 1/4 (* (sqrt (/ 1 (pow im 5))) (pow re 2))))))))
#s(approx (sqrt (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* im (+ (sqrt (/ 1 im)) (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) re)) (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (pow re 2))) (* 1/4 (* (sqrt (/ 1 (pow im 5))) (pow re 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 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* -1/2 (* (sqrt im) (* (sqrt -1) (sqrt 2))))))
#s(approx (* 1/2 (* (sqrt 2) (sqrt (- (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 (- (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 (- (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 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* -1 (* (sqrt im) (* (sqrt -1) (sqrt 2))))))
#s(approx (* (sqrt 2) (sqrt (- (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 (- (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 (- (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 (sqrt (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* -1 (* (sqrt im) (sqrt -1)))))
#s(approx (sqrt (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* -1 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt -1)))) (* (sqrt (/ 1 im)) (sqrt -1)))))))
#s(approx (sqrt (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* -1 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt -1)))) (+ (* -1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt -1)))) (* (sqrt (/ 1 im)) (sqrt -1))))))))
#s(approx (sqrt (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* -1 (* im (+ (* -1 (/ (+ (* 1/8 (* (sqrt im) (* (pow re 2) (sqrt -1)))) (* 1/4 (* (sqrt im) (* (pow re 2) (sqrt -1))))) (pow im 3))) (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt -1)))) (* (sqrt (/ 1 im)) (sqrt -1))))))))
#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 (sqrt im) #s(hole binary64 (* -1 (* (sqrt im) (pow (sqrt -1) 2)))))
Outputs
(*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (+ (neg re) im) (-.f64 im re)))))
(*.f64 (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))
(*.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)
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (+ (neg re) im) (-.f64 im re)))))
(*.f64 (sqrt.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (+ (neg re) im) (-.f64 im re)))) (sqrt.f64 #s(literal 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)))))
(pow.f64 #s(literal 2 binary64) #s(literal 1/2 binary64))
(sqrt.f64 #s(literal 2 binary64))
#s(literal 2 binary64)
(pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (+ (neg re) im) (-.f64 im re))) #s(literal 1/2 binary64))
(sqrt.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (+ (neg re) im) (-.f64 im re))))
#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 (-.f64 (*.f64 im im) (*.f64 re re)) (+.f64 im re))
(/.f64 (-.f64 (*.f64 (*.f64 im im) im) (*.f64 (*.f64 re re) re)) (fma.f64 im im (fma.f64 re re (*.f64 im re))))
(-.f64 im re)
im
re
(*.f64 (*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (- (sqrt (+ (* re re) (* im im))) re)) (sqrt.f64 im))) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(approx (sqrt (- (sqrt (+ (* re re) (* im im))) re)) (sqrt.f64 im))) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(approx (sqrt (- (sqrt (+ (* re re) (* im im))) re)) (sqrt.f64 im))))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(approx (sqrt (- (sqrt (+ (* re re) (* im im))) re)) (sqrt.f64 im)))
(*.f64 #s(approx (sqrt (- (sqrt (+ (* re re) (* im im))) re)) (sqrt.f64 im)) (sqrt.f64 #s(literal 2 binary64)))
#s(approx (sqrt (- (sqrt (+ (* re re) (* im im))) re)) (sqrt.f64 im))
(pow.f64 im #s(literal 1/2 binary64))
(sqrt.f64 im)
#s(approx (* 1/2 (* (sqrt 2) (sqrt (- (sqrt (+ (* re re) (* im im))) re)))) (/.f64 (*.f64 im #s(literal 1/2 binary64)) (sqrt.f64 re)))
(*.f64 (*.f64 (/.f64 #s(literal 1 binary64) (sqrt.f64 re)) im) #s(literal 1/2 binary64))
(*.f64 (/.f64 #s(literal 1 binary64) (sqrt.f64 re)) (*.f64 im #s(literal 1/2 binary64)))
(*.f64 (*.f64 im #s(literal 1/2 binary64)) (/.f64 #s(literal 1 binary64) (sqrt.f64 re)))
(*.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 #s(literal 1 binary64) (sqrt.f64 re)) im))
(/.f64 (neg.f64 (*.f64 im #s(literal 1/2 binary64))) (neg.f64 (sqrt.f64 re)))
(/.f64 (*.f64 im #s(literal 1/2 binary64)) (sqrt.f64 re))
(pow.f64 (/.f64 #s(literal 1 binary64) re) #s(literal 1/2 binary64))
(pow.f64 (sqrt.f64 re) #s(literal -1 binary64))
(/.f64 #s(literal -1 binary64) (neg.f64 (sqrt.f64 re)))
(/.f64 #s(literal 1 binary64) (sqrt.f64 re))
(sqrt.f64 (/.f64 #s(literal 1 binary64) re))
#s(literal 1 binary64)
(pow.f64 re #s(literal 1/2 binary64))
(sqrt.f64 re)
(*.f64 (*.f64 im #s(literal 1/2 binary64)) #s(literal 1 binary64))
(*.f64 #s(literal 1 binary64) (*.f64 im #s(literal 1/2 binary64)))
(*.f64 im #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) im)
#s(approx (* 1/2 (* (sqrt 2) (sqrt (- (sqrt (+ (* re re) (* im im))) re)))) (/.f64 (*.f64 im #s(literal 1/2 binary64)) (sqrt.f64 re)))
(*.f64 (*.f64 (/.f64 #s(literal 1 binary64) (sqrt.f64 re)) im) #s(literal 1/2 binary64))
(*.f64 (/.f64 #s(literal 1 binary64) (sqrt.f64 re)) (*.f64 im #s(literal 1/2 binary64)))
(*.f64 (*.f64 im #s(literal 1/2 binary64)) (/.f64 #s(literal 1 binary64) (sqrt.f64 re)))
(*.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 #s(literal 1 binary64) (sqrt.f64 re)) im))
(/.f64 (neg.f64 (*.f64 im #s(literal 1/2 binary64))) (neg.f64 (sqrt.f64 re)))
(/.f64 (*.f64 im #s(literal 1/2 binary64)) (sqrt.f64 re))
(*.f64 (*.f64 im #s(literal 1/2 binary64)) #s(literal 1 binary64))
(*.f64 #s(literal 1 binary64) (*.f64 im #s(literal 1/2 binary64)))
(*.f64 im #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) im)
#s(approx (* 1/2 (* (sqrt 2) (sqrt (- (sqrt (+ (* re re) (* im im))) re)))) (/.f64 (*.f64 im #s(literal 1/2 binary64)) (sqrt.f64 re)))
(*.f64 (*.f64 (/.f64 #s(literal 1 binary64) (sqrt.f64 re)) im) #s(literal 1/2 binary64))
(*.f64 (/.f64 #s(literal 1 binary64) (sqrt.f64 re)) (*.f64 im #s(literal 1/2 binary64)))
(*.f64 (*.f64 im #s(literal 1/2 binary64)) (/.f64 #s(literal 1 binary64) (sqrt.f64 re)))
(*.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 #s(literal 1 binary64) (sqrt.f64 re)) im))
(/.f64 (neg.f64 (*.f64 im #s(literal 1/2 binary64))) (neg.f64 (sqrt.f64 re)))
(/.f64 (*.f64 im #s(literal 1/2 binary64)) (sqrt.f64 re))
(*.f64 (*.f64 im #s(literal 1/2 binary64)) #s(literal 1 binary64))
(*.f64 #s(literal 1 binary64) (*.f64 im #s(literal 1/2 binary64)))
(*.f64 im #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) im)
im
(pow.f64 (/.f64 #s(literal 1 binary64) re) #s(literal 1/2 binary64))
(pow.f64 (sqrt.f64 re) #s(literal -1 binary64))
(/.f64 #s(literal -1 binary64) (neg.f64 (sqrt.f64 re)))
(/.f64 #s(literal 1 binary64) (sqrt.f64 re))
(sqrt.f64 (/.f64 #s(literal 1 binary64) re))
(pow.f64 re #s(literal -1 binary64))
(/.f64 #s(literal -1 binary64) (neg.f64 re))
(/.f64 #s(literal 1 binary64) re)
#s(approx (* 1/2 (* (sqrt 2) (sqrt (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 (sqrt.f64 (*.f64 im #s(literal 2 binary64))) #s(literal 1/2 binary64)))
#s(approx (* 1/2 (* (sqrt 2) (sqrt (- (sqrt (+ (* re re) (* im im))) re)))) (fma.f64 (*.f64 #s(literal -1/4 binary64) (/.f64 #s(literal 1 binary64) (sqrt.f64 im))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re) (*.f64 (sqrt.f64 (*.f64 im #s(literal 2 binary64))) #s(literal 1/2 binary64))))
#s(approx (* 1/2 (* (sqrt 2) (sqrt (- (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 #s(literal 2 binary64))) #s(literal 1/2 binary64))))
#s(approx (* 1/2 (* (sqrt 2) (sqrt (- (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 #s(literal 2 binary64))) #s(literal 1/2 binary64))))
#s(approx (* (sqrt 2) (sqrt (- (sqrt (+ (* re re) (* im im))) re))) (sqrt.f64 (*.f64 im #s(literal 2 binary64))))
#s(approx (* (sqrt 2) (sqrt (- (sqrt (+ (* re re) (* im im))) re))) (fma.f64 (*.f64 #s(literal -1/2 binary64) (/.f64 #s(literal 1 binary64) (sqrt.f64 im))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re) (sqrt.f64 (*.f64 im #s(literal 2 binary64)))))
#s(approx (* (sqrt 2) (sqrt (- (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 #s(literal 2 binary64)))))
#s(approx (* (sqrt 2) (sqrt (- (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 #s(literal 2 binary64)))))
#s(approx (sqrt (- (sqrt (+ (* re re) (* im im))) re)) (sqrt.f64 im))
#s(approx (sqrt (- (sqrt (+ (* re re) (* im im))) re)) (fma.f64 (*.f64 (/.f64 #s(literal 1 binary64) (sqrt.f64 im)) re) #s(literal -1/2 binary64) (sqrt.f64 im)))
#s(approx (sqrt (- (sqrt (+ (* re re) (* im im))) re)) (fma.f64 (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (*.f64 (*.f64 im im) im))) re) #s(literal 1/8 binary64) (*.f64 #s(literal -1/2 binary64) (/.f64 #s(literal 1 binary64) (sqrt.f64 im)))) re (sqrt.f64 im)))
#s(approx (sqrt (- (sqrt (+ (* re re) (* im im))) re)) (fma.f64 (fma.f64 (fma.f64 (*.f64 (sqrt.f64 (pow.f64 im #s(literal -5 binary64))) re) #s(literal 1/16 binary64) (*.f64 #s(literal 1/8 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (*.f64 (*.f64 im im) im))))) re (*.f64 #s(literal -1/2 binary64) (/.f64 #s(literal 1 binary64) (sqrt.f64 im)))) re (sqrt.f64 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 (-.f64 (*.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 (-.f64 (*.f64 (fma.f64 (/.f64 (*.f64 re re) (*.f64 (*.f64 im im) im)) #s(literal -1/8 binary64) (/.f64 #s(literal 1/2 binary64) im)) re) #s(literal 1 binary64)) re im))
#s(approx re re)
#s(approx (* (/ 1 (sqrt re)) (* im 1/2)) (/.f64 (*.f64 im #s(literal 1/2 binary64)) (sqrt.f64 re)))
#s(approx (sqrt (/ 1 re)) (/.f64 #s(literal 1 binary64) (sqrt.f64 re)))
#s(approx (sqrt re) (sqrt.f64 re))
#s(approx (/ 1 re) (/.f64 #s(literal 1 binary64) re))
#s(approx (* 1/2 (* (sqrt 2) (sqrt (- (sqrt (+ (* re re) (* im im))) re)))) (/.f64 (*.f64 im #s(literal 1/2 binary64)) (sqrt.f64 re)))
#s(approx (* 1/2 (* (sqrt 2) (sqrt (- (sqrt (+ (* re re) (* im im))) re)))) (fma.f64 (*.f64 (*.f64 (*.f64 (*.f64 im im) im) #s(literal 2 binary64)) (sqrt.f64 (pow.f64 re #s(literal -5 binary64)))) #s(literal -1/32 binary64) (/.f64 (*.f64 im #s(literal 1/2 binary64)) (sqrt.f64 re))))
#s(approx (* 1/2 (* (sqrt 2) (sqrt (- (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)) #s(literal 2 binary64)) (sqrt.f64 (pow.f64 re #s(literal -9 binary64)))) #s(literal 1/64 binary64) (/.f64 (*.f64 im #s(literal 1/2 binary64)) (sqrt.f64 re)))))
#s(approx (* 1/2 (* (sqrt 2) (sqrt (- (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 (*.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) (/.f64 (*.f64 im #s(literal 1/2 binary64)) (sqrt.f64 re))))))
#s(approx (* (sqrt 2) (sqrt (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (/.f64 #s(literal 1 binary64) (sqrt.f64 re)) im))
#s(approx (* (sqrt 2) (sqrt (- (sqrt (+ (* re re) (* im im))) re))) (fma.f64 #s(literal -1/16 binary64) (*.f64 (*.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) (sqrt.f64 re)) im)))
#s(approx (* (sqrt 2) (sqrt (- (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 (*.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) (*.f64 (/.f64 #s(literal 1 binary64) (sqrt.f64 re)) im))))
#s(approx (* (sqrt 2) (sqrt (- (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 (*.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) (*.f64 (/.f64 #s(literal 1 binary64) (sqrt.f64 re)) im)))))
#s(approx (sqrt (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 im (sqrt.f64 (/.f64 #s(literal 1/2 binary64) re))))
#s(approx (sqrt (- (sqrt (+ (* re re) (* im im))) re)) (fma.f64 (*.f64 (/.f64 (*.f64 (*.f64 im im) im) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 (pow.f64 re #s(literal -5 binary64)))) #s(literal -1/16 binary64) (*.f64 im (sqrt.f64 (/.f64 #s(literal 1/2 binary64) re)))))
#s(approx (sqrt (- (sqrt (+ (* re re) (* im im))) re)) (fma.f64 (*.f64 (/.f64 (*.f64 (*.f64 im im) im) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 (pow.f64 re #s(literal -5 binary64)))) #s(literal -1/16 binary64) (fma.f64 (*.f64 (/.f64 (pow.f64 im #s(literal 5 binary64)) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 (pow.f64 re #s(literal -9 binary64)))) #s(literal 1/32 binary64) (*.f64 im (sqrt.f64 (/.f64 #s(literal 1/2 binary64) re))))))
#s(approx (sqrt (- (sqrt (+ (* re re) (* im im))) re)) (fma.f64 (*.f64 (/.f64 (*.f64 (*.f64 im im) im) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 (pow.f64 re #s(literal -5 binary64)))) #s(literal -1/16 binary64) (fma.f64 (*.f64 (/.f64 (pow.f64 im #s(literal 5 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/512 binary64) (fma.f64 (*.f64 (/.f64 (pow.f64 im #s(literal 5 binary64)) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 (pow.f64 re #s(literal -9 binary64)))) #s(literal 1/32 binary64) (*.f64 im (sqrt.f64 (/.f64 #s(literal 1/2 binary64) 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) im) (*.f64 (*.f64 im 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) im) (*.f64 (*.f64 im 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 (+ (neg re) im) (neg.f64 re))
#s(approx (+ (neg re) im) (*.f64 (-.f64 (/.f64 im re) #s(literal 1 binary64)) re))
#s(approx (* 1/2 (* (sqrt 2) (sqrt (- (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 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 (neg.f64 re) (fma.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 2 binary64)) (/.f64 #s(literal 1 binary64) (sqrt.f64 re))) #s(literal 1/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 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 (neg.f64 re) (fma.f64 (*.f64 #s(literal 1/2 binary64) (/.f64 #s(literal 1 binary64) (sqrt.f64 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 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 (neg.f64 re) (fma.f64 (*.f64 #s(literal 1/2 binary64) (/.f64 #s(literal 1 binary64) (sqrt.f64 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 (*.f64 im im) (*.f64 im im)) (/.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 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 (- (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 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (neg.f64 re) (fma.f64 (*.f64 (/.f64 #s(literal 1 binary64) (sqrt.f64 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 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (neg.f64 re) (fma.f64 (*.f64 (/.f64 #s(literal 1 binary64) (sqrt.f64 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 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (neg.f64 re) (fma.f64 (*.f64 (/.f64 #s(literal 1 binary64) (sqrt.f64 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 (*.f64 im im) (*.f64 im im)) (/.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 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 (sqrt (- (sqrt (+ (* re re) (* im im))) re)) (neg.f64 (*.f64 (sqrt.f64 #s(literal -2 binary64)) (sqrt.f64 re))))
#s(approx (sqrt (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (neg.f64 re) (fma.f64 (*.f64 (/.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (*.f64 im im)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (pow.f64 re #s(literal -5 binary64)))) #s(literal -1/4 binary64) (*.f64 (sqrt.f64 #s(literal -2 binary64)) (/.f64 #s(literal 1 binary64) (sqrt.f64 re))))))
#s(approx (sqrt (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (neg.f64 re) (fma.f64 (sqrt.f64 #s(literal -2 binary64)) (/.f64 #s(literal 1 binary64) (sqrt.f64 re)) (neg.f64 (/.f64 (fma.f64 (*.f64 (/.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (*.f64 im im)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 re)) #s(literal 1/4 binary64) (*.f64 (*.f64 (/.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (*.f64 (*.f64 im im) (*.f64 im im))) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (*.f64 (*.f64 re re) re)))) #s(literal -1/16 binary64))) (*.f64 (*.f64 re re) re))))))
#s(approx (sqrt (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (neg.f64 re) (fma.f64 (sqrt.f64 #s(literal -2 binary64)) (/.f64 #s(literal 1 binary64) (sqrt.f64 re)) (neg.f64 (/.f64 (fma.f64 (*.f64 (/.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (*.f64 (*.f64 im im) (*.f64 im im))) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (*.f64 (*.f64 re re) re)))) #s(literal -1/16 binary64) (fma.f64 (/.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)))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 2 binary64))) #s(literal 1/32 binary64) (*.f64 (*.f64 (/.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (*.f64 im im)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 re)) #s(literal 1/4 binary64)))) (*.f64 (*.f64 re re) re))))))
#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 (/.f64 (*.f64 (*.f64 (*.f64 im im) im) (*.f64 (*.f64 im im) im)) (*.f64 (*.f64 (*.f64 re re) re) (*.f64 (*.f64 re re) re))) #s(literal 1/16 binary64) (/.f64 (*.f64 (*.f64 im im) #s(literal 1/2 binary64)) (*.f64 re re)))) #s(literal 2 binary64))))
#s(approx (+ (neg re) im) (*.f64 (neg.f64 re) (+.f64 (/.f64 (neg.f64 im) re) #s(literal 1 binary64))))
#s(approx (sqrt re) (neg.f64 (*.f64 (sqrt.f64 re) #s(literal -1 binary64))))
#s(approx (* (/ 1 (sqrt re)) (* im 1/2)) (*.f64 (*.f64 #s(literal 1/2 binary64) (neg.f64 im)) (/.f64 #s(literal 1 binary64) (sqrt.f64 re))))
#s(approx (sqrt (/ 1 re)) (*.f64 (/.f64 #s(literal 1 binary64) (sqrt.f64 re)) #s(literal -1 binary64)))
#s(approx (* 1/2 (* (sqrt 2) (sqrt (- (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 (/.f64 #s(literal 1 binary64) (sqrt.f64 re)) #s(literal 1 binary64)) #s(literal 1/2 binary64))) im))
#s(approx (* 1/2 (* (sqrt 2) (sqrt (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (/.f64 #s(literal 1 binary64) (sqrt.f64 re))) #s(literal 1 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 (- (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 (/.f64 #s(literal 1 binary64) (sqrt.f64 re)) #s(literal 1 binary64)) #s(literal 1/2 binary64))) im))
#s(approx (* (sqrt 2) (sqrt (- (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 (/.f64 #s(literal 1 binary64) (sqrt.f64 re)) #s(literal 1 binary64))) im))
#s(approx (* (sqrt 2) (sqrt (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (fma.f64 (/.f64 #s(literal 1 binary64) (sqrt.f64 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 (- (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 (/.f64 #s(literal 1 binary64) (sqrt.f64 re)) #s(literal 1 binary64))) im))
#s(approx (sqrt (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (fma.f64 (*.f64 (/.f64 (*.f64 im im) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 (pow.f64 re #s(literal -5 binary64)))) #s(literal -1/16 binary64) (sqrt.f64 (/.f64 #s(literal 1/2 binary64) re))) im))
#s(approx (sqrt (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -1/16 binary64) (sqrt.f64 (pow.f64 re #s(literal -5 binary64)))) (/.f64 #s(literal 1 binary64) (sqrt.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)))) (*.f64 im im)) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 re)) #s(literal 1/2 binary64))) (*.f64 im im) (sqrt.f64 (/.f64 #s(literal 1/2 binary64) re))) im))
#s(approx (sqrt (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 re)) (/.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 1/2 binary64))) (*.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))) (*.f64 im im)) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 re)) #s(literal -1/2 binary64))) (*.f64 im im) (*.f64 (*.f64 #s(literal -1/16 binary64) (sqrt.f64 (pow.f64 re #s(literal -5 binary64)))) (/.f64 #s(literal 1 binary64) (sqrt.f64 #s(literal 1/2 binary64))))) (*.f64 im im) (sqrt.f64 (/.f64 #s(literal 1/2 binary64) re))) 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 #s(literal 1/16 binary64) (*.f64 im im)) (pow.f64 re #s(literal 5 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 (/.f64 (*.f64 im im) (pow.f64 re #s(literal 7 binary64))) #s(literal -5/128 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 (+ (neg re) im) (-.f64 im re))
#s(approx (* im 1/2) (*.f64 im #s(literal 1/2 binary64)))
#s(approx (* 1/2 (* (sqrt 2) (sqrt (- (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 (- (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 (- (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 (- (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 (- (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 (- (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 (sqrt (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (*.f64 (*.f64 im im) im))) re) #s(literal -1/2 binary64) (/.f64 #s(literal 1 binary64) (sqrt.f64 im))) im))
#s(approx (sqrt (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (+.f64 (fma.f64 (*.f64 (*.f64 re re) (sqrt.f64 (pow.f64 im #s(literal -5 binary64)))) #s(literal 1/4 binary64) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (*.f64 (*.f64 im im) im))) re) #s(literal -1/2 binary64))) (/.f64 #s(literal 1 binary64) (sqrt.f64 im))) im))
#s(approx (sqrt (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (+.f64 (fma.f64 (*.f64 (*.f64 re re) (sqrt.f64 (pow.f64 im #s(literal -5 binary64)))) #s(literal 1/8 binary64) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (*.f64 (*.f64 im im) im))) re) #s(literal -1/2 binary64))) (/.f64 #s(literal 1 binary64) (sqrt.f64 im))) 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 (* 1/2 (* (sqrt 2) (sqrt (- (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 (- (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) (*.f64 (*.f64 #s(literal 1/2 binary64) (/.f64 #s(literal 1 binary64) (sqrt.f64 im))) (sqrt.f64 #s(literal -2 binary64))))))
#s(approx (* 1/2 (* (sqrt 2) (sqrt (- (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/8 binary64) (sqrt.f64 (pow.f64 im #s(literal -5 binary64)))) (*.f64 (sqrt.f64 #s(literal -2 binary64)) (*.f64 re re)) (*.f64 (*.f64 #s(literal 1/2 binary64) (/.f64 #s(literal 1 binary64) (sqrt.f64 im))) (sqrt.f64 #s(literal -2 binary64)))))))
#s(approx (* 1/2 (* (sqrt 2) (sqrt (- (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/4 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (*.f64 (*.f64 im im) im)))) (*.f64 (sqrt.f64 #s(literal -2 binary64)) re) (*.f64 (*.f64 #s(literal 1/2 binary64) (/.f64 #s(literal 1 binary64) (sqrt.f64 im))) (sqrt.f64 #s(literal -2 binary64)))))))
#s(approx (* (sqrt 2) (sqrt (- (sqrt (+ (* re re) (* im im))) re))) (neg.f64 (*.f64 (sqrt.f64 #s(literal -2 binary64)) (sqrt.f64 im))))
#s(approx (* (sqrt 2) (sqrt (- (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)) (/.f64 #s(literal 1 binary64) (sqrt.f64 im))))))
#s(approx (* (sqrt 2) (sqrt (- (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)) (/.f64 #s(literal 1 binary64) (sqrt.f64 im)))))))
#s(approx (* (sqrt 2) (sqrt (- (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)) (/.f64 #s(literal 1 binary64) (sqrt.f64 im))))))))
#s(approx (sqrt (- (sqrt (+ (* re re) (* im im))) re)) (neg.f64 (sqrt.f64 (neg.f64 im))))
#s(approx (sqrt (- (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 -1 binary64)) re) (sqrt.f64 (*.f64 (/.f64 #s(literal 1 binary64) im) #s(literal -1 binary64))))))
#s(approx (sqrt (- (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 -1 binary64)) re) (fma.f64 (*.f64 #s(literal -1/4 binary64) (sqrt.f64 (pow.f64 im #s(literal -5 binary64)))) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (*.f64 re re)) (sqrt.f64 (*.f64 (/.f64 #s(literal 1 binary64) im) #s(literal -1 binary64)))))))
#s(approx (sqrt (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (neg.f64 im) (+.f64 (neg.f64 (/.f64 (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (*.f64 re re)) (sqrt.f64 im)) #s(literal 3/8 binary64)) (*.f64 (*.f64 im im) 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 -1 binary64)) re) (sqrt.f64 (*.f64 (/.f64 #s(literal 1 binary64) im) #s(literal -1 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 (+ (neg re) im) (*.f64 (neg.f64 im) (-.f64 (/.f64 re im) #s(literal 1 binary64))))
#s(approx (sqrt im) (neg.f64 (*.f64 #s(literal -1 binary64) (sqrt.f64 im))))

eval17.0ms (0.4%)

Memory
-6.3MiB live, 38.8MiB allocated; 4ms collecting garbage
Compiler

Compiled 2 624 to 890 computations (66.1% saved)

prune12.0ms (0.3%)

Memory
-17.9MiB live, 26.4MiB allocated; 3ms collecting garbage
Pruning

12 alts after pruning (5 fresh and 7 done)

PrunedKeptTotal
New1354139
Fresh112
Picked325
Done055
Total13912151
Accuracy
100.0%
Counts
151 → 12
Alt Table
Click to see full alt table
StatusAccuracyProgram
48.7%
(*.f64 (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(literal 1/2 binary64))
24.1%
(*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 #s(literal -2 binary64) re)))))
50.4%
(*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (+ (neg re) im) (-.f64 im re))))))
32.1%
(*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(approx (sqrt (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 im (sqrt.f64 (/.f64 #s(literal 1/2 binary64) re))))))
48.8%
(*.f64 #s(literal 1/2 binary64) (*.f64 #s(approx (sqrt (- (sqrt (+ (* re re) (* im im))) re)) (sqrt.f64 im)) (sqrt.f64 #s(literal 2 binary64))))
76.2%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 re im) re))))
50.7%
(*.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))))))
49.1%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (+.f64 im im))))
22.6%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 im (/.f64 im re)))))
24.3%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re))))
32.2%
#s(approx (* 1/2 (* (sqrt 2) (sqrt (- (sqrt (+ (* re re) (* im im))) re)))) (/.f64 (*.f64 im #s(literal 1/2 binary64)) (sqrt.f64 re)))
32.2%
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 im #s(literal 1/2 binary64))))
Compiler

Compiled 409 to 307 computations (24.9% saved)

regimes57.0ms (1.4%)

Memory
-13.6MiB live, 89.6MiB allocated; 7ms collecting garbage
Counts
22 → 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))))
#s(approx (* 1/2 (* (sqrt 2) (sqrt (- (sqrt (+ (* re re) (* im im))) re)))) (/.f64 (*.f64 im #s(literal 1/2 binary64)) (sqrt.f64 re)))
(*.f64 #s(literal 1/2 binary64) (*.f64 #s(approx (sqrt (- (sqrt (+ (* re re) (* im im))) re)) (sqrt.f64 im)) (sqrt.f64 #s(literal 2 binary64))))
(*.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 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 im #s(literal 1/2 binary64))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 (/.f64 #s(literal 1 binary64) (sqrt.f64 re)) (*.f64 im #s(literal 1/2 binary64))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (/.f64 (*.f64 (*.f64 im #s(literal 1/2 binary64)) #s(literal 1 binary64)) (sqrt.f64 re)))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 im (/.f64 im 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)))))
(*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (+ (neg re) im) (-.f64 im re))))))
(*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 #s(literal -2 binary64) re)))))
(*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (+.f64 (neg.f64 re) im))) (sqrt.f64 #s(literal 2 binary64))))
#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)))) (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1 binary64) im)) (/.f64 #s(literal 1 binary64) (sqrt.f64 re))))
(*.f64 #s(literal 1/2 binary64) (*.f64 #s(approx (sqrt (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 im (sqrt.f64 (/.f64 #s(literal 1/2 binary64) re)))) (sqrt.f64 #s(literal 2 binary64))))
(*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(approx (sqrt (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 im (sqrt.f64 (/.f64 #s(literal 1/2 binary64) re))))))
(*.f64 (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(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)))))
(*.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 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 re im) re))))
Outputs
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 re im) re))))
#s(approx (* 1/2 (* (sqrt 2) (sqrt (- (sqrt (+ (* re re) (* im im))) re)))) (/.f64 (*.f64 im #s(literal 1/2 binary64)) (sqrt.f64 re)))
Calls

7 calls:

22.0ms
(*.f64 im im)
7.0ms
re
6.0ms
im
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))))
5.0ms
(*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
Results
AccuracySegmentsBranch
76.2%1(*.f64 im im)
89.2%2(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
89.2%2(*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
89.5%2(sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))
89.5%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))))
89.7%2re
76.2%1im
Compiler

Compiled 42 to 45 computations (-7.1% saved)

regimes44.0ms (1.1%)

Memory
8.4MiB live, 55.3MiB allocated; 2ms collecting garbage
Counts
21 → 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))))
#s(approx (* 1/2 (* (sqrt 2) (sqrt (- (sqrt (+ (* re re) (* im im))) re)))) (/.f64 (*.f64 im #s(literal 1/2 binary64)) (sqrt.f64 re)))
(*.f64 #s(literal 1/2 binary64) (*.f64 #s(approx (sqrt (- (sqrt (+ (* re re) (* im im))) re)) (sqrt.f64 im)) (sqrt.f64 #s(literal 2 binary64))))
(*.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 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 im #s(literal 1/2 binary64))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 (/.f64 #s(literal 1 binary64) (sqrt.f64 re)) (*.f64 im #s(literal 1/2 binary64))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (/.f64 (*.f64 (*.f64 im #s(literal 1/2 binary64)) #s(literal 1 binary64)) (sqrt.f64 re)))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 im (/.f64 im 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)))))
(*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (+ (neg re) im) (-.f64 im re))))))
(*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 #s(literal -2 binary64) re)))))
(*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (+.f64 (neg.f64 re) im))) (sqrt.f64 #s(literal 2 binary64))))
#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)))) (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1 binary64) im)) (/.f64 #s(literal 1 binary64) (sqrt.f64 re))))
(*.f64 #s(literal 1/2 binary64) (*.f64 #s(approx (sqrt (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 im (sqrt.f64 (/.f64 #s(literal 1/2 binary64) re)))) (sqrt.f64 #s(literal 2 binary64))))
(*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(approx (sqrt (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 im (sqrt.f64 (/.f64 #s(literal 1/2 binary64) re))))))
(*.f64 (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(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)))))
(*.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) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.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) #s(approx (+ (neg re) im) (-.f64 im re))))))
#s(approx (* 1/2 (* (sqrt 2) (sqrt (- (sqrt (+ (* re re) (* im im))) re)))) (/.f64 (*.f64 im #s(literal 1/2 binary64)) (sqrt.f64 re)))
Calls

5 calls:

21.0ms
(*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
6.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))))
5.0ms
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
5.0ms
(sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))
Results
AccuracySegmentsBranch
78.1%4(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
78.1%4(*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
78.3%4(sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))
78.3%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))))
81.9%4re
Compiler

Compiled 39 to 40 computations (-2.6% saved)

regimes7.0ms (0.2%)

Memory
18.5MiB live, 18.5MiB allocated; 0ms collecting garbage
Counts
20 → 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))))
#s(approx (* 1/2 (* (sqrt 2) (sqrt (- (sqrt (+ (* re re) (* im im))) re)))) (/.f64 (*.f64 im #s(literal 1/2 binary64)) (sqrt.f64 re)))
(*.f64 #s(literal 1/2 binary64) (*.f64 #s(approx (sqrt (- (sqrt (+ (* re re) (* im im))) re)) (sqrt.f64 im)) (sqrt.f64 #s(literal 2 binary64))))
(*.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 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 im #s(literal 1/2 binary64))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 (/.f64 #s(literal 1 binary64) (sqrt.f64 re)) (*.f64 im #s(literal 1/2 binary64))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (/.f64 (*.f64 (*.f64 im #s(literal 1/2 binary64)) #s(literal 1 binary64)) (sqrt.f64 re)))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 im (/.f64 im 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)))))
(*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (+ (neg re) im) (-.f64 im re))))))
(*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 #s(literal -2 binary64) re)))))
(*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (+.f64 (neg.f64 re) im))) (sqrt.f64 #s(literal 2 binary64))))
#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)))) (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1 binary64) im)) (/.f64 #s(literal 1 binary64) (sqrt.f64 re))))
(*.f64 #s(literal 1/2 binary64) (*.f64 #s(approx (sqrt (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 im (sqrt.f64 (/.f64 #s(literal 1/2 binary64) re)))) (sqrt.f64 #s(literal 2 binary64))))
(*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(approx (sqrt (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 im (sqrt.f64 (/.f64 #s(literal 1/2 binary64) re))))))
(*.f64 (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(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)))))
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 (- (sqrt (+ (* re re) (* im im))) re)))) (/.f64 (*.f64 im #s(literal 1/2 binary64)) (sqrt.f64 re)))
Calls

1 calls:

6.0ms
re
Results
AccuracySegmentsBranch
79.5%3re
Compiler

Compiled 1 to 2 computations (-100% saved)

regimes8.0ms (0.2%)

Memory
-29.5MiB live, 16.0MiB allocated; 3ms collecting garbage
Counts
4 → 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))))
#s(approx (* 1/2 (* (sqrt 2) (sqrt (- (sqrt (+ (* re re) (* im im))) re)))) (/.f64 (*.f64 im #s(literal 1/2 binary64)) (sqrt.f64 re)))
(*.f64 #s(literal 1/2 binary64) (*.f64 #s(approx (sqrt (- (sqrt (+ (* re re) (* im im))) re)) (sqrt.f64 im)) (sqrt.f64 #s(literal 2 binary64))))
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))))
#s(approx (* 1/2 (* (sqrt 2) (sqrt (- (sqrt (+ (* re re) (* im im))) re)))) (/.f64 (*.f64 im #s(literal 1/2 binary64)) (sqrt.f64 re)))
Calls

3 calls:

4.0ms
(*.f64 im im)
2.0ms
im
2.0ms
re
Results
AccuracySegmentsBranch
64.9%2(*.f64 im im)
64.9%2im
78.9%3re
Compiler

Compiled 4 to 7 computations (-75% saved)

regimes9.0ms (0.2%)

Memory
26.9MiB live, 26.9MiB allocated; 0ms collecting garbage
Counts
2 → 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))))
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))))
Calls

7 calls:

1.0ms
re
1.0ms
im
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 1/2 binary64) (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
59.5%2(*.f64 im im)
59.5%2im
52.6%3(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
52.6%3(*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
51.6%2(sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))
51.6%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))))
60.1%2re
Compiler

Compiled 42 to 45 computations (-7.1% saved)

regimes8.0ms (0.2%)

Memory
-29.2MiB live, 17.2MiB allocated; 1ms 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:

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
49.1%1(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
49.1%1(*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
49.1%1(sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))
49.1%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))))
49.1%1(*.f64 im im)
49.1%1im
49.1%1re
Compiler

Compiled 42 to 45 computations (-7.1% saved)

bsearch10.0ms (0.3%)

Memory
17.3MiB live, 17.3MiB allocated; 0ms collecting garbage
Algorithm
binary-search
Stop Event
narrow-enough
Steps
TimeLeftRight
9.0ms
1.4228425867955442e-73
2.5234667889323887e-73
Samples
3.0ms16×2valid
2.0ms42×0valid
1.0ms1valid
Compiler

Compiled 126 to 130 computations (-3.2% saved)

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

bsearch83.0ms (2.1%)

Memory
-13.8MiB live, 59.3MiB allocated; 93ms collecting garbage
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
narrow-enough
Steps
TimeLeftRight
1.0ms
1.4228425867955442e-73
2.5234667889323887e-73
70.0ms
-1.3932591216149147e-113
-9.28432089304054e-116
11.0ms
-1.1904855156236173e+127
-1.0361786965059144e+125
Samples
71.0ms224×0valid
Compiler

Compiled 550 to 582 computations (-5.8% saved)

Precisions
Click to see histograms. Total time spent on operations: 66.0ms
ival-mult!: 60.0ms (90.3% of total)
ival-hypot: 4.0ms (6% of total)
ival-sqrt: 2.0ms (3% of total)
ival-sub!: 1.0ms (1.5% of total)
adjust: 0.0ms (0% of total)

bsearch18.0ms (0.4%)

Memory
-10.9MiB live, 41.2MiB allocated; 9ms collecting garbage
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
1.0ms
1.4228425867955442e-73
2.5234667889323887e-73
16.0ms
-4.6991356930952493e-14
-1.2731800900393223e-16
Samples
11.0ms128×0valid
Compiler

Compiled 414 to 434 computations (-4.8% saved)

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

bsearch42.0ms (1%)

Memory
-4.1MiB live, 41.5MiB allocated; 5ms collecting garbage
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
36.0ms
3.5279334576231916e-72
4.7634155928761766e-68
4.0ms
-4.6991356930952493e-14
-1.2731800900393223e-16
Samples
25.0ms29×2valid
6.0ms112×0valid
2.0ms19×1valid
Compiler

Compiled 506 to 534 computations (-5.5% saved)

Precisions
Click to see histograms. Total time spent on operations: 29.0ms
ival-sqrt: 21.0ms (72.3% of total)
ival-hypot: 4.0ms (13.8% of total)
ival-mult!: 2.0ms (6.9% of total)
adjust: 1.0ms (3.4% of total)
ival-sub!: 1.0ms (3.4% of total)

bsearch1.0ms (0%)

Memory
3.0MiB live, 3.0MiB allocated; 0ms collecting garbage
Algorithm
binary-search
Stop Event
narrow-enough
Steps
TimeLeftRight
1.0ms
-4.6991356930952493e-14
-1.2731800900393223e-16
Compiler

Compiled 250 to 262 computations (-4.8% saved)

derivations433.0ms (10.8%)

Memory
59.3MiB live, 387.9MiB allocated; 114ms collecting garbage
Stop Event
fuel
Compiler

Compiled 93 to 70 computations (24.7% saved)

preprocess131.0ms (3.2%)

Memory
23.9MiB live, 120.8MiB allocated; 92ms collecting garbage
Remove

(abs im)

Compiler

Compiled 551 to 454 computations (17.6% saved)

end0.0ms (0%)

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

Profiling

Loading profile data...