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

Time bar (total: 4.5s)

start0.0ms (0%)

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

analyze134.0ms (3%)

Memory
-12.1MiB live, 177.4MiB allocated; 34ms 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)

sample2.5s (55.7%)

Memory
-47.3MiB live, 2 229.0MiB allocated; 1.8s collecting garbage
Samples
677.0ms6 203×0valid
235.0ms776×2valid
229.0ms498×3valid
128.0ms779×1valid
Precisions
Click to see histograms. Total time spent on operations: 853.0ms
ival-hypot: 545.0ms (63.9% of total)
ival-mult!: 107.0ms (12.5% of total)
ival-sqrt: 85.0ms (10% of total)
adjust: 72.0ms (8.4% of total)
ival-sub!: 43.0ms (5% of total)
Bogosity

preprocess54.0ms (1.2%)

Memory
-22.6MiB live, 28.9MiB allocated; 19ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

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

(abs im)

Compiler

Compiled 24 to 24 computations (0% saved)

series19.0ms (0.4%)

Memory
33.3MiB live, 33.3MiB allocated; 0ms collecting garbage
Counts
12 → 122
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 (* 2 (sqrt (pow im 2)))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (+ (* -1/2 (/ re (sqrt (* 2 (sqrt (pow im 2)))))) (* 1/2 (sqrt (* 2 (sqrt (pow im 2))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (+ (* 1/2 (sqrt (* 2 (sqrt (pow im 2))))) (* re (- (* 1/4 (/ (* re (- (/ 1 (sqrt (pow im 2))) (/ 1 (pow (sqrt (* 2 (sqrt (pow im 2)))) 2)))) (sqrt (* 2 (sqrt (pow im 2)))))) (* 1/2 (/ 1 (sqrt (* 2 (sqrt (pow im 2)))))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (+ (* 1/2 (sqrt (* 2 (sqrt (pow im 2))))) (* re (- (* re (+ (* 1/4 (/ (* re (- (/ 1 (sqrt (pow im 2))) (/ 1 (pow (sqrt (* 2 (sqrt (pow im 2)))) 2)))) (pow (sqrt (* 2 (sqrt (pow im 2)))) 3))) (* 1/4 (/ (- (/ 1 (sqrt (pow im 2))) (/ 1 (pow (sqrt (* 2 (sqrt (pow im 2)))) 2))) (sqrt (* 2 (sqrt (pow im 2)))))))) (* 1/2 (/ 1 (sqrt (* 2 (sqrt (pow im 2)))))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (sqrt (* 2 (sqrt (pow im 2))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (+ (sqrt (* 2 (sqrt (pow im 2)))) (* -1 (/ re (sqrt (* 2 (sqrt (pow im 2)))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (+ (sqrt (* 2 (sqrt (pow im 2)))) (* re (- (* 1/2 (/ (* re (- (/ 1 (sqrt (pow im 2))) (/ 1 (pow (sqrt (* 2 (sqrt (pow im 2)))) 2)))) (sqrt (* 2 (sqrt (pow im 2)))))) (/ 1 (sqrt (* 2 (sqrt (pow im 2))))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (+ (sqrt (* 2 (sqrt (pow im 2)))) (* re (- (* re (+ (* 1/2 (/ (* re (- (/ 1 (sqrt (pow im 2))) (/ 1 (pow (sqrt (* 2 (sqrt (pow im 2)))) 2)))) (pow (sqrt (* 2 (sqrt (pow im 2)))) 3))) (* 1/2 (/ (- (/ 1 (sqrt (pow im 2))) (/ 1 (pow (sqrt (* 2 (sqrt (pow im 2)))) 2))) (sqrt (* 2 (sqrt (pow im 2)))))))) (/ 1 (sqrt (* 2 (sqrt (pow im 2))))))))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* 2 (sqrt (pow im 2)))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (+ (* -2 re) (* 2 (sqrt (pow im 2))))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (+ (* 2 (sqrt (pow im 2))) (* re (- (/ re (sqrt (pow im 2))) 2)))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (+ (* 2 (sqrt (pow im 2))) (* re (- (* re (+ (* -1/4 (/ (pow re 2) (pow (sqrt (pow im 2)) 3))) (/ 1 (sqrt (pow im 2))))) 2)))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (sqrt (pow im 2))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (+ (sqrt (pow im 2)) (* -1 re))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (+ (sqrt (pow im 2)) (* re (- (* 1/2 (/ re (sqrt (pow im 2)))) 1)))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (+ (sqrt (pow im 2)) (* re (- (* re (+ (* -1/8 (/ (pow re 2) (pow (sqrt (pow im 2)) 3))) (* 1/2 (/ 1 (sqrt (pow im 2)))))) 1)))))
#s(approx (sqrt (+ (* re re) (* im im))) #s(hole binary64 (+ (sqrt (pow im 2)) (* 1/2 (/ (pow re 2) (sqrt (pow im 2)))))))
#s(approx (sqrt (+ (* re re) (* im im))) #s(hole binary64 (+ (sqrt (pow im 2)) (* (pow re 2) (+ (* -1/8 (/ (pow re 2) (pow (sqrt (pow im 2)) 3))) (* 1/2 (/ 1 (sqrt (pow im 2)))))))))
#s(approx (sqrt (+ (* re re) (* im im))) #s(hole binary64 (+ (sqrt (pow im 2)) (* (pow re 2) (+ (* (pow re 2) (- (* 1/16 (/ (pow re 2) (pow (sqrt (pow im 2)) 5))) (* 1/8 (/ 1 (pow (sqrt (pow im 2)) 3))))) (* 1/2 (/ 1 (sqrt (pow im 2)))))))))
#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 (sqrt (/ (pow im 2) re)))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (+ (* -1/16 (/ (pow im 4) (* (pow re 3) (sqrt (/ (pow im 2) re))))) (* 1/2 (sqrt (/ (pow im 2) re))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (+ (* -1/16 (/ (pow im 4) (* (pow re 3) (sqrt (/ (pow im 2) re))))) (+ (* 1/32 (/ (pow im 6) (* (pow re 5) (sqrt (/ (pow im 2) re))))) (* 1/2 (sqrt (/ (pow im 2) re)))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (+ (* -1/16 (/ (pow im 4) (* (pow re 3) (sqrt (/ (pow im 2) re))))) (+ (* -1/256 (/ (pow im 8) (* (pow re 6) (pow (sqrt (/ (pow im 2) re)) 3)))) (+ (* 1/32 (/ (pow im 6) (* (pow re 5) (sqrt (/ (pow im 2) re))))) (* 1/2 (sqrt (/ (pow im 2) re))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (sqrt (/ (pow im 2) re))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (+ (sqrt (/ (pow im 2) re)) (* -1/8 (/ (pow im 4) (* (pow re 3) (sqrt (/ (pow im 2) re))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (+ (sqrt (/ (pow im 2) re)) (+ (* -1/8 (/ (pow im 4) (* (pow re 3) (sqrt (/ (pow im 2) re))))) (* 1/16 (/ (pow im 6) (* (pow re 5) (sqrt (/ (pow im 2) re)))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (+ (sqrt (/ (pow im 2) re)) (+ (* -1/8 (/ (pow im 4) (* (pow re 3) (sqrt (/ (pow im 2) re))))) (+ (* -1/128 (/ (pow im 8) (* (pow re 6) (pow (sqrt (/ (pow im 2) re)) 3)))) (* 1/16 (/ (pow im 6) (* (pow re 5) (sqrt (/ (pow im 2) 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 (* re (sqrt (/ -4 re))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* -1 (* re (+ (* -1/4 (/ (pow im 2) (* (pow re 3) (sqrt (/ -4 re))))) (* 1/2 (sqrt (/ -4 re))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* -1 (* re (+ (* -1 (/ (+ (* -1/16 (/ (pow im 4) (* (pow re 2) (sqrt (/ -4 re))))) (* 1/4 (/ (pow im 2) (sqrt (/ -4 re))))) (pow re 3))) (* 1/2 (sqrt (/ -4 re))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* -1 (* re (+ (* -1 (/ (+ (* -1/16 (/ (pow im 4) (* (pow re 2) (sqrt (/ -4 re))))) (+ (* 1/16 (/ (pow im 4) (* (pow re 3) (pow (sqrt (/ -4 re)) 3)))) (* 1/4 (/ (pow im 2) (sqrt (/ -4 re)))))) (pow re 3))) (* 1/2 (sqrt (/ -4 re))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* -1 (* re (sqrt (/ -4 re))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* -1 (* re (+ (sqrt (/ -4 re)) (* -1/2 (/ (pow im 2) (* (pow re 3) (sqrt (/ -4 re))))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* -1 (* re (+ (sqrt (/ -4 re)) (* -1 (/ (+ (* -1/8 (/ (pow im 4) (* (pow re 2) (sqrt (/ -4 re))))) (* 1/2 (/ (pow im 2) (sqrt (/ -4 re))))) (pow re 3))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* -1 (* re (+ (sqrt (/ -4 re)) (* -1 (/ (+ (* -1/8 (/ (pow im 4) (* (pow re 2) (sqrt (/ -4 re))))) (+ (* 1/8 (/ (pow im 4) (* (pow re 3) (pow (sqrt (/ -4 re)) 3)))) (* 1/2 (/ (pow im 2) (sqrt (/ -4 re)))))) (pow re 3))))))))
#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 (* 1/2 (sqrt (* 2 (- (sqrt (pow re 2)) re))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (+ (* 1/4 (/ (pow im 2) (* (sqrt (* 2 (- (sqrt (pow re 2)) re))) (sqrt (pow re 2))))) (* 1/2 (sqrt (* 2 (- (sqrt (pow re 2)) re)))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (+ (* 1/2 (sqrt (* 2 (- (sqrt (pow re 2)) re)))) (* (pow im 2) (+ (* -1/4 (/ (* (pow im 2) (+ (* 1/4 (/ 1 (* (pow (sqrt (* 2 (- (sqrt (pow re 2)) re))) 2) (pow (sqrt (pow re 2)) 2)))) (* 1/4 (/ 1 (pow (sqrt (pow re 2)) 3))))) (sqrt (* 2 (- (sqrt (pow re 2)) re))))) (* 1/4 (/ 1 (* (sqrt (* 2 (- (sqrt (pow re 2)) re))) (sqrt (pow re 2))))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (+ (* 1/2 (sqrt (* 2 (- (sqrt (pow re 2)) re)))) (* (pow im 2) (+ (* (pow im 2) (+ (* -1/4 (/ (+ (* 1/4 (/ 1 (* (pow (sqrt (* 2 (- (sqrt (pow re 2)) re))) 2) (pow (sqrt (pow re 2)) 2)))) (* 1/4 (/ 1 (pow (sqrt (pow re 2)) 3)))) (sqrt (* 2 (- (sqrt (pow re 2)) re))))) (* 1/4 (/ (* (pow im 2) (- (* 1/8 (/ 1 (pow (sqrt (pow re 2)) 5))) (* -1/2 (/ (+ (* 1/4 (/ 1 (* (pow (sqrt (* 2 (- (sqrt (pow re 2)) re))) 2) (pow (sqrt (pow re 2)) 2)))) (* 1/4 (/ 1 (pow (sqrt (pow re 2)) 3)))) (* (pow (sqrt (* 2 (- (sqrt (pow re 2)) re))) 2) (sqrt (pow re 2))))))) (sqrt (* 2 (- (sqrt (pow re 2)) re))))))) (* 1/4 (/ 1 (* (sqrt (* 2 (- (sqrt (pow re 2)) re))) (sqrt (pow re 2))))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (sqrt (* 2 (- (sqrt (pow re 2)) re)))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (+ (sqrt (* 2 (- (sqrt (pow re 2)) re))) (* 1/2 (/ (pow im 2) (* (sqrt (* 2 (- (sqrt (pow re 2)) re))) (sqrt (pow re 2))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (+ (sqrt (* 2 (- (sqrt (pow re 2)) re))) (* (pow im 2) (+ (* -1/2 (/ (* (pow im 2) (+ (* 1/4 (/ 1 (* (pow (sqrt (* 2 (- (sqrt (pow re 2)) re))) 2) (pow (sqrt (pow re 2)) 2)))) (* 1/4 (/ 1 (pow (sqrt (pow re 2)) 3))))) (sqrt (* 2 (- (sqrt (pow re 2)) re))))) (* 1/2 (/ 1 (* (sqrt (* 2 (- (sqrt (pow re 2)) re))) (sqrt (pow re 2))))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (+ (sqrt (* 2 (- (sqrt (pow re 2)) re))) (* (pow im 2) (+ (* (pow im 2) (+ (* -1/2 (/ (+ (* 1/4 (/ 1 (* (pow (sqrt (* 2 (- (sqrt (pow re 2)) re))) 2) (pow (sqrt (pow re 2)) 2)))) (* 1/4 (/ 1 (pow (sqrt (pow re 2)) 3)))) (sqrt (* 2 (- (sqrt (pow re 2)) re))))) (* 1/2 (/ (* (pow im 2) (- (* 1/8 (/ 1 (pow (sqrt (pow re 2)) 5))) (* -1/2 (/ (+ (* 1/4 (/ 1 (* (pow (sqrt (* 2 (- (sqrt (pow re 2)) re))) 2) (pow (sqrt (pow re 2)) 2)))) (* 1/4 (/ 1 (pow (sqrt (pow re 2)) 3)))) (* (pow (sqrt (* 2 (- (sqrt (pow re 2)) re))) 2) (sqrt (pow re 2))))))) (sqrt (* 2 (- (sqrt (pow re 2)) re))))))) (* 1/2 (/ 1 (* (sqrt (* 2 (- (sqrt (pow re 2)) re))) (sqrt (pow re 2))))))))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* 2 (- (sqrt (pow re 2)) re))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (+ (* 2 (- (sqrt (pow re 2)) re)) (/ (pow im 2) (sqrt (pow re 2))))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (+ (* 2 (- (sqrt (pow re 2)) re)) (* (pow im 2) (+ (* -1/4 (/ (pow im 2) (pow (sqrt (pow re 2)) 3))) (/ 1 (sqrt (pow re 2))))))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (+ (* 2 (- (sqrt (pow re 2)) re)) (* (pow im 2) (+ (* (pow im 2) (- (* 1/8 (/ (pow im 2) (pow (sqrt (pow re 2)) 5))) (* 1/4 (/ 1 (pow (sqrt (pow re 2)) 3))))) (/ 1 (sqrt (pow re 2))))))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (- (sqrt (pow re 2)) re)))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (- (+ (sqrt (pow re 2)) (* 1/2 (/ (pow im 2) (sqrt (pow re 2))))) re)))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (- (+ (sqrt (pow re 2)) (* (pow im 2) (+ (* -1/8 (/ (pow im 2) (pow (sqrt (pow re 2)) 3))) (* 1/2 (/ 1 (sqrt (pow re 2))))))) re)))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (- (+ (sqrt (pow re 2)) (* (pow im 2) (+ (* (pow im 2) (- (* 1/16 (/ (pow im 2) (pow (sqrt (pow re 2)) 5))) (* 1/8 (/ 1 (pow (sqrt (pow re 2)) 3))))) (* 1/2 (/ 1 (sqrt (pow re 2))))))) re)))
#s(approx (sqrt (+ (* re re) (* im im))) #s(hole binary64 (sqrt (pow re 2))))
#s(approx (sqrt (+ (* re re) (* im im))) #s(hole binary64 (+ (sqrt (pow re 2)) (* 1/2 (/ (pow im 2) (sqrt (pow re 2)))))))
#s(approx (sqrt (+ (* re re) (* im im))) #s(hole binary64 (+ (sqrt (pow re 2)) (* (pow im 2) (+ (* -1/8 (/ (pow im 2) (pow (sqrt (pow re 2)) 3))) (* 1/2 (/ 1 (sqrt (pow re 2)))))))))
#s(approx (sqrt (+ (* re re) (* im im))) #s(hole binary64 (+ (sqrt (pow re 2)) (* (pow im 2) (+ (* (pow im 2) (- (* 1/16 (/ (pow im 2) (pow (sqrt (pow re 2)) 5))) (* 1/8 (/ 1 (pow (sqrt (pow re 2)) 3))))) (* 1/2 (/ 1 (sqrt (pow re 2)))))))))
#s(approx im #s(hole binary64 im))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* 1/2 (* im (sqrt (/ 2 im))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* im (+ (* -1/2 (/ re (* (pow im 2) (sqrt (/ 2 im))))) (* 1/2 (sqrt (/ 2 im)))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* im (+ (* -1/2 (/ re (* (pow im 2) (sqrt (/ 2 im))))) (+ (* 1/4 (/ (pow re 2) (* (pow im 3) (sqrt (/ 2 im))))) (* 1/2 (sqrt (/ 2 im))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* im (+ (* -1/2 (/ re (* (pow im 2) (sqrt (/ 2 im))))) (+ (* -1/4 (/ (pow re 2) (* (pow im 4) (pow (sqrt (/ 2 im)) 3)))) (+ (* 1/4 (/ (pow re 2) (* (pow im 3) (sqrt (/ 2 im))))) (* 1/2 (sqrt (/ 2 im)))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* im (sqrt (/ 2 im)))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* im (+ (sqrt (/ 2 im)) (* -1 (/ re (* (pow im 2) (sqrt (/ 2 im)))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* im (+ (sqrt (/ 2 im)) (+ (* -1 (/ re (* (pow im 2) (sqrt (/ 2 im))))) (* 1/2 (/ (pow re 2) (* (pow im 3) (sqrt (/ 2 im))))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* im (+ (sqrt (/ 2 im)) (+ (* -1 (/ re (* (pow im 2) (sqrt (/ 2 im))))) (+ (* -1/2 (/ (pow re 2) (* (pow im 4) (pow (sqrt (/ 2 im)) 3)))) (* 1/2 (/ (pow re 2) (* (pow im 3) (sqrt (/ 2 im)))))))))))
#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 (* 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 (* im (sqrt (/ -2 im))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* -1 (* im (+ (* -1/2 (/ re (* (pow im 2) (sqrt (/ -2 im))))) (* 1/2 (sqrt (/ -2 im))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* -1 (* im (+ (* -1/2 (/ re (* (pow im 2) (sqrt (/ -2 im))))) (+ (* -1/4 (/ (pow re 2) (* (pow im 3) (sqrt (/ -2 im))))) (* 1/2 (sqrt (/ -2 im)))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* -1 (* im (+ (* -1 (/ (+ (* 1/4 (/ (pow re 2) (sqrt (/ -2 im)))) (* 1/4 (/ (pow re 2) (* im (pow (sqrt (/ -2 im)) 3))))) (pow im 3))) (+ (* -1/2 (/ re (* (pow im 2) (sqrt (/ -2 im))))) (* 1/2 (sqrt (/ -2 im)))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* -1 (* im (sqrt (/ -2 im))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* -1 (* im (+ (sqrt (/ -2 im)) (* -1 (/ re (* (pow im 2) (sqrt (/ -2 im))))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* -1 (* im (+ (sqrt (/ -2 im)) (+ (* -1 (/ re (* (pow im 2) (sqrt (/ -2 im))))) (* -1/2 (/ (pow re 2) (* (pow im 3) (sqrt (/ -2 im)))))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* -1 (* im (+ (sqrt (/ -2 im)) (+ (* -1 (/ re (* (pow im 2) (sqrt (/ -2 im))))) (* -1 (/ (+ (* 1/2 (/ (pow re 2) (sqrt (/ -2 im)))) (* 1/2 (/ (pow re 2) (* im (pow (sqrt (/ -2 im)) 3))))) (pow im 3)))))))))
#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
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
@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)
3.0ms
im
@inf
((* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (* 2 (- (sqrt (+ (* re re) (* im im))) re)) 2 (- (sqrt (+ (* re re) (* im im))) re) (sqrt (+ (* re re) (* im im))) (+ (* re re) (* im im)) (* re re) re (* im im) im)
3.0ms
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) (sqrt (+ (* re re) (* im im))) (+ (* re re) (* im im)) (* re re) re (* im im) im)
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 re) (* im im)) (* re re) re (* im im) im)

rewrite234.0ms (5.2%)

Memory
-0.3MiB live, 185.7MiB allocated; 18ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
06694899
06814688
145934382
089883633
1205143633
Stop Event
saturated
node-limit
iter-limit
Counts
134 → 240
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 (* 2 (sqrt (pow im 2)))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (+ (* -1/2 (/ re (sqrt (* 2 (sqrt (pow im 2)))))) (* 1/2 (sqrt (* 2 (sqrt (pow im 2))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (+ (* 1/2 (sqrt (* 2 (sqrt (pow im 2))))) (* re (- (* 1/4 (/ (* re (- (/ 1 (sqrt (pow im 2))) (/ 1 (pow (sqrt (* 2 (sqrt (pow im 2)))) 2)))) (sqrt (* 2 (sqrt (pow im 2)))))) (* 1/2 (/ 1 (sqrt (* 2 (sqrt (pow im 2)))))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (+ (* 1/2 (sqrt (* 2 (sqrt (pow im 2))))) (* re (- (* re (+ (* 1/4 (/ (* re (- (/ 1 (sqrt (pow im 2))) (/ 1 (pow (sqrt (* 2 (sqrt (pow im 2)))) 2)))) (pow (sqrt (* 2 (sqrt (pow im 2)))) 3))) (* 1/4 (/ (- (/ 1 (sqrt (pow im 2))) (/ 1 (pow (sqrt (* 2 (sqrt (pow im 2)))) 2))) (sqrt (* 2 (sqrt (pow im 2)))))))) (* 1/2 (/ 1 (sqrt (* 2 (sqrt (pow im 2)))))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (sqrt (* 2 (sqrt (pow im 2))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (+ (sqrt (* 2 (sqrt (pow im 2)))) (* -1 (/ re (sqrt (* 2 (sqrt (pow im 2)))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (+ (sqrt (* 2 (sqrt (pow im 2)))) (* re (- (* 1/2 (/ (* re (- (/ 1 (sqrt (pow im 2))) (/ 1 (pow (sqrt (* 2 (sqrt (pow im 2)))) 2)))) (sqrt (* 2 (sqrt (pow im 2)))))) (/ 1 (sqrt (* 2 (sqrt (pow im 2))))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (+ (sqrt (* 2 (sqrt (pow im 2)))) (* re (- (* re (+ (* 1/2 (/ (* re (- (/ 1 (sqrt (pow im 2))) (/ 1 (pow (sqrt (* 2 (sqrt (pow im 2)))) 2)))) (pow (sqrt (* 2 (sqrt (pow im 2)))) 3))) (* 1/2 (/ (- (/ 1 (sqrt (pow im 2))) (/ 1 (pow (sqrt (* 2 (sqrt (pow im 2)))) 2))) (sqrt (* 2 (sqrt (pow im 2)))))))) (/ 1 (sqrt (* 2 (sqrt (pow im 2))))))))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* 2 (sqrt (pow im 2)))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (+ (* -2 re) (* 2 (sqrt (pow im 2))))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (+ (* 2 (sqrt (pow im 2))) (* re (- (/ re (sqrt (pow im 2))) 2)))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (+ (* 2 (sqrt (pow im 2))) (* re (- (* re (+ (* -1/4 (/ (pow re 2) (pow (sqrt (pow im 2)) 3))) (/ 1 (sqrt (pow im 2))))) 2)))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (sqrt (pow im 2))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (+ (sqrt (pow im 2)) (* -1 re))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (+ (sqrt (pow im 2)) (* re (- (* 1/2 (/ re (sqrt (pow im 2)))) 1)))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (+ (sqrt (pow im 2)) (* re (- (* re (+ (* -1/8 (/ (pow re 2) (pow (sqrt (pow im 2)) 3))) (* 1/2 (/ 1 (sqrt (pow im 2)))))) 1)))))
#s(approx (sqrt (+ (* re re) (* im im))) #s(hole binary64 (+ (sqrt (pow im 2)) (* 1/2 (/ (pow re 2) (sqrt (pow im 2)))))))
#s(approx (sqrt (+ (* re re) (* im im))) #s(hole binary64 (+ (sqrt (pow im 2)) (* (pow re 2) (+ (* -1/8 (/ (pow re 2) (pow (sqrt (pow im 2)) 3))) (* 1/2 (/ 1 (sqrt (pow im 2)))))))))
#s(approx (sqrt (+ (* re re) (* im im))) #s(hole binary64 (+ (sqrt (pow im 2)) (* (pow re 2) (+ (* (pow re 2) (- (* 1/16 (/ (pow re 2) (pow (sqrt (pow im 2)) 5))) (* 1/8 (/ 1 (pow (sqrt (pow im 2)) 3))))) (* 1/2 (/ 1 (sqrt (pow im 2)))))))))
#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 (sqrt (/ (pow im 2) re)))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (+ (* -1/16 (/ (pow im 4) (* (pow re 3) (sqrt (/ (pow im 2) re))))) (* 1/2 (sqrt (/ (pow im 2) re))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (+ (* -1/16 (/ (pow im 4) (* (pow re 3) (sqrt (/ (pow im 2) re))))) (+ (* 1/32 (/ (pow im 6) (* (pow re 5) (sqrt (/ (pow im 2) re))))) (* 1/2 (sqrt (/ (pow im 2) re)))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (+ (* -1/16 (/ (pow im 4) (* (pow re 3) (sqrt (/ (pow im 2) re))))) (+ (* -1/256 (/ (pow im 8) (* (pow re 6) (pow (sqrt (/ (pow im 2) re)) 3)))) (+ (* 1/32 (/ (pow im 6) (* (pow re 5) (sqrt (/ (pow im 2) re))))) (* 1/2 (sqrt (/ (pow im 2) re))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (sqrt (/ (pow im 2) re))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (+ (sqrt (/ (pow im 2) re)) (* -1/8 (/ (pow im 4) (* (pow re 3) (sqrt (/ (pow im 2) re))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (+ (sqrt (/ (pow im 2) re)) (+ (* -1/8 (/ (pow im 4) (* (pow re 3) (sqrt (/ (pow im 2) re))))) (* 1/16 (/ (pow im 6) (* (pow re 5) (sqrt (/ (pow im 2) re)))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (+ (sqrt (/ (pow im 2) re)) (+ (* -1/8 (/ (pow im 4) (* (pow re 3) (sqrt (/ (pow im 2) re))))) (+ (* -1/128 (/ (pow im 8) (* (pow re 6) (pow (sqrt (/ (pow im 2) re)) 3)))) (* 1/16 (/ (pow im 6) (* (pow re 5) (sqrt (/ (pow im 2) 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 (* re (sqrt (/ -4 re))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* -1 (* re (+ (* -1/4 (/ (pow im 2) (* (pow re 3) (sqrt (/ -4 re))))) (* 1/2 (sqrt (/ -4 re))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* -1 (* re (+ (* -1 (/ (+ (* -1/16 (/ (pow im 4) (* (pow re 2) (sqrt (/ -4 re))))) (* 1/4 (/ (pow im 2) (sqrt (/ -4 re))))) (pow re 3))) (* 1/2 (sqrt (/ -4 re))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* -1 (* re (+ (* -1 (/ (+ (* -1/16 (/ (pow im 4) (* (pow re 2) (sqrt (/ -4 re))))) (+ (* 1/16 (/ (pow im 4) (* (pow re 3) (pow (sqrt (/ -4 re)) 3)))) (* 1/4 (/ (pow im 2) (sqrt (/ -4 re)))))) (pow re 3))) (* 1/2 (sqrt (/ -4 re))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* -1 (* re (sqrt (/ -4 re))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* -1 (* re (+ (sqrt (/ -4 re)) (* -1/2 (/ (pow im 2) (* (pow re 3) (sqrt (/ -4 re))))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* -1 (* re (+ (sqrt (/ -4 re)) (* -1 (/ (+ (* -1/8 (/ (pow im 4) (* (pow re 2) (sqrt (/ -4 re))))) (* 1/2 (/ (pow im 2) (sqrt (/ -4 re))))) (pow re 3))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* -1 (* re (+ (sqrt (/ -4 re)) (* -1 (/ (+ (* -1/8 (/ (pow im 4) (* (pow re 2) (sqrt (/ -4 re))))) (+ (* 1/8 (/ (pow im 4) (* (pow re 3) (pow (sqrt (/ -4 re)) 3)))) (* 1/2 (/ (pow im 2) (sqrt (/ -4 re)))))) (pow re 3))))))))
#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 (* 1/2 (sqrt (* 2 (- (sqrt (pow re 2)) re))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (+ (* 1/4 (/ (pow im 2) (* (sqrt (* 2 (- (sqrt (pow re 2)) re))) (sqrt (pow re 2))))) (* 1/2 (sqrt (* 2 (- (sqrt (pow re 2)) re)))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (+ (* 1/2 (sqrt (* 2 (- (sqrt (pow re 2)) re)))) (* (pow im 2) (+ (* -1/4 (/ (* (pow im 2) (+ (* 1/4 (/ 1 (* (pow (sqrt (* 2 (- (sqrt (pow re 2)) re))) 2) (pow (sqrt (pow re 2)) 2)))) (* 1/4 (/ 1 (pow (sqrt (pow re 2)) 3))))) (sqrt (* 2 (- (sqrt (pow re 2)) re))))) (* 1/4 (/ 1 (* (sqrt (* 2 (- (sqrt (pow re 2)) re))) (sqrt (pow re 2))))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (+ (* 1/2 (sqrt (* 2 (- (sqrt (pow re 2)) re)))) (* (pow im 2) (+ (* (pow im 2) (+ (* -1/4 (/ (+ (* 1/4 (/ 1 (* (pow (sqrt (* 2 (- (sqrt (pow re 2)) re))) 2) (pow (sqrt (pow re 2)) 2)))) (* 1/4 (/ 1 (pow (sqrt (pow re 2)) 3)))) (sqrt (* 2 (- (sqrt (pow re 2)) re))))) (* 1/4 (/ (* (pow im 2) (- (* 1/8 (/ 1 (pow (sqrt (pow re 2)) 5))) (* -1/2 (/ (+ (* 1/4 (/ 1 (* (pow (sqrt (* 2 (- (sqrt (pow re 2)) re))) 2) (pow (sqrt (pow re 2)) 2)))) (* 1/4 (/ 1 (pow (sqrt (pow re 2)) 3)))) (* (pow (sqrt (* 2 (- (sqrt (pow re 2)) re))) 2) (sqrt (pow re 2))))))) (sqrt (* 2 (- (sqrt (pow re 2)) re))))))) (* 1/4 (/ 1 (* (sqrt (* 2 (- (sqrt (pow re 2)) re))) (sqrt (pow re 2))))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (sqrt (* 2 (- (sqrt (pow re 2)) re)))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (+ (sqrt (* 2 (- (sqrt (pow re 2)) re))) (* 1/2 (/ (pow im 2) (* (sqrt (* 2 (- (sqrt (pow re 2)) re))) (sqrt (pow re 2))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (+ (sqrt (* 2 (- (sqrt (pow re 2)) re))) (* (pow im 2) (+ (* -1/2 (/ (* (pow im 2) (+ (* 1/4 (/ 1 (* (pow (sqrt (* 2 (- (sqrt (pow re 2)) re))) 2) (pow (sqrt (pow re 2)) 2)))) (* 1/4 (/ 1 (pow (sqrt (pow re 2)) 3))))) (sqrt (* 2 (- (sqrt (pow re 2)) re))))) (* 1/2 (/ 1 (* (sqrt (* 2 (- (sqrt (pow re 2)) re))) (sqrt (pow re 2))))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (+ (sqrt (* 2 (- (sqrt (pow re 2)) re))) (* (pow im 2) (+ (* (pow im 2) (+ (* -1/2 (/ (+ (* 1/4 (/ 1 (* (pow (sqrt (* 2 (- (sqrt (pow re 2)) re))) 2) (pow (sqrt (pow re 2)) 2)))) (* 1/4 (/ 1 (pow (sqrt (pow re 2)) 3)))) (sqrt (* 2 (- (sqrt (pow re 2)) re))))) (* 1/2 (/ (* (pow im 2) (- (* 1/8 (/ 1 (pow (sqrt (pow re 2)) 5))) (* -1/2 (/ (+ (* 1/4 (/ 1 (* (pow (sqrt (* 2 (- (sqrt (pow re 2)) re))) 2) (pow (sqrt (pow re 2)) 2)))) (* 1/4 (/ 1 (pow (sqrt (pow re 2)) 3)))) (* (pow (sqrt (* 2 (- (sqrt (pow re 2)) re))) 2) (sqrt (pow re 2))))))) (sqrt (* 2 (- (sqrt (pow re 2)) re))))))) (* 1/2 (/ 1 (* (sqrt (* 2 (- (sqrt (pow re 2)) re))) (sqrt (pow re 2))))))))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* 2 (- (sqrt (pow re 2)) re))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (+ (* 2 (- (sqrt (pow re 2)) re)) (/ (pow im 2) (sqrt (pow re 2))))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (+ (* 2 (- (sqrt (pow re 2)) re)) (* (pow im 2) (+ (* -1/4 (/ (pow im 2) (pow (sqrt (pow re 2)) 3))) (/ 1 (sqrt (pow re 2))))))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (+ (* 2 (- (sqrt (pow re 2)) re)) (* (pow im 2) (+ (* (pow im 2) (- (* 1/8 (/ (pow im 2) (pow (sqrt (pow re 2)) 5))) (* 1/4 (/ 1 (pow (sqrt (pow re 2)) 3))))) (/ 1 (sqrt (pow re 2))))))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (- (sqrt (pow re 2)) re)))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (- (+ (sqrt (pow re 2)) (* 1/2 (/ (pow im 2) (sqrt (pow re 2))))) re)))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (- (+ (sqrt (pow re 2)) (* (pow im 2) (+ (* -1/8 (/ (pow im 2) (pow (sqrt (pow re 2)) 3))) (* 1/2 (/ 1 (sqrt (pow re 2))))))) re)))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (- (+ (sqrt (pow re 2)) (* (pow im 2) (+ (* (pow im 2) (- (* 1/16 (/ (pow im 2) (pow (sqrt (pow re 2)) 5))) (* 1/8 (/ 1 (pow (sqrt (pow re 2)) 3))))) (* 1/2 (/ 1 (sqrt (pow re 2))))))) re)))
#s(approx (sqrt (+ (* re re) (* im im))) #s(hole binary64 (sqrt (pow re 2))))
#s(approx (sqrt (+ (* re re) (* im im))) #s(hole binary64 (+ (sqrt (pow re 2)) (* 1/2 (/ (pow im 2) (sqrt (pow re 2)))))))
#s(approx (sqrt (+ (* re re) (* im im))) #s(hole binary64 (+ (sqrt (pow re 2)) (* (pow im 2) (+ (* -1/8 (/ (pow im 2) (pow (sqrt (pow re 2)) 3))) (* 1/2 (/ 1 (sqrt (pow re 2)))))))))
#s(approx (sqrt (+ (* re re) (* im im))) #s(hole binary64 (+ (sqrt (pow re 2)) (* (pow im 2) (+ (* (pow im 2) (- (* 1/16 (/ (pow im 2) (pow (sqrt (pow re 2)) 5))) (* 1/8 (/ 1 (pow (sqrt (pow re 2)) 3))))) (* 1/2 (/ 1 (sqrt (pow re 2)))))))))
#s(approx im #s(hole binary64 im))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* 1/2 (* im (sqrt (/ 2 im))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* im (+ (* -1/2 (/ re (* (pow im 2) (sqrt (/ 2 im))))) (* 1/2 (sqrt (/ 2 im)))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* im (+ (* -1/2 (/ re (* (pow im 2) (sqrt (/ 2 im))))) (+ (* 1/4 (/ (pow re 2) (* (pow im 3) (sqrt (/ 2 im))))) (* 1/2 (sqrt (/ 2 im))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* im (+ (* -1/2 (/ re (* (pow im 2) (sqrt (/ 2 im))))) (+ (* -1/4 (/ (pow re 2) (* (pow im 4) (pow (sqrt (/ 2 im)) 3)))) (+ (* 1/4 (/ (pow re 2) (* (pow im 3) (sqrt (/ 2 im))))) (* 1/2 (sqrt (/ 2 im)))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* im (sqrt (/ 2 im)))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* im (+ (sqrt (/ 2 im)) (* -1 (/ re (* (pow im 2) (sqrt (/ 2 im)))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* im (+ (sqrt (/ 2 im)) (+ (* -1 (/ re (* (pow im 2) (sqrt (/ 2 im))))) (* 1/2 (/ (pow re 2) (* (pow im 3) (sqrt (/ 2 im))))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* im (+ (sqrt (/ 2 im)) (+ (* -1 (/ re (* (pow im 2) (sqrt (/ 2 im))))) (+ (* -1/2 (/ (pow re 2) (* (pow im 4) (pow (sqrt (/ 2 im)) 3)))) (* 1/2 (/ (pow re 2) (* (pow im 3) (sqrt (/ 2 im)))))))))))
#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 (* 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 (* im (sqrt (/ -2 im))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* -1 (* im (+ (* -1/2 (/ re (* (pow im 2) (sqrt (/ -2 im))))) (* 1/2 (sqrt (/ -2 im))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* -1 (* im (+ (* -1/2 (/ re (* (pow im 2) (sqrt (/ -2 im))))) (+ (* -1/4 (/ (pow re 2) (* (pow im 3) (sqrt (/ -2 im))))) (* 1/2 (sqrt (/ -2 im)))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* -1 (* im (+ (* -1 (/ (+ (* 1/4 (/ (pow re 2) (sqrt (/ -2 im)))) (* 1/4 (/ (pow re 2) (* im (pow (sqrt (/ -2 im)) 3))))) (pow im 3))) (+ (* -1/2 (/ re (* (pow im 2) (sqrt (/ -2 im))))) (* 1/2 (sqrt (/ -2 im)))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* -1 (* im (sqrt (/ -2 im))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* -1 (* im (+ (sqrt (/ -2 im)) (* -1 (/ re (* (pow im 2) (sqrt (/ -2 im))))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* -1 (* im (+ (sqrt (/ -2 im)) (+ (* -1 (/ re (* (pow im 2) (sqrt (/ -2 im))))) (* -1/2 (/ (pow re 2) (* (pow im 3) (sqrt (/ -2 im)))))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* -1 (* im (+ (sqrt (/ -2 im)) (+ (* -1 (/ re (* (pow im 2) (sqrt (/ -2 im))))) (* -1 (/ (+ (* 1/2 (/ (pow re 2) (sqrt (/ -2 im)))) (* 1/2 (/ (pow re 2) (* im (pow (sqrt (/ -2 im)) 3))))) (pow im 3)))))))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* -2 im)))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* -1 (* im (+ 2 (* 2 (/ re im)))))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* -1 (* im (+ 2 (* -1 (/ (+ (* -2 re) (* -1 (/ (pow re 2) im))) im)))))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* -1 (* im (+ 2 (* -1 (/ (+ (* -2 re) (* -1 (/ (+ (* -1/4 (/ (pow re 4) (pow im 2))) (pow re 2)) im))) im)))))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (* -1 im)))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (* -1 (* im (+ 1 (/ re im))))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (* -1 (* im (+ 1 (* -1 (/ (- (* -1/2 (/ (pow re 2) im)) re) im)))))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (* -1 (* im (+ 1 (* -1 (/ (- (* -1 (/ (+ (* -1/8 (/ (pow re 4) (pow im 2))) (* 1/2 (pow re 2))) im)) re) im)))))))
#s(approx (sqrt (+ (* re re) (* im im))) #s(hole binary64 (* -1 (* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2))))))))
#s(approx (sqrt (+ (* re re) (* im im))) #s(hole binary64 (* -1 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2)))))))))
#s(approx (sqrt (+ (* re re) (* im im))) #s(hole binary64 (* -1 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (+ (* 1/16 (/ (pow re 6) (pow im 6))) (* 1/2 (/ (pow re 2) (pow im 2))))))))))
Outputs
(*.f64 (sqrt.f64 (*.f64 (-.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re))) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 (-.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re))) re) #s(literal 2 binary64))))
#s(literal 1/2 binary64)
(pow.f64 (*.f64 (-.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re))) re) #s(literal 2 binary64)) #s(literal 1/2 binary64))
(sqrt.f64 (*.f64 (sqrt.f64 (*.f64 (-.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re))) re) #s(literal 2 binary64))) (sqrt.f64 (*.f64 (-.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re))) re) #s(literal 2 binary64)))))
(sqrt.f64 (*.f64 (-.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re))) re) #s(literal 2 binary64)))
(fabs.f64 (neg.f64 (sqrt.f64 (*.f64 (-.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re))) re) #s(literal 2 binary64)))))
(fabs.f64 (sqrt.f64 (*.f64 (-.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re))) re) #s(literal 2 binary64))))
(*.f64 (-.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re))) re) #s(literal 2 binary64))
(*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re))) re))
(+.f64 (-.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re))) re) (-.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re))) re))
#s(literal 2 binary64)
(neg.f64 (-.f64 re (sqrt.f64 (fma.f64 im im (*.f64 re re)))))
(-.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re))) re)
(+.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re))) (neg.f64 re))
(pow.f64 (fma.f64 im im (*.f64 re re)) #s(literal 1/2 binary64))
(sqrt.f64 (*.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re))) (sqrt.f64 (fma.f64 im im (*.f64 re re)))))
(sqrt.f64 (fma.f64 im im (*.f64 re re)))
(fabs.f64 (neg.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re)))))
(fabs.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re))))
(hypot.f64 (neg.f64 (neg.f64 im)) (neg.f64 (neg.f64 re)))
(hypot.f64 (neg.f64 (neg.f64 im)) (neg.f64 (fabs.f64 re)))
(hypot.f64 (neg.f64 (neg.f64 im)) (neg.f64 re))
(hypot.f64 (neg.f64 (neg.f64 im)) (fabs.f64 re))
(hypot.f64 (neg.f64 (neg.f64 im)) re)
(hypot.f64 (neg.f64 (neg.f64 re)) (neg.f64 (neg.f64 im)))
(hypot.f64 (neg.f64 (neg.f64 re)) (neg.f64 (fabs.f64 im)))
(hypot.f64 (neg.f64 (neg.f64 re)) (neg.f64 im))
(hypot.f64 (neg.f64 (neg.f64 re)) (fabs.f64 im))
(hypot.f64 (neg.f64 (neg.f64 re)) im)
(hypot.f64 (neg.f64 (fabs.f64 im)) (neg.f64 (neg.f64 re)))
(hypot.f64 (neg.f64 (fabs.f64 im)) (neg.f64 (fabs.f64 re)))
(hypot.f64 (neg.f64 (fabs.f64 im)) (neg.f64 re))
(hypot.f64 (neg.f64 (fabs.f64 im)) (fabs.f64 re))
(hypot.f64 (neg.f64 (fabs.f64 im)) re)
(hypot.f64 (neg.f64 (fabs.f64 re)) (neg.f64 (neg.f64 im)))
(hypot.f64 (neg.f64 (fabs.f64 re)) (neg.f64 (fabs.f64 im)))
(hypot.f64 (neg.f64 (fabs.f64 re)) (neg.f64 im))
(hypot.f64 (neg.f64 (fabs.f64 re)) (fabs.f64 im))
(hypot.f64 (neg.f64 (fabs.f64 re)) im)
(hypot.f64 (neg.f64 im) (neg.f64 (neg.f64 re)))
(hypot.f64 (neg.f64 im) (neg.f64 (fabs.f64 re)))
(hypot.f64 (neg.f64 im) (neg.f64 re))
(hypot.f64 (neg.f64 im) (fabs.f64 re))
(hypot.f64 (neg.f64 im) re)
(hypot.f64 (neg.f64 re) (neg.f64 (neg.f64 im)))
(hypot.f64 (neg.f64 re) (neg.f64 (fabs.f64 im)))
(hypot.f64 (neg.f64 re) (neg.f64 im))
(hypot.f64 (neg.f64 re) (fabs.f64 im))
(hypot.f64 (neg.f64 re) im)
(hypot.f64 (fabs.f64 re) (neg.f64 (neg.f64 im)))
(hypot.f64 (fabs.f64 re) (neg.f64 (fabs.f64 im)))
(hypot.f64 (fabs.f64 re) (neg.f64 im))
(hypot.f64 (fabs.f64 re) (fabs.f64 im))
(hypot.f64 (fabs.f64 re) im)
(hypot.f64 (fabs.f64 im) (neg.f64 (neg.f64 re)))
(hypot.f64 (fabs.f64 im) (neg.f64 (fabs.f64 re)))
(hypot.f64 (fabs.f64 im) (neg.f64 re))
(hypot.f64 (fabs.f64 im) (fabs.f64 re))
(hypot.f64 (fabs.f64 im) re)
(hypot.f64 im (neg.f64 (neg.f64 re)))
(hypot.f64 im (neg.f64 (fabs.f64 re)))
(hypot.f64 im (neg.f64 re))
(hypot.f64 im (fabs.f64 re))
(hypot.f64 im re)
(hypot.f64 re (neg.f64 (neg.f64 im)))
(hypot.f64 re (neg.f64 (fabs.f64 im)))
(hypot.f64 re (neg.f64 im))
(hypot.f64 re (fabs.f64 im))
(hypot.f64 re im)
(fma.f64 (neg.f64 (neg.f64 im)) (neg.f64 (neg.f64 im)) (*.f64 re re))
(fma.f64 (neg.f64 (neg.f64 re)) (neg.f64 (neg.f64 re)) (*.f64 im im))
(fma.f64 (neg.f64 (fabs.f64 im)) (neg.f64 (fabs.f64 im)) (*.f64 re re))
(fma.f64 (neg.f64 (fabs.f64 re)) (neg.f64 (fabs.f64 re)) (*.f64 im im))
(fma.f64 (neg.f64 im) (neg.f64 im) (*.f64 re re))
(fma.f64 (neg.f64 re) (neg.f64 re) (*.f64 im im))
(fma.f64 (fabs.f64 re) (fabs.f64 re) (*.f64 im im))
(fma.f64 (fabs.f64 im) (fabs.f64 im) (*.f64 re re))
(fma.f64 im im (*.f64 re re))
(fma.f64 re re (*.f64 im im))
(-.f64 (*.f64 re re) (*.f64 (neg.f64 im) im))
(-.f64 (*.f64 re re) (neg.f64 (*.f64 im im)))
(-.f64 (*.f64 im im) (neg.f64 (*.f64 re re)))
(+.f64 (*.f64 re re) (*.f64 im im))
(+.f64 (*.f64 im im) (*.f64 re re))
(*.f64 (neg.f64 (neg.f64 re)) (neg.f64 (neg.f64 re)))
(*.f64 (neg.f64 (fabs.f64 re)) (neg.f64 (fabs.f64 re)))
(*.f64 (neg.f64 re) (neg.f64 re))
(*.f64 (fabs.f64 re) (fabs.f64 re))
(*.f64 re re)
(pow.f64 (neg.f64 (neg.f64 (fabs.f64 re))) #s(literal 2 binary64))
(pow.f64 (*.f64 (*.f64 re re) (*.f64 re re)) #s(literal 1/2 binary64))
(pow.f64 (neg.f64 (neg.f64 re)) #s(literal 2 binary64))
(pow.f64 (neg.f64 (fabs.f64 re)) #s(literal 2 binary64))
(pow.f64 (neg.f64 re) #s(literal 2 binary64))
(pow.f64 (fabs.f64 re) #s(literal 2 binary64))
(pow.f64 (*.f64 re re) #s(literal 1 binary64))
(pow.f64 re #s(literal 2 binary64))
(sqrt.f64 (*.f64 (*.f64 re re) (*.f64 re re)))
(fabs.f64 (neg.f64 (*.f64 re re)))
(fabs.f64 (*.f64 re re))
re
(*.f64 (neg.f64 (neg.f64 im)) (neg.f64 (neg.f64 im)))
(*.f64 (neg.f64 (fabs.f64 im)) (neg.f64 (fabs.f64 im)))
(*.f64 (neg.f64 im) (neg.f64 im))
(*.f64 (fabs.f64 im) (fabs.f64 im))
(*.f64 im im)
(pow.f64 (neg.f64 (neg.f64 im)) #s(literal 2 binary64))
(pow.f64 (*.f64 (*.f64 im im) (*.f64 im im)) #s(literal 1/2 binary64))
(pow.f64 (neg.f64 (fabs.f64 im)) #s(literal 2 binary64))
(pow.f64 (neg.f64 im) #s(literal 2 binary64))
(pow.f64 (fabs.f64 im) #s(literal 2 binary64))
(pow.f64 (*.f64 im im) #s(literal 1 binary64))
(pow.f64 im #s(literal 2 binary64))
(sqrt.f64 (*.f64 (*.f64 im im) (*.f64 im im)))
(fabs.f64 (neg.f64 (*.f64 im im)))
(fabs.f64 (*.f64 im im))
im
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 (sqrt.f64 (*.f64 (fabs.f64 im) #s(literal 2 binary64))) #s(literal 1/2 binary64)))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (fma.f64 (/.f64 re (sqrt.f64 (*.f64 (fabs.f64 im) #s(literal 2 binary64)))) #s(literal -1/2 binary64) (*.f64 (sqrt.f64 (*.f64 (fabs.f64 im) #s(literal 2 binary64))) #s(literal 1/2 binary64))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (fma.f64 (/.f64 (-.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (fabs.f64 im)) (/.f64 #s(literal 1 binary64) (*.f64 (fabs.f64 im) #s(literal 2 binary64)))) re)) #s(literal 1/2 binary64)) (sqrt.f64 (*.f64 (fabs.f64 im) #s(literal 2 binary64)))) re (*.f64 (sqrt.f64 (*.f64 (fabs.f64 im) #s(literal 2 binary64))) #s(literal 1/2 binary64))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (fma.f64 re (-.f64 (*.f64 (*.f64 #s(literal 1/4 binary64) (fma.f64 re (/.f64 (-.f64 (/.f64 #s(literal 1 binary64) (fabs.f64 im)) (/.f64 #s(literal 1 binary64) (*.f64 (fabs.f64 im) #s(literal 2 binary64)))) (*.f64 (sqrt.f64 (*.f64 (fabs.f64 im) #s(literal 2 binary64))) (*.f64 (fabs.f64 im) #s(literal 2 binary64)))) (/.f64 (-.f64 (/.f64 #s(literal 1 binary64) (fabs.f64 im)) (/.f64 #s(literal 1 binary64) (*.f64 (fabs.f64 im) #s(literal 2 binary64)))) (sqrt.f64 (*.f64 (fabs.f64 im) #s(literal 2 binary64)))))) re) (/.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 (fabs.f64 im) #s(literal 2 binary64))))) (*.f64 (sqrt.f64 (*.f64 (fabs.f64 im) #s(literal 2 binary64))) #s(literal 1/2 binary64))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (sqrt.f64 (*.f64 (fabs.f64 im) #s(literal 2 binary64))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (+.f64 (/.f64 (neg.f64 re) (sqrt.f64 (*.f64 (fabs.f64 im) #s(literal 2 binary64)))) (sqrt.f64 (*.f64 (fabs.f64 im) #s(literal 2 binary64)))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (fma.f64 (/.f64 (-.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (fabs.f64 im)) (/.f64 #s(literal 1 binary64) (*.f64 (fabs.f64 im) #s(literal 2 binary64)))) re)) #s(literal 1 binary64)) (sqrt.f64 (*.f64 (fabs.f64 im) #s(literal 2 binary64)))) re (sqrt.f64 (*.f64 (fabs.f64 im) #s(literal 2 binary64)))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (fma.f64 re (-.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (fma.f64 re (/.f64 (-.f64 (/.f64 #s(literal 1 binary64) (fabs.f64 im)) (/.f64 #s(literal 1 binary64) (*.f64 (fabs.f64 im) #s(literal 2 binary64)))) (*.f64 (sqrt.f64 (*.f64 (fabs.f64 im) #s(literal 2 binary64))) (*.f64 (fabs.f64 im) #s(literal 2 binary64)))) (/.f64 (-.f64 (/.f64 #s(literal 1 binary64) (fabs.f64 im)) (/.f64 #s(literal 1 binary64) (*.f64 (fabs.f64 im) #s(literal 2 binary64)))) (sqrt.f64 (*.f64 (fabs.f64 im) #s(literal 2 binary64)))))) re) (/.f64 #s(literal 1 binary64) (sqrt.f64 (*.f64 (fabs.f64 im) #s(literal 2 binary64))))) (sqrt.f64 (*.f64 (fabs.f64 im) #s(literal 2 binary64)))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (fabs.f64 im) #s(literal 2 binary64)))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (fma.f64 #s(literal -2 binary64) re (*.f64 (fabs.f64 im) #s(literal 2 binary64))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (fma.f64 (-.f64 (/.f64 re (fabs.f64 im)) #s(literal 2 binary64)) re (*.f64 (fabs.f64 im) #s(literal 2 binary64))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (fma.f64 (fma.f64 (fma.f64 (/.f64 (*.f64 re re) (*.f64 (fabs.f64 im) (*.f64 im im))) #s(literal -1/4 binary64) (/.f64 #s(literal 1 binary64) (fabs.f64 im))) re #s(literal -2 binary64)) re (*.f64 (fabs.f64 im) #s(literal 2 binary64))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) (fabs.f64 im))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) (+.f64 (neg.f64 re) (fabs.f64 im)))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) (fma.f64 (fma.f64 (/.f64 re (fabs.f64 im)) #s(literal 1/2 binary64) #s(literal -1 binary64)) re (fabs.f64 im)))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) (fma.f64 (fma.f64 (fma.f64 (/.f64 (*.f64 re re) (*.f64 (fabs.f64 im) (*.f64 im im))) #s(literal -1/8 binary64) (/.f64 #s(literal 1/2 binary64) (fabs.f64 im))) re #s(literal -1 binary64)) re (fabs.f64 im)))
#s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (/.f64 (*.f64 re re) (fabs.f64 im)) #s(literal 1/2 binary64) (fabs.f64 im)))
#s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 re re) (fma.f64 (/.f64 (*.f64 re re) (*.f64 (fabs.f64 im) (*.f64 im im))) #s(literal -1/8 binary64) (/.f64 #s(literal 1/2 binary64) (fabs.f64 im))) (fabs.f64 im)))
#s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (fma.f64 (-.f64 (*.f64 (*.f64 (*.f64 re re) (pow.f64 (fabs.f64 im) #s(literal -5 binary64))) #s(literal 1/16 binary64)) (/.f64 #s(literal 1/8 binary64) (*.f64 (fabs.f64 im) (*.f64 im im)))) (*.f64 re re) (/.f64 #s(literal 1/2 binary64) (fabs.f64 im))) (*.f64 re re) (fabs.f64 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 (fabs.f64 im) (sqrt.f64 re)) #s(literal 1/2 binary64)))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (*.f64 (*.f64 re re) re) (/.f64 (fabs.f64 im) (sqrt.f64 re)))) #s(literal -1/16 binary64) (*.f64 (/.f64 (fabs.f64 im) (sqrt.f64 re)) #s(literal 1/2 binary64))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (*.f64 (*.f64 re re) re) (/.f64 (fabs.f64 im) (sqrt.f64 re)))) #s(literal -1/16 binary64) (fma.f64 (/.f64 (pow.f64 im #s(literal 6 binary64)) (*.f64 (pow.f64 re #s(literal 5 binary64)) (/.f64 (fabs.f64 im) (sqrt.f64 re)))) #s(literal 1/32 binary64) (*.f64 (/.f64 (fabs.f64 im) (sqrt.f64 re)) #s(literal 1/2 binary64)))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (*.f64 (*.f64 re re) re) (/.f64 (fabs.f64 im) (sqrt.f64 re)))) #s(literal -1/16 binary64) (fma.f64 (/.f64 (pow.f64 im #s(literal 8 binary64)) (*.f64 (*.f64 (/.f64 (fabs.f64 im) (sqrt.f64 re)) (/.f64 (*.f64 im im) re)) (pow.f64 re #s(literal 6 binary64)))) #s(literal -1/256 binary64) (fma.f64 (/.f64 (pow.f64 im #s(literal 6 binary64)) (*.f64 (pow.f64 re #s(literal 5 binary64)) (/.f64 (fabs.f64 im) (sqrt.f64 re)))) #s(literal 1/32 binary64) (*.f64 (/.f64 (fabs.f64 im) (sqrt.f64 re)) #s(literal 1/2 binary64))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (/.f64 (fabs.f64 im) (sqrt.f64 re)))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (*.f64 (*.f64 re re) re) (/.f64 (fabs.f64 im) (sqrt.f64 re)))) #s(literal -1/8 binary64) (/.f64 (fabs.f64 im) (sqrt.f64 re))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (+.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 6 binary64)) (*.f64 (pow.f64 re #s(literal 5 binary64)) (/.f64 (fabs.f64 im) (sqrt.f64 re)))) #s(literal 1/16 binary64) (/.f64 (*.f64 #s(literal -1/8 binary64) (pow.f64 im #s(literal 4 binary64))) (*.f64 (*.f64 (*.f64 re re) re) (/.f64 (fabs.f64 im) (sqrt.f64 re))))) (/.f64 (fabs.f64 im) (sqrt.f64 re))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (+.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (*.f64 (*.f64 re re) re) (/.f64 (fabs.f64 im) (sqrt.f64 re)))) #s(literal -1/8 binary64) (fma.f64 #s(literal -1/128 binary64) (/.f64 (pow.f64 im #s(literal 8 binary64)) (*.f64 (*.f64 (/.f64 (fabs.f64 im) (sqrt.f64 re)) (/.f64 (*.f64 im im) re)) (pow.f64 re #s(literal 6 binary64)))) (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 6 binary64))) (*.f64 (pow.f64 re #s(literal 5 binary64)) (/.f64 (fabs.f64 im) (sqrt.f64 re)))))) (/.f64 (fabs.f64 im) (sqrt.f64 re))))
#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 (pow.f64 im #s(literal 4 binary64)) (*.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 (pow.f64 im #s(literal 4 binary64)) (*.f64 re re)) #s(literal -1/4 binary64) (fma.f64 (*.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal -4 binary64))) #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)) (pow.f64 re #s(literal -6 binary64)))) (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 re re)) #s(literal -1/4 binary64) (fma.f64 (*.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal -4 binary64))) #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 (pow.f64 im #s(literal 4 binary64)) (*.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 (pow.f64 im #s(literal 4 binary64)) (*.f64 re re)) #s(literal -1/8 binary64) (fma.f64 (*.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal -4 binary64))) #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)) (pow.f64 re #s(literal -6 binary64))) #s(literal -1/2 binary64) (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 re re)) #s(literal -1/8 binary64) (fma.f64 (*.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal -4 binary64))) #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 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal -4 binary64))) #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 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal -4 binary64))) #s(literal -1/8 binary64) (fma.f64 (*.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal -6 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 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) (*.f64 re re)))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 (*.f64 #s(literal -1/2 binary64) re) (sqrt.f64 (/.f64 #s(literal -4 binary64) re))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 (neg.f64 re) (fma.f64 (/.f64 (*.f64 im im) (*.f64 (sqrt.f64 (/.f64 #s(literal -4 binary64) re)) (*.f64 (*.f64 re re) re))) #s(literal -1/4 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal -4 binary64) re)) #s(literal 1/2 binary64)))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 (neg.f64 re) (fma.f64 (sqrt.f64 (/.f64 #s(literal -4 binary64) re)) #s(literal 1/2 binary64) (neg.f64 (/.f64 (fma.f64 (/.f64 (*.f64 im im) (sqrt.f64 (/.f64 #s(literal -4 binary64) re))) #s(literal 1/4 binary64) (/.f64 (*.f64 #s(literal -1/16 binary64) (pow.f64 im #s(literal 4 binary64))) (*.f64 (sqrt.f64 (/.f64 #s(literal -4 binary64) re)) (*.f64 re re)))) (*.f64 (*.f64 re re) re))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 (neg.f64 re) (fma.f64 (sqrt.f64 (/.f64 #s(literal -4 binary64) re)) #s(literal 1/2 binary64) (neg.f64 (/.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (sqrt.f64 (/.f64 #s(literal -4 binary64) re)) (*.f64 re re))) #s(literal -1/16 binary64) (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal -4 binary64) re)) (/.f64 #s(literal -4 binary64) re)) (*.f64 (*.f64 re re) re))) #s(literal 1/16 binary64) (/.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 im im)) (sqrt.f64 (/.f64 #s(literal -4 binary64) re))))) (*.f64 (*.f64 re re) re))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (neg.f64 re) (sqrt.f64 (/.f64 #s(literal -4 binary64) re))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (neg.f64 re) (fma.f64 (/.f64 (*.f64 im im) (*.f64 (sqrt.f64 (/.f64 #s(literal -4 binary64) re)) (*.f64 (*.f64 re re) re))) #s(literal -1/2 binary64) (sqrt.f64 (/.f64 #s(literal -4 binary64) re)))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (neg.f64 re) (+.f64 (neg.f64 (/.f64 (fma.f64 (/.f64 (*.f64 im im) (sqrt.f64 (/.f64 #s(literal -4 binary64) re))) #s(literal 1/2 binary64) (/.f64 (*.f64 #s(literal -1/8 binary64) (pow.f64 im #s(literal 4 binary64))) (*.f64 (sqrt.f64 (/.f64 #s(literal -4 binary64) re)) (*.f64 re re)))) (*.f64 (*.f64 re re) re))) (sqrt.f64 (/.f64 #s(literal -4 binary64) re)))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (neg.f64 re) (+.f64 (neg.f64 (/.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (sqrt.f64 (/.f64 #s(literal -4 binary64) re)) (*.f64 re re))) #s(literal -1/8 binary64) (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal -4 binary64) re)) (/.f64 #s(literal -4 binary64) re)) (*.f64 (*.f64 re re) re))) #s(literal 1/8 binary64) (/.f64 (*.f64 (*.f64 im im) #s(literal 1/2 binary64)) (sqrt.f64 (/.f64 #s(literal -4 binary64) re))))) (*.f64 (*.f64 re re) re))) (sqrt.f64 (/.f64 #s(literal -4 binary64) 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) (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 4 binary64))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (neg.f64 re) (+.f64 (fma.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal -4 binary64))) #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 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal -4 binary64))) #s(literal -1/4 binary64) (fma.f64 (*.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal -6 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 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal -4 binary64))) #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 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal -4 binary64))) #s(literal -1/8 binary64) (fma.f64 (*.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal -6 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 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal -4 binary64))) #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 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal -4 binary64))) #s(literal -1/8 binary64) (fma.f64 (*.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal -6 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 (sqrt.f64 (*.f64 (-.f64 (fabs.f64 re) re) #s(literal 2 binary64))) #s(literal 1/2 binary64)))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (fma.f64 (/.f64 (*.f64 im im) (*.f64 (sqrt.f64 (*.f64 (-.f64 (fabs.f64 re) re) #s(literal 2 binary64))) (fabs.f64 re))) #s(literal 1/4 binary64) (*.f64 (sqrt.f64 (*.f64 (-.f64 (fabs.f64 re) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (fma.f64 (sqrt.f64 (*.f64 (-.f64 (fabs.f64 re) re) #s(literal 2 binary64))) #s(literal 1/2 binary64) (*.f64 (fma.f64 (/.f64 (*.f64 (*.f64 im im) (+.f64 (/.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 (-.f64 (fabs.f64 re) re) #s(literal 2 binary64)) (*.f64 re re))) (/.f64 #s(literal 1/4 binary64) (*.f64 (fabs.f64 re) (*.f64 re re))))) (sqrt.f64 (*.f64 (-.f64 (fabs.f64 re) re) #s(literal 2 binary64)))) #s(literal -1/4 binary64) (/.f64 #s(literal 1/4 binary64) (*.f64 (sqrt.f64 (*.f64 (-.f64 (fabs.f64 re) re) #s(literal 2 binary64))) (fabs.f64 re)))) (*.f64 im im))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (fma.f64 (fma.f64 (/.f64 (fma.f64 #s(literal 1/4 binary64) (*.f64 (fma.f64 (pow.f64 (fabs.f64 re) #s(literal -5 binary64)) #s(literal 1/8 binary64) (*.f64 #s(literal 1/2 binary64) (/.f64 (+.f64 (/.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 (-.f64 (fabs.f64 re) re) #s(literal 2 binary64)) (*.f64 re re))) (/.f64 #s(literal 1/4 binary64) (*.f64 (fabs.f64 re) (*.f64 re re)))) (*.f64 (*.f64 (-.f64 (fabs.f64 re) re) #s(literal 2 binary64)) (fabs.f64 re))))) (*.f64 im im)) (*.f64 #s(literal -1/4 binary64) (+.f64 (/.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 (-.f64 (fabs.f64 re) re) #s(literal 2 binary64)) (*.f64 re re))) (/.f64 #s(literal 1/4 binary64) (*.f64 (fabs.f64 re) (*.f64 re re)))))) (sqrt.f64 (*.f64 (-.f64 (fabs.f64 re) re) #s(literal 2 binary64)))) (*.f64 im im) (/.f64 #s(literal 1/4 binary64) (*.f64 (sqrt.f64 (*.f64 (-.f64 (fabs.f64 re) re) #s(literal 2 binary64))) (fabs.f64 re)))) (*.f64 im im) (*.f64 (sqrt.f64 (*.f64 (-.f64 (fabs.f64 re) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (sqrt.f64 (*.f64 (-.f64 (fabs.f64 re) re) #s(literal 2 binary64))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (fma.f64 (/.f64 (*.f64 im im) (*.f64 (sqrt.f64 (*.f64 (-.f64 (fabs.f64 re) re) #s(literal 2 binary64))) (fabs.f64 re))) #s(literal 1/2 binary64) (sqrt.f64 (*.f64 (-.f64 (fabs.f64 re) re) #s(literal 2 binary64)))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (fma.f64 (fma.f64 (/.f64 (*.f64 (*.f64 im im) (+.f64 (/.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 (-.f64 (fabs.f64 re) re) #s(literal 2 binary64)) (*.f64 re re))) (/.f64 #s(literal 1/4 binary64) (*.f64 (fabs.f64 re) (*.f64 re re))))) (sqrt.f64 (*.f64 (-.f64 (fabs.f64 re) re) #s(literal 2 binary64)))) #s(literal -1/2 binary64) (/.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 (*.f64 (-.f64 (fabs.f64 re) re) #s(literal 2 binary64))) (fabs.f64 re)))) (*.f64 im im) (sqrt.f64 (*.f64 (-.f64 (fabs.f64 re) re) #s(literal 2 binary64)))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (fma.f64 (fma.f64 (/.f64 (fma.f64 #s(literal 1/2 binary64) (*.f64 (fma.f64 (pow.f64 (fabs.f64 re) #s(literal -5 binary64)) #s(literal 1/8 binary64) (*.f64 #s(literal 1/2 binary64) (/.f64 (+.f64 (/.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 (-.f64 (fabs.f64 re) re) #s(literal 2 binary64)) (*.f64 re re))) (/.f64 #s(literal 1/4 binary64) (*.f64 (fabs.f64 re) (*.f64 re re)))) (*.f64 (*.f64 (-.f64 (fabs.f64 re) re) #s(literal 2 binary64)) (fabs.f64 re))))) (*.f64 im im)) (*.f64 #s(literal -1/2 binary64) (+.f64 (/.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 (-.f64 (fabs.f64 re) re) #s(literal 2 binary64)) (*.f64 re re))) (/.f64 #s(literal 1/4 binary64) (*.f64 (fabs.f64 re) (*.f64 re re)))))) (sqrt.f64 (*.f64 (-.f64 (fabs.f64 re) re) #s(literal 2 binary64)))) (*.f64 im im) (/.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 (*.f64 (-.f64 (fabs.f64 re) re) #s(literal 2 binary64))) (fabs.f64 re)))) (*.f64 im im) (sqrt.f64 (*.f64 (-.f64 (fabs.f64 re) re) #s(literal 2 binary64)))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (-.f64 (fabs.f64 re) re) #s(literal 2 binary64)))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (fma.f64 (-.f64 (fabs.f64 re) re) #s(literal 2 binary64) (/.f64 (*.f64 im im) (fabs.f64 re))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (fma.f64 (fma.f64 (/.f64 (*.f64 im im) (*.f64 (fabs.f64 re) (*.f64 re re))) #s(literal -1/4 binary64) (/.f64 #s(literal 1 binary64) (fabs.f64 re))) (*.f64 im im) (*.f64 (-.f64 (fabs.f64 re) re) #s(literal 2 binary64))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (fma.f64 (fma.f64 (-.f64 (*.f64 (*.f64 (*.f64 im im) (pow.f64 (fabs.f64 re) #s(literal -5 binary64))) #s(literal 1/8 binary64)) (/.f64 #s(literal 1/4 binary64) (*.f64 (fabs.f64 re) (*.f64 re re)))) (*.f64 im im) (/.f64 #s(literal 1 binary64) (fabs.f64 re))) (*.f64 im im) (*.f64 (-.f64 (fabs.f64 re) re) #s(literal 2 binary64))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 (fabs.f64 re) re))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 (fma.f64 (/.f64 (*.f64 im im) (fabs.f64 re)) #s(literal 1/2 binary64) (fabs.f64 re)) re))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 (fma.f64 (*.f64 im im) (fma.f64 (/.f64 (*.f64 im im) (*.f64 (fabs.f64 re) (*.f64 re re))) #s(literal -1/8 binary64) (/.f64 #s(literal 1/2 binary64) (fabs.f64 re))) (fabs.f64 re)) re))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 (fma.f64 (fma.f64 (-.f64 (*.f64 (*.f64 (*.f64 im im) (pow.f64 (fabs.f64 re) #s(literal -5 binary64))) #s(literal 1/16 binary64)) (/.f64 #s(literal 1/8 binary64) (*.f64 (fabs.f64 re) (*.f64 re re)))) (*.f64 im im) (/.f64 #s(literal 1/2 binary64) (fabs.f64 re))) (*.f64 im im) (fabs.f64 re)) re))
#s(approx (sqrt (+ (* re re) (* im im))) (fabs.f64 re))
#s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (/.f64 (*.f64 im im) (fabs.f64 re)) #s(literal 1/2 binary64) (fabs.f64 re)))
#s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 im im) (fma.f64 (/.f64 (*.f64 im im) (*.f64 (fabs.f64 re) (*.f64 re re))) #s(literal -1/8 binary64) (/.f64 #s(literal 1/2 binary64) (fabs.f64 re))) (fabs.f64 re)))
#s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (fma.f64 (-.f64 (*.f64 (*.f64 (*.f64 im im) (pow.f64 (fabs.f64 re) #s(literal -5 binary64))) #s(literal 1/16 binary64)) (/.f64 #s(literal 1/8 binary64) (*.f64 (fabs.f64 re) (*.f64 re re)))) (*.f64 im im) (/.f64 #s(literal 1/2 binary64) (fabs.f64 re))) (*.f64 im im) (fabs.f64 re)))
#s(approx im im)
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 (*.f64 #s(literal 1/2 binary64) im) (sqrt.f64 (/.f64 #s(literal 2 binary64) im))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 (fma.f64 (/.f64 re (*.f64 (sqrt.f64 (/.f64 #s(literal 2 binary64) im)) (*.f64 im im))) #s(literal -1/2 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 2 binary64) im)) #s(literal 1/2 binary64))) im))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 (fma.f64 (/.f64 re (*.f64 (sqrt.f64 (/.f64 #s(literal 2 binary64) im)) (*.f64 im im))) #s(literal -1/2 binary64) (fma.f64 (/.f64 (*.f64 re re) (*.f64 (*.f64 (*.f64 im im) im) (sqrt.f64 (/.f64 #s(literal 2 binary64) im)))) #s(literal 1/4 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 2 binary64) im)) #s(literal 1/2 binary64)))) im))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 (fma.f64 (/.f64 re (*.f64 (sqrt.f64 (/.f64 #s(literal 2 binary64) im)) (*.f64 im im))) #s(literal -1/2 binary64) (fma.f64 (/.f64 (*.f64 re re) (*.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (sqrt.f64 (/.f64 #s(literal 2 binary64) im)) (/.f64 #s(literal 2 binary64) im)))) #s(literal -1/4 binary64) (fma.f64 (/.f64 (*.f64 re re) (*.f64 (*.f64 (*.f64 im im) im) (sqrt.f64 (/.f64 #s(literal 2 binary64) im)))) #s(literal 1/4 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 2 binary64) im)) #s(literal 1/2 binary64))))) im))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (sqrt.f64 (/.f64 #s(literal 2 binary64) im)) im))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (+.f64 (/.f64 (neg.f64 re) (*.f64 (sqrt.f64 (/.f64 #s(literal 2 binary64) im)) (*.f64 im im))) (sqrt.f64 (/.f64 #s(literal 2 binary64) im))) im))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (+.f64 (fma.f64 (/.f64 (*.f64 re re) (*.f64 (*.f64 (*.f64 im im) im) (sqrt.f64 (/.f64 #s(literal 2 binary64) im)))) #s(literal 1/2 binary64) (/.f64 (neg.f64 re) (*.f64 (sqrt.f64 (/.f64 #s(literal 2 binary64) im)) (*.f64 im im)))) (sqrt.f64 (/.f64 #s(literal 2 binary64) im))) im))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (+.f64 (+.f64 (fma.f64 (/.f64 (*.f64 re re) (*.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (sqrt.f64 (/.f64 #s(literal 2 binary64) im)) (/.f64 #s(literal 2 binary64) im)))) #s(literal -1/2 binary64) (*.f64 (/.f64 (*.f64 re re) (*.f64 (*.f64 (*.f64 im im) im) (sqrt.f64 (/.f64 #s(literal 2 binary64) im)))) #s(literal 1/2 binary64))) (/.f64 (neg.f64 re) (*.f64 (sqrt.f64 (/.f64 #s(literal 2 binary64) im)) (*.f64 im im)))) (sqrt.f64 (/.f64 #s(literal 2 binary64) im))) im))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (+.f64 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 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal -4 binary64))) #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 #s(literal 1 binary64) (/.f64 re im)) 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 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal -4 binary64))) #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 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal -4 binary64))) #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 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal -4 binary64))) #s(literal -1/8 binary64) (fma.f64 (*.f64 (pow.f64 re #s(literal 6 binary64)) (pow.f64 im #s(literal -6 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 (fma.f64 (/.f64 re im) (/.f64 re im) #s(literal 1 binary64)) (*.f64 im im)))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 (*.f64 #s(literal -1/2 binary64) im) (sqrt.f64 (/.f64 #s(literal -2 binary64) im))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 (neg.f64 im) (fma.f64 (/.f64 re (*.f64 (sqrt.f64 (/.f64 #s(literal -2 binary64) im)) (*.f64 im im))) #s(literal -1/2 binary64) (*.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 (/.f64 re (*.f64 (sqrt.f64 (/.f64 #s(literal -2 binary64) im)) (*.f64 im im))) #s(literal -1/2 binary64) (fma.f64 (/.f64 (*.f64 re re) (*.f64 (sqrt.f64 (/.f64 #s(literal -2 binary64) im)) (*.f64 (*.f64 im im) im))) #s(literal -1/4 binary64) (*.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) (+.f64 (neg.f64 (/.f64 (*.f64 #s(literal 1/4 binary64) (+.f64 (/.f64 (*.f64 re re) (sqrt.f64 (/.f64 #s(literal -2 binary64) im))) (/.f64 (*.f64 re re) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal -2 binary64) im)) (/.f64 #s(literal -2 binary64) im)) im)))) (*.f64 (*.f64 im im) im))) (fma.f64 (/.f64 re (*.f64 (sqrt.f64 (/.f64 #s(literal -2 binary64) im)) (*.f64 im im))) #s(literal -1/2 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal -2 binary64) im)) #s(literal 1/2 binary64))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (neg.f64 im) (sqrt.f64 (/.f64 #s(literal -2 binary64) im))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (neg.f64 im) (+.f64 (/.f64 (neg.f64 re) (*.f64 (sqrt.f64 (/.f64 #s(literal -2 binary64) im)) (*.f64 im im))) (sqrt.f64 (/.f64 #s(literal -2 binary64) im)))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (neg.f64 im) (+.f64 (fma.f64 (/.f64 (*.f64 re re) (*.f64 (sqrt.f64 (/.f64 #s(literal -2 binary64) im)) (*.f64 (*.f64 im im) im))) #s(literal -1/2 binary64) (/.f64 (neg.f64 re) (*.f64 (sqrt.f64 (/.f64 #s(literal -2 binary64) im)) (*.f64 im im)))) (sqrt.f64 (/.f64 #s(literal -2 binary64) im)))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (neg.f64 im) (+.f64 (+.f64 (neg.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) (+.f64 (/.f64 (*.f64 re re) (sqrt.f64 (/.f64 #s(literal -2 binary64) im))) (/.f64 (*.f64 re re) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal -2 binary64) im)) (/.f64 #s(literal -2 binary64) im)) im)))) (*.f64 (*.f64 im im) im))) (/.f64 (neg.f64 re) (*.f64 (sqrt.f64 (/.f64 #s(literal -2 binary64) im)) (*.f64 im im)))) (sqrt.f64 (/.f64 #s(literal -2 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 (pow.f64 re #s(literal 4 binary64)) (*.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 (pow.f64 re #s(literal 4 binary64)) (*.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 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal -4 binary64))) #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 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal -4 binary64))) #s(literal -1/8 binary64) (fma.f64 (*.f64 (pow.f64 re #s(literal 6 binary64)) (pow.f64 im #s(literal -6 binary64))) #s(literal 1/16 binary64) (/.f64 (*.f64 (*.f64 re re) #s(literal 1/2 binary64)) (*.f64 im im)))) #s(literal 1 binary64))))

eval34.0ms (0.8%)

Memory
-8.4MiB live, 37.0MiB allocated; 4ms collecting garbage
Compiler

Compiled 3 462 to 1 420 computations (59% saved)

prune10.0ms (0.2%)

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

11 alts after pruning (11 fresh and 0 done)

PrunedKeptTotal
New22211233
Fresh000
Picked101
Done000
Total22311234
Accuracy
100.0%
Counts
234 → 11
Alt Table
Click to see full alt table
StatusAccuracyProgram
41.1%
(*.f64 (sqrt.f64 (*.f64 (-.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re))) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))
80.2%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 re im) re))))
53.9%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (+.f64 (neg.f64 re) (fabs.f64 im))))))
19.3%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 im im) re))))
51.5%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (+.f64 im im))))
52.9%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (fma.f64 (/.f64 re im) #s(literal -2 binary64) #s(literal 2 binary64)) im))))
26.7%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (neg.f64 re) (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 4 binary64))))))
26.5%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re))))
27.2%
(*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (/.f64 (fabs.f64 im) (sqrt.f64 re))))
51.3%
(*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (sqrt.f64 (/.f64 #s(literal 2 binary64) im)) im)))
18.4%
(*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (neg.f64 re) (fma.f64 (/.f64 (*.f64 im im) (*.f64 (sqrt.f64 (/.f64 #s(literal -4 binary64) re)) (*.f64 (*.f64 re re) re))) #s(literal -1/2 binary64) (sqrt.f64 (/.f64 #s(literal -4 binary64) re))))))
Compiler

Compiled 354 to 348 computations (1.7% saved)

series32.0ms (0.7%)

Memory
-19.0MiB live, 27.1MiB allocated; 3ms collecting garbage
Counts
30 → 136
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) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (/.f64 (fabs.f64 im) (sqrt.f64 re))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (/.f64 (fabs.f64 im) (sqrt.f64 re)))
(/.f64 (fabs.f64 im) (sqrt.f64 re))
(fabs.f64 im)
(sqrt.f64 re)
(*.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 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (fma.f64 (/.f64 re im) #s(literal -2 binary64) #s(literal 2 binary64)) im))))
(sqrt.f64 #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 (fma.f64 (/.f64 re im) #s(literal -2 binary64) #s(literal 2 binary64)) im))
(*.f64 (fma.f64 (/.f64 re im) #s(literal -2 binary64) #s(literal 2 binary64)) im)
(fma.f64 (/.f64 re im) #s(literal -2 binary64) #s(literal 2 binary64))
(/.f64 re im)
#s(literal -2 binary64)
Outputs
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* 1/2 (sqrt (* 2 (sqrt (pow im 2)))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (+ (* -1/2 (/ re (sqrt (* 2 (sqrt (pow im 2)))))) (* 1/2 (sqrt (* 2 (sqrt (pow im 2))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (+ (* 1/2 (sqrt (* 2 (sqrt (pow im 2))))) (* re (- (* 1/4 (/ (* re (- (/ 1 (sqrt (pow im 2))) (/ 1 (pow (sqrt (* 2 (sqrt (pow im 2)))) 2)))) (sqrt (* 2 (sqrt (pow im 2)))))) (* 1/2 (/ 1 (sqrt (* 2 (sqrt (pow im 2)))))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (+ (* 1/2 (sqrt (* 2 (sqrt (pow im 2))))) (* re (- (* re (+ (* 1/4 (/ (* re (- (/ 1 (sqrt (pow im 2))) (/ 1 (pow (sqrt (* 2 (sqrt (pow im 2)))) 2)))) (pow (sqrt (* 2 (sqrt (pow im 2)))) 3))) (* 1/4 (/ (- (/ 1 (sqrt (pow im 2))) (/ 1 (pow (sqrt (* 2 (sqrt (pow im 2)))) 2))) (sqrt (* 2 (sqrt (pow im 2)))))))) (* 1/2 (/ 1 (sqrt (* 2 (sqrt (pow im 2)))))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (sqrt (* 2 (sqrt (pow im 2))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (+ (sqrt (* 2 (sqrt (pow im 2)))) (* -1 (/ re (sqrt (* 2 (sqrt (pow im 2)))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (+ (sqrt (* 2 (sqrt (pow im 2)))) (* re (- (* 1/2 (/ (* re (- (/ 1 (sqrt (pow im 2))) (/ 1 (pow (sqrt (* 2 (sqrt (pow im 2)))) 2)))) (sqrt (* 2 (sqrt (pow im 2)))))) (/ 1 (sqrt (* 2 (sqrt (pow im 2))))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (+ (sqrt (* 2 (sqrt (pow im 2)))) (* re (- (* re (+ (* 1/2 (/ (* re (- (/ 1 (sqrt (pow im 2))) (/ 1 (pow (sqrt (* 2 (sqrt (pow im 2)))) 2)))) (pow (sqrt (* 2 (sqrt (pow im 2)))) 3))) (* 1/2 (/ (- (/ 1 (sqrt (pow im 2))) (/ 1 (pow (sqrt (* 2 (sqrt (pow im 2)))) 2))) (sqrt (* 2 (sqrt (pow im 2)))))))) (/ 1 (sqrt (* 2 (sqrt (pow im 2))))))))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* 2 (sqrt (pow im 2)))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (+ (* -2 re) (* 2 (sqrt (pow im 2))))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (+ (* 2 (sqrt (pow im 2))) (* re (- (/ re (sqrt (pow im 2))) 2)))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (+ (* 2 (sqrt (pow im 2))) (* re (- (* re (+ (* -1/4 (/ (pow re 2) (pow (sqrt (pow im 2)) 3))) (/ 1 (sqrt (pow im 2))))) 2)))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (sqrt (pow im 2))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (+ (sqrt (pow im 2)) (* -1 re))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (+ (sqrt (pow im 2)) (* re (- (* 1/2 (/ re (sqrt (pow im 2)))) 1)))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (+ (sqrt (pow im 2)) (* re (- (* re (+ (* -1/8 (/ (pow re 2) (pow (sqrt (pow im 2)) 3))) (* 1/2 (/ 1 (sqrt (pow im 2)))))) 1)))))
#s(approx (sqrt (+ (* re re) (* im im))) #s(hole binary64 (+ (sqrt (pow im 2)) (* 1/2 (/ (pow re 2) (sqrt (pow im 2)))))))
#s(approx (sqrt (+ (* re re) (* im im))) #s(hole binary64 (+ (sqrt (pow im 2)) (* (pow re 2) (+ (* -1/8 (/ (pow re 2) (pow (sqrt (pow im 2)) 3))) (* 1/2 (/ 1 (sqrt (pow im 2)))))))))
#s(approx (sqrt (+ (* re re) (* im im))) #s(hole binary64 (+ (sqrt (pow im 2)) (* (pow re 2) (+ (* (pow re 2) (- (* 1/16 (/ (pow re 2) (pow (sqrt (pow im 2)) 5))) (* 1/8 (/ 1 (pow (sqrt (pow im 2)) 3))))) (* 1/2 (/ 1 (sqrt (pow im 2)))))))))
#s(approx re #s(hole binary64 re))
#s(approx (/ (fabs im) (sqrt re)) #s(hole binary64 (/ (fabs im) (sqrt re))))
#s(approx (sqrt re) #s(hole binary64 (sqrt re)))
#s(approx (/ (* im im) re) #s(hole binary64 (/ (pow im 2) re)))
#s(approx (* (+ (* (/ re im) -2) 2) im) #s(hole binary64 (* 2 im)))
#s(approx (* (+ (* (/ re im) -2) 2) im) #s(hole binary64 (+ (* -2 re) (* 2 im))))
#s(approx (+ (* (/ re im) -2) 2) #s(hole binary64 2))
#s(approx (+ (* (/ re im) -2) 2) #s(hole binary64 (+ 2 (* -2 (/ re im)))))
#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 (sqrt (/ (pow im 2) re)))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (+ (* -1/16 (/ (pow im 4) (* (pow re 3) (sqrt (/ (pow im 2) re))))) (* 1/2 (sqrt (/ (pow im 2) re))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (+ (* -1/16 (/ (pow im 4) (* (pow re 3) (sqrt (/ (pow im 2) re))))) (+ (* 1/32 (/ (pow im 6) (* (pow re 5) (sqrt (/ (pow im 2) re))))) (* 1/2 (sqrt (/ (pow im 2) re)))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (+ (* -1/16 (/ (pow im 4) (* (pow re 3) (sqrt (/ (pow im 2) re))))) (+ (* -1/256 (/ (pow im 8) (* (pow re 6) (pow (sqrt (/ (pow im 2) re)) 3)))) (+ (* 1/32 (/ (pow im 6) (* (pow re 5) (sqrt (/ (pow im 2) re))))) (* 1/2 (sqrt (/ (pow im 2) re))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (sqrt (/ (pow im 2) re))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (+ (sqrt (/ (pow im 2) re)) (* -1/8 (/ (pow im 4) (* (pow re 3) (sqrt (/ (pow im 2) re))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (+ (sqrt (/ (pow im 2) re)) (+ (* -1/8 (/ (pow im 4) (* (pow re 3) (sqrt (/ (pow im 2) re))))) (* 1/16 (/ (pow im 6) (* (pow re 5) (sqrt (/ (pow im 2) re)))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (+ (sqrt (/ (pow im 2) re)) (+ (* -1/8 (/ (pow im 4) (* (pow re 3) (sqrt (/ (pow im 2) re))))) (+ (* -1/128 (/ (pow im 8) (* (pow re 6) (pow (sqrt (/ (pow im 2) re)) 3)))) (* 1/16 (/ (pow im 6) (* (pow re 5) (sqrt (/ (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 (/ (fabs im) (sqrt re)) #s(hole binary64 (/ (fabs im) (* re (sqrt (/ 1 re))))))
#s(approx (sqrt re) #s(hole binary64 (* re (sqrt (/ 1 re)))))
#s(approx (* (+ (* (/ re im) -2) 2) im) #s(hole binary64 (* -2 re)))
#s(approx (* (+ (* (/ re im) -2) 2) im) #s(hole binary64 (* re (- (* 2 (/ im re)) 2))))
#s(approx (+ (* (/ re im) -2) 2) #s(hole binary64 (* -2 (/ re im))))
#s(approx (+ (* (/ re im) -2) 2) #s(hole binary64 (* re (- (* 2 (/ 1 re)) (* 2 (/ 1 im))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* -1/2 (* re (sqrt (/ -4 re))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* -1 (* re (+ (* -1/4 (/ (pow im 2) (* (pow re 3) (sqrt (/ -4 re))))) (* 1/2 (sqrt (/ -4 re))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* -1 (* re (+ (* -1 (/ (+ (* -1/16 (/ (pow im 4) (* (pow re 2) (sqrt (/ -4 re))))) (* 1/4 (/ (pow im 2) (sqrt (/ -4 re))))) (pow re 3))) (* 1/2 (sqrt (/ -4 re))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* -1 (* re (+ (* -1 (/ (+ (* -1/16 (/ (pow im 4) (* (pow re 2) (sqrt (/ -4 re))))) (+ (* 1/16 (/ (pow im 4) (* (pow re 3) (pow (sqrt (/ -4 re)) 3)))) (* 1/4 (/ (pow im 2) (sqrt (/ -4 re)))))) (pow re 3))) (* 1/2 (sqrt (/ -4 re))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* -1 (* re (sqrt (/ -4 re))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* -1 (* re (+ (sqrt (/ -4 re)) (* -1/2 (/ (pow im 2) (* (pow re 3) (sqrt (/ -4 re))))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* -1 (* re (+ (sqrt (/ -4 re)) (* -1 (/ (+ (* -1/8 (/ (pow im 4) (* (pow re 2) (sqrt (/ -4 re))))) (* 1/2 (/ (pow im 2) (sqrt (/ -4 re))))) (pow re 3))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* -1 (* re (+ (sqrt (/ -4 re)) (* -1 (/ (+ (* -1/8 (/ (pow im 4) (* (pow re 2) (sqrt (/ -4 re))))) (+ (* 1/8 (/ (pow im 4) (* (pow re 3) (pow (sqrt (/ -4 re)) 3)))) (* 1/2 (/ (pow im 2) (sqrt (/ -4 re)))))) (pow re 3))))))))
#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 (* -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 (/ (fabs im) (sqrt re)) #s(hole binary64 (* -1 (/ (fabs im) (* re (sqrt (/ 1 re)))))))
#s(approx (sqrt re) #s(hole binary64 (* -1 (* re (sqrt (/ 1 re))))))
#s(approx (* (+ (* (/ re im) -2) 2) im) #s(hole binary64 (* -1 (* re (+ 2 (* -2 (/ im re)))))))
#s(approx (+ (* (/ re im) -2) 2) #s(hole binary64 (* -1 (* re (- (* 2 (/ 1 im)) (* 2 (/ 1 re)))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* 1/2 (sqrt (* 2 (- (sqrt (pow re 2)) re))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (+ (* 1/4 (/ (pow im 2) (* (sqrt (* 2 (- (sqrt (pow re 2)) re))) (sqrt (pow re 2))))) (* 1/2 (sqrt (* 2 (- (sqrt (pow re 2)) re)))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (+ (* 1/2 (sqrt (* 2 (- (sqrt (pow re 2)) re)))) (* (pow im 2) (+ (* -1/4 (/ (* (pow im 2) (+ (* 1/4 (/ 1 (* (pow (sqrt (* 2 (- (sqrt (pow re 2)) re))) 2) (pow (sqrt (pow re 2)) 2)))) (* 1/4 (/ 1 (pow (sqrt (pow re 2)) 3))))) (sqrt (* 2 (- (sqrt (pow re 2)) re))))) (* 1/4 (/ 1 (* (sqrt (* 2 (- (sqrt (pow re 2)) re))) (sqrt (pow re 2))))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (+ (* 1/2 (sqrt (* 2 (- (sqrt (pow re 2)) re)))) (* (pow im 2) (+ (* (pow im 2) (+ (* -1/4 (/ (+ (* 1/4 (/ 1 (* (pow (sqrt (* 2 (- (sqrt (pow re 2)) re))) 2) (pow (sqrt (pow re 2)) 2)))) (* 1/4 (/ 1 (pow (sqrt (pow re 2)) 3)))) (sqrt (* 2 (- (sqrt (pow re 2)) re))))) (* 1/4 (/ (* (pow im 2) (- (* 1/8 (/ 1 (pow (sqrt (pow re 2)) 5))) (* -1/2 (/ (+ (* 1/4 (/ 1 (* (pow (sqrt (* 2 (- (sqrt (pow re 2)) re))) 2) (pow (sqrt (pow re 2)) 2)))) (* 1/4 (/ 1 (pow (sqrt (pow re 2)) 3)))) (* (pow (sqrt (* 2 (- (sqrt (pow re 2)) re))) 2) (sqrt (pow re 2))))))) (sqrt (* 2 (- (sqrt (pow re 2)) re))))))) (* 1/4 (/ 1 (* (sqrt (* 2 (- (sqrt (pow re 2)) re))) (sqrt (pow re 2))))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (sqrt (* 2 (- (sqrt (pow re 2)) re)))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (+ (sqrt (* 2 (- (sqrt (pow re 2)) re))) (* 1/2 (/ (pow im 2) (* (sqrt (* 2 (- (sqrt (pow re 2)) re))) (sqrt (pow re 2))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (+ (sqrt (* 2 (- (sqrt (pow re 2)) re))) (* (pow im 2) (+ (* -1/2 (/ (* (pow im 2) (+ (* 1/4 (/ 1 (* (pow (sqrt (* 2 (- (sqrt (pow re 2)) re))) 2) (pow (sqrt (pow re 2)) 2)))) (* 1/4 (/ 1 (pow (sqrt (pow re 2)) 3))))) (sqrt (* 2 (- (sqrt (pow re 2)) re))))) (* 1/2 (/ 1 (* (sqrt (* 2 (- (sqrt (pow re 2)) re))) (sqrt (pow re 2))))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (+ (sqrt (* 2 (- (sqrt (pow re 2)) re))) (* (pow im 2) (+ (* (pow im 2) (+ (* -1/2 (/ (+ (* 1/4 (/ 1 (* (pow (sqrt (* 2 (- (sqrt (pow re 2)) re))) 2) (pow (sqrt (pow re 2)) 2)))) (* 1/4 (/ 1 (pow (sqrt (pow re 2)) 3)))) (sqrt (* 2 (- (sqrt (pow re 2)) re))))) (* 1/2 (/ (* (pow im 2) (- (* 1/8 (/ 1 (pow (sqrt (pow re 2)) 5))) (* -1/2 (/ (+ (* 1/4 (/ 1 (* (pow (sqrt (* 2 (- (sqrt (pow re 2)) re))) 2) (pow (sqrt (pow re 2)) 2)))) (* 1/4 (/ 1 (pow (sqrt (pow re 2)) 3)))) (* (pow (sqrt (* 2 (- (sqrt (pow re 2)) re))) 2) (sqrt (pow re 2))))))) (sqrt (* 2 (- (sqrt (pow re 2)) re))))))) (* 1/2 (/ 1 (* (sqrt (* 2 (- (sqrt (pow re 2)) re))) (sqrt (pow re 2))))))))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* 2 (- (sqrt (pow re 2)) re))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (+ (* 2 (- (sqrt (pow re 2)) re)) (/ (pow im 2) (sqrt (pow re 2))))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (+ (* 2 (- (sqrt (pow re 2)) re)) (* (pow im 2) (+ (* -1/4 (/ (pow im 2) (pow (sqrt (pow re 2)) 3))) (/ 1 (sqrt (pow re 2))))))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (+ (* 2 (- (sqrt (pow re 2)) re)) (* (pow im 2) (+ (* (pow im 2) (- (* 1/8 (/ (pow im 2) (pow (sqrt (pow re 2)) 5))) (* 1/4 (/ 1 (pow (sqrt (pow re 2)) 3))))) (/ 1 (sqrt (pow re 2))))))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (- (sqrt (pow re 2)) re)))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (- (+ (sqrt (pow re 2)) (* 1/2 (/ (pow im 2) (sqrt (pow re 2))))) re)))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (- (+ (sqrt (pow re 2)) (* (pow im 2) (+ (* -1/8 (/ (pow im 2) (pow (sqrt (pow re 2)) 3))) (* 1/2 (/ 1 (sqrt (pow re 2))))))) re)))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (- (+ (sqrt (pow re 2)) (* (pow im 2) (+ (* (pow im 2) (- (* 1/16 (/ (pow im 2) (pow (sqrt (pow re 2)) 5))) (* 1/8 (/ 1 (pow (sqrt (pow re 2)) 3))))) (* 1/2 (/ 1 (sqrt (pow re 2))))))) re)))
#s(approx (sqrt (+ (* re re) (* im im))) #s(hole binary64 (sqrt (pow re 2))))
#s(approx (sqrt (+ (* re re) (* im im))) #s(hole binary64 (+ (sqrt (pow re 2)) (* 1/2 (/ (pow im 2) (sqrt (pow re 2)))))))
#s(approx (sqrt (+ (* re re) (* im im))) #s(hole binary64 (+ (sqrt (pow re 2)) (* (pow im 2) (+ (* -1/8 (/ (pow im 2) (pow (sqrt (pow re 2)) 3))) (* 1/2 (/ 1 (sqrt (pow re 2)))))))))
#s(approx (sqrt (+ (* re re) (* im im))) #s(hole binary64 (+ (sqrt (pow re 2)) (* (pow im 2) (+ (* (pow im 2) (- (* 1/16 (/ (pow im 2) (pow (sqrt (pow re 2)) 5))) (* 1/8 (/ 1 (pow (sqrt (pow re 2)) 3))))) (* 1/2 (/ 1 (sqrt (pow re 2)))))))))
#s(approx im #s(hole binary64 im))
#s(approx (fabs im) #s(hole binary64 (fabs im)))
#s(approx (* im im) #s(hole binary64 (pow im 2)))
#s(approx (+ (* (/ re im) -2) 2) #s(hole binary64 (/ (+ (* -2 re) (* 2 im)) im)))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* 1/2 (* im (sqrt (/ 2 im))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* im (+ (* -1/2 (/ re (* (pow im 2) (sqrt (/ 2 im))))) (* 1/2 (sqrt (/ 2 im)))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* im (+ (* -1/2 (/ re (* (pow im 2) (sqrt (/ 2 im))))) (+ (* 1/4 (/ (pow re 2) (* (pow im 3) (sqrt (/ 2 im))))) (* 1/2 (sqrt (/ 2 im))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* im (+ (* -1/2 (/ re (* (pow im 2) (sqrt (/ 2 im))))) (+ (* -1/4 (/ (pow re 2) (* (pow im 4) (pow (sqrt (/ 2 im)) 3)))) (+ (* 1/4 (/ (pow re 2) (* (pow im 3) (sqrt (/ 2 im))))) (* 1/2 (sqrt (/ 2 im)))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* im (sqrt (/ 2 im)))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* im (+ (sqrt (/ 2 im)) (* -1 (/ re (* (pow im 2) (sqrt (/ 2 im)))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* im (+ (sqrt (/ 2 im)) (+ (* -1 (/ re (* (pow im 2) (sqrt (/ 2 im))))) (* 1/2 (/ (pow re 2) (* (pow im 3) (sqrt (/ 2 im))))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* im (+ (sqrt (/ 2 im)) (+ (* -1 (/ re (* (pow im 2) (sqrt (/ 2 im))))) (+ (* -1/2 (/ (pow re 2) (* (pow im 4) (pow (sqrt (/ 2 im)) 3)))) (* 1/2 (/ (pow re 2) (* (pow im 3) (sqrt (/ 2 im)))))))))))
#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 (* im (sqrt (/ -2 im))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* -1 (* im (+ (* -1/2 (/ re (* (pow im 2) (sqrt (/ -2 im))))) (* 1/2 (sqrt (/ -2 im))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* -1 (* im (+ (* -1/2 (/ re (* (pow im 2) (sqrt (/ -2 im))))) (+ (* -1/4 (/ (pow re 2) (* (pow im 3) (sqrt (/ -2 im))))) (* 1/2 (sqrt (/ -2 im)))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* -1 (* im (+ (* -1 (/ (+ (* 1/4 (/ (pow re 2) (sqrt (/ -2 im)))) (* 1/4 (/ (pow re 2) (* im (pow (sqrt (/ -2 im)) 3))))) (pow im 3))) (+ (* -1/2 (/ re (* (pow im 2) (sqrt (/ -2 im))))) (* 1/2 (sqrt (/ -2 im)))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* -1 (* im (sqrt (/ -2 im))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* -1 (* im (+ (sqrt (/ -2 im)) (* -1 (/ re (* (pow im 2) (sqrt (/ -2 im))))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* -1 (* im (+ (sqrt (/ -2 im)) (+ (* -1 (/ re (* (pow im 2) (sqrt (/ -2 im))))) (* -1/2 (/ (pow re 2) (* (pow im 3) (sqrt (/ -2 im)))))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* -1 (* im (+ (sqrt (/ -2 im)) (+ (* -1 (/ re (* (pow im 2) (sqrt (/ -2 im))))) (* -1 (/ (+ (* 1/2 (/ (pow re 2) (sqrt (/ -2 im)))) (* 1/2 (/ (pow re 2) (* im (pow (sqrt (/ -2 im)) 3))))) (pow im 3)))))))))
#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 (* (+ (* (/ re im) -2) 2) im) #s(hole binary64 (* -1 (* im (- (* 2 (/ re im)) 2)))))
Calls

6 calls:

TimeVariablePointExpression
14.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))) (/ (fabs im) (sqrt re)) (fabs im) (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)) (/ (* 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)) (* (+ (* (/ re im) -2) 2) im) (+ (* (/ re im) -2) 2) (/ re im) -2)
3.0ms
im
@-inf
((* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (* 2 (- (sqrt (+ (* re re) (* im im))) re)) 2 (- (sqrt (+ (* re re) (* im im))) re) (sqrt (+ (* re re) (* im im))) re im (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (+ im im) (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (/ (fabs im) (sqrt re)) (fabs im) (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)) (/ (* 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)) (* (+ (* (/ re im) -2) 2) im) (+ (* (/ re im) -2) 2) (/ re im) -2)
3.0ms
re
@-inf
((* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (* 2 (- (sqrt (+ (* re re) (* im im))) re)) 2 (- (sqrt (+ (* re re) (* im im))) re) (sqrt (+ (* re re) (* im im))) re im (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (+ im im) (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (/ (fabs im) (sqrt re)) (fabs im) (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)) (/ (* 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)) (* (+ (* (/ re im) -2) 2) im) (+ (* (/ re im) -2) 2) (/ re im) -2)
3.0ms
im
@inf
((* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (* 2 (- (sqrt (+ (* re re) (* im im))) re)) 2 (- (sqrt (+ (* re re) (* im im))) re) (sqrt (+ (* re re) (* im im))) re im (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (+ im im) (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (/ (fabs im) (sqrt re)) (fabs im) (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)) (/ (* 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)) (* (+ (* (/ re im) -2) 2) im) (+ (* (/ re im) -2) 2) (/ re im) -2)
3.0ms
re
@inf
((* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (* 2 (- (sqrt (+ (* re re) (* im im))) re)) 2 (- (sqrt (+ (* re re) (* im im))) re) (sqrt (+ (* re re) (* im im))) re im (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (+ im im) (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (/ (fabs im) (sqrt re)) (fabs im) (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)) (/ (* 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)) (* (+ (* (/ re im) -2) 2) im) (+ (* (/ re im) -2) 2) (/ re im) -2)

rewrite239.0ms (5.3%)

Memory
-2.3MiB live, 183.4MiB allocated; 28ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
07294666
07554332
148394132
094433989
1215023989
Stop Event
saturated
node-limit
iter-limit
Counts
166 → 324
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) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (/.f64 (fabs.f64 im) (sqrt.f64 re))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (/.f64 (fabs.f64 im) (sqrt.f64 re)))
(/.f64 (fabs.f64 im) (sqrt.f64 re))
(fabs.f64 im)
(sqrt.f64 re)
(*.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 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (fma.f64 (/.f64 re im) #s(literal -2 binary64) #s(literal 2 binary64)) im))))
(sqrt.f64 #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 (fma.f64 (/.f64 re im) #s(literal -2 binary64) #s(literal 2 binary64)) im))
(*.f64 (fma.f64 (/.f64 re im) #s(literal -2 binary64) #s(literal 2 binary64)) im)
(fma.f64 (/.f64 re im) #s(literal -2 binary64) #s(literal 2 binary64))
(/.f64 re im)
#s(literal -2 binary64)
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* 1/2 (sqrt (* 2 (sqrt (pow im 2)))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (+ (* -1/2 (/ re (sqrt (* 2 (sqrt (pow im 2)))))) (* 1/2 (sqrt (* 2 (sqrt (pow im 2))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (+ (* 1/2 (sqrt (* 2 (sqrt (pow im 2))))) (* re (- (* 1/4 (/ (* re (- (/ 1 (sqrt (pow im 2))) (/ 1 (pow (sqrt (* 2 (sqrt (pow im 2)))) 2)))) (sqrt (* 2 (sqrt (pow im 2)))))) (* 1/2 (/ 1 (sqrt (* 2 (sqrt (pow im 2)))))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (+ (* 1/2 (sqrt (* 2 (sqrt (pow im 2))))) (* re (- (* re (+ (* 1/4 (/ (* re (- (/ 1 (sqrt (pow im 2))) (/ 1 (pow (sqrt (* 2 (sqrt (pow im 2)))) 2)))) (pow (sqrt (* 2 (sqrt (pow im 2)))) 3))) (* 1/4 (/ (- (/ 1 (sqrt (pow im 2))) (/ 1 (pow (sqrt (* 2 (sqrt (pow im 2)))) 2))) (sqrt (* 2 (sqrt (pow im 2)))))))) (* 1/2 (/ 1 (sqrt (* 2 (sqrt (pow im 2)))))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (sqrt (* 2 (sqrt (pow im 2))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (+ (sqrt (* 2 (sqrt (pow im 2)))) (* -1 (/ re (sqrt (* 2 (sqrt (pow im 2)))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (+ (sqrt (* 2 (sqrt (pow im 2)))) (* re (- (* 1/2 (/ (* re (- (/ 1 (sqrt (pow im 2))) (/ 1 (pow (sqrt (* 2 (sqrt (pow im 2)))) 2)))) (sqrt (* 2 (sqrt (pow im 2)))))) (/ 1 (sqrt (* 2 (sqrt (pow im 2))))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (+ (sqrt (* 2 (sqrt (pow im 2)))) (* re (- (* re (+ (* 1/2 (/ (* re (- (/ 1 (sqrt (pow im 2))) (/ 1 (pow (sqrt (* 2 (sqrt (pow im 2)))) 2)))) (pow (sqrt (* 2 (sqrt (pow im 2)))) 3))) (* 1/2 (/ (- (/ 1 (sqrt (pow im 2))) (/ 1 (pow (sqrt (* 2 (sqrt (pow im 2)))) 2))) (sqrt (* 2 (sqrt (pow im 2)))))))) (/ 1 (sqrt (* 2 (sqrt (pow im 2))))))))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* 2 (sqrt (pow im 2)))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (+ (* -2 re) (* 2 (sqrt (pow im 2))))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (+ (* 2 (sqrt (pow im 2))) (* re (- (/ re (sqrt (pow im 2))) 2)))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (+ (* 2 (sqrt (pow im 2))) (* re (- (* re (+ (* -1/4 (/ (pow re 2) (pow (sqrt (pow im 2)) 3))) (/ 1 (sqrt (pow im 2))))) 2)))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (sqrt (pow im 2))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (+ (sqrt (pow im 2)) (* -1 re))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (+ (sqrt (pow im 2)) (* re (- (* 1/2 (/ re (sqrt (pow im 2)))) 1)))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (+ (sqrt (pow im 2)) (* re (- (* re (+ (* -1/8 (/ (pow re 2) (pow (sqrt (pow im 2)) 3))) (* 1/2 (/ 1 (sqrt (pow im 2)))))) 1)))))
#s(approx (sqrt (+ (* re re) (* im im))) #s(hole binary64 (+ (sqrt (pow im 2)) (* 1/2 (/ (pow re 2) (sqrt (pow im 2)))))))
#s(approx (sqrt (+ (* re re) (* im im))) #s(hole binary64 (+ (sqrt (pow im 2)) (* (pow re 2) (+ (* -1/8 (/ (pow re 2) (pow (sqrt (pow im 2)) 3))) (* 1/2 (/ 1 (sqrt (pow im 2)))))))))
#s(approx (sqrt (+ (* re re) (* im im))) #s(hole binary64 (+ (sqrt (pow im 2)) (* (pow re 2) (+ (* (pow re 2) (- (* 1/16 (/ (pow re 2) (pow (sqrt (pow im 2)) 5))) (* 1/8 (/ 1 (pow (sqrt (pow im 2)) 3))))) (* 1/2 (/ 1 (sqrt (pow im 2)))))))))
#s(approx re #s(hole binary64 re))
#s(approx (/ (fabs im) (sqrt re)) #s(hole binary64 (/ (fabs im) (sqrt re))))
#s(approx (sqrt re) #s(hole binary64 (sqrt re)))
#s(approx (/ (* im im) re) #s(hole binary64 (/ (pow im 2) re)))
#s(approx (* (+ (* (/ re im) -2) 2) im) #s(hole binary64 (* 2 im)))
#s(approx (* (+ (* (/ re im) -2) 2) im) #s(hole binary64 (+ (* -2 re) (* 2 im))))
#s(approx (+ (* (/ re im) -2) 2) #s(hole binary64 2))
#s(approx (+ (* (/ re im) -2) 2) #s(hole binary64 (+ 2 (* -2 (/ re im)))))
#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 (sqrt (/ (pow im 2) re)))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (+ (* -1/16 (/ (pow im 4) (* (pow re 3) (sqrt (/ (pow im 2) re))))) (* 1/2 (sqrt (/ (pow im 2) re))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (+ (* -1/16 (/ (pow im 4) (* (pow re 3) (sqrt (/ (pow im 2) re))))) (+ (* 1/32 (/ (pow im 6) (* (pow re 5) (sqrt (/ (pow im 2) re))))) (* 1/2 (sqrt (/ (pow im 2) re)))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (+ (* -1/16 (/ (pow im 4) (* (pow re 3) (sqrt (/ (pow im 2) re))))) (+ (* -1/256 (/ (pow im 8) (* (pow re 6) (pow (sqrt (/ (pow im 2) re)) 3)))) (+ (* 1/32 (/ (pow im 6) (* (pow re 5) (sqrt (/ (pow im 2) re))))) (* 1/2 (sqrt (/ (pow im 2) re))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (sqrt (/ (pow im 2) re))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (+ (sqrt (/ (pow im 2) re)) (* -1/8 (/ (pow im 4) (* (pow re 3) (sqrt (/ (pow im 2) re))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (+ (sqrt (/ (pow im 2) re)) (+ (* -1/8 (/ (pow im 4) (* (pow re 3) (sqrt (/ (pow im 2) re))))) (* 1/16 (/ (pow im 6) (* (pow re 5) (sqrt (/ (pow im 2) re)))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (+ (sqrt (/ (pow im 2) re)) (+ (* -1/8 (/ (pow im 4) (* (pow re 3) (sqrt (/ (pow im 2) re))))) (+ (* -1/128 (/ (pow im 8) (* (pow re 6) (pow (sqrt (/ (pow im 2) re)) 3)))) (* 1/16 (/ (pow im 6) (* (pow re 5) (sqrt (/ (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 (/ (fabs im) (sqrt re)) #s(hole binary64 (/ (fabs im) (* re (sqrt (/ 1 re))))))
#s(approx (sqrt re) #s(hole binary64 (* re (sqrt (/ 1 re)))))
#s(approx (* (+ (* (/ re im) -2) 2) im) #s(hole binary64 (* -2 re)))
#s(approx (* (+ (* (/ re im) -2) 2) im) #s(hole binary64 (* re (- (* 2 (/ im re)) 2))))
#s(approx (+ (* (/ re im) -2) 2) #s(hole binary64 (* -2 (/ re im))))
#s(approx (+ (* (/ re im) -2) 2) #s(hole binary64 (* re (- (* 2 (/ 1 re)) (* 2 (/ 1 im))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* -1/2 (* re (sqrt (/ -4 re))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* -1 (* re (+ (* -1/4 (/ (pow im 2) (* (pow re 3) (sqrt (/ -4 re))))) (* 1/2 (sqrt (/ -4 re))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* -1 (* re (+ (* -1 (/ (+ (* -1/16 (/ (pow im 4) (* (pow re 2) (sqrt (/ -4 re))))) (* 1/4 (/ (pow im 2) (sqrt (/ -4 re))))) (pow re 3))) (* 1/2 (sqrt (/ -4 re))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* -1 (* re (+ (* -1 (/ (+ (* -1/16 (/ (pow im 4) (* (pow re 2) (sqrt (/ -4 re))))) (+ (* 1/16 (/ (pow im 4) (* (pow re 3) (pow (sqrt (/ -4 re)) 3)))) (* 1/4 (/ (pow im 2) (sqrt (/ -4 re)))))) (pow re 3))) (* 1/2 (sqrt (/ -4 re))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* -1 (* re (sqrt (/ -4 re))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* -1 (* re (+ (sqrt (/ -4 re)) (* -1/2 (/ (pow im 2) (* (pow re 3) (sqrt (/ -4 re))))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* -1 (* re (+ (sqrt (/ -4 re)) (* -1 (/ (+ (* -1/8 (/ (pow im 4) (* (pow re 2) (sqrt (/ -4 re))))) (* 1/2 (/ (pow im 2) (sqrt (/ -4 re))))) (pow re 3))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* -1 (* re (+ (sqrt (/ -4 re)) (* -1 (/ (+ (* -1/8 (/ (pow im 4) (* (pow re 2) (sqrt (/ -4 re))))) (+ (* 1/8 (/ (pow im 4) (* (pow re 3) (pow (sqrt (/ -4 re)) 3)))) (* 1/2 (/ (pow im 2) (sqrt (/ -4 re)))))) (pow re 3))))))))
#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 (* -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 (/ (fabs im) (sqrt re)) #s(hole binary64 (* -1 (/ (fabs im) (* re (sqrt (/ 1 re)))))))
#s(approx (sqrt re) #s(hole binary64 (* -1 (* re (sqrt (/ 1 re))))))
#s(approx (* (+ (* (/ re im) -2) 2) im) #s(hole binary64 (* -1 (* re (+ 2 (* -2 (/ im re)))))))
#s(approx (+ (* (/ re im) -2) 2) #s(hole binary64 (* -1 (* re (- (* 2 (/ 1 im)) (* 2 (/ 1 re)))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* 1/2 (sqrt (* 2 (- (sqrt (pow re 2)) re))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (+ (* 1/4 (/ (pow im 2) (* (sqrt (* 2 (- (sqrt (pow re 2)) re))) (sqrt (pow re 2))))) (* 1/2 (sqrt (* 2 (- (sqrt (pow re 2)) re)))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (+ (* 1/2 (sqrt (* 2 (- (sqrt (pow re 2)) re)))) (* (pow im 2) (+ (* -1/4 (/ (* (pow im 2) (+ (* 1/4 (/ 1 (* (pow (sqrt (* 2 (- (sqrt (pow re 2)) re))) 2) (pow (sqrt (pow re 2)) 2)))) (* 1/4 (/ 1 (pow (sqrt (pow re 2)) 3))))) (sqrt (* 2 (- (sqrt (pow re 2)) re))))) (* 1/4 (/ 1 (* (sqrt (* 2 (- (sqrt (pow re 2)) re))) (sqrt (pow re 2))))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (+ (* 1/2 (sqrt (* 2 (- (sqrt (pow re 2)) re)))) (* (pow im 2) (+ (* (pow im 2) (+ (* -1/4 (/ (+ (* 1/4 (/ 1 (* (pow (sqrt (* 2 (- (sqrt (pow re 2)) re))) 2) (pow (sqrt (pow re 2)) 2)))) (* 1/4 (/ 1 (pow (sqrt (pow re 2)) 3)))) (sqrt (* 2 (- (sqrt (pow re 2)) re))))) (* 1/4 (/ (* (pow im 2) (- (* 1/8 (/ 1 (pow (sqrt (pow re 2)) 5))) (* -1/2 (/ (+ (* 1/4 (/ 1 (* (pow (sqrt (* 2 (- (sqrt (pow re 2)) re))) 2) (pow (sqrt (pow re 2)) 2)))) (* 1/4 (/ 1 (pow (sqrt (pow re 2)) 3)))) (* (pow (sqrt (* 2 (- (sqrt (pow re 2)) re))) 2) (sqrt (pow re 2))))))) (sqrt (* 2 (- (sqrt (pow re 2)) re))))))) (* 1/4 (/ 1 (* (sqrt (* 2 (- (sqrt (pow re 2)) re))) (sqrt (pow re 2))))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (sqrt (* 2 (- (sqrt (pow re 2)) re)))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (+ (sqrt (* 2 (- (sqrt (pow re 2)) re))) (* 1/2 (/ (pow im 2) (* (sqrt (* 2 (- (sqrt (pow re 2)) re))) (sqrt (pow re 2))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (+ (sqrt (* 2 (- (sqrt (pow re 2)) re))) (* (pow im 2) (+ (* -1/2 (/ (* (pow im 2) (+ (* 1/4 (/ 1 (* (pow (sqrt (* 2 (- (sqrt (pow re 2)) re))) 2) (pow (sqrt (pow re 2)) 2)))) (* 1/4 (/ 1 (pow (sqrt (pow re 2)) 3))))) (sqrt (* 2 (- (sqrt (pow re 2)) re))))) (* 1/2 (/ 1 (* (sqrt (* 2 (- (sqrt (pow re 2)) re))) (sqrt (pow re 2))))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (+ (sqrt (* 2 (- (sqrt (pow re 2)) re))) (* (pow im 2) (+ (* (pow im 2) (+ (* -1/2 (/ (+ (* 1/4 (/ 1 (* (pow (sqrt (* 2 (- (sqrt (pow re 2)) re))) 2) (pow (sqrt (pow re 2)) 2)))) (* 1/4 (/ 1 (pow (sqrt (pow re 2)) 3)))) (sqrt (* 2 (- (sqrt (pow re 2)) re))))) (* 1/2 (/ (* (pow im 2) (- (* 1/8 (/ 1 (pow (sqrt (pow re 2)) 5))) (* -1/2 (/ (+ (* 1/4 (/ 1 (* (pow (sqrt (* 2 (- (sqrt (pow re 2)) re))) 2) (pow (sqrt (pow re 2)) 2)))) (* 1/4 (/ 1 (pow (sqrt (pow re 2)) 3)))) (* (pow (sqrt (* 2 (- (sqrt (pow re 2)) re))) 2) (sqrt (pow re 2))))))) (sqrt (* 2 (- (sqrt (pow re 2)) re))))))) (* 1/2 (/ 1 (* (sqrt (* 2 (- (sqrt (pow re 2)) re))) (sqrt (pow re 2))))))))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* 2 (- (sqrt (pow re 2)) re))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (+ (* 2 (- (sqrt (pow re 2)) re)) (/ (pow im 2) (sqrt (pow re 2))))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (+ (* 2 (- (sqrt (pow re 2)) re)) (* (pow im 2) (+ (* -1/4 (/ (pow im 2) (pow (sqrt (pow re 2)) 3))) (/ 1 (sqrt (pow re 2))))))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (+ (* 2 (- (sqrt (pow re 2)) re)) (* (pow im 2) (+ (* (pow im 2) (- (* 1/8 (/ (pow im 2) (pow (sqrt (pow re 2)) 5))) (* 1/4 (/ 1 (pow (sqrt (pow re 2)) 3))))) (/ 1 (sqrt (pow re 2))))))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (- (sqrt (pow re 2)) re)))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (- (+ (sqrt (pow re 2)) (* 1/2 (/ (pow im 2) (sqrt (pow re 2))))) re)))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (- (+ (sqrt (pow re 2)) (* (pow im 2) (+ (* -1/8 (/ (pow im 2) (pow (sqrt (pow re 2)) 3))) (* 1/2 (/ 1 (sqrt (pow re 2))))))) re)))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(hole binary64 (- (+ (sqrt (pow re 2)) (* (pow im 2) (+ (* (pow im 2) (- (* 1/16 (/ (pow im 2) (pow (sqrt (pow re 2)) 5))) (* 1/8 (/ 1 (pow (sqrt (pow re 2)) 3))))) (* 1/2 (/ 1 (sqrt (pow re 2))))))) re)))
#s(approx (sqrt (+ (* re re) (* im im))) #s(hole binary64 (sqrt (pow re 2))))
#s(approx (sqrt (+ (* re re) (* im im))) #s(hole binary64 (+ (sqrt (pow re 2)) (* 1/2 (/ (pow im 2) (sqrt (pow re 2)))))))
#s(approx (sqrt (+ (* re re) (* im im))) #s(hole binary64 (+ (sqrt (pow re 2)) (* (pow im 2) (+ (* -1/8 (/ (pow im 2) (pow (sqrt (pow re 2)) 3))) (* 1/2 (/ 1 (sqrt (pow re 2)))))))))
#s(approx (sqrt (+ (* re re) (* im im))) #s(hole binary64 (+ (sqrt (pow re 2)) (* (pow im 2) (+ (* (pow im 2) (- (* 1/16 (/ (pow im 2) (pow (sqrt (pow re 2)) 5))) (* 1/8 (/ 1 (pow (sqrt (pow re 2)) 3))))) (* 1/2 (/ 1 (sqrt (pow re 2)))))))))
#s(approx im #s(hole binary64 im))
#s(approx (fabs im) #s(hole binary64 (fabs im)))
#s(approx (* im im) #s(hole binary64 (pow im 2)))
#s(approx (+ (* (/ re im) -2) 2) #s(hole binary64 (/ (+ (* -2 re) (* 2 im)) im)))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* 1/2 (* im (sqrt (/ 2 im))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* im (+ (* -1/2 (/ re (* (pow im 2) (sqrt (/ 2 im))))) (* 1/2 (sqrt (/ 2 im)))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* im (+ (* -1/2 (/ re (* (pow im 2) (sqrt (/ 2 im))))) (+ (* 1/4 (/ (pow re 2) (* (pow im 3) (sqrt (/ 2 im))))) (* 1/2 (sqrt (/ 2 im))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* im (+ (* -1/2 (/ re (* (pow im 2) (sqrt (/ 2 im))))) (+ (* -1/4 (/ (pow re 2) (* (pow im 4) (pow (sqrt (/ 2 im)) 3)))) (+ (* 1/4 (/ (pow re 2) (* (pow im 3) (sqrt (/ 2 im))))) (* 1/2 (sqrt (/ 2 im)))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* im (sqrt (/ 2 im)))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* im (+ (sqrt (/ 2 im)) (* -1 (/ re (* (pow im 2) (sqrt (/ 2 im)))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* im (+ (sqrt (/ 2 im)) (+ (* -1 (/ re (* (pow im 2) (sqrt (/ 2 im))))) (* 1/2 (/ (pow re 2) (* (pow im 3) (sqrt (/ 2 im))))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* im (+ (sqrt (/ 2 im)) (+ (* -1 (/ re (* (pow im 2) (sqrt (/ 2 im))))) (+ (* -1/2 (/ (pow re 2) (* (pow im 4) (pow (sqrt (/ 2 im)) 3)))) (* 1/2 (/ (pow re 2) (* (pow im 3) (sqrt (/ 2 im)))))))))))
#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 (* im (sqrt (/ -2 im))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* -1 (* im (+ (* -1/2 (/ re (* (pow im 2) (sqrt (/ -2 im))))) (* 1/2 (sqrt (/ -2 im))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* -1 (* im (+ (* -1/2 (/ re (* (pow im 2) (sqrt (/ -2 im))))) (+ (* -1/4 (/ (pow re 2) (* (pow im 3) (sqrt (/ -2 im))))) (* 1/2 (sqrt (/ -2 im)))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* -1 (* im (+ (* -1 (/ (+ (* 1/4 (/ (pow re 2) (sqrt (/ -2 im)))) (* 1/4 (/ (pow re 2) (* im (pow (sqrt (/ -2 im)) 3))))) (pow im 3))) (+ (* -1/2 (/ re (* (pow im 2) (sqrt (/ -2 im))))) (* 1/2 (sqrt (/ -2 im)))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* -1 (* im (sqrt (/ -2 im))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* -1 (* im (+ (sqrt (/ -2 im)) (* -1 (/ re (* (pow im 2) (sqrt (/ -2 im))))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* -1 (* im (+ (sqrt (/ -2 im)) (+ (* -1 (/ re (* (pow im 2) (sqrt (/ -2 im))))) (* -1/2 (/ (pow re 2) (* (pow im 3) (sqrt (/ -2 im)))))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* -1 (* im (+ (sqrt (/ -2 im)) (+ (* -1 (/ re (* (pow im 2) (sqrt (/ -2 im))))) (* -1 (/ (+ (* 1/2 (/ (pow re 2) (sqrt (/ -2 im)))) (* 1/2 (/ (pow re 2) (* im (pow (sqrt (/ -2 im)) 3))))) (pow im 3)))))))))
#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 (* (+ (* (/ re im) -2) 2) im) #s(hole binary64 (* -1 (* im (- (* 2 (/ re im)) 2)))))
Outputs
(*.f64 (sqrt.f64 (*.f64 (-.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re))) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 (-.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re))) re) #s(literal 2 binary64))))
#s(literal 1/2 binary64)
(pow.f64 (*.f64 (-.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re))) re) #s(literal 2 binary64)) #s(literal 1/2 binary64))
(sqrt.f64 (*.f64 (sqrt.f64 (*.f64 (-.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re))) re) #s(literal 2 binary64))) (sqrt.f64 (*.f64 (-.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re))) re) #s(literal 2 binary64)))))
(sqrt.f64 (*.f64 (-.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re))) re) #s(literal 2 binary64)))
(fabs.f64 (neg.f64 (sqrt.f64 (*.f64 (-.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re))) re) #s(literal 2 binary64)))))
(fabs.f64 (sqrt.f64 (*.f64 (-.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re))) re) #s(literal 2 binary64))))
(*.f64 (-.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re))) re) #s(literal 2 binary64))
(*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re))) re))
(+.f64 (-.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re))) re) (-.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re))) re))
#s(literal 2 binary64)
(neg.f64 (-.f64 re (sqrt.f64 (fma.f64 im im (*.f64 re re)))))
(-.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re))) re)
(+.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re))) (neg.f64 re))
(pow.f64 (fma.f64 im im (*.f64 re re)) #s(literal 1/2 binary64))
(sqrt.f64 (*.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re))) (sqrt.f64 (fma.f64 im im (*.f64 re re)))))
(sqrt.f64 (fma.f64 im im (*.f64 re re)))
(fabs.f64 (neg.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re)))))
(fabs.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re))))
(hypot.f64 (neg.f64 (neg.f64 im)) (neg.f64 (neg.f64 re)))
(hypot.f64 (neg.f64 (neg.f64 im)) (neg.f64 (fabs.f64 re)))
(hypot.f64 (neg.f64 (neg.f64 im)) (neg.f64 re))
(hypot.f64 (neg.f64 (neg.f64 im)) (fabs.f64 re))
(hypot.f64 (neg.f64 (neg.f64 im)) re)
(hypot.f64 (neg.f64 (neg.f64 re)) (neg.f64 (neg.f64 im)))
(hypot.f64 (neg.f64 (neg.f64 re)) (neg.f64 (fabs.f64 im)))
(hypot.f64 (neg.f64 (neg.f64 re)) (neg.f64 im))
(hypot.f64 (neg.f64 (neg.f64 re)) (fabs.f64 im))
(hypot.f64 (neg.f64 (neg.f64 re)) im)
(hypot.f64 (neg.f64 (fabs.f64 im)) (neg.f64 (neg.f64 re)))
(hypot.f64 (neg.f64 (fabs.f64 im)) (neg.f64 (fabs.f64 re)))
(hypot.f64 (neg.f64 (fabs.f64 im)) (neg.f64 re))
(hypot.f64 (neg.f64 (fabs.f64 im)) (fabs.f64 re))
(hypot.f64 (neg.f64 (fabs.f64 im)) re)
(hypot.f64 (neg.f64 im) (neg.f64 (neg.f64 re)))
(hypot.f64 (neg.f64 im) (neg.f64 (fabs.f64 re)))
(hypot.f64 (neg.f64 im) (neg.f64 re))
(hypot.f64 (neg.f64 im) (fabs.f64 re))
(hypot.f64 (neg.f64 im) re)
(hypot.f64 (neg.f64 (fabs.f64 re)) (neg.f64 (neg.f64 im)))
(hypot.f64 (neg.f64 (fabs.f64 re)) (neg.f64 (fabs.f64 im)))
(hypot.f64 (neg.f64 (fabs.f64 re)) (neg.f64 im))
(hypot.f64 (neg.f64 (fabs.f64 re)) (fabs.f64 im))
(hypot.f64 (neg.f64 (fabs.f64 re)) im)
(hypot.f64 (neg.f64 re) (neg.f64 (neg.f64 im)))
(hypot.f64 (neg.f64 re) (neg.f64 (fabs.f64 im)))
(hypot.f64 (neg.f64 re) (neg.f64 im))
(hypot.f64 (neg.f64 re) (fabs.f64 im))
(hypot.f64 (neg.f64 re) im)
(hypot.f64 (fabs.f64 re) (neg.f64 (neg.f64 im)))
(hypot.f64 (fabs.f64 re) (neg.f64 (fabs.f64 im)))
(hypot.f64 (fabs.f64 re) (neg.f64 im))
(hypot.f64 (fabs.f64 re) (fabs.f64 im))
(hypot.f64 (fabs.f64 re) im)
(hypot.f64 (fabs.f64 im) (neg.f64 (neg.f64 re)))
(hypot.f64 (fabs.f64 im) (neg.f64 (fabs.f64 re)))
(hypot.f64 (fabs.f64 im) (neg.f64 re))
(hypot.f64 (fabs.f64 im) (fabs.f64 re))
(hypot.f64 (fabs.f64 im) re)
(hypot.f64 im (neg.f64 (neg.f64 re)))
(hypot.f64 im (neg.f64 (fabs.f64 re)))
(hypot.f64 im (neg.f64 re))
(hypot.f64 im (fabs.f64 re))
(hypot.f64 im re)
(hypot.f64 re (neg.f64 (neg.f64 im)))
(hypot.f64 re (neg.f64 (fabs.f64 im)))
(hypot.f64 re (neg.f64 im))
(hypot.f64 re (fabs.f64 im))
(hypot.f64 re im)
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 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (+.f64 im im)) #s(literal 1/2 binary64))
(sqrt.f64 (*.f64 (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)))))
(sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (+.f64 im im)))
(fabs.f64 (neg.f64 (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (+.f64 im im)))))
(fabs.f64 (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 #s(literal 2 binary64))
(*.f64 #s(literal 2 binary64) im)
(-.f64 im (neg.f64 im))
(+.f64 im im)
(*.f64 #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (/.f64 (fabs.f64 im) (sqrt.f64 re))) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (/.f64 (fabs.f64 im) (sqrt.f64 re))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (/.f64 (fabs.f64 im) (sqrt.f64 re)))
(*.f64 (fabs.f64 im) (/.f64 #s(literal 1 binary64) (sqrt.f64 re)))
(*.f64 (fabs.f64 im) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))
(pow.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64))
(/.f64 (neg.f64 (neg.f64 (fabs.f64 im))) (neg.f64 (neg.f64 (sqrt.f64 re))))
(/.f64 (neg.f64 (fabs.f64 im)) (neg.f64 (sqrt.f64 re)))
(/.f64 (fabs.f64 im) (sqrt.f64 re))
(sqrt.f64 (/.f64 (*.f64 im im) re))
(fabs.f64 (neg.f64 (/.f64 (fabs.f64 im) (sqrt.f64 re))))
(fabs.f64 (/.f64 (neg.f64 im) (sqrt.f64 re)))
(fabs.f64 (/.f64 im (sqrt.f64 re)))
(fabs.f64 (/.f64 (fabs.f64 im) (sqrt.f64 re)))
(*.f64 (sqrt.f64 (fabs.f64 im)) (sqrt.f64 (fabs.f64 im)))
(*.f64 #s(literal 1 binary64) (fabs.f64 im))
(*.f64 (fabs.f64 im) #s(literal 1 binary64))
(pow.f64 (*.f64 im im) #s(literal 1/2 binary64))
(sqrt.f64 (*.f64 im im))
(fabs.f64 (neg.f64 (neg.f64 im)))
(fabs.f64 (neg.f64 (fabs.f64 im)))
(fabs.f64 (neg.f64 im))
(fabs.f64 (fabs.f64 im))
(fabs.f64 im)
(pow.f64 re #s(literal 1/2 binary64))
(sqrt.f64 (*.f64 (sqrt.f64 re) (sqrt.f64 re)))
(sqrt.f64 re)
(fabs.f64 (neg.f64 (sqrt.f64 re)))
(fabs.f64 (sqrt.f64 re))
(*.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 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 im im) re)) #s(literal 1/2 binary64))
(sqrt.f64 (*.f64 (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)))))
(sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 im im) re)))
(fabs.f64 (neg.f64 (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 im im) re)))))
(fabs.f64 (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 (neg.f64 (/.f64 (fabs.f64 im) (sqrt.f64 re))) (neg.f64 (/.f64 (fabs.f64 im) (sqrt.f64 re))))
(*.f64 (/.f64 (fabs.f64 im) (sqrt.f64 re)) (/.f64 (fabs.f64 im) (sqrt.f64 re)))
(*.f64 (*.f64 im im) (/.f64 #s(literal 1 binary64) re))
(*.f64 im (/.f64 im re))
(pow.f64 (*.f64 (/.f64 (*.f64 im im) re) (/.f64 (*.f64 im im) re)) #s(literal 1/2 binary64))
(pow.f64 (/.f64 (fabs.f64 im) (sqrt.f64 re)) #s(literal 2 binary64))
(pow.f64 (/.f64 (*.f64 im im) re) #s(literal 1 binary64))
(/.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)
(sqrt.f64 (*.f64 (/.f64 (*.f64 im im) re) (/.f64 (*.f64 im im) re)))
(fabs.f64 (/.f64 (*.f64 im im) re))
(*.f64 (neg.f64 (neg.f64 im)) (neg.f64 (neg.f64 im)))
(*.f64 (neg.f64 (fabs.f64 im)) (neg.f64 (fabs.f64 im)))
(*.f64 (neg.f64 im) (neg.f64 im))
(*.f64 (fabs.f64 im) (fabs.f64 im))
(*.f64 im im)
(pow.f64 (neg.f64 (neg.f64 im)) #s(literal 2 binary64))
(pow.f64 (*.f64 (*.f64 im im) (*.f64 im im)) #s(literal 1/2 binary64))
(pow.f64 (neg.f64 (fabs.f64 im)) #s(literal 2 binary64))
(pow.f64 (neg.f64 im) #s(literal 2 binary64))
(pow.f64 (fabs.f64 im) #s(literal 2 binary64))
(pow.f64 (*.f64 im im) #s(literal 1 binary64))
(pow.f64 im #s(literal 2 binary64))
(sqrt.f64 (*.f64 (*.f64 im im) (*.f64 im im)))
(fabs.f64 (*.f64 (neg.f64 im) (fabs.f64 im)))
(fabs.f64 (*.f64 (fabs.f64 im) (neg.f64 im)))
(fabs.f64 (*.f64 (fabs.f64 im) im))
(fabs.f64 (*.f64 im (neg.f64 im)))
(fabs.f64 (*.f64 im (fabs.f64 im)))
(fabs.f64 (*.f64 (neg.f64 im) im))
(fabs.f64 (neg.f64 (*.f64 im im)))
(fabs.f64 (*.f64 im im))
(*.f64 (sqrt.f64 #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(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (fma.f64 (/.f64 re im) #s(literal -2 binary64) #s(literal 2 binary64)) im))))
(pow.f64 #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(literal 1/2 binary64))
(sqrt.f64 (*.f64 (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (fma.f64 (/.f64 re im) #s(literal -2 binary64) #s(literal 2 binary64)) im))) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (fma.f64 (/.f64 re im) #s(literal -2 binary64) #s(literal 2 binary64)) im)))))
(sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (fma.f64 (/.f64 re im) #s(literal -2 binary64) #s(literal 2 binary64)) im)))
(fabs.f64 (neg.f64 (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (fma.f64 (/.f64 re im) #s(literal -2 binary64) #s(literal 2 binary64)) im)))))
(fabs.f64 (sqrt.f64 #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 (fma.f64 (/.f64 re im) #s(literal -2 binary64) #s(literal 2 binary64)) im))
(*.f64 (fma.f64 (/.f64 re im) #s(literal -2 binary64) #s(literal 2 binary64)) im)
(*.f64 im (fma.f64 (/.f64 re im) #s(literal -2 binary64) #s(literal 2 binary64)))
(fma.f64 im #s(literal 2 binary64) (*.f64 im (*.f64 (/.f64 re im) #s(literal -2 binary64))))
(fma.f64 im #s(literal 2 binary64) (*.f64 (*.f64 (/.f64 re im) #s(literal -2 binary64)) im))
(fma.f64 #s(literal 2 binary64) im (*.f64 im (*.f64 (/.f64 re im) #s(literal -2 binary64))))
(fma.f64 #s(literal 2 binary64) im (*.f64 (*.f64 (/.f64 re im) #s(literal -2 binary64)) im))
(+.f64 (+.f64 im im) (*.f64 im (*.f64 (/.f64 re im) #s(literal -2 binary64))))
(+.f64 (+.f64 im im) (*.f64 (*.f64 (/.f64 re im) #s(literal -2 binary64)) im))
(fma.f64 (/.f64 re im) #s(literal -2 binary64) #s(literal 2 binary64))
(fma.f64 #s(literal -2 binary64) (/.f64 re im) #s(literal 2 binary64))
(-.f64 (*.f64 (/.f64 re im) #s(literal -2 binary64)) #s(literal -2 binary64))
(-.f64 #s(literal 2 binary64) (neg.f64 (*.f64 (/.f64 re im) #s(literal -2 binary64))))
(-.f64 #s(literal 2 binary64) (/.f64 (+.f64 re re) im))
(+.f64 (*.f64 (/.f64 re im) #s(literal -2 binary64)) #s(literal 2 binary64))
(+.f64 #s(literal 2 binary64) (*.f64 (/.f64 re im) #s(literal -2 binary64)))
(*.f64 (/.f64 #s(literal -1 binary64) im) (/.f64 re #s(literal -1 binary64)))
(*.f64 (/.f64 re #s(literal -1 binary64)) (/.f64 #s(literal -1 binary64) im))
(*.f64 (/.f64 re im) #s(literal 1 binary64))
(*.f64 #s(literal 1 binary64) (/.f64 re im))
(*.f64 re (/.f64 #s(literal 1 binary64) im))
(/.f64 (*.f64 #s(literal 2 binary64) (neg.f64 re)) (*.f64 #s(literal 2 binary64) (neg.f64 im)))
(/.f64 (*.f64 #s(literal 2 binary64) re) (+.f64 im im))
(/.f64 (neg.f64 (neg.f64 re)) (neg.f64 (neg.f64 im)))
(/.f64 (neg.f64 re) (neg.f64 im))
(/.f64 re im)
#s(literal -2 binary64)
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 (sqrt.f64 (*.f64 (fabs.f64 im) #s(literal 2 binary64))) #s(literal 1/2 binary64)))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (fma.f64 (/.f64 re (sqrt.f64 (*.f64 (fabs.f64 im) #s(literal 2 binary64)))) #s(literal -1/2 binary64) (*.f64 (sqrt.f64 (*.f64 (fabs.f64 im) #s(literal 2 binary64))) #s(literal 1/2 binary64))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (fma.f64 (/.f64 (-.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (fabs.f64 im)) (/.f64 #s(literal 1 binary64) (*.f64 (fabs.f64 im) #s(literal 2 binary64)))) re)) #s(literal 1/2 binary64)) (sqrt.f64 (*.f64 (fabs.f64 im) #s(literal 2 binary64)))) re (*.f64 (sqrt.f64 (*.f64 (fabs.f64 im) #s(literal 2 binary64))) #s(literal 1/2 binary64))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (fma.f64 re (-.f64 (*.f64 (*.f64 #s(literal 1/4 binary64) (fma.f64 re (/.f64 (-.f64 (/.f64 #s(literal 1 binary64) (fabs.f64 im)) (/.f64 #s(literal 1 binary64) (*.f64 (fabs.f64 im) #s(literal 2 binary64)))) (*.f64 (sqrt.f64 (*.f64 (fabs.f64 im) #s(literal 2 binary64))) (*.f64 (fabs.f64 im) #s(literal 2 binary64)))) (/.f64 (-.f64 (/.f64 #s(literal 1 binary64) (fabs.f64 im)) (/.f64 #s(literal 1 binary64) (*.f64 (fabs.f64 im) #s(literal 2 binary64)))) (sqrt.f64 (*.f64 (fabs.f64 im) #s(literal 2 binary64)))))) re) (/.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 (fabs.f64 im) #s(literal 2 binary64))))) (*.f64 (sqrt.f64 (*.f64 (fabs.f64 im) #s(literal 2 binary64))) #s(literal 1/2 binary64))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (sqrt.f64 (*.f64 (fabs.f64 im) #s(literal 2 binary64))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (+.f64 (/.f64 (neg.f64 re) (sqrt.f64 (*.f64 (fabs.f64 im) #s(literal 2 binary64)))) (sqrt.f64 (*.f64 (fabs.f64 im) #s(literal 2 binary64)))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (fma.f64 (/.f64 (-.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (fabs.f64 im)) (/.f64 #s(literal 1 binary64) (*.f64 (fabs.f64 im) #s(literal 2 binary64)))) re)) #s(literal 1 binary64)) (sqrt.f64 (*.f64 (fabs.f64 im) #s(literal 2 binary64)))) re (sqrt.f64 (*.f64 (fabs.f64 im) #s(literal 2 binary64)))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (fma.f64 re (-.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (fma.f64 re (/.f64 (-.f64 (/.f64 #s(literal 1 binary64) (fabs.f64 im)) (/.f64 #s(literal 1 binary64) (*.f64 (fabs.f64 im) #s(literal 2 binary64)))) (*.f64 (sqrt.f64 (*.f64 (fabs.f64 im) #s(literal 2 binary64))) (*.f64 (fabs.f64 im) #s(literal 2 binary64)))) (/.f64 (-.f64 (/.f64 #s(literal 1 binary64) (fabs.f64 im)) (/.f64 #s(literal 1 binary64) (*.f64 (fabs.f64 im) #s(literal 2 binary64)))) (sqrt.f64 (*.f64 (fabs.f64 im) #s(literal 2 binary64)))))) re) (/.f64 #s(literal 1 binary64) (sqrt.f64 (*.f64 (fabs.f64 im) #s(literal 2 binary64))))) (sqrt.f64 (*.f64 (fabs.f64 im) #s(literal 2 binary64)))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (fabs.f64 im) #s(literal 2 binary64)))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (fma.f64 (fabs.f64 im) #s(literal 2 binary64) (*.f64 #s(literal -2 binary64) re)))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (fma.f64 (-.f64 (/.f64 re (fabs.f64 im)) #s(literal 2 binary64)) re (*.f64 (fabs.f64 im) #s(literal 2 binary64))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (fma.f64 (fma.f64 (fma.f64 (/.f64 (*.f64 re re) (*.f64 (fabs.f64 im) (*.f64 im im))) #s(literal -1/4 binary64) (/.f64 #s(literal 1 binary64) (fabs.f64 im))) re #s(literal -2 binary64)) re (*.f64 (fabs.f64 im) #s(literal 2 binary64))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) (fabs.f64 im))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) (+.f64 (neg.f64 re) (fabs.f64 im)))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) (fma.f64 (fma.f64 (/.f64 re (fabs.f64 im)) #s(literal 1/2 binary64) #s(literal -1 binary64)) re (fabs.f64 im)))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) (fma.f64 (fma.f64 (fma.f64 (/.f64 (*.f64 re re) (*.f64 (fabs.f64 im) (*.f64 im im))) #s(literal -1/8 binary64) (/.f64 #s(literal 1/2 binary64) (fabs.f64 im))) re #s(literal -1 binary64)) re (fabs.f64 im)))
#s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (/.f64 (*.f64 re re) (fabs.f64 im)) #s(literal 1/2 binary64) (fabs.f64 im)))
#s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 re re) (fma.f64 (/.f64 (*.f64 re re) (*.f64 (fabs.f64 im) (*.f64 im im))) #s(literal -1/8 binary64) (/.f64 #s(literal 1/2 binary64) (fabs.f64 im))) (fabs.f64 im)))
#s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (fma.f64 (-.f64 (*.f64 (*.f64 (*.f64 re re) (pow.f64 (fabs.f64 im) #s(literal -5 binary64))) #s(literal 1/16 binary64)) (/.f64 #s(literal 1/8 binary64) (*.f64 (fabs.f64 im) (*.f64 im im)))) (*.f64 re re) (/.f64 #s(literal 1/2 binary64) (fabs.f64 im))) (*.f64 re re) (fabs.f64 im)))
#s(approx re re)
#s(approx (/ (fabs im) (sqrt re)) (/.f64 (fabs.f64 im) (sqrt.f64 re)))
#s(approx (sqrt re) (sqrt.f64 re))
#s(approx (/ (* im im) re) (/.f64 (*.f64 im im) re))
#s(approx (* (+ (* (/ re im) -2) 2) im) (+.f64 im im))
#s(approx (* (+ (* (/ re im) -2) 2) im) (fma.f64 #s(literal -2 binary64) re (+.f64 im im)))
#s(approx (+ (* (/ re im) -2) 2) #s(literal 2 binary64))
#s(approx (+ (* (/ re im) -2) 2) (fma.f64 (/.f64 re im) #s(literal -2 binary64) #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 (fabs.f64 im) (sqrt.f64 re)) #s(literal 1/2 binary64)))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (*.f64 (*.f64 re re) re) (/.f64 (fabs.f64 im) (sqrt.f64 re)))) #s(literal -1/16 binary64) (*.f64 (/.f64 (fabs.f64 im) (sqrt.f64 re)) #s(literal 1/2 binary64))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (*.f64 (*.f64 re re) re) (/.f64 (fabs.f64 im) (sqrt.f64 re)))) #s(literal -1/16 binary64) (fma.f64 (/.f64 (pow.f64 im #s(literal 6 binary64)) (*.f64 (pow.f64 re #s(literal 5 binary64)) (/.f64 (fabs.f64 im) (sqrt.f64 re)))) #s(literal 1/32 binary64) (*.f64 (/.f64 (fabs.f64 im) (sqrt.f64 re)) #s(literal 1/2 binary64)))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (*.f64 (*.f64 re re) re) (/.f64 (fabs.f64 im) (sqrt.f64 re)))) #s(literal -1/16 binary64) (fma.f64 (/.f64 (pow.f64 im #s(literal 8 binary64)) (*.f64 (*.f64 (/.f64 (fabs.f64 im) (sqrt.f64 re)) (/.f64 (*.f64 im im) re)) (pow.f64 re #s(literal 6 binary64)))) #s(literal -1/256 binary64) (fma.f64 (/.f64 (pow.f64 im #s(literal 6 binary64)) (*.f64 (pow.f64 re #s(literal 5 binary64)) (/.f64 (fabs.f64 im) (sqrt.f64 re)))) #s(literal 1/32 binary64) (*.f64 (/.f64 (fabs.f64 im) (sqrt.f64 re)) #s(literal 1/2 binary64))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (/.f64 (fabs.f64 im) (sqrt.f64 re)))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (*.f64 (*.f64 re re) re) (/.f64 (fabs.f64 im) (sqrt.f64 re)))) #s(literal -1/8 binary64) (/.f64 (fabs.f64 im) (sqrt.f64 re))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (+.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 6 binary64)) (*.f64 (pow.f64 re #s(literal 5 binary64)) (/.f64 (fabs.f64 im) (sqrt.f64 re)))) #s(literal 1/16 binary64) (/.f64 (*.f64 #s(literal -1/8 binary64) (pow.f64 im #s(literal 4 binary64))) (*.f64 (*.f64 (*.f64 re re) re) (/.f64 (fabs.f64 im) (sqrt.f64 re))))) (/.f64 (fabs.f64 im) (sqrt.f64 re))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (+.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (*.f64 (*.f64 re re) re) (/.f64 (fabs.f64 im) (sqrt.f64 re)))) #s(literal -1/8 binary64) (fma.f64 #s(literal -1/128 binary64) (/.f64 (pow.f64 im #s(literal 8 binary64)) (*.f64 (*.f64 (/.f64 (fabs.f64 im) (sqrt.f64 re)) (/.f64 (*.f64 im im) re)) (pow.f64 re #s(literal 6 binary64)))) (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 6 binary64))) (*.f64 (pow.f64 re #s(literal 5 binary64)) (/.f64 (fabs.f64 im) (sqrt.f64 re)))))) (/.f64 (fabs.f64 im) (sqrt.f64 re))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (/.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.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 (pow.f64 im #s(literal 4 binary64)) (*.f64 re re)) #s(literal -1/4 binary64) (fma.f64 (*.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal -4 binary64))) #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)) (pow.f64 re #s(literal -6 binary64)))) (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 re re)) #s(literal -1/4 binary64) (fma.f64 (*.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal -4 binary64))) #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 (pow.f64 im #s(literal 4 binary64)) (*.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 (pow.f64 im #s(literal 4 binary64)) (*.f64 re re)) #s(literal -1/8 binary64) (fma.f64 (*.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal -4 binary64))) #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)) (pow.f64 re #s(literal -6 binary64))) #s(literal -1/2 binary64) (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 re re)) #s(literal -1/8 binary64) (fma.f64 (*.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal -4 binary64))) #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 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal -4 binary64))) #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 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal -4 binary64))) #s(literal -1/8 binary64) (fma.f64 (*.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal -6 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 (/ (fabs im) (sqrt re)) (/.f64 (fabs.f64 im) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) re)))
#s(approx (sqrt re) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) re))
#s(approx (* (+ (* (/ re im) -2) 2) im) (*.f64 #s(literal -2 binary64) re))
#s(approx (* (+ (* (/ re im) -2) 2) im) (*.f64 (fma.f64 (/.f64 im re) #s(literal 2 binary64) #s(literal -2 binary64)) re))
#s(approx (+ (* (/ re im) -2) 2) (*.f64 (/.f64 re im) #s(literal -2 binary64)))
#s(approx (+ (* (/ re im) -2) 2) (*.f64 (-.f64 (/.f64 #s(literal 2 binary64) re) (/.f64 #s(literal 2 binary64) im)) re))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 (*.f64 #s(literal -1/2 binary64) re) (sqrt.f64 (/.f64 #s(literal -4 binary64) re))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 (neg.f64 re) (fma.f64 (/.f64 (*.f64 im im) (*.f64 (sqrt.f64 (/.f64 #s(literal -4 binary64) re)) (*.f64 (*.f64 re re) re))) #s(literal -1/4 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal -4 binary64) re)) #s(literal 1/2 binary64)))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 (neg.f64 re) (fma.f64 (sqrt.f64 (/.f64 #s(literal -4 binary64) re)) #s(literal 1/2 binary64) (neg.f64 (/.f64 (fma.f64 (/.f64 (*.f64 im im) (sqrt.f64 (/.f64 #s(literal -4 binary64) re))) #s(literal 1/4 binary64) (/.f64 (*.f64 #s(literal -1/16 binary64) (pow.f64 im #s(literal 4 binary64))) (*.f64 (sqrt.f64 (/.f64 #s(literal -4 binary64) re)) (*.f64 re re)))) (*.f64 (*.f64 re re) re))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 (neg.f64 re) (fma.f64 (sqrt.f64 (/.f64 #s(literal -4 binary64) re)) #s(literal 1/2 binary64) (neg.f64 (/.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (sqrt.f64 (/.f64 #s(literal -4 binary64) re)) (*.f64 re re))) #s(literal -1/16 binary64) (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal -4 binary64) re)) (/.f64 #s(literal -4 binary64) re)) (*.f64 (*.f64 re re) re))) #s(literal 1/16 binary64) (/.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 im im)) (sqrt.f64 (/.f64 #s(literal -4 binary64) re))))) (*.f64 (*.f64 re re) re))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (neg.f64 re) (sqrt.f64 (/.f64 #s(literal -4 binary64) re))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (neg.f64 re) (fma.f64 (/.f64 (*.f64 im im) (*.f64 (sqrt.f64 (/.f64 #s(literal -4 binary64) re)) (*.f64 (*.f64 re re) re))) #s(literal -1/2 binary64) (sqrt.f64 (/.f64 #s(literal -4 binary64) re)))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (neg.f64 re) (+.f64 (neg.f64 (/.f64 (fma.f64 (/.f64 (*.f64 im im) (sqrt.f64 (/.f64 #s(literal -4 binary64) re))) #s(literal 1/2 binary64) (/.f64 (*.f64 #s(literal -1/8 binary64) (pow.f64 im #s(literal 4 binary64))) (*.f64 (sqrt.f64 (/.f64 #s(literal -4 binary64) re)) (*.f64 re re)))) (*.f64 (*.f64 re re) re))) (sqrt.f64 (/.f64 #s(literal -4 binary64) re)))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (neg.f64 re) (+.f64 (neg.f64 (/.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (sqrt.f64 (/.f64 #s(literal -4 binary64) re)) (*.f64 re re))) #s(literal -1/8 binary64) (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal -4 binary64) re)) (/.f64 #s(literal -4 binary64) re)) (*.f64 (*.f64 re re) re))) #s(literal 1/8 binary64) (/.f64 (*.f64 (*.f64 im im) #s(literal 1/2 binary64)) (sqrt.f64 (/.f64 #s(literal -4 binary64) re))))) (*.f64 (*.f64 re re) re))) (sqrt.f64 (/.f64 #s(literal -4 binary64) 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) (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 4 binary64))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (neg.f64 re) (+.f64 (fma.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal -4 binary64))) #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 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal -4 binary64))) #s(literal -1/4 binary64) (fma.f64 (*.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal -6 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 (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 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal -4 binary64))) #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 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal -4 binary64))) #s(literal -1/8 binary64) (fma.f64 (*.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal -6 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 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal -4 binary64))) #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 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal -4 binary64))) #s(literal -1/8 binary64) (fma.f64 (*.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal -6 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 (/ (fabs im) (sqrt re)) (neg.f64 (/.f64 (fabs.f64 im) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) re))))
#s(approx (sqrt re) (*.f64 (neg.f64 re) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))))
#s(approx (* (+ (* (/ re im) -2) 2) im) (*.f64 (neg.f64 re) (fma.f64 (/.f64 im re) #s(literal -2 binary64) #s(literal 2 binary64))))
#s(approx (+ (* (/ re im) -2) 2) (*.f64 (neg.f64 re) (-.f64 (/.f64 #s(literal 2 binary64) im) (/.f64 #s(literal 2 binary64) re))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 (sqrt.f64 (*.f64 (-.f64 (fabs.f64 re) re) #s(literal 2 binary64))) #s(literal 1/2 binary64)))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (fma.f64 (/.f64 (*.f64 im im) (*.f64 (sqrt.f64 (*.f64 (-.f64 (fabs.f64 re) re) #s(literal 2 binary64))) (fabs.f64 re))) #s(literal 1/4 binary64) (*.f64 (sqrt.f64 (*.f64 (-.f64 (fabs.f64 re) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (fma.f64 (sqrt.f64 (*.f64 (-.f64 (fabs.f64 re) re) #s(literal 2 binary64))) #s(literal 1/2 binary64) (*.f64 (fma.f64 (/.f64 (*.f64 (*.f64 im im) (+.f64 (/.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 (-.f64 (fabs.f64 re) re) #s(literal 2 binary64)) (*.f64 re re))) (/.f64 #s(literal 1/4 binary64) (*.f64 (fabs.f64 re) (*.f64 re re))))) (sqrt.f64 (*.f64 (-.f64 (fabs.f64 re) re) #s(literal 2 binary64)))) #s(literal -1/4 binary64) (/.f64 #s(literal 1/4 binary64) (*.f64 (sqrt.f64 (*.f64 (-.f64 (fabs.f64 re) re) #s(literal 2 binary64))) (fabs.f64 re)))) (*.f64 im im))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (fma.f64 (fma.f64 (/.f64 (fma.f64 #s(literal 1/4 binary64) (*.f64 (fma.f64 (pow.f64 (fabs.f64 re) #s(literal -5 binary64)) #s(literal 1/8 binary64) (*.f64 #s(literal 1/2 binary64) (/.f64 (+.f64 (/.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 (-.f64 (fabs.f64 re) re) #s(literal 2 binary64)) (*.f64 re re))) (/.f64 #s(literal 1/4 binary64) (*.f64 (fabs.f64 re) (*.f64 re re)))) (*.f64 (*.f64 (-.f64 (fabs.f64 re) re) #s(literal 2 binary64)) (fabs.f64 re))))) (*.f64 im im)) (*.f64 #s(literal -1/4 binary64) (+.f64 (/.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 (-.f64 (fabs.f64 re) re) #s(literal 2 binary64)) (*.f64 re re))) (/.f64 #s(literal 1/4 binary64) (*.f64 (fabs.f64 re) (*.f64 re re)))))) (sqrt.f64 (*.f64 (-.f64 (fabs.f64 re) re) #s(literal 2 binary64)))) (*.f64 im im) (/.f64 #s(literal 1/4 binary64) (*.f64 (sqrt.f64 (*.f64 (-.f64 (fabs.f64 re) re) #s(literal 2 binary64))) (fabs.f64 re)))) (*.f64 im im) (*.f64 (sqrt.f64 (*.f64 (-.f64 (fabs.f64 re) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (sqrt.f64 (*.f64 (-.f64 (fabs.f64 re) re) #s(literal 2 binary64))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (fma.f64 (/.f64 (*.f64 im im) (*.f64 (sqrt.f64 (*.f64 (-.f64 (fabs.f64 re) re) #s(literal 2 binary64))) (fabs.f64 re))) #s(literal 1/2 binary64) (sqrt.f64 (*.f64 (-.f64 (fabs.f64 re) re) #s(literal 2 binary64)))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (fma.f64 (fma.f64 (/.f64 (*.f64 (*.f64 im im) (+.f64 (/.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 (-.f64 (fabs.f64 re) re) #s(literal 2 binary64)) (*.f64 re re))) (/.f64 #s(literal 1/4 binary64) (*.f64 (fabs.f64 re) (*.f64 re re))))) (sqrt.f64 (*.f64 (-.f64 (fabs.f64 re) re) #s(literal 2 binary64)))) #s(literal -1/2 binary64) (/.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 (*.f64 (-.f64 (fabs.f64 re) re) #s(literal 2 binary64))) (fabs.f64 re)))) (*.f64 im im) (sqrt.f64 (*.f64 (-.f64 (fabs.f64 re) re) #s(literal 2 binary64)))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (fma.f64 (fma.f64 (/.f64 (fma.f64 #s(literal 1/2 binary64) (*.f64 (fma.f64 (pow.f64 (fabs.f64 re) #s(literal -5 binary64)) #s(literal 1/8 binary64) (*.f64 #s(literal 1/2 binary64) (/.f64 (+.f64 (/.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 (-.f64 (fabs.f64 re) re) #s(literal 2 binary64)) (*.f64 re re))) (/.f64 #s(literal 1/4 binary64) (*.f64 (fabs.f64 re) (*.f64 re re)))) (*.f64 (*.f64 (-.f64 (fabs.f64 re) re) #s(literal 2 binary64)) (fabs.f64 re))))) (*.f64 im im)) (*.f64 #s(literal -1/2 binary64) (+.f64 (/.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 (-.f64 (fabs.f64 re) re) #s(literal 2 binary64)) (*.f64 re re))) (/.f64 #s(literal 1/4 binary64) (*.f64 (fabs.f64 re) (*.f64 re re)))))) (sqrt.f64 (*.f64 (-.f64 (fabs.f64 re) re) #s(literal 2 binary64)))) (*.f64 im im) (/.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 (*.f64 (-.f64 (fabs.f64 re) re) #s(literal 2 binary64))) (fabs.f64 re)))) (*.f64 im im) (sqrt.f64 (*.f64 (-.f64 (fabs.f64 re) re) #s(literal 2 binary64)))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (-.f64 (fabs.f64 re) re) #s(literal 2 binary64)))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (fma.f64 (-.f64 (fabs.f64 re) re) #s(literal 2 binary64) (/.f64 (*.f64 im im) (fabs.f64 re))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (fma.f64 (fma.f64 (/.f64 (*.f64 im im) (*.f64 (fabs.f64 re) (*.f64 re re))) #s(literal -1/4 binary64) (/.f64 #s(literal 1 binary64) (fabs.f64 re))) (*.f64 im im) (*.f64 (-.f64 (fabs.f64 re) re) #s(literal 2 binary64))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (fma.f64 (fma.f64 (-.f64 (*.f64 (*.f64 (*.f64 im im) (pow.f64 (fabs.f64 re) #s(literal -5 binary64))) #s(literal 1/8 binary64)) (/.f64 #s(literal 1/4 binary64) (*.f64 (fabs.f64 re) (*.f64 re re)))) (*.f64 im im) (/.f64 #s(literal 1 binary64) (fabs.f64 re))) (*.f64 im im) (*.f64 (-.f64 (fabs.f64 re) re) #s(literal 2 binary64))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 (fabs.f64 re) re))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 (fma.f64 (/.f64 (*.f64 im im) (fabs.f64 re)) #s(literal 1/2 binary64) (fabs.f64 re)) re))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 (fma.f64 (*.f64 im im) (fma.f64 (/.f64 (*.f64 im im) (*.f64 (fabs.f64 re) (*.f64 re re))) #s(literal -1/8 binary64) (/.f64 #s(literal 1/2 binary64) (fabs.f64 re))) (fabs.f64 re)) re))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 (fma.f64 (fma.f64 (-.f64 (*.f64 (*.f64 (*.f64 im im) (pow.f64 (fabs.f64 re) #s(literal -5 binary64))) #s(literal 1/16 binary64)) (/.f64 #s(literal 1/8 binary64) (*.f64 (fabs.f64 re) (*.f64 re re)))) (*.f64 im im) (/.f64 #s(literal 1/2 binary64) (fabs.f64 re))) (*.f64 im im) (fabs.f64 re)) re))
#s(approx (sqrt (+ (* re re) (* im im))) (fabs.f64 re))
#s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (/.f64 (*.f64 im im) (fabs.f64 re)) #s(literal 1/2 binary64) (fabs.f64 re)))
#s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 im im) (fma.f64 (/.f64 (*.f64 im im) (*.f64 (fabs.f64 re) (*.f64 re re))) #s(literal -1/8 binary64) (/.f64 #s(literal 1/2 binary64) (fabs.f64 re))) (fabs.f64 re)))
#s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (fma.f64 (-.f64 (*.f64 (*.f64 (*.f64 im im) (pow.f64 (fabs.f64 re) #s(literal -5 binary64))) #s(literal 1/16 binary64)) (/.f64 #s(literal 1/8 binary64) (*.f64 (fabs.f64 re) (*.f64 re re)))) (*.f64 im im) (/.f64 #s(literal 1/2 binary64) (fabs.f64 re))) (*.f64 im im) (fabs.f64 re)))
#s(approx im im)
#s(approx (fabs im) (fabs.f64 im))
#s(approx (* im im) (*.f64 im im))
#s(approx (+ (* (/ re im) -2) 2) (/.f64 (fma.f64 #s(literal -2 binary64) re (+.f64 im im)) im))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 (*.f64 #s(literal 1/2 binary64) im) (sqrt.f64 (/.f64 #s(literal 2 binary64) im))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 (fma.f64 (/.f64 re (*.f64 (sqrt.f64 (/.f64 #s(literal 2 binary64) im)) (*.f64 im im))) #s(literal -1/2 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 2 binary64) im)) #s(literal 1/2 binary64))) im))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 (fma.f64 (/.f64 re (*.f64 (sqrt.f64 (/.f64 #s(literal 2 binary64) im)) (*.f64 im im))) #s(literal -1/2 binary64) (fma.f64 (/.f64 (*.f64 re re) (*.f64 (*.f64 (*.f64 im im) im) (sqrt.f64 (/.f64 #s(literal 2 binary64) im)))) #s(literal 1/4 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 2 binary64) im)) #s(literal 1/2 binary64)))) im))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 (fma.f64 (/.f64 re (*.f64 (sqrt.f64 (/.f64 #s(literal 2 binary64) im)) (*.f64 im im))) #s(literal -1/2 binary64) (fma.f64 (/.f64 (*.f64 re re) (*.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (sqrt.f64 (/.f64 #s(literal 2 binary64) im)) (/.f64 #s(literal 2 binary64) im)))) #s(literal -1/4 binary64) (fma.f64 (/.f64 (*.f64 re re) (*.f64 (*.f64 (*.f64 im im) im) (sqrt.f64 (/.f64 #s(literal 2 binary64) im)))) #s(literal 1/4 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 2 binary64) im)) #s(literal 1/2 binary64))))) im))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (sqrt.f64 (/.f64 #s(literal 2 binary64) im)) im))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (+.f64 (/.f64 (neg.f64 re) (*.f64 (sqrt.f64 (/.f64 #s(literal 2 binary64) im)) (*.f64 im im))) (sqrt.f64 (/.f64 #s(literal 2 binary64) im))) im))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (+.f64 (fma.f64 (/.f64 (*.f64 re re) (*.f64 (*.f64 (*.f64 im im) im) (sqrt.f64 (/.f64 #s(literal 2 binary64) im)))) #s(literal 1/2 binary64) (/.f64 (neg.f64 re) (*.f64 (sqrt.f64 (/.f64 #s(literal 2 binary64) im)) (*.f64 im im)))) (sqrt.f64 (/.f64 #s(literal 2 binary64) im))) im))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (+.f64 (+.f64 (fma.f64 (/.f64 (*.f64 re re) (*.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (sqrt.f64 (/.f64 #s(literal 2 binary64) im)) (/.f64 #s(literal 2 binary64) im)))) #s(literal -1/2 binary64) (*.f64 (/.f64 (*.f64 re re) (*.f64 (*.f64 (*.f64 im im) im) (sqrt.f64 (/.f64 #s(literal 2 binary64) im)))) #s(literal 1/2 binary64))) (/.f64 (neg.f64 re) (*.f64 (sqrt.f64 (/.f64 #s(literal 2 binary64) im)) (*.f64 im im)))) (sqrt.f64 (/.f64 #s(literal 2 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 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal -4 binary64))) #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 #s(literal 1 binary64) (/.f64 re im)) 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 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal -4 binary64))) #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 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal -4 binary64))) #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 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal -4 binary64))) #s(literal -1/8 binary64) (fma.f64 (*.f64 (pow.f64 re #s(literal 6 binary64)) (pow.f64 im #s(literal -6 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 (*.f64 #s(literal -1/2 binary64) im) (sqrt.f64 (/.f64 #s(literal -2 binary64) im))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 (neg.f64 im) (fma.f64 (/.f64 re (*.f64 (sqrt.f64 (/.f64 #s(literal -2 binary64) im)) (*.f64 im im))) #s(literal -1/2 binary64) (*.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 (/.f64 re (*.f64 (sqrt.f64 (/.f64 #s(literal -2 binary64) im)) (*.f64 im im))) #s(literal -1/2 binary64) (fma.f64 (/.f64 (*.f64 re re) (*.f64 (sqrt.f64 (/.f64 #s(literal -2 binary64) im)) (*.f64 (*.f64 im im) im))) #s(literal -1/4 binary64) (*.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) (+.f64 (neg.f64 (/.f64 (*.f64 #s(literal 1/4 binary64) (+.f64 (/.f64 (*.f64 re re) (sqrt.f64 (/.f64 #s(literal -2 binary64) im))) (/.f64 (*.f64 re re) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal -2 binary64) im)) (/.f64 #s(literal -2 binary64) im)) im)))) (*.f64 (*.f64 im im) im))) (fma.f64 (/.f64 re (*.f64 (sqrt.f64 (/.f64 #s(literal -2 binary64) im)) (*.f64 im im))) #s(literal -1/2 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal -2 binary64) im)) #s(literal 1/2 binary64))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (neg.f64 im) (sqrt.f64 (/.f64 #s(literal -2 binary64) im))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (neg.f64 im) (+.f64 (/.f64 (neg.f64 re) (*.f64 (sqrt.f64 (/.f64 #s(literal -2 binary64) im)) (*.f64 im im))) (sqrt.f64 (/.f64 #s(literal -2 binary64) im)))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (neg.f64 im) (+.f64 (fma.f64 (/.f64 (*.f64 re re) (*.f64 (sqrt.f64 (/.f64 #s(literal -2 binary64) im)) (*.f64 (*.f64 im im) im))) #s(literal -1/2 binary64) (/.f64 (neg.f64 re) (*.f64 (sqrt.f64 (/.f64 #s(literal -2 binary64) im)) (*.f64 im im)))) (sqrt.f64 (/.f64 #s(literal -2 binary64) im)))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (neg.f64 im) (+.f64 (+.f64 (neg.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) (+.f64 (/.f64 (*.f64 re re) (sqrt.f64 (/.f64 #s(literal -2 binary64) im))) (/.f64 (*.f64 re re) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal -2 binary64) im)) (/.f64 #s(literal -2 binary64) im)) im)))) (*.f64 (*.f64 im im) im))) (/.f64 (neg.f64 re) (*.f64 (sqrt.f64 (/.f64 #s(literal -2 binary64) im)) (*.f64 im im)))) (sqrt.f64 (/.f64 #s(literal -2 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 (pow.f64 re #s(literal 4 binary64)) (*.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 (pow.f64 re #s(literal 4 binary64)) (*.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 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal -4 binary64))) #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 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal -4 binary64))) #s(literal -1/8 binary64) (fma.f64 (*.f64 (pow.f64 re #s(literal 6 binary64)) (pow.f64 im #s(literal -6 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 (* (+ (* (/ re im) -2) 2) im) (*.f64 (neg.f64 im) (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -2 binary64))))

eval50.0ms (1.1%)

Memory
4.3MiB live, 48.6MiB allocated; 7ms collecting garbage
Compiler

Compiled 3 914 to 1 629 computations (58.4% saved)

prune10.0ms (0.2%)

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

14 alts after pruning (9 fresh and 5 done)

PrunedKeptTotal
New2934297
Fresh156
Picked055
Done000
Total29414308
Accuracy
100.0%
Counts
308 → 14
Alt Table
Click to see full alt table
StatusAccuracyProgram
41.1%
(*.f64 (sqrt.f64 (*.f64 (-.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re))) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))
80.2%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 re im) re))))
19.3%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 im im) re))))
51.5%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (+.f64 im im))))
52.9%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (fma.f64 (/.f64 re im) #s(literal -2 binary64) #s(literal 2 binary64)) im))))
26.7%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (neg.f64 re) (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 4 binary64))))))
20.3%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 im (/.f64 im re)))))
26.5%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re))))
53.9%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(approx (* (+ (* (/ re im) -2) 2) im) (fma.f64 #s(literal -2 binary64) re (+.f64 im im))))))
27.2%
(*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (/.f64 (fabs.f64 im) (sqrt.f64 re))))
27.2%
(*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (/.f64 (fabs.f64 im) #s(approx (sqrt re) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) re)))))
51.3%
(*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (sqrt.f64 (/.f64 #s(literal 2 binary64) im)) im)))
18.4%
(*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (neg.f64 re) (fma.f64 (/.f64 (*.f64 im im) (*.f64 (sqrt.f64 (/.f64 #s(literal -4 binary64) re)) (*.f64 (*.f64 re re) re))) #s(literal -1/2 binary64) (sqrt.f64 (/.f64 #s(literal -4 binary64) re))))))
27.2%
(*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (fabs.f64 im) (/.f64 #s(literal 1 binary64) (sqrt.f64 re)))))
Compiler

Compiled 402 to 396 computations (1.5% saved)

series64.0ms (1.4%)

Memory
-20.4MiB live, 37.5MiB allocated; 33ms collecting garbage
Counts
36 → 101
Calls
Call 1
Inputs
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(approx (* (+ (* (/ re im) -2) 2) im) (fma.f64 #s(literal -2 binary64) re (+.f64 im im))))))
#s(literal 1/2 binary64)
(sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(approx (* (+ (* (/ re im) -2) 2) im) (fma.f64 #s(literal -2 binary64) re (+.f64 im im)))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(approx (* (+ (* (/ re im) -2) 2) im) (fma.f64 #s(literal -2 binary64) re (+.f64 im im))))
#s(approx (* (+ (* (/ re im) -2) 2) im) (fma.f64 #s(literal -2 binary64) re (+.f64 im im)))
(fma.f64 #s(literal -2 binary64) re (+.f64 im im))
#s(literal -2 binary64)
re
(+.f64 im 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 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) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (/.f64 (fabs.f64 im) #s(approx (sqrt re) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) re)))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (/.f64 (fabs.f64 im) #s(approx (sqrt re) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) re))))
(/.f64 (fabs.f64 im) #s(approx (sqrt re) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) re)))
(fabs.f64 im)
#s(approx (sqrt re) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) re))
(*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) re)
(sqrt.f64 (/.f64 #s(literal 1 binary64) re))
(/.f64 #s(literal 1 binary64) re)
#s(literal 1 binary64)
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (neg.f64 re) (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 4 binary64))))))
(sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (neg.f64 re) (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 4 binary64)))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (neg.f64 re) (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 4 binary64))))
(*.f64 (neg.f64 re) (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 4 binary64)))
(neg.f64 re)
(fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 4 binary64))
#s(literal 4 binary64)
Outputs
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* 1/2 (sqrt (* 2 (sqrt (pow im 2)))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (+ (* -1/2 (/ re (sqrt (* 2 (sqrt (pow im 2)))))) (* 1/2 (sqrt (* 2 (sqrt (pow im 2))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (+ (* 1/2 (sqrt (* 2 (sqrt (pow im 2))))) (* re (- (* 1/4 (/ (* re (- (/ 1 (sqrt (pow im 2))) (/ 1 (pow (sqrt (* 2 (sqrt (pow im 2)))) 2)))) (sqrt (* 2 (sqrt (pow im 2)))))) (* 1/2 (/ 1 (sqrt (* 2 (sqrt (pow im 2)))))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (+ (* 1/2 (sqrt (* 2 (sqrt (pow im 2))))) (* re (- (* re (+ (* 1/4 (/ (* re (- (/ 1 (sqrt (pow im 2))) (/ 1 (pow (sqrt (* 2 (sqrt (pow im 2)))) 2)))) (pow (sqrt (* 2 (sqrt (pow im 2)))) 3))) (* 1/4 (/ (- (/ 1 (sqrt (pow im 2))) (/ 1 (pow (sqrt (* 2 (sqrt (pow im 2)))) 2))) (sqrt (* 2 (sqrt (pow im 2)))))))) (* 1/2 (/ 1 (sqrt (* 2 (sqrt (pow im 2)))))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (sqrt (* 2 (sqrt (pow im 2))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (+ (sqrt (* 2 (sqrt (pow im 2)))) (* -1 (/ re (sqrt (* 2 (sqrt (pow im 2)))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (+ (sqrt (* 2 (sqrt (pow im 2)))) (* re (- (* 1/2 (/ (* re (- (/ 1 (sqrt (pow im 2))) (/ 1 (pow (sqrt (* 2 (sqrt (pow im 2)))) 2)))) (sqrt (* 2 (sqrt (pow im 2)))))) (/ 1 (sqrt (* 2 (sqrt (pow im 2))))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (+ (sqrt (* 2 (sqrt (pow im 2)))) (* re (- (* re (+ (* 1/2 (/ (* re (- (/ 1 (sqrt (pow im 2))) (/ 1 (pow (sqrt (* 2 (sqrt (pow im 2)))) 2)))) (pow (sqrt (* 2 (sqrt (pow im 2)))) 3))) (* 1/2 (/ (- (/ 1 (sqrt (pow im 2))) (/ 1 (pow (sqrt (* 2 (sqrt (pow im 2)))) 2))) (sqrt (* 2 (sqrt (pow im 2)))))))) (/ 1 (sqrt (* 2 (sqrt (pow im 2))))))))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* 2 (sqrt (pow im 2)))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (+ (* -2 re) (* 2 (sqrt (pow im 2))))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (+ (* 2 (sqrt (pow im 2))) (* re (- (/ re (sqrt (pow im 2))) 2)))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (+ (* 2 (sqrt (pow im 2))) (* re (- (* re (+ (* -1/4 (/ (pow re 2) (pow (sqrt (pow im 2)) 3))) (/ 1 (sqrt (pow im 2))))) 2)))))
#s(approx (* (+ (* (/ re im) -2) 2) im) #s(hole binary64 (* 2 im)))
#s(approx (* (+ (* (/ re im) -2) 2) im) #s(hole binary64 (+ (* -2 re) (* 2 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 (/ im re) #s(hole binary64 (/ im re)))
#s(approx (/ (fabs im) (sqrt re)) #s(hole binary64 (/ (fabs im) (sqrt re))))
#s(approx (sqrt re) #s(hole binary64 (sqrt re)))
#s(approx (sqrt (/ 1 re)) #s(hole binary64 (/ (sqrt re) re)))
#s(approx (/ 1 re) #s(hole binary64 (/ 1 re)))
#s(approx (* (neg re) (+ (* (/ im re) (/ im re)) 4)) #s(hole binary64 (* -1 (/ (pow im 2) re))))
#s(approx (* (neg re) (+ (* (/ im re) (/ im re)) 4)) #s(hole binary64 (/ (+ (* -4 (pow re 2)) (* -1 (pow im 2))) re)))
#s(approx (neg re) #s(hole binary64 (* -1 re)))
#s(approx (+ (* (/ im re) (/ im re)) 4) #s(hole binary64 (/ (pow im 2) (pow re 2))))
#s(approx (+ (* (/ im re) (/ im re)) 4) #s(hole binary64 (/ (+ (* 4 (pow re 2)) (pow im 2)) (pow re 2))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* 1/2 (sqrt (/ (pow im 2) re)))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (+ (* -1/16 (/ (pow im 4) (* (pow re 3) (sqrt (/ (pow im 2) re))))) (* 1/2 (sqrt (/ (pow im 2) re))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (+ (* -1/16 (/ (pow im 4) (* (pow re 3) (sqrt (/ (pow im 2) re))))) (+ (* 1/32 (/ (pow im 6) (* (pow re 5) (sqrt (/ (pow im 2) re))))) (* 1/2 (sqrt (/ (pow im 2) re)))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (+ (* -1/16 (/ (pow im 4) (* (pow re 3) (sqrt (/ (pow im 2) re))))) (+ (* -1/256 (/ (pow im 8) (* (pow re 6) (pow (sqrt (/ (pow im 2) re)) 3)))) (+ (* 1/32 (/ (pow im 6) (* (pow re 5) (sqrt (/ (pow im 2) re))))) (* 1/2 (sqrt (/ (pow im 2) re))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (sqrt (/ (pow im 2) re))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (+ (sqrt (/ (pow im 2) re)) (* -1/8 (/ (pow im 4) (* (pow re 3) (sqrt (/ (pow im 2) re))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (+ (sqrt (/ (pow im 2) re)) (+ (* -1/8 (/ (pow im 4) (* (pow re 3) (sqrt (/ (pow im 2) re))))) (* 1/16 (/ (pow im 6) (* (pow re 5) (sqrt (/ (pow im 2) re)))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (+ (sqrt (/ (pow im 2) re)) (+ (* -1/8 (/ (pow im 4) (* (pow re 3) (sqrt (/ (pow im 2) re))))) (+ (* -1/128 (/ (pow im 8) (* (pow re 6) (pow (sqrt (/ (pow im 2) re)) 3)))) (* 1/16 (/ (pow im 6) (* (pow re 5) (sqrt (/ (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 (* (+ (* (/ re im) -2) 2) im) #s(hole binary64 (* -2 re)))
#s(approx (* (+ (* (/ re im) -2) 2) im) #s(hole binary64 (* re (- (* 2 (/ im re)) 2))))
#s(approx (/ (fabs im) (sqrt re)) #s(hole binary64 (/ (fabs im) (* re (sqrt (/ 1 re))))))
#s(approx (sqrt re) #s(hole binary64 (* re (sqrt (/ 1 re)))))
#s(approx (sqrt (/ 1 re)) #s(hole binary64 (sqrt (/ 1 re))))
#s(approx (* (neg re) (+ (* (/ im re) (/ im re)) 4)) #s(hole binary64 (* re (- (* -1 (/ (pow im 2) (pow re 2))) 4))))
#s(approx (+ (* (/ im re) (/ im re)) 4) #s(hole binary64 4))
#s(approx (+ (* (/ im re) (/ im re)) 4) #s(hole binary64 (+ 4 (/ (pow im 2) (pow re 2)))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* -1/2 (* re (sqrt (/ -4 re))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* -1 (* re (+ (* -1/4 (/ (pow im 2) (* (pow re 3) (sqrt (/ -4 re))))) (* 1/2 (sqrt (/ -4 re))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* -1 (* re (+ (* -1 (/ (+ (* -1/16 (/ (pow im 4) (* (pow re 2) (sqrt (/ -4 re))))) (* 1/4 (/ (pow im 2) (sqrt (/ -4 re))))) (pow re 3))) (* 1/2 (sqrt (/ -4 re))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* -1 (* re (+ (* -1 (/ (+ (* -1/16 (/ (pow im 4) (* (pow re 2) (sqrt (/ -4 re))))) (+ (* 1/16 (/ (pow im 4) (* (pow re 3) (pow (sqrt (/ -4 re)) 3)))) (* 1/4 (/ (pow im 2) (sqrt (/ -4 re)))))) (pow re 3))) (* 1/2 (sqrt (/ -4 re))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* -1 (* re (sqrt (/ -4 re))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* -1 (* re (+ (sqrt (/ -4 re)) (* -1/2 (/ (pow im 2) (* (pow re 3) (sqrt (/ -4 re))))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* -1 (* re (+ (sqrt (/ -4 re)) (* -1 (/ (+ (* -1/8 (/ (pow im 4) (* (pow re 2) (sqrt (/ -4 re))))) (* 1/2 (/ (pow im 2) (sqrt (/ -4 re))))) (pow re 3))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* -1 (* re (+ (sqrt (/ -4 re)) (* -1 (/ (+ (* -1/8 (/ (pow im 4) (* (pow re 2) (sqrt (/ -4 re))))) (+ (* 1/8 (/ (pow im 4) (* (pow re 3) (pow (sqrt (/ -4 re)) 3)))) (* 1/2 (/ (pow im 2) (sqrt (/ -4 re)))))) (pow re 3))))))))
#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 (* (+ (* (/ re im) -2) 2) im) #s(hole binary64 (* -1 (* re (+ 2 (* -2 (/ im re)))))))
#s(approx (/ (fabs im) (sqrt re)) #s(hole binary64 (* -1 (/ (fabs im) (* re (sqrt (/ 1 re)))))))
#s(approx (sqrt re) #s(hole binary64 (* -1 (* re (sqrt (/ 1 re))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* 1/2 (sqrt (* 2 (- (sqrt (pow re 2)) re))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (+ (* 1/4 (/ (pow im 2) (* (sqrt (* 2 (- (sqrt (pow re 2)) re))) (sqrt (pow re 2))))) (* 1/2 (sqrt (* 2 (- (sqrt (pow re 2)) re)))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (+ (* 1/2 (sqrt (* 2 (- (sqrt (pow re 2)) re)))) (* (pow im 2) (+ (* -1/4 (/ (* (pow im 2) (+ (* 1/4 (/ 1 (* (pow (sqrt (* 2 (- (sqrt (pow re 2)) re))) 2) (pow (sqrt (pow re 2)) 2)))) (* 1/4 (/ 1 (pow (sqrt (pow re 2)) 3))))) (sqrt (* 2 (- (sqrt (pow re 2)) re))))) (* 1/4 (/ 1 (* (sqrt (* 2 (- (sqrt (pow re 2)) re))) (sqrt (pow re 2))))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (+ (* 1/2 (sqrt (* 2 (- (sqrt (pow re 2)) re)))) (* (pow im 2) (+ (* (pow im 2) (+ (* -1/4 (/ (+ (* 1/4 (/ 1 (* (pow (sqrt (* 2 (- (sqrt (pow re 2)) re))) 2) (pow (sqrt (pow re 2)) 2)))) (* 1/4 (/ 1 (pow (sqrt (pow re 2)) 3)))) (sqrt (* 2 (- (sqrt (pow re 2)) re))))) (* 1/4 (/ (* (pow im 2) (- (* 1/8 (/ 1 (pow (sqrt (pow re 2)) 5))) (* -1/2 (/ (+ (* 1/4 (/ 1 (* (pow (sqrt (* 2 (- (sqrt (pow re 2)) re))) 2) (pow (sqrt (pow re 2)) 2)))) (* 1/4 (/ 1 (pow (sqrt (pow re 2)) 3)))) (* (pow (sqrt (* 2 (- (sqrt (pow re 2)) re))) 2) (sqrt (pow re 2))))))) (sqrt (* 2 (- (sqrt (pow re 2)) re))))))) (* 1/4 (/ 1 (* (sqrt (* 2 (- (sqrt (pow re 2)) re))) (sqrt (pow re 2))))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (sqrt (* 2 (- (sqrt (pow re 2)) re)))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (+ (sqrt (* 2 (- (sqrt (pow re 2)) re))) (* 1/2 (/ (pow im 2) (* (sqrt (* 2 (- (sqrt (pow re 2)) re))) (sqrt (pow re 2))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (+ (sqrt (* 2 (- (sqrt (pow re 2)) re))) (* (pow im 2) (+ (* -1/2 (/ (* (pow im 2) (+ (* 1/4 (/ 1 (* (pow (sqrt (* 2 (- (sqrt (pow re 2)) re))) 2) (pow (sqrt (pow re 2)) 2)))) (* 1/4 (/ 1 (pow (sqrt (pow re 2)) 3))))) (sqrt (* 2 (- (sqrt (pow re 2)) re))))) (* 1/2 (/ 1 (* (sqrt (* 2 (- (sqrt (pow re 2)) re))) (sqrt (pow re 2))))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (+ (sqrt (* 2 (- (sqrt (pow re 2)) re))) (* (pow im 2) (+ (* (pow im 2) (+ (* -1/2 (/ (+ (* 1/4 (/ 1 (* (pow (sqrt (* 2 (- (sqrt (pow re 2)) re))) 2) (pow (sqrt (pow re 2)) 2)))) (* 1/4 (/ 1 (pow (sqrt (pow re 2)) 3)))) (sqrt (* 2 (- (sqrt (pow re 2)) re))))) (* 1/2 (/ (* (pow im 2) (- (* 1/8 (/ 1 (pow (sqrt (pow re 2)) 5))) (* -1/2 (/ (+ (* 1/4 (/ 1 (* (pow (sqrt (* 2 (- (sqrt (pow re 2)) re))) 2) (pow (sqrt (pow re 2)) 2)))) (* 1/4 (/ 1 (pow (sqrt (pow re 2)) 3)))) (* (pow (sqrt (* 2 (- (sqrt (pow re 2)) re))) 2) (sqrt (pow re 2))))))) (sqrt (* 2 (- (sqrt (pow re 2)) re))))))) (* 1/2 (/ 1 (* (sqrt (* 2 (- (sqrt (pow re 2)) re))) (sqrt (pow re 2))))))))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* 2 (- (sqrt (pow re 2)) re))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (+ (* 2 (- (sqrt (pow re 2)) re)) (/ (pow im 2) (sqrt (pow re 2))))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (+ (* 2 (- (sqrt (pow re 2)) re)) (* (pow im 2) (+ (* -1/4 (/ (pow im 2) (pow (sqrt (pow re 2)) 3))) (/ 1 (sqrt (pow re 2))))))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (+ (* 2 (- (sqrt (pow re 2)) re)) (* (pow im 2) (+ (* (pow im 2) (- (* 1/8 (/ (pow im 2) (pow (sqrt (pow re 2)) 5))) (* 1/4 (/ 1 (pow (sqrt (pow re 2)) 3))))) (/ 1 (sqrt (pow re 2))))))))
#s(approx im #s(hole binary64 im))
#s(approx (fabs im) #s(hole binary64 (fabs im)))
#s(approx (* (neg re) (+ (* (/ im re) (/ im re)) 4)) #s(hole binary64 (+ (* -4 re) (* -1 (/ (pow im 2) re)))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* 1/2 (* im (sqrt (/ 2 im))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* im (+ (* -1/2 (/ re (* (pow im 2) (sqrt (/ 2 im))))) (* 1/2 (sqrt (/ 2 im)))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* im (+ (* -1/2 (/ re (* (pow im 2) (sqrt (/ 2 im))))) (+ (* 1/4 (/ (pow re 2) (* (pow im 3) (sqrt (/ 2 im))))) (* 1/2 (sqrt (/ 2 im))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* im (+ (* -1/2 (/ re (* (pow im 2) (sqrt (/ 2 im))))) (+ (* -1/4 (/ (pow re 2) (* (pow im 4) (pow (sqrt (/ 2 im)) 3)))) (+ (* 1/4 (/ (pow re 2) (* (pow im 3) (sqrt (/ 2 im))))) (* 1/2 (sqrt (/ 2 im)))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* im (sqrt (/ 2 im)))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* im (+ (sqrt (/ 2 im)) (* -1 (/ re (* (pow im 2) (sqrt (/ 2 im)))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* im (+ (sqrt (/ 2 im)) (+ (* -1 (/ re (* (pow im 2) (sqrt (/ 2 im))))) (* 1/2 (/ (pow re 2) (* (pow im 3) (sqrt (/ 2 im))))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* im (+ (sqrt (/ 2 im)) (+ (* -1 (/ re (* (pow im 2) (sqrt (/ 2 im))))) (+ (* -1/2 (/ (pow re 2) (* (pow im 4) (pow (sqrt (/ 2 im)) 3)))) (* 1/2 (/ (pow re 2) (* (pow im 3) (sqrt (/ 2 im)))))))))))
#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 (* (neg re) (+ (* (/ im re) (/ im re)) 4)) #s(hole binary64 (* (pow im 2) (- (* -4 (/ re (pow im 2))) (/ 1 re)))))
#s(approx (+ (* (/ im re) (/ im re)) 4) #s(hole binary64 (* (pow im 2) (+ (* 4 (/ 1 (pow im 2))) (/ 1 (pow re 2))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* -1/2 (* im (sqrt (/ -2 im))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* -1 (* im (+ (* -1/2 (/ re (* (pow im 2) (sqrt (/ -2 im))))) (* 1/2 (sqrt (/ -2 im))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* -1 (* im (+ (* -1/2 (/ re (* (pow im 2) (sqrt (/ -2 im))))) (+ (* -1/4 (/ (pow re 2) (* (pow im 3) (sqrt (/ -2 im))))) (* 1/2 (sqrt (/ -2 im)))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* -1 (* im (+ (* -1 (/ (+ (* 1/4 (/ (pow re 2) (sqrt (/ -2 im)))) (* 1/4 (/ (pow re 2) (* im (pow (sqrt (/ -2 im)) 3))))) (pow im 3))) (+ (* -1/2 (/ re (* (pow im 2) (sqrt (/ -2 im))))) (* 1/2 (sqrt (/ -2 im)))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* -1 (* im (sqrt (/ -2 im))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* -1 (* im (+ (sqrt (/ -2 im)) (* -1 (/ re (* (pow im 2) (sqrt (/ -2 im))))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* -1 (* im (+ (sqrt (/ -2 im)) (+ (* -1 (/ re (* (pow im 2) (sqrt (/ -2 im))))) (* -1/2 (/ (pow re 2) (* (pow im 3) (sqrt (/ -2 im)))))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* -1 (* im (+ (sqrt (/ -2 im)) (+ (* -1 (/ re (* (pow im 2) (sqrt (/ -2 im))))) (* -1 (/ (+ (* 1/2 (/ (pow re 2) (sqrt (/ -2 im)))) (* 1/2 (/ (pow re 2) (* im (pow (sqrt (/ -2 im)) 3))))) (pow im 3)))))))))
#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 (* (+ (* (/ re im) -2) 2) im) #s(hole binary64 (* -1 (* im (- (* 2 (/ re im)) 2)))))
Calls

6 calls:

TimeVariablePointExpression
40.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)) (* (+ (* (/ re im) -2) 2) im) (+ (* -2 re) (+ im im)) -2 re (+ im 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 re) (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (/ (fabs im) (sqrt re)) (fabs im) (sqrt re) (* (sqrt (/ 1 re)) re) (sqrt (/ 1 re)) (/ 1 re) 1 (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (* (neg re) (+ (* (/ im re) (/ im re)) 4)) (neg re) (+ (* (/ im re) (/ im re)) 4) 4)
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)) (* (+ (* (/ re im) -2) 2) im) (+ (* -2 re) (+ im im)) -2 re (+ im 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 re) (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (/ (fabs im) (sqrt re)) (fabs im) (sqrt re) (* (sqrt (/ 1 re)) re) (sqrt (/ 1 re)) (/ 1 re) 1 (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (* (neg re) (+ (* (/ im re) (/ im re)) 4)) (neg re) (+ (* (/ im re) (/ im re)) 4) 4)
4.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)) (* (+ (* (/ re im) -2) 2) im) (+ (* -2 re) (+ im im)) -2 re (+ im 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 re) (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (/ (fabs im) (sqrt re)) (fabs im) (sqrt re) (* (sqrt (/ 1 re)) re) (sqrt (/ 1 re)) (/ 1 re) 1 (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (* (neg re) (+ (* (/ im re) (/ im re)) 4)) (neg re) (+ (* (/ im re) (/ im re)) 4) 4)
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)) (* (+ (* (/ re im) -2) 2) im) (+ (* -2 re) (+ im im)) -2 re (+ im 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 re) (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (/ (fabs im) (sqrt re)) (fabs im) (sqrt re) (* (sqrt (/ 1 re)) re) (sqrt (/ 1 re)) (/ 1 re) 1 (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (* (neg re) (+ (* (/ im re) (/ im re)) 4)) (neg re) (+ (* (/ im re) (/ im re)) 4) 4)
3.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)) (* (+ (* (/ re im) -2) 2) im) (+ (* -2 re) (+ im im)) -2 re (+ im 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 re) (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (/ (fabs im) (sqrt re)) (fabs im) (sqrt re) (* (sqrt (/ 1 re)) re) (sqrt (/ 1 re)) (/ 1 re) 1 (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (* (neg re) (+ (* (/ im re) (/ im re)) 4)) (neg re) (+ (* (/ im re) (/ im re)) 4) 4)

rewrite247.0ms (5.5%)

Memory
4.1MiB live, 237.6MiB allocated; 53ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
05904214
06173940
138483772
095113253
1195993253
Stop Event
saturated
node-limit
iter-limit
Counts
137 → 238
Calls
Call 1
Inputs
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(approx (* (+ (* (/ re im) -2) 2) im) (fma.f64 #s(literal -2 binary64) re (+.f64 im im))))))
#s(literal 1/2 binary64)
(sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(approx (* (+ (* (/ re im) -2) 2) im) (fma.f64 #s(literal -2 binary64) re (+.f64 im im)))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(approx (* (+ (* (/ re im) -2) 2) im) (fma.f64 #s(literal -2 binary64) re (+.f64 im im))))
#s(approx (* (+ (* (/ re im) -2) 2) im) (fma.f64 #s(literal -2 binary64) re (+.f64 im im)))
(fma.f64 #s(literal -2 binary64) re (+.f64 im im))
#s(literal -2 binary64)
re
(+.f64 im 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 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) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (/.f64 (fabs.f64 im) #s(approx (sqrt re) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) re)))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (/.f64 (fabs.f64 im) #s(approx (sqrt re) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) re))))
(/.f64 (fabs.f64 im) #s(approx (sqrt re) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) re)))
(fabs.f64 im)
#s(approx (sqrt re) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) re))
(*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) re)
(sqrt.f64 (/.f64 #s(literal 1 binary64) re))
(/.f64 #s(literal 1 binary64) re)
#s(literal 1 binary64)
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (neg.f64 re) (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 4 binary64))))))
(sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (neg.f64 re) (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 4 binary64)))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (neg.f64 re) (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 4 binary64))))
(*.f64 (neg.f64 re) (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 4 binary64)))
(neg.f64 re)
(fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 4 binary64))
#s(literal 4 binary64)
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* 1/2 (sqrt (* 2 (sqrt (pow im 2)))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (+ (* -1/2 (/ re (sqrt (* 2 (sqrt (pow im 2)))))) (* 1/2 (sqrt (* 2 (sqrt (pow im 2))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (+ (* 1/2 (sqrt (* 2 (sqrt (pow im 2))))) (* re (- (* 1/4 (/ (* re (- (/ 1 (sqrt (pow im 2))) (/ 1 (pow (sqrt (* 2 (sqrt (pow im 2)))) 2)))) (sqrt (* 2 (sqrt (pow im 2)))))) (* 1/2 (/ 1 (sqrt (* 2 (sqrt (pow im 2)))))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (+ (* 1/2 (sqrt (* 2 (sqrt (pow im 2))))) (* re (- (* re (+ (* 1/4 (/ (* re (- (/ 1 (sqrt (pow im 2))) (/ 1 (pow (sqrt (* 2 (sqrt (pow im 2)))) 2)))) (pow (sqrt (* 2 (sqrt (pow im 2)))) 3))) (* 1/4 (/ (- (/ 1 (sqrt (pow im 2))) (/ 1 (pow (sqrt (* 2 (sqrt (pow im 2)))) 2))) (sqrt (* 2 (sqrt (pow im 2)))))))) (* 1/2 (/ 1 (sqrt (* 2 (sqrt (pow im 2)))))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (sqrt (* 2 (sqrt (pow im 2))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (+ (sqrt (* 2 (sqrt (pow im 2)))) (* -1 (/ re (sqrt (* 2 (sqrt (pow im 2)))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (+ (sqrt (* 2 (sqrt (pow im 2)))) (* re (- (* 1/2 (/ (* re (- (/ 1 (sqrt (pow im 2))) (/ 1 (pow (sqrt (* 2 (sqrt (pow im 2)))) 2)))) (sqrt (* 2 (sqrt (pow im 2)))))) (/ 1 (sqrt (* 2 (sqrt (pow im 2))))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (+ (sqrt (* 2 (sqrt (pow im 2)))) (* re (- (* re (+ (* 1/2 (/ (* re (- (/ 1 (sqrt (pow im 2))) (/ 1 (pow (sqrt (* 2 (sqrt (pow im 2)))) 2)))) (pow (sqrt (* 2 (sqrt (pow im 2)))) 3))) (* 1/2 (/ (- (/ 1 (sqrt (pow im 2))) (/ 1 (pow (sqrt (* 2 (sqrt (pow im 2)))) 2))) (sqrt (* 2 (sqrt (pow im 2)))))))) (/ 1 (sqrt (* 2 (sqrt (pow im 2))))))))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* 2 (sqrt (pow im 2)))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (+ (* -2 re) (* 2 (sqrt (pow im 2))))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (+ (* 2 (sqrt (pow im 2))) (* re (- (/ re (sqrt (pow im 2))) 2)))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (+ (* 2 (sqrt (pow im 2))) (* re (- (* re (+ (* -1/4 (/ (pow re 2) (pow (sqrt (pow im 2)) 3))) (/ 1 (sqrt (pow im 2))))) 2)))))
#s(approx (* (+ (* (/ re im) -2) 2) im) #s(hole binary64 (* 2 im)))
#s(approx (* (+ (* (/ re im) -2) 2) im) #s(hole binary64 (+ (* -2 re) (* 2 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 (/ im re) #s(hole binary64 (/ im re)))
#s(approx (/ (fabs im) (sqrt re)) #s(hole binary64 (/ (fabs im) (sqrt re))))
#s(approx (sqrt re) #s(hole binary64 (sqrt re)))
#s(approx (sqrt (/ 1 re)) #s(hole binary64 (/ (sqrt re) re)))
#s(approx (/ 1 re) #s(hole binary64 (/ 1 re)))
#s(approx (* (neg re) (+ (* (/ im re) (/ im re)) 4)) #s(hole binary64 (* -1 (/ (pow im 2) re))))
#s(approx (* (neg re) (+ (* (/ im re) (/ im re)) 4)) #s(hole binary64 (/ (+ (* -4 (pow re 2)) (* -1 (pow im 2))) re)))
#s(approx (neg re) #s(hole binary64 (* -1 re)))
#s(approx (+ (* (/ im re) (/ im re)) 4) #s(hole binary64 (/ (pow im 2) (pow re 2))))
#s(approx (+ (* (/ im re) (/ im re)) 4) #s(hole binary64 (/ (+ (* 4 (pow re 2)) (pow im 2)) (pow re 2))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* 1/2 (sqrt (/ (pow im 2) re)))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (+ (* -1/16 (/ (pow im 4) (* (pow re 3) (sqrt (/ (pow im 2) re))))) (* 1/2 (sqrt (/ (pow im 2) re))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (+ (* -1/16 (/ (pow im 4) (* (pow re 3) (sqrt (/ (pow im 2) re))))) (+ (* 1/32 (/ (pow im 6) (* (pow re 5) (sqrt (/ (pow im 2) re))))) (* 1/2 (sqrt (/ (pow im 2) re)))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (+ (* -1/16 (/ (pow im 4) (* (pow re 3) (sqrt (/ (pow im 2) re))))) (+ (* -1/256 (/ (pow im 8) (* (pow re 6) (pow (sqrt (/ (pow im 2) re)) 3)))) (+ (* 1/32 (/ (pow im 6) (* (pow re 5) (sqrt (/ (pow im 2) re))))) (* 1/2 (sqrt (/ (pow im 2) re))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (sqrt (/ (pow im 2) re))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (+ (sqrt (/ (pow im 2) re)) (* -1/8 (/ (pow im 4) (* (pow re 3) (sqrt (/ (pow im 2) re))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (+ (sqrt (/ (pow im 2) re)) (+ (* -1/8 (/ (pow im 4) (* (pow re 3) (sqrt (/ (pow im 2) re))))) (* 1/16 (/ (pow im 6) (* (pow re 5) (sqrt (/ (pow im 2) re)))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (+ (sqrt (/ (pow im 2) re)) (+ (* -1/8 (/ (pow im 4) (* (pow re 3) (sqrt (/ (pow im 2) re))))) (+ (* -1/128 (/ (pow im 8) (* (pow re 6) (pow (sqrt (/ (pow im 2) re)) 3)))) (* 1/16 (/ (pow im 6) (* (pow re 5) (sqrt (/ (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 (* (+ (* (/ re im) -2) 2) im) #s(hole binary64 (* -2 re)))
#s(approx (* (+ (* (/ re im) -2) 2) im) #s(hole binary64 (* re (- (* 2 (/ im re)) 2))))
#s(approx (/ (fabs im) (sqrt re)) #s(hole binary64 (/ (fabs im) (* re (sqrt (/ 1 re))))))
#s(approx (sqrt re) #s(hole binary64 (* re (sqrt (/ 1 re)))))
#s(approx (sqrt (/ 1 re)) #s(hole binary64 (sqrt (/ 1 re))))
#s(approx (* (neg re) (+ (* (/ im re) (/ im re)) 4)) #s(hole binary64 (* re (- (* -1 (/ (pow im 2) (pow re 2))) 4))))
#s(approx (+ (* (/ im re) (/ im re)) 4) #s(hole binary64 4))
#s(approx (+ (* (/ im re) (/ im re)) 4) #s(hole binary64 (+ 4 (/ (pow im 2) (pow re 2)))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* -1/2 (* re (sqrt (/ -4 re))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* -1 (* re (+ (* -1/4 (/ (pow im 2) (* (pow re 3) (sqrt (/ -4 re))))) (* 1/2 (sqrt (/ -4 re))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* -1 (* re (+ (* -1 (/ (+ (* -1/16 (/ (pow im 4) (* (pow re 2) (sqrt (/ -4 re))))) (* 1/4 (/ (pow im 2) (sqrt (/ -4 re))))) (pow re 3))) (* 1/2 (sqrt (/ -4 re))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* -1 (* re (+ (* -1 (/ (+ (* -1/16 (/ (pow im 4) (* (pow re 2) (sqrt (/ -4 re))))) (+ (* 1/16 (/ (pow im 4) (* (pow re 3) (pow (sqrt (/ -4 re)) 3)))) (* 1/4 (/ (pow im 2) (sqrt (/ -4 re)))))) (pow re 3))) (* 1/2 (sqrt (/ -4 re))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* -1 (* re (sqrt (/ -4 re))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* -1 (* re (+ (sqrt (/ -4 re)) (* -1/2 (/ (pow im 2) (* (pow re 3) (sqrt (/ -4 re))))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* -1 (* re (+ (sqrt (/ -4 re)) (* -1 (/ (+ (* -1/8 (/ (pow im 4) (* (pow re 2) (sqrt (/ -4 re))))) (* 1/2 (/ (pow im 2) (sqrt (/ -4 re))))) (pow re 3))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* -1 (* re (+ (sqrt (/ -4 re)) (* -1 (/ (+ (* -1/8 (/ (pow im 4) (* (pow re 2) (sqrt (/ -4 re))))) (+ (* 1/8 (/ (pow im 4) (* (pow re 3) (pow (sqrt (/ -4 re)) 3)))) (* 1/2 (/ (pow im 2) (sqrt (/ -4 re)))))) (pow re 3))))))))
#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 (* (+ (* (/ re im) -2) 2) im) #s(hole binary64 (* -1 (* re (+ 2 (* -2 (/ im re)))))))
#s(approx (/ (fabs im) (sqrt re)) #s(hole binary64 (* -1 (/ (fabs im) (* re (sqrt (/ 1 re)))))))
#s(approx (sqrt re) #s(hole binary64 (* -1 (* re (sqrt (/ 1 re))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* 1/2 (sqrt (* 2 (- (sqrt (pow re 2)) re))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (+ (* 1/4 (/ (pow im 2) (* (sqrt (* 2 (- (sqrt (pow re 2)) re))) (sqrt (pow re 2))))) (* 1/2 (sqrt (* 2 (- (sqrt (pow re 2)) re)))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (+ (* 1/2 (sqrt (* 2 (- (sqrt (pow re 2)) re)))) (* (pow im 2) (+ (* -1/4 (/ (* (pow im 2) (+ (* 1/4 (/ 1 (* (pow (sqrt (* 2 (- (sqrt (pow re 2)) re))) 2) (pow (sqrt (pow re 2)) 2)))) (* 1/4 (/ 1 (pow (sqrt (pow re 2)) 3))))) (sqrt (* 2 (- (sqrt (pow re 2)) re))))) (* 1/4 (/ 1 (* (sqrt (* 2 (- (sqrt (pow re 2)) re))) (sqrt (pow re 2))))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (+ (* 1/2 (sqrt (* 2 (- (sqrt (pow re 2)) re)))) (* (pow im 2) (+ (* (pow im 2) (+ (* -1/4 (/ (+ (* 1/4 (/ 1 (* (pow (sqrt (* 2 (- (sqrt (pow re 2)) re))) 2) (pow (sqrt (pow re 2)) 2)))) (* 1/4 (/ 1 (pow (sqrt (pow re 2)) 3)))) (sqrt (* 2 (- (sqrt (pow re 2)) re))))) (* 1/4 (/ (* (pow im 2) (- (* 1/8 (/ 1 (pow (sqrt (pow re 2)) 5))) (* -1/2 (/ (+ (* 1/4 (/ 1 (* (pow (sqrt (* 2 (- (sqrt (pow re 2)) re))) 2) (pow (sqrt (pow re 2)) 2)))) (* 1/4 (/ 1 (pow (sqrt (pow re 2)) 3)))) (* (pow (sqrt (* 2 (- (sqrt (pow re 2)) re))) 2) (sqrt (pow re 2))))))) (sqrt (* 2 (- (sqrt (pow re 2)) re))))))) (* 1/4 (/ 1 (* (sqrt (* 2 (- (sqrt (pow re 2)) re))) (sqrt (pow re 2))))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (sqrt (* 2 (- (sqrt (pow re 2)) re)))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (+ (sqrt (* 2 (- (sqrt (pow re 2)) re))) (* 1/2 (/ (pow im 2) (* (sqrt (* 2 (- (sqrt (pow re 2)) re))) (sqrt (pow re 2))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (+ (sqrt (* 2 (- (sqrt (pow re 2)) re))) (* (pow im 2) (+ (* -1/2 (/ (* (pow im 2) (+ (* 1/4 (/ 1 (* (pow (sqrt (* 2 (- (sqrt (pow re 2)) re))) 2) (pow (sqrt (pow re 2)) 2)))) (* 1/4 (/ 1 (pow (sqrt (pow re 2)) 3))))) (sqrt (* 2 (- (sqrt (pow re 2)) re))))) (* 1/2 (/ 1 (* (sqrt (* 2 (- (sqrt (pow re 2)) re))) (sqrt (pow re 2))))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (+ (sqrt (* 2 (- (sqrt (pow re 2)) re))) (* (pow im 2) (+ (* (pow im 2) (+ (* -1/2 (/ (+ (* 1/4 (/ 1 (* (pow (sqrt (* 2 (- (sqrt (pow re 2)) re))) 2) (pow (sqrt (pow re 2)) 2)))) (* 1/4 (/ 1 (pow (sqrt (pow re 2)) 3)))) (sqrt (* 2 (- (sqrt (pow re 2)) re))))) (* 1/2 (/ (* (pow im 2) (- (* 1/8 (/ 1 (pow (sqrt (pow re 2)) 5))) (* -1/2 (/ (+ (* 1/4 (/ 1 (* (pow (sqrt (* 2 (- (sqrt (pow re 2)) re))) 2) (pow (sqrt (pow re 2)) 2)))) (* 1/4 (/ 1 (pow (sqrt (pow re 2)) 3)))) (* (pow (sqrt (* 2 (- (sqrt (pow re 2)) re))) 2) (sqrt (pow re 2))))))) (sqrt (* 2 (- (sqrt (pow re 2)) re))))))) (* 1/2 (/ 1 (* (sqrt (* 2 (- (sqrt (pow re 2)) re))) (sqrt (pow re 2))))))))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* 2 (- (sqrt (pow re 2)) re))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (+ (* 2 (- (sqrt (pow re 2)) re)) (/ (pow im 2) (sqrt (pow re 2))))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (+ (* 2 (- (sqrt (pow re 2)) re)) (* (pow im 2) (+ (* -1/4 (/ (pow im 2) (pow (sqrt (pow re 2)) 3))) (/ 1 (sqrt (pow re 2))))))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (+ (* 2 (- (sqrt (pow re 2)) re)) (* (pow im 2) (+ (* (pow im 2) (- (* 1/8 (/ (pow im 2) (pow (sqrt (pow re 2)) 5))) (* 1/4 (/ 1 (pow (sqrt (pow re 2)) 3))))) (/ 1 (sqrt (pow re 2))))))))
#s(approx im #s(hole binary64 im))
#s(approx (fabs im) #s(hole binary64 (fabs im)))
#s(approx (* (neg re) (+ (* (/ im re) (/ im re)) 4)) #s(hole binary64 (+ (* -4 re) (* -1 (/ (pow im 2) re)))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* 1/2 (* im (sqrt (/ 2 im))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* im (+ (* -1/2 (/ re (* (pow im 2) (sqrt (/ 2 im))))) (* 1/2 (sqrt (/ 2 im)))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* im (+ (* -1/2 (/ re (* (pow im 2) (sqrt (/ 2 im))))) (+ (* 1/4 (/ (pow re 2) (* (pow im 3) (sqrt (/ 2 im))))) (* 1/2 (sqrt (/ 2 im))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* im (+ (* -1/2 (/ re (* (pow im 2) (sqrt (/ 2 im))))) (+ (* -1/4 (/ (pow re 2) (* (pow im 4) (pow (sqrt (/ 2 im)) 3)))) (+ (* 1/4 (/ (pow re 2) (* (pow im 3) (sqrt (/ 2 im))))) (* 1/2 (sqrt (/ 2 im)))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* im (sqrt (/ 2 im)))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* im (+ (sqrt (/ 2 im)) (* -1 (/ re (* (pow im 2) (sqrt (/ 2 im)))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* im (+ (sqrt (/ 2 im)) (+ (* -1 (/ re (* (pow im 2) (sqrt (/ 2 im))))) (* 1/2 (/ (pow re 2) (* (pow im 3) (sqrt (/ 2 im))))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* im (+ (sqrt (/ 2 im)) (+ (* -1 (/ re (* (pow im 2) (sqrt (/ 2 im))))) (+ (* -1/2 (/ (pow re 2) (* (pow im 4) (pow (sqrt (/ 2 im)) 3)))) (* 1/2 (/ (pow re 2) (* (pow im 3) (sqrt (/ 2 im)))))))))))
#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 (* (neg re) (+ (* (/ im re) (/ im re)) 4)) #s(hole binary64 (* (pow im 2) (- (* -4 (/ re (pow im 2))) (/ 1 re)))))
#s(approx (+ (* (/ im re) (/ im re)) 4) #s(hole binary64 (* (pow im 2) (+ (* 4 (/ 1 (pow im 2))) (/ 1 (pow re 2))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* -1/2 (* im (sqrt (/ -2 im))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* -1 (* im (+ (* -1/2 (/ re (* (pow im 2) (sqrt (/ -2 im))))) (* 1/2 (sqrt (/ -2 im))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* -1 (* im (+ (* -1/2 (/ re (* (pow im 2) (sqrt (/ -2 im))))) (+ (* -1/4 (/ (pow re 2) (* (pow im 3) (sqrt (/ -2 im))))) (* 1/2 (sqrt (/ -2 im)))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* -1 (* im (+ (* -1 (/ (+ (* 1/4 (/ (pow re 2) (sqrt (/ -2 im)))) (* 1/4 (/ (pow re 2) (* im (pow (sqrt (/ -2 im)) 3))))) (pow im 3))) (+ (* -1/2 (/ re (* (pow im 2) (sqrt (/ -2 im))))) (* 1/2 (sqrt (/ -2 im)))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* -1 (* im (sqrt (/ -2 im))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* -1 (* im (+ (sqrt (/ -2 im)) (* -1 (/ re (* (pow im 2) (sqrt (/ -2 im))))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* -1 (* im (+ (sqrt (/ -2 im)) (+ (* -1 (/ re (* (pow im 2) (sqrt (/ -2 im))))) (* -1/2 (/ (pow re 2) (* (pow im 3) (sqrt (/ -2 im)))))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* -1 (* im (+ (sqrt (/ -2 im)) (+ (* -1 (/ re (* (pow im 2) (sqrt (/ -2 im))))) (* -1 (/ (+ (* 1/2 (/ (pow re 2) (sqrt (/ -2 im)))) (* 1/2 (/ (pow re 2) (* im (pow (sqrt (/ -2 im)) 3))))) (pow im 3)))))))))
#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 (* (+ (* (/ re im) -2) 2) im) #s(hole binary64 (* -1 (* im (- (* 2 (/ re im)) 2)))))
Outputs
(*.f64 (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(approx (* (+ (* (/ re im) -2) 2) im) (fma.f64 #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)) #s(approx (* (+ (* (/ re im) -2) 2) im) (fma.f64 #s(literal -2 binary64) re (+.f64 im im))))))
#s(literal 1/2 binary64)
(pow.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(approx (* (+ (* (/ re im) -2) 2) im) (fma.f64 #s(literal -2 binary64) re (+.f64 im im)))) #s(literal 1/2 binary64))
(sqrt.f64 (*.f64 (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(approx (* (+ (* (/ re im) -2) 2) im) (fma.f64 #s(literal -2 binary64) re (+.f64 im im))))) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(approx (* (+ (* (/ re im) -2) 2) im) (fma.f64 #s(literal -2 binary64) re (+.f64 im im)))))))
(sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(approx (* (+ (* (/ re im) -2) 2) im) (fma.f64 #s(literal -2 binary64) re (+.f64 im im)))))
(fabs.f64 (neg.f64 (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(approx (* (+ (* (/ re im) -2) 2) im) (fma.f64 #s(literal -2 binary64) re (+.f64 im im)))))))
(fabs.f64 (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(approx (* (+ (* (/ re im) -2) 2) im) (fma.f64 #s(literal -2 binary64) re (+.f64 im im))))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(approx (* (+ (* (/ re im) -2) 2) im) (fma.f64 #s(literal -2 binary64) re (+.f64 im im))))
#s(approx (* (+ (* (/ re im) -2) 2) im) (fma.f64 #s(literal -2 binary64) re (+.f64 im im)))
(fma.f64 #s(literal -2 binary64) re (+.f64 im im))
(fma.f64 im #s(literal 2 binary64) (*.f64 #s(literal -2 binary64) re))
(fma.f64 re #s(literal -2 binary64) (+.f64 im im))
(fma.f64 #s(literal 2 binary64) im (*.f64 #s(literal -2 binary64) re))
(-.f64 (*.f64 #s(literal -2 binary64) re) (neg.f64 (+.f64 im im)))
(-.f64 (*.f64 #s(literal -2 binary64) re) (*.f64 #s(literal -2 binary64) im))
(+.f64 (fma.f64 #s(literal -2 binary64) re im) im)
(+.f64 (+.f64 im im) (*.f64 #s(literal -2 binary64) re))
(+.f64 (*.f64 #s(literal -2 binary64) re) (+.f64 im im))
#s(literal -2 binary64)
re
(*.f64 im #s(literal 2 binary64))
(*.f64 #s(literal 2 binary64) im)
(-.f64 im (neg.f64 im))
(+.f64 im 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 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re)) #s(literal 1/2 binary64))
(sqrt.f64 (*.f64 (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)))))
(sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re)))
(fabs.f64 (neg.f64 (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re)))))
(fabs.f64 (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)
(*.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 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 (*.f64 (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 im re) im))) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 im re) im)))))
(sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 im re) im)))
(fabs.f64 (neg.f64 (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 im re) im)))))
(fabs.f64 (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 (*.f64 im im) #s(literal -1 binary64)) (/.f64 #s(literal -1 binary64) re))
(*.f64 (/.f64 #s(literal -1 binary64) re) (/.f64 (*.f64 im im) #s(literal -1 binary64)))
(*.f64 (neg.f64 (/.f64 (fabs.f64 im) (sqrt.f64 re))) (neg.f64 (/.f64 (fabs.f64 im) (sqrt.f64 re))))
(*.f64 (/.f64 (fabs.f64 im) (sqrt.f64 re)) (/.f64 (fabs.f64 im) (sqrt.f64 re)))
(*.f64 (*.f64 (/.f64 im re) im) #s(literal 1 binary64))
(*.f64 (/.f64 im re) im)
(*.f64 (*.f64 im im) (/.f64 #s(literal 1 binary64) re))
(*.f64 #s(literal 1 binary64) (*.f64 (/.f64 im re) im))
(*.f64 im (/.f64 im re))
(pow.f64 (*.f64 (*.f64 (/.f64 im re) im) (*.f64 (/.f64 im re) im)) #s(literal 1/2 binary64))
(pow.f64 (/.f64 (fabs.f64 im) (sqrt.f64 re)) #s(literal 2 binary64))
(pow.f64 (*.f64 (/.f64 im re) im) #s(literal 1 binary64))
(/.f64 (*.f64 #s(literal 2 binary64) (neg.f64 (*.f64 im im))) (*.f64 #s(literal 2 binary64) (neg.f64 re)))
(/.f64 (*.f64 #s(literal 2 binary64) (*.f64 im im)) (*.f64 #s(literal 2 binary64) 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)
(sqrt.f64 (*.f64 (*.f64 (/.f64 im re) im) (*.f64 (/.f64 im re) im)))
(fabs.f64 (*.f64 (/.f64 im re) im))
(*.f64 im (/.f64 #s(literal 1 binary64) re))
(/.f64 (neg.f64 (neg.f64 im)) (neg.f64 (neg.f64 re)))
(/.f64 (neg.f64 im) (neg.f64 re))
(/.f64 im re)
(*.f64 #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (/.f64 (fabs.f64 im) #s(approx (sqrt re) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) re)))) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (/.f64 (fabs.f64 im) #s(approx (sqrt re) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) re)))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (/.f64 (fabs.f64 im) #s(approx (sqrt re) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) re))))
(*.f64 (fabs.f64 im) (/.f64 #s(literal 1 binary64) #s(approx (sqrt re) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) re))))
(/.f64 (neg.f64 (neg.f64 (fabs.f64 im))) (neg.f64 (neg.f64 #s(approx (sqrt re) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) re)))))
(/.f64 (neg.f64 (fabs.f64 im)) (neg.f64 #s(approx (sqrt re) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) re))))
(/.f64 (fabs.f64 im) #s(approx (sqrt re) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) re)))
(*.f64 (sqrt.f64 (fabs.f64 im)) (sqrt.f64 (fabs.f64 im)))
(pow.f64 (*.f64 im im) #s(literal 1/2 binary64))
(sqrt.f64 (*.f64 im im))
(fabs.f64 (neg.f64 (neg.f64 im)))
(fabs.f64 (neg.f64 (fabs.f64 im)))
(fabs.f64 (neg.f64 im))
(fabs.f64 (fabs.f64 im))
(fabs.f64 im)
#s(approx (sqrt re) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) re))
(*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) re)
(*.f64 re (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))
(pow.f64 (/.f64 #s(literal 1 binary64) re) #s(literal 1/2 binary64))
(sqrt.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))))
(sqrt.f64 (/.f64 #s(literal 1 binary64) re))
(fabs.f64 (neg.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re))))
(fabs.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))
(*.f64 #s(literal 1 binary64) (/.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) (neg.f64 (neg.f64 re)))
(/.f64 #s(literal 1 binary64) re)
(/.f64 #s(literal -2 binary64) (*.f64 #s(literal 2 binary64) (neg.f64 re)))
(/.f64 #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) re))
#s(literal 1 binary64)
(*.f64 (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 4 binary64)) (neg.f64 re)))) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 4 binary64)) (neg.f64 re)))))
(pow.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 4 binary64)) (neg.f64 re))) #s(literal 1/2 binary64))
(sqrt.f64 (*.f64 (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 4 binary64)) (neg.f64 re)))) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 4 binary64)) (neg.f64 re))))))
(sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 4 binary64)) (neg.f64 re))))
(fabs.f64 (neg.f64 (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 4 binary64)) (neg.f64 re))))))
(fabs.f64 (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 4 binary64)) (neg.f64 re)))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 4 binary64)) (neg.f64 re)))
(*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 4 binary64)) re) #s(literal -1 binary64))
(*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 4 binary64)) (neg.f64 re))
(*.f64 #s(literal -1 binary64) (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 4 binary64)) re))
(*.f64 (neg.f64 re) (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 4 binary64)))
(neg.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 4 binary64)) re))
(fma.f64 (/.f64 (*.f64 im im) (*.f64 re re)) (neg.f64 re) (*.f64 #s(literal 4 binary64) (neg.f64 re)))
(fma.f64 (neg.f64 re) (/.f64 (*.f64 im im) (*.f64 re re)) (*.f64 (neg.f64 re) #s(literal 4 binary64)))
(+.f64 (*.f64 (neg.f64 re) (/.f64 (*.f64 im im) (*.f64 re re))) (*.f64 (neg.f64 re) #s(literal 4 binary64)))
(+.f64 (*.f64 (/.f64 (*.f64 im im) (*.f64 re re)) (neg.f64 re)) (*.f64 #s(literal 4 binary64) (neg.f64 re)))
(*.f64 #s(literal -1 binary64) re)
(*.f64 re #s(literal -1 binary64))
(neg.f64 re)
(fma.f64 (/.f64 (neg.f64 im) re) (/.f64 (neg.f64 im) re) #s(literal 4 binary64))
(fma.f64 (/.f64 (fabs.f64 im) (neg.f64 re)) (/.f64 (fabs.f64 im) (neg.f64 re)) #s(literal 4 binary64))
(fma.f64 (/.f64 im (neg.f64 re)) (/.f64 im (neg.f64 re)) #s(literal 4 binary64))
(fma.f64 (/.f64 (neg.f64 im) (fabs.f64 re)) (/.f64 (neg.f64 im) (fabs.f64 re)) #s(literal 4 binary64))
(fma.f64 (fabs.f64 (/.f64 im re)) (fabs.f64 (/.f64 im re)) #s(literal 4 binary64))
(fma.f64 (/.f64 im (fabs.f64 re)) (/.f64 im (fabs.f64 re)) #s(literal 4 binary64))
(fma.f64 (fabs.f64 (fabs.f64 (/.f64 im re))) (fabs.f64 (fabs.f64 (/.f64 im re))) #s(literal 4 binary64))
(fma.f64 (neg.f64 (fabs.f64 (/.f64 im re))) (neg.f64 (fabs.f64 (/.f64 im re))) #s(literal 4 binary64))
(fma.f64 (neg.f64 (neg.f64 (/.f64 im re))) (neg.f64 (neg.f64 (/.f64 im re))) #s(literal 4 binary64))
(fma.f64 (/.f64 (fabs.f64 im) re) (/.f64 (fabs.f64 im) re) #s(literal 4 binary64))
(fma.f64 (neg.f64 (/.f64 im re)) (neg.f64 (/.f64 im re)) #s(literal 4 binary64))
(fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 4 binary64))
(fma.f64 (*.f64 im im) (/.f64 #s(literal 1 binary64) (*.f64 re re)) #s(literal 4 binary64))
(-.f64 (/.f64 (*.f64 im im) (*.f64 re re)) #s(literal -4 binary64))
(-.f64 #s(literal 4 binary64) (neg.f64 (/.f64 (*.f64 im im) (*.f64 re re))))
(+.f64 (/.f64 (*.f64 im im) (*.f64 re re)) #s(literal 4 binary64))
(+.f64 #s(literal 4 binary64) (/.f64 (*.f64 im im) (*.f64 re re)))
#s(literal 4 binary64)
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 (sqrt.f64 (*.f64 (fabs.f64 im) #s(literal 2 binary64))) #s(literal 1/2 binary64)))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (fma.f64 (/.f64 re (sqrt.f64 (*.f64 (fabs.f64 im) #s(literal 2 binary64)))) #s(literal -1/2 binary64) (*.f64 (sqrt.f64 (*.f64 (fabs.f64 im) #s(literal 2 binary64))) #s(literal 1/2 binary64))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (fma.f64 (/.f64 (-.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (fabs.f64 im)) (/.f64 #s(literal 1 binary64) (*.f64 (fabs.f64 im) #s(literal 2 binary64)))) re)) #s(literal 1/2 binary64)) (sqrt.f64 (*.f64 (fabs.f64 im) #s(literal 2 binary64)))) re (*.f64 (sqrt.f64 (*.f64 (fabs.f64 im) #s(literal 2 binary64))) #s(literal 1/2 binary64))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (fma.f64 re (-.f64 (*.f64 (*.f64 #s(literal 1/4 binary64) (fma.f64 re (/.f64 (-.f64 (/.f64 #s(literal 1 binary64) (fabs.f64 im)) (/.f64 #s(literal 1 binary64) (*.f64 (fabs.f64 im) #s(literal 2 binary64)))) (*.f64 (sqrt.f64 (*.f64 (fabs.f64 im) #s(literal 2 binary64))) (*.f64 (fabs.f64 im) #s(literal 2 binary64)))) (/.f64 (-.f64 (/.f64 #s(literal 1 binary64) (fabs.f64 im)) (/.f64 #s(literal 1 binary64) (*.f64 (fabs.f64 im) #s(literal 2 binary64)))) (sqrt.f64 (*.f64 (fabs.f64 im) #s(literal 2 binary64)))))) re) (/.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 (fabs.f64 im) #s(literal 2 binary64))))) (*.f64 (sqrt.f64 (*.f64 (fabs.f64 im) #s(literal 2 binary64))) #s(literal 1/2 binary64))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (sqrt.f64 (*.f64 (fabs.f64 im) #s(literal 2 binary64))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (+.f64 (/.f64 (neg.f64 re) (sqrt.f64 (*.f64 (fabs.f64 im) #s(literal 2 binary64)))) (sqrt.f64 (*.f64 (fabs.f64 im) #s(literal 2 binary64)))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (fma.f64 (/.f64 (-.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (fabs.f64 im)) (/.f64 #s(literal 1 binary64) (*.f64 (fabs.f64 im) #s(literal 2 binary64)))) re)) #s(literal 1 binary64)) (sqrt.f64 (*.f64 (fabs.f64 im) #s(literal 2 binary64)))) re (sqrt.f64 (*.f64 (fabs.f64 im) #s(literal 2 binary64)))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (fma.f64 re (-.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (fma.f64 re (/.f64 (-.f64 (/.f64 #s(literal 1 binary64) (fabs.f64 im)) (/.f64 #s(literal 1 binary64) (*.f64 (fabs.f64 im) #s(literal 2 binary64)))) (*.f64 (sqrt.f64 (*.f64 (fabs.f64 im) #s(literal 2 binary64))) (*.f64 (fabs.f64 im) #s(literal 2 binary64)))) (/.f64 (-.f64 (/.f64 #s(literal 1 binary64) (fabs.f64 im)) (/.f64 #s(literal 1 binary64) (*.f64 (fabs.f64 im) #s(literal 2 binary64)))) (sqrt.f64 (*.f64 (fabs.f64 im) #s(literal 2 binary64)))))) re) (/.f64 #s(literal 1 binary64) (sqrt.f64 (*.f64 (fabs.f64 im) #s(literal 2 binary64))))) (sqrt.f64 (*.f64 (fabs.f64 im) #s(literal 2 binary64)))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (fabs.f64 im) #s(literal 2 binary64)))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (fma.f64 (fabs.f64 im) #s(literal 2 binary64) (*.f64 #s(literal -2 binary64) re)))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (fma.f64 (-.f64 (/.f64 re (fabs.f64 im)) #s(literal 2 binary64)) re (*.f64 (fabs.f64 im) #s(literal 2 binary64))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (fma.f64 (fma.f64 (fma.f64 (/.f64 (*.f64 re re) (*.f64 (fabs.f64 im) (*.f64 im im))) #s(literal -1/4 binary64) (/.f64 #s(literal 1 binary64) (fabs.f64 im))) re #s(literal -2 binary64)) re (*.f64 (fabs.f64 im) #s(literal 2 binary64))))
#s(approx (* (+ (* (/ re im) -2) 2) im) (+.f64 im im))
#s(approx (* (+ (* (/ re im) -2) 2) im) (fma.f64 #s(literal -2 binary64) re (+.f64 im im)))
#s(approx re re)
#s(approx (* -4 re) (*.f64 #s(literal -4 binary64) re))
#s(approx (* im (/ im re)) (*.f64 (/.f64 im re) im))
#s(approx (/ im re) (/.f64 im re))
#s(approx (/ (fabs im) (sqrt re)) (/.f64 (fabs.f64 im) (sqrt.f64 re)))
#s(approx (sqrt re) (sqrt.f64 re))
#s(approx (sqrt (/ 1 re)) (/.f64 #s(literal 1 binary64) (sqrt.f64 re)))
#s(approx (/ 1 re) (/.f64 #s(literal 1 binary64) re))
#s(approx (* (neg re) (+ (* (/ im re) (/ im re)) 4)) (neg.f64 (*.f64 (/.f64 im re) im)))
#s(approx (* (neg re) (+ (* (/ im re) (/ im re)) 4)) (/.f64 (fma.f64 (*.f64 re re) #s(literal -4 binary64) (neg.f64 (*.f64 im im))) re))
#s(approx (neg re) (neg.f64 re))
#s(approx (+ (* (/ im re) (/ im re)) 4) (/.f64 (*.f64 im im) (*.f64 re re)))
#s(approx (+ (* (/ im re) (/ im re)) 4) (/.f64 (fma.f64 (*.f64 re re) #s(literal 4 binary64) (*.f64 im im)) (*.f64 re re)))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 (/.f64 (fabs.f64 im) (sqrt.f64 re)) #s(literal 1/2 binary64)))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (*.f64 (*.f64 re re) re) (/.f64 (fabs.f64 im) (sqrt.f64 re)))) #s(literal -1/16 binary64) (*.f64 (/.f64 (fabs.f64 im) (sqrt.f64 re)) #s(literal 1/2 binary64))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (*.f64 (*.f64 re re) re) (/.f64 (fabs.f64 im) (sqrt.f64 re)))) #s(literal -1/16 binary64) (fma.f64 (/.f64 (pow.f64 im #s(literal 6 binary64)) (*.f64 (pow.f64 re #s(literal 5 binary64)) (/.f64 (fabs.f64 im) (sqrt.f64 re)))) #s(literal 1/32 binary64) (*.f64 (/.f64 (fabs.f64 im) (sqrt.f64 re)) #s(literal 1/2 binary64)))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (*.f64 (*.f64 re re) re) (/.f64 (fabs.f64 im) (sqrt.f64 re)))) #s(literal -1/16 binary64) (fma.f64 (/.f64 (pow.f64 im #s(literal 8 binary64)) (*.f64 (*.f64 (/.f64 (fabs.f64 im) (sqrt.f64 re)) (*.f64 (/.f64 im re) im)) (pow.f64 re #s(literal 6 binary64)))) #s(literal -1/256 binary64) (fma.f64 (/.f64 (pow.f64 im #s(literal 6 binary64)) (*.f64 (pow.f64 re #s(literal 5 binary64)) (/.f64 (fabs.f64 im) (sqrt.f64 re)))) #s(literal 1/32 binary64) (*.f64 (/.f64 (fabs.f64 im) (sqrt.f64 re)) #s(literal 1/2 binary64))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (/.f64 (fabs.f64 im) (sqrt.f64 re)))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (*.f64 (*.f64 re re) re) (/.f64 (fabs.f64 im) (sqrt.f64 re)))) #s(literal -1/8 binary64) (/.f64 (fabs.f64 im) (sqrt.f64 re))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (+.f64 (fma.f64 #s(literal 1/16 binary64) (/.f64 (pow.f64 im #s(literal 6 binary64)) (*.f64 (pow.f64 re #s(literal 5 binary64)) (/.f64 (fabs.f64 im) (sqrt.f64 re)))) (/.f64 (*.f64 #s(literal -1/8 binary64) (pow.f64 im #s(literal 4 binary64))) (*.f64 (*.f64 (*.f64 re re) re) (/.f64 (fabs.f64 im) (sqrt.f64 re))))) (/.f64 (fabs.f64 im) (sqrt.f64 re))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (+.f64 (fma.f64 #s(literal -1/8 binary64) (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (*.f64 (*.f64 re re) re) (/.f64 (fabs.f64 im) (sqrt.f64 re)))) (fma.f64 #s(literal -1/128 binary64) (/.f64 (pow.f64 im #s(literal 8 binary64)) (*.f64 (*.f64 (/.f64 (fabs.f64 im) (sqrt.f64 re)) (*.f64 (/.f64 im re) im)) (pow.f64 re #s(literal 6 binary64)))) (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 6 binary64))) (*.f64 (pow.f64 re #s(literal 5 binary64)) (/.f64 (fabs.f64 im) (sqrt.f64 re)))))) (/.f64 (fabs.f64 im) (sqrt.f64 re))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (/.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.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 (pow.f64 im #s(literal 4 binary64)) (*.f64 re re)) #s(literal -1/4 binary64) (fma.f64 (*.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal -4 binary64))) #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)) (pow.f64 re #s(literal -6 binary64)))) (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 re re)) #s(literal -1/4 binary64) (fma.f64 (*.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal -4 binary64))) #s(literal 1/8 binary64) (*.f64 im im)))) re))
#s(approx (* (+ (* (/ re im) -2) 2) im) (*.f64 #s(literal -2 binary64) re))
#s(approx (* (+ (* (/ re im) -2) 2) im) (*.f64 (fma.f64 (/.f64 im re) #s(literal 2 binary64) #s(literal -2 binary64)) re))
#s(approx (/ (fabs im) (sqrt re)) (/.f64 (fabs.f64 im) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) re)))
#s(approx (sqrt re) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) re))
#s(approx (sqrt (/ 1 re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))
#s(approx (* (neg re) (+ (* (/ im re) (/ im re)) 4)) (*.f64 (neg.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 4 binary64))) re))
#s(approx (+ (* (/ im re) (/ im re)) 4) #s(literal 4 binary64))
#s(approx (+ (* (/ im re) (/ im re)) 4) (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 4 binary64)))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 (*.f64 #s(literal -1/2 binary64) re) (sqrt.f64 (/.f64 #s(literal -4 binary64) re))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 (neg.f64 re) (fma.f64 (/.f64 (*.f64 im im) (*.f64 (sqrt.f64 (/.f64 #s(literal -4 binary64) re)) (*.f64 (*.f64 re re) re))) #s(literal -1/4 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal -4 binary64) re)) #s(literal 1/2 binary64)))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 (neg.f64 re) (fma.f64 (sqrt.f64 (/.f64 #s(literal -4 binary64) re)) #s(literal 1/2 binary64) (neg.f64 (/.f64 (fma.f64 (/.f64 (*.f64 im im) (sqrt.f64 (/.f64 #s(literal -4 binary64) re))) #s(literal 1/4 binary64) (/.f64 (*.f64 #s(literal -1/16 binary64) (pow.f64 im #s(literal 4 binary64))) (*.f64 (sqrt.f64 (/.f64 #s(literal -4 binary64) re)) (*.f64 re re)))) (*.f64 (*.f64 re re) re))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 (neg.f64 re) (fma.f64 (sqrt.f64 (/.f64 #s(literal -4 binary64) re)) #s(literal 1/2 binary64) (neg.f64 (/.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (sqrt.f64 (/.f64 #s(literal -4 binary64) re)) (*.f64 re re))) #s(literal -1/16 binary64) (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal -4 binary64) re)) (/.f64 #s(literal -4 binary64) re)) (*.f64 (*.f64 re re) re))) #s(literal 1/16 binary64) (/.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 im im)) (sqrt.f64 (/.f64 #s(literal -4 binary64) re))))) (*.f64 (*.f64 re re) re))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (neg.f64 re) (sqrt.f64 (/.f64 #s(literal -4 binary64) re))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (neg.f64 re) (fma.f64 (/.f64 (*.f64 im im) (*.f64 (sqrt.f64 (/.f64 #s(literal -4 binary64) re)) (*.f64 (*.f64 re re) re))) #s(literal -1/2 binary64) (sqrt.f64 (/.f64 #s(literal -4 binary64) re)))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (neg.f64 re) (+.f64 (neg.f64 (/.f64 (fma.f64 (/.f64 (*.f64 im im) (sqrt.f64 (/.f64 #s(literal -4 binary64) re))) #s(literal 1/2 binary64) (/.f64 (*.f64 #s(literal -1/8 binary64) (pow.f64 im #s(literal 4 binary64))) (*.f64 (sqrt.f64 (/.f64 #s(literal -4 binary64) re)) (*.f64 re re)))) (*.f64 (*.f64 re re) re))) (sqrt.f64 (/.f64 #s(literal -4 binary64) re)))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (neg.f64 re) (+.f64 (neg.f64 (/.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (sqrt.f64 (/.f64 #s(literal -4 binary64) re)) (*.f64 re re))) #s(literal -1/8 binary64) (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal -4 binary64) re)) (/.f64 #s(literal -4 binary64) re)) (*.f64 (*.f64 re re) re))) #s(literal 1/8 binary64) (/.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 im im)) (sqrt.f64 (/.f64 #s(literal -4 binary64) re))))) (*.f64 (*.f64 re re) re))) (sqrt.f64 (/.f64 #s(literal -4 binary64) re)))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 4 binary64)) (neg.f64 re)))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (neg.f64 re) (+.f64 (fma.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal -4 binary64))) #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 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal -4 binary64))) #s(literal -1/4 binary64) (fma.f64 (*.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal -6 binary64))) #s(literal 1/8 binary64) (/.f64 (*.f64 im im) (*.f64 re re)))) #s(literal 4 binary64))))
#s(approx (* (+ (* (/ re im) -2) 2) im) (*.f64 (neg.f64 re) (fma.f64 (/.f64 im re) #s(literal -2 binary64) #s(literal 2 binary64))))
#s(approx (/ (fabs im) (sqrt re)) (neg.f64 (/.f64 (fabs.f64 im) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) re))))
#s(approx (sqrt re) (*.f64 (neg.f64 re) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 (sqrt.f64 (*.f64 (-.f64 (fabs.f64 re) re) #s(literal 2 binary64))) #s(literal 1/2 binary64)))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (fma.f64 (/.f64 (*.f64 im im) (*.f64 (sqrt.f64 (*.f64 (-.f64 (fabs.f64 re) re) #s(literal 2 binary64))) (fabs.f64 re))) #s(literal 1/4 binary64) (*.f64 (sqrt.f64 (*.f64 (-.f64 (fabs.f64 re) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (fma.f64 (sqrt.f64 (*.f64 (-.f64 (fabs.f64 re) re) #s(literal 2 binary64))) #s(literal 1/2 binary64) (*.f64 (fma.f64 (/.f64 (*.f64 (*.f64 im im) (+.f64 (/.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 (-.f64 (fabs.f64 re) re) #s(literal 2 binary64)) (*.f64 re re))) (/.f64 #s(literal 1/4 binary64) (*.f64 (fabs.f64 re) (*.f64 re re))))) (sqrt.f64 (*.f64 (-.f64 (fabs.f64 re) re) #s(literal 2 binary64)))) #s(literal -1/4 binary64) (/.f64 #s(literal 1/4 binary64) (*.f64 (sqrt.f64 (*.f64 (-.f64 (fabs.f64 re) re) #s(literal 2 binary64))) (fabs.f64 re)))) (*.f64 im im))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (fma.f64 (fma.f64 (/.f64 (fma.f64 #s(literal 1/4 binary64) (*.f64 (fma.f64 (pow.f64 (fabs.f64 re) #s(literal -5 binary64)) #s(literal 1/8 binary64) (*.f64 #s(literal 1/2 binary64) (/.f64 (+.f64 (/.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 (-.f64 (fabs.f64 re) re) #s(literal 2 binary64)) (*.f64 re re))) (/.f64 #s(literal 1/4 binary64) (*.f64 (fabs.f64 re) (*.f64 re re)))) (*.f64 (*.f64 (-.f64 (fabs.f64 re) re) #s(literal 2 binary64)) (fabs.f64 re))))) (*.f64 im im)) (*.f64 #s(literal -1/4 binary64) (+.f64 (/.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 (-.f64 (fabs.f64 re) re) #s(literal 2 binary64)) (*.f64 re re))) (/.f64 #s(literal 1/4 binary64) (*.f64 (fabs.f64 re) (*.f64 re re)))))) (sqrt.f64 (*.f64 (-.f64 (fabs.f64 re) re) #s(literal 2 binary64)))) (*.f64 im im) (/.f64 #s(literal 1/4 binary64) (*.f64 (sqrt.f64 (*.f64 (-.f64 (fabs.f64 re) re) #s(literal 2 binary64))) (fabs.f64 re)))) (*.f64 im im) (*.f64 (sqrt.f64 (*.f64 (-.f64 (fabs.f64 re) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (sqrt.f64 (*.f64 (-.f64 (fabs.f64 re) re) #s(literal 2 binary64))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (fma.f64 (/.f64 (*.f64 im im) (*.f64 (sqrt.f64 (*.f64 (-.f64 (fabs.f64 re) re) #s(literal 2 binary64))) (fabs.f64 re))) #s(literal 1/2 binary64) (sqrt.f64 (*.f64 (-.f64 (fabs.f64 re) re) #s(literal 2 binary64)))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (fma.f64 (fma.f64 (/.f64 (*.f64 (*.f64 im im) (+.f64 (/.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 (-.f64 (fabs.f64 re) re) #s(literal 2 binary64)) (*.f64 re re))) (/.f64 #s(literal 1/4 binary64) (*.f64 (fabs.f64 re) (*.f64 re re))))) (sqrt.f64 (*.f64 (-.f64 (fabs.f64 re) re) #s(literal 2 binary64)))) #s(literal -1/2 binary64) (/.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 (*.f64 (-.f64 (fabs.f64 re) re) #s(literal 2 binary64))) (fabs.f64 re)))) (*.f64 im im) (sqrt.f64 (*.f64 (-.f64 (fabs.f64 re) re) #s(literal 2 binary64)))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (fma.f64 (fma.f64 (/.f64 (fma.f64 #s(literal 1/2 binary64) (*.f64 (fma.f64 (pow.f64 (fabs.f64 re) #s(literal -5 binary64)) #s(literal 1/8 binary64) (*.f64 #s(literal 1/2 binary64) (/.f64 (+.f64 (/.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 (-.f64 (fabs.f64 re) re) #s(literal 2 binary64)) (*.f64 re re))) (/.f64 #s(literal 1/4 binary64) (*.f64 (fabs.f64 re) (*.f64 re re)))) (*.f64 (*.f64 (-.f64 (fabs.f64 re) re) #s(literal 2 binary64)) (fabs.f64 re))))) (*.f64 im im)) (*.f64 #s(literal -1/2 binary64) (+.f64 (/.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 (-.f64 (fabs.f64 re) re) #s(literal 2 binary64)) (*.f64 re re))) (/.f64 #s(literal 1/4 binary64) (*.f64 (fabs.f64 re) (*.f64 re re)))))) (sqrt.f64 (*.f64 (-.f64 (fabs.f64 re) re) #s(literal 2 binary64)))) (*.f64 im im) (/.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 (*.f64 (-.f64 (fabs.f64 re) re) #s(literal 2 binary64))) (fabs.f64 re)))) (*.f64 im im) (sqrt.f64 (*.f64 (-.f64 (fabs.f64 re) re) #s(literal 2 binary64)))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (-.f64 (fabs.f64 re) re) #s(literal 2 binary64)))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (fma.f64 (-.f64 (fabs.f64 re) re) #s(literal 2 binary64) (/.f64 (*.f64 im im) (fabs.f64 re))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (fma.f64 (fma.f64 (/.f64 (*.f64 im im) (*.f64 (fabs.f64 re) (*.f64 re re))) #s(literal -1/4 binary64) (/.f64 #s(literal 1 binary64) (fabs.f64 re))) (*.f64 im im) (*.f64 (-.f64 (fabs.f64 re) re) #s(literal 2 binary64))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (fma.f64 (fma.f64 (-.f64 (*.f64 (*.f64 (*.f64 im im) (pow.f64 (fabs.f64 re) #s(literal -5 binary64))) #s(literal 1/8 binary64)) (/.f64 #s(literal 1/4 binary64) (*.f64 (fabs.f64 re) (*.f64 re re)))) (*.f64 im im) (/.f64 #s(literal 1 binary64) (fabs.f64 re))) (*.f64 im im) (*.f64 (-.f64 (fabs.f64 re) re) #s(literal 2 binary64))))
#s(approx im im)
#s(approx (fabs im) (fabs.f64 im))
#s(approx (* (neg re) (+ (* (/ im re) (/ im re)) 4)) (-.f64 (*.f64 #s(literal -4 binary64) re) (*.f64 (/.f64 im re) im)))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 (*.f64 #s(literal 1/2 binary64) im) (sqrt.f64 (/.f64 #s(literal 2 binary64) im))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 (fma.f64 (/.f64 re (*.f64 (sqrt.f64 (/.f64 #s(literal 2 binary64) im)) (*.f64 im im))) #s(literal -1/2 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 2 binary64) im)) #s(literal 1/2 binary64))) im))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 (fma.f64 (/.f64 re (*.f64 (sqrt.f64 (/.f64 #s(literal 2 binary64) im)) (*.f64 im im))) #s(literal -1/2 binary64) (fma.f64 (/.f64 (*.f64 re re) (*.f64 (*.f64 (*.f64 im im) im) (sqrt.f64 (/.f64 #s(literal 2 binary64) im)))) #s(literal 1/4 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 2 binary64) im)) #s(literal 1/2 binary64)))) im))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 (fma.f64 (/.f64 re (*.f64 (sqrt.f64 (/.f64 #s(literal 2 binary64) im)) (*.f64 im im))) #s(literal -1/2 binary64) (fma.f64 (/.f64 (*.f64 re re) (*.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (sqrt.f64 (/.f64 #s(literal 2 binary64) im)) (/.f64 #s(literal 2 binary64) im)))) #s(literal -1/4 binary64) (fma.f64 (/.f64 (*.f64 re re) (*.f64 (*.f64 (*.f64 im im) im) (sqrt.f64 (/.f64 #s(literal 2 binary64) im)))) #s(literal 1/4 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 2 binary64) im)) #s(literal 1/2 binary64))))) im))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (sqrt.f64 (/.f64 #s(literal 2 binary64) im)) im))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (+.f64 (/.f64 (neg.f64 re) (*.f64 (sqrt.f64 (/.f64 #s(literal 2 binary64) im)) (*.f64 im im))) (sqrt.f64 (/.f64 #s(literal 2 binary64) im))) im))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (+.f64 (fma.f64 (/.f64 (*.f64 re re) (*.f64 (*.f64 (*.f64 im im) im) (sqrt.f64 (/.f64 #s(literal 2 binary64) im)))) #s(literal 1/2 binary64) (/.f64 (neg.f64 re) (*.f64 (sqrt.f64 (/.f64 #s(literal 2 binary64) im)) (*.f64 im im)))) (sqrt.f64 (/.f64 #s(literal 2 binary64) im))) im))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (+.f64 (+.f64 (fma.f64 (/.f64 (*.f64 re re) (*.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (sqrt.f64 (/.f64 #s(literal 2 binary64) im)) (/.f64 #s(literal 2 binary64) im)))) #s(literal -1/2 binary64) (*.f64 (/.f64 (*.f64 re re) (*.f64 (*.f64 (*.f64 im im) im) (sqrt.f64 (/.f64 #s(literal 2 binary64) im)))) #s(literal 1/2 binary64))) (/.f64 (neg.f64 re) (*.f64 (sqrt.f64 (/.f64 #s(literal 2 binary64) im)) (*.f64 im im)))) (sqrt.f64 (/.f64 #s(literal 2 binary64) im))) im))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (fma.f64 #s(literal -2 binary64) (/.f64 re im) #s(literal 2 binary64)) im))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (+.f64 (fma.f64 #s(literal -2 binary64) (/.f64 re im) (/.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 #s(literal -2 binary64) (/.f64 re im) (fma.f64 (*.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal -4 binary64))) #s(literal -1/4 binary64) (/.f64 (*.f64 re re) (*.f64 im im)))) #s(literal 2 binary64)) im))
#s(approx (* (neg re) (+ (* (/ im re) (/ im re)) 4)) (*.f64 (-.f64 (*.f64 (/.f64 re (*.f64 im im)) #s(literal -4 binary64)) (/.f64 #s(literal 1 binary64) re)) (*.f64 im im)))
#s(approx (+ (* (/ im re) (/ im re)) 4) (*.f64 (+.f64 (/.f64 #s(literal 1 binary64) (*.f64 re re)) (/.f64 #s(literal 4 binary64) (*.f64 im im))) (*.f64 im im)))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 (*.f64 #s(literal -1/2 binary64) im) (sqrt.f64 (/.f64 #s(literal -2 binary64) im))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (neg.f64 (*.f64 (fma.f64 (/.f64 re (*.f64 (sqrt.f64 (/.f64 #s(literal -2 binary64) im)) (*.f64 im im))) #s(literal -1/2 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal -2 binary64) im)) #s(literal 1/2 binary64))) im)))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (neg.f64 (*.f64 (fma.f64 (/.f64 re (*.f64 (sqrt.f64 (/.f64 #s(literal -2 binary64) im)) (*.f64 im im))) #s(literal -1/2 binary64) (fma.f64 (/.f64 (*.f64 re re) (*.f64 (sqrt.f64 (/.f64 #s(literal -2 binary64) im)) (*.f64 (*.f64 im im) im))) #s(literal -1/4 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal -2 binary64) im)) #s(literal 1/2 binary64)))) im)))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (neg.f64 (*.f64 (+.f64 (neg.f64 (/.f64 (*.f64 #s(literal 1/4 binary64) (+.f64 (/.f64 (*.f64 re re) (sqrt.f64 (/.f64 #s(literal -2 binary64) im))) (/.f64 (*.f64 re re) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal -2 binary64) im)) (/.f64 #s(literal -2 binary64) im)) im)))) (*.f64 (*.f64 im im) im))) (fma.f64 (/.f64 re (*.f64 (sqrt.f64 (/.f64 #s(literal -2 binary64) im)) (*.f64 im im))) #s(literal -1/2 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal -2 binary64) im)) #s(literal 1/2 binary64)))) im)))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (neg.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal -2 binary64) im)) im)))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (neg.f64 (*.f64 (+.f64 (/.f64 (neg.f64 re) (*.f64 (sqrt.f64 (/.f64 #s(literal -2 binary64) im)) (*.f64 im im))) (sqrt.f64 (/.f64 #s(literal -2 binary64) im))) im)))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (neg.f64 (*.f64 (+.f64 (fma.f64 (/.f64 (*.f64 re re) (*.f64 (sqrt.f64 (/.f64 #s(literal -2 binary64) im)) (*.f64 (*.f64 im im) im))) #s(literal -1/2 binary64) (/.f64 (neg.f64 re) (*.f64 (sqrt.f64 (/.f64 #s(literal -2 binary64) im)) (*.f64 im im)))) (sqrt.f64 (/.f64 #s(literal -2 binary64) im))) im)))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (neg.f64 (*.f64 (+.f64 (+.f64 (neg.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) (+.f64 (/.f64 (*.f64 re re) (sqrt.f64 (/.f64 #s(literal -2 binary64) im))) (/.f64 (*.f64 re re) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal -2 binary64) im)) (/.f64 #s(literal -2 binary64) im)) im)))) (*.f64 (*.f64 im im) im))) (/.f64 (neg.f64 re) (*.f64 (sqrt.f64 (/.f64 #s(literal -2 binary64) im)) (*.f64 im im)))) (sqrt.f64 (/.f64 #s(literal -2 binary64) im))) 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)) (neg.f64 (*.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal 2 binary64)) im)))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (neg.f64 (*.f64 (+.f64 (neg.f64 (/.f64 (fma.f64 #s(literal -2 binary64) re (neg.f64 (/.f64 (*.f64 re re) im))) im)) #s(literal 2 binary64)) im)))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (neg.f64 (*.f64 (+.f64 (neg.f64 (/.f64 (fma.f64 #s(literal -2 binary64) re (neg.f64 (/.f64 (fma.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (*.f64 im im)) #s(literal -1/4 binary64) (*.f64 re re)) im))) im)) #s(literal 2 binary64)) im)))
#s(approx (* (+ (* (/ re im) -2) 2) im) (neg.f64 (*.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -2 binary64)) im)))

eval38.0ms (0.8%)

Memory
-1.4MiB live, 43.5MiB allocated; 6ms collecting garbage
Compiler

Compiled 3 126 to 1 185 computations (62.1% saved)

prune8.0ms (0.2%)

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

14 alts after pruning (5 fresh and 9 done)

PrunedKeptTotal
New2102212
Fresh134
Picked145
Done055
Total21214226
Accuracy
100.0%
Counts
226 → 14
Alt Table
Click to see full alt table
StatusAccuracyProgram
41.1%
(*.f64 (sqrt.f64 (*.f64 (-.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re))) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))
80.2%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 re im) re))))
19.3%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 im im) re))))
51.5%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (+.f64 im im))))
52.9%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (fma.f64 (/.f64 re im) #s(literal -2 binary64) #s(literal 2 binary64)) im))))
20.3%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 im (/.f64 im re)))))
26.5%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re))))
53.9%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(approx (* (+ (* (/ re im) -2) 2) im) (fma.f64 #s(literal -2 binary64) re (+.f64 im im))))))
12.9%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(approx (* (neg re) (+ (* (/ im re) (/ im re)) 4)) (/.f64 (fma.f64 (*.f64 re re) #s(literal -4 binary64) (neg.f64 (*.f64 im im))) re)))))
26.8%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(approx (* (neg re) (+ (* (/ im re) (/ im re)) 4)) (-.f64 (*.f64 #s(literal -4 binary64) re) (*.f64 (/.f64 im re) im))))))
27.2%
(*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (/.f64 (fabs.f64 im) (sqrt.f64 re))))
27.2%
(*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (/.f64 (fabs.f64 im) #s(approx (sqrt re) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) re)))))
51.3%
(*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (sqrt.f64 (/.f64 #s(literal 2 binary64) im)) im)))
27.2%
(*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (fabs.f64 im) (/.f64 #s(literal 1 binary64) (sqrt.f64 re)))))
Compiler

Compiled 343 to 339 computations (1.2% saved)

series33.0ms (0.7%)

Memory
24.6MiB live, 71.9MiB allocated; 2ms collecting garbage
Counts
40 → 149
Calls
Call 1
Inputs
(*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (sqrt.f64 (/.f64 #s(literal 2 binary64) im)) im)))
#s(literal 1/2 binary64)
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (sqrt.f64 (/.f64 #s(literal 2 binary64) im)) im))
(*.f64 (sqrt.f64 (/.f64 #s(literal 2 binary64) im)) im)
(sqrt.f64 (/.f64 #s(literal 2 binary64) im))
(/.f64 #s(literal 2 binary64) im)
#s(literal 2 binary64)
im
(*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (fabs.f64 im) (/.f64 #s(literal 1 binary64) (sqrt.f64 re)))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (fabs.f64 im) (/.f64 #s(literal 1 binary64) (sqrt.f64 re))))
(*.f64 (fabs.f64 im) (/.f64 #s(literal 1 binary64) (sqrt.f64 re)))
(fabs.f64 im)
(/.f64 #s(literal 1 binary64) (sqrt.f64 re))
#s(literal 1 binary64)
(sqrt.f64 re)
re
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(approx (* (neg re) (+ (* (/ im re) (/ im re)) 4)) (-.f64 (*.f64 #s(literal -4 binary64) re) (*.f64 (/.f64 im re) im))))))
(sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(approx (* (neg re) (+ (* (/ im re) (/ im re)) 4)) (-.f64 (*.f64 #s(literal -4 binary64) re) (*.f64 (/.f64 im re) im)))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(approx (* (neg re) (+ (* (/ im re) (/ im re)) 4)) (-.f64 (*.f64 #s(literal -4 binary64) re) (*.f64 (/.f64 im re) im))))
#s(approx (* (neg re) (+ (* (/ im re) (/ im re)) 4)) (-.f64 (*.f64 #s(literal -4 binary64) re) (*.f64 (/.f64 im re) im)))
(-.f64 (*.f64 #s(literal -4 binary64) re) (*.f64 (/.f64 im re) im))
(*.f64 #s(literal -4 binary64) re)
#s(literal -4 binary64)
(*.f64 (/.f64 im re) im)
(/.f64 im re)
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(approx (* (neg re) (+ (* (/ im re) (/ im re)) 4)) (/.f64 (fma.f64 (*.f64 re re) #s(literal -4 binary64) (neg.f64 (*.f64 im im))) re)))))
(sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(approx (* (neg re) (+ (* (/ im re) (/ im re)) 4)) (/.f64 (fma.f64 (*.f64 re re) #s(literal -4 binary64) (neg.f64 (*.f64 im im))) re))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(approx (* (neg re) (+ (* (/ im re) (/ im re)) 4)) (/.f64 (fma.f64 (*.f64 re re) #s(literal -4 binary64) (neg.f64 (*.f64 im im))) re)))
#s(approx (* (neg re) (+ (* (/ im re) (/ im re)) 4)) (/.f64 (fma.f64 (*.f64 re re) #s(literal -4 binary64) (neg.f64 (*.f64 im im))) re))
(/.f64 (fma.f64 (*.f64 re re) #s(literal -4 binary64) (neg.f64 (*.f64 im im))) re)
(fma.f64 (*.f64 re re) #s(literal -4 binary64) (neg.f64 (*.f64 im im)))
(*.f64 re re)
(neg.f64 (*.f64 im im))
(*.f64 im im)
(*.f64 (sqrt.f64 (*.f64 (-.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re))) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))
(sqrt.f64 (*.f64 (-.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re))) re) #s(literal 2 binary64)))
(*.f64 (-.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re))) re) #s(literal 2 binary64))
(-.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re))) re)
(sqrt.f64 (fma.f64 im im (*.f64 re re)))
(fma.f64 im im (*.f64 re re))
Outputs
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* 1/2 (sqrt (* 2 (sqrt (pow im 2)))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (+ (* -1/2 (/ re (sqrt (* 2 (sqrt (pow im 2)))))) (* 1/2 (sqrt (* 2 (sqrt (pow im 2))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (+ (* 1/2 (sqrt (* 2 (sqrt (pow im 2))))) (* re (- (* 1/4 (/ (* re (- (/ 1 (sqrt (pow im 2))) (/ 1 (pow (sqrt (* 2 (sqrt (pow im 2)))) 2)))) (sqrt (* 2 (sqrt (pow im 2)))))) (* 1/2 (/ 1 (sqrt (* 2 (sqrt (pow im 2)))))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (+ (* 1/2 (sqrt (* 2 (sqrt (pow im 2))))) (* re (- (* re (+ (* 1/4 (/ (* re (- (/ 1 (sqrt (pow im 2))) (/ 1 (pow (sqrt (* 2 (sqrt (pow im 2)))) 2)))) (pow (sqrt (* 2 (sqrt (pow im 2)))) 3))) (* 1/4 (/ (- (/ 1 (sqrt (pow im 2))) (/ 1 (pow (sqrt (* 2 (sqrt (pow im 2)))) 2))) (sqrt (* 2 (sqrt (pow im 2)))))))) (* 1/2 (/ 1 (sqrt (* 2 (sqrt (pow im 2)))))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (sqrt (* 2 (sqrt (pow im 2))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (+ (sqrt (* 2 (sqrt (pow im 2)))) (* -1 (/ re (sqrt (* 2 (sqrt (pow im 2)))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (+ (sqrt (* 2 (sqrt (pow im 2)))) (* re (- (* 1/2 (/ (* re (- (/ 1 (sqrt (pow im 2))) (/ 1 (pow (sqrt (* 2 (sqrt (pow im 2)))) 2)))) (sqrt (* 2 (sqrt (pow im 2)))))) (/ 1 (sqrt (* 2 (sqrt (pow im 2))))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (+ (sqrt (* 2 (sqrt (pow im 2)))) (* re (- (* re (+ (* 1/2 (/ (* re (- (/ 1 (sqrt (pow im 2))) (/ 1 (pow (sqrt (* 2 (sqrt (pow im 2)))) 2)))) (pow (sqrt (* 2 (sqrt (pow im 2)))) 3))) (* 1/2 (/ (- (/ 1 (sqrt (pow im 2))) (/ 1 (pow (sqrt (* 2 (sqrt (pow im 2)))) 2))) (sqrt (* 2 (sqrt (pow im 2)))))))) (/ 1 (sqrt (* 2 (sqrt (pow im 2))))))))))
#s(approx (* (fabs im) (/ 1 (sqrt re))) #s(hole binary64 (/ (fabs im) (sqrt re))))
#s(approx (/ 1 (sqrt re)) #s(hole binary64 (/ 1 (sqrt re))))
#s(approx (sqrt re) #s(hole binary64 (sqrt re)))
#s(approx re #s(hole binary64 re))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* 2 (sqrt (pow im 2)))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (+ (* -2 re) (* 2 (sqrt (pow im 2))))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (+ (* 2 (sqrt (pow im 2))) (* re (- (/ re (sqrt (pow im 2))) 2)))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (+ (* 2 (sqrt (pow im 2))) (* re (- (* re (+ (* -1/4 (/ (pow re 2) (pow (sqrt (pow im 2)) 3))) (/ 1 (sqrt (pow im 2))))) 2)))))
#s(approx (* (neg re) (+ (* (/ im re) (/ im re)) 4)) #s(hole binary64 (* -1 (/ (pow im 2) re))))
#s(approx (* (neg re) (+ (* (/ im re) (/ im re)) 4)) #s(hole binary64 (/ (+ (* -4 (pow re 2)) (* -1 (pow im 2))) re)))
#s(approx (- (* -4 re) (* (/ im re) im)) #s(hole binary64 (/ (- (* -4 (pow re 2)) (pow im 2)) re)))
#s(approx (* -4 re) #s(hole binary64 (* -4 re)))
#s(approx (* (/ im re) im) #s(hole binary64 (/ (pow im 2) re)))
#s(approx (/ im re) #s(hole binary64 (/ im re)))
#s(approx (+ (* (* re re) -4) (neg (* im im))) #s(hole binary64 (* -1 (pow im 2))))
#s(approx (+ (* (* re re) -4) (neg (* im im))) #s(hole binary64 (- (* -4 (pow re 2)) (pow im 2))))
#s(approx (* re re) #s(hole binary64 (pow re 2)))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) #s(hole binary64 (sqrt (pow im 2))))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) #s(hole binary64 (+ (sqrt (pow im 2)) (* -1 re))))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) #s(hole binary64 (+ (sqrt (pow im 2)) (* re (- (* 1/2 (/ re (sqrt (pow im 2)))) 1)))))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) #s(hole binary64 (+ (sqrt (pow im 2)) (* re (- (* re (+ (* -1/8 (/ (pow re 2) (pow (sqrt (pow im 2)) 3))) (* 1/2 (/ 1 (sqrt (pow im 2)))))) 1)))))
#s(approx (sqrt (+ (* im im) (* re re))) #s(hole binary64 (+ (sqrt (pow im 2)) (* 1/2 (/ (pow re 2) (sqrt (pow im 2)))))))
#s(approx (sqrt (+ (* im im) (* re re))) #s(hole binary64 (+ (sqrt (pow im 2)) (* (pow re 2) (+ (* -1/8 (/ (pow re 2) (pow (sqrt (pow im 2)) 3))) (* 1/2 (/ 1 (sqrt (pow im 2)))))))))
#s(approx (sqrt (+ (* im im) (* re re))) #s(hole binary64 (+ (sqrt (pow im 2)) (* (pow re 2) (+ (* (pow re 2) (- (* 1/16 (/ (pow re 2) (pow (sqrt (pow im 2)) 5))) (* 1/8 (/ 1 (pow (sqrt (pow im 2)) 3))))) (* 1/2 (/ 1 (sqrt (pow im 2)))))))))
#s(approx (+ (* im im) (* re re)) #s(hole binary64 (pow im 2)))
#s(approx (+ (* im im) (* re re)) #s(hole binary64 (+ (pow im 2) (pow re 2))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* 1/2 (sqrt (/ (pow im 2) re)))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (+ (* -1/16 (/ (pow im 4) (* (pow re 3) (sqrt (/ (pow im 2) re))))) (* 1/2 (sqrt (/ (pow im 2) re))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (+ (* -1/16 (/ (pow im 4) (* (pow re 3) (sqrt (/ (pow im 2) re))))) (+ (* 1/32 (/ (pow im 6) (* (pow re 5) (sqrt (/ (pow im 2) re))))) (* 1/2 (sqrt (/ (pow im 2) re)))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (+ (* -1/16 (/ (pow im 4) (* (pow re 3) (sqrt (/ (pow im 2) re))))) (+ (* -1/256 (/ (pow im 8) (* (pow re 6) (pow (sqrt (/ (pow im 2) re)) 3)))) (+ (* 1/32 (/ (pow im 6) (* (pow re 5) (sqrt (/ (pow im 2) re))))) (* 1/2 (sqrt (/ (pow im 2) re))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (sqrt (/ (pow im 2) re))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (+ (sqrt (/ (pow im 2) re)) (* -1/8 (/ (pow im 4) (* (pow re 3) (sqrt (/ (pow im 2) re))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (+ (sqrt (/ (pow im 2) re)) (+ (* -1/8 (/ (pow im 4) (* (pow re 3) (sqrt (/ (pow im 2) re))))) (* 1/16 (/ (pow im 6) (* (pow re 5) (sqrt (/ (pow im 2) re)))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (+ (sqrt (/ (pow im 2) re)) (+ (* -1/8 (/ (pow im 4) (* (pow re 3) (sqrt (/ (pow im 2) re))))) (+ (* -1/128 (/ (pow im 8) (* (pow re 6) (pow (sqrt (/ (pow im 2) re)) 3)))) (* 1/16 (/ (pow im 6) (* (pow re 5) (sqrt (/ (pow im 2) re))))))))))
#s(approx (* (fabs im) (/ 1 (sqrt re))) #s(hole binary64 (/ (fabs im) (* re (sqrt (/ 1 re))))))
#s(approx (/ 1 (sqrt re)) #s(hole binary64 (/ 1 (* re (sqrt (/ 1 re))))))
#s(approx (sqrt re) #s(hole binary64 (* re (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 (* (neg re) (+ (* (/ im re) (/ im re)) 4)) #s(hole binary64 (* re (- (* -1 (/ (pow im 2) (pow re 2))) 4))))
#s(approx (+ (* (* re re) -4) (neg (* im im))) #s(hole binary64 (* -4 (pow re 2))))
#s(approx (+ (* (* re re) -4) (neg (* im im))) #s(hole binary64 (* (pow re 2) (- (* -1 (/ (pow im 2) (pow re 2))) 4))))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) #s(hole binary64 (* 1/2 (/ (pow im 2) re))))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) #s(hole binary64 (/ (+ (* -1/8 (/ (pow im 4) (pow re 2))) (* 1/2 (pow im 2))) re)))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) #s(hole binary64 (/ (+ (* -1/8 (/ (pow im 4) (pow re 2))) (+ (* 1/16 (/ (pow im 6) (pow re 4))) (* 1/2 (pow im 2)))) re)))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) #s(hole binary64 (/ (+ (* -1/2 (/ (+ (* 1/64 (pow im 8)) (* 1/16 (pow im 8))) (pow re 6))) (+ (* -1/8 (/ (pow im 4) (pow re 2))) (+ (* 1/16 (/ (pow im 6) (pow re 4))) (* 1/2 (pow im 2))))) re)))
#s(approx (sqrt (+ (* im im) (* re re))) #s(hole binary64 (* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2)))))))
#s(approx (sqrt (+ (* im im) (* re re))) #s(hole binary64 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2))))))))
#s(approx (sqrt (+ (* im im) (* re re))) #s(hole binary64 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2)))))))))
#s(approx (+ (* im im) (* re re)) #s(hole binary64 (* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* -1/2 (* re (sqrt (/ -4 re))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* -1 (* re (+ (* -1/4 (/ (pow im 2) (* (pow re 3) (sqrt (/ -4 re))))) (* 1/2 (sqrt (/ -4 re))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* -1 (* re (+ (* -1 (/ (+ (* -1/16 (/ (pow im 4) (* (pow re 2) (sqrt (/ -4 re))))) (* 1/4 (/ (pow im 2) (sqrt (/ -4 re))))) (pow re 3))) (* 1/2 (sqrt (/ -4 re))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* -1 (* re (+ (* -1 (/ (+ (* -1/16 (/ (pow im 4) (* (pow re 2) (sqrt (/ -4 re))))) (+ (* 1/16 (/ (pow im 4) (* (pow re 3) (pow (sqrt (/ -4 re)) 3)))) (* 1/4 (/ (pow im 2) (sqrt (/ -4 re)))))) (pow re 3))) (* 1/2 (sqrt (/ -4 re))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* -1 (* re (sqrt (/ -4 re))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* -1 (* re (+ (sqrt (/ -4 re)) (* -1/2 (/ (pow im 2) (* (pow re 3) (sqrt (/ -4 re))))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* -1 (* re (+ (sqrt (/ -4 re)) (* -1 (/ (+ (* -1/8 (/ (pow im 4) (* (pow re 2) (sqrt (/ -4 re))))) (* 1/2 (/ (pow im 2) (sqrt (/ -4 re))))) (pow re 3))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* -1 (* re (+ (sqrt (/ -4 re)) (* -1 (/ (+ (* -1/8 (/ (pow im 4) (* (pow re 2) (sqrt (/ -4 re))))) (+ (* 1/8 (/ (pow im 4) (* (pow re 3) (pow (sqrt (/ -4 re)) 3)))) (* 1/2 (/ (pow im 2) (sqrt (/ -4 re)))))) (pow re 3))))))))
#s(approx (* (fabs im) (/ 1 (sqrt re))) #s(hole binary64 (* -1 (/ (fabs im) (* re (sqrt (/ 1 re)))))))
#s(approx (/ 1 (sqrt re)) #s(hole binary64 (/ -1 (* re (sqrt (/ 1 re))))))
#s(approx (sqrt re) #s(hole binary64 (* -1 (* re (sqrt (/ 1 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 (+ (* im im) (* re re))) re) #s(hole binary64 (* -2 re)))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) #s(hole binary64 (* -1 (* re (+ 2 (* 1/2 (/ (pow im 2) (pow re 2))))))))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) #s(hole binary64 (* -1 (* re (+ 2 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2)))))))))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) #s(hole binary64 (* -1 (* re (+ 2 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2))))))))))
#s(approx (sqrt (+ (* im im) (* re re))) #s(hole binary64 (* -1 re)))
#s(approx (sqrt (+ (* im im) (* re re))) #s(hole binary64 (* -1 (* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2))))))))
#s(approx (sqrt (+ (* im im) (* re re))) #s(hole binary64 (* -1 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2)))))))))
#s(approx (sqrt (+ (* im im) (* re re))) #s(hole binary64 (* -1 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2))))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* 1/2 (sqrt (* 2 (- (sqrt (pow re 2)) re))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (+ (* 1/4 (/ (pow im 2) (* (sqrt (* 2 (- (sqrt (pow re 2)) re))) (sqrt (pow re 2))))) (* 1/2 (sqrt (* 2 (- (sqrt (pow re 2)) re)))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (+ (* 1/2 (sqrt (* 2 (- (sqrt (pow re 2)) re)))) (* (pow im 2) (+ (* -1/4 (/ (* (pow im 2) (+ (* 1/4 (/ 1 (* (pow (sqrt (* 2 (- (sqrt (pow re 2)) re))) 2) (pow (sqrt (pow re 2)) 2)))) (* 1/4 (/ 1 (pow (sqrt (pow re 2)) 3))))) (sqrt (* 2 (- (sqrt (pow re 2)) re))))) (* 1/4 (/ 1 (* (sqrt (* 2 (- (sqrt (pow re 2)) re))) (sqrt (pow re 2))))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (+ (* 1/2 (sqrt (* 2 (- (sqrt (pow re 2)) re)))) (* (pow im 2) (+ (* (pow im 2) (+ (* -1/4 (/ (+ (* 1/4 (/ 1 (* (pow (sqrt (* 2 (- (sqrt (pow re 2)) re))) 2) (pow (sqrt (pow re 2)) 2)))) (* 1/4 (/ 1 (pow (sqrt (pow re 2)) 3)))) (sqrt (* 2 (- (sqrt (pow re 2)) re))))) (* 1/4 (/ (* (pow im 2) (- (* 1/8 (/ 1 (pow (sqrt (pow re 2)) 5))) (* -1/2 (/ (+ (* 1/4 (/ 1 (* (pow (sqrt (* 2 (- (sqrt (pow re 2)) re))) 2) (pow (sqrt (pow re 2)) 2)))) (* 1/4 (/ 1 (pow (sqrt (pow re 2)) 3)))) (* (pow (sqrt (* 2 (- (sqrt (pow re 2)) re))) 2) (sqrt (pow re 2))))))) (sqrt (* 2 (- (sqrt (pow re 2)) re))))))) (* 1/4 (/ 1 (* (sqrt (* 2 (- (sqrt (pow re 2)) re))) (sqrt (pow re 2))))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (sqrt (* 2 (- (sqrt (pow re 2)) re)))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (+ (sqrt (* 2 (- (sqrt (pow re 2)) re))) (* 1/2 (/ (pow im 2) (* (sqrt (* 2 (- (sqrt (pow re 2)) re))) (sqrt (pow re 2))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (+ (sqrt (* 2 (- (sqrt (pow re 2)) re))) (* (pow im 2) (+ (* -1/2 (/ (* (pow im 2) (+ (* 1/4 (/ 1 (* (pow (sqrt (* 2 (- (sqrt (pow re 2)) re))) 2) (pow (sqrt (pow re 2)) 2)))) (* 1/4 (/ 1 (pow (sqrt (pow re 2)) 3))))) (sqrt (* 2 (- (sqrt (pow re 2)) re))))) (* 1/2 (/ 1 (* (sqrt (* 2 (- (sqrt (pow re 2)) re))) (sqrt (pow re 2))))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (+ (sqrt (* 2 (- (sqrt (pow re 2)) re))) (* (pow im 2) (+ (* (pow im 2) (+ (* -1/2 (/ (+ (* 1/4 (/ 1 (* (pow (sqrt (* 2 (- (sqrt (pow re 2)) re))) 2) (pow (sqrt (pow re 2)) 2)))) (* 1/4 (/ 1 (pow (sqrt (pow re 2)) 3)))) (sqrt (* 2 (- (sqrt (pow re 2)) re))))) (* 1/2 (/ (* (pow im 2) (- (* 1/8 (/ 1 (pow (sqrt (pow re 2)) 5))) (* -1/2 (/ (+ (* 1/4 (/ 1 (* (pow (sqrt (* 2 (- (sqrt (pow re 2)) re))) 2) (pow (sqrt (pow re 2)) 2)))) (* 1/4 (/ 1 (pow (sqrt (pow re 2)) 3)))) (* (pow (sqrt (* 2 (- (sqrt (pow re 2)) re))) 2) (sqrt (pow re 2))))))) (sqrt (* 2 (- (sqrt (pow re 2)) re))))))) (* 1/2 (/ 1 (* (sqrt (* 2 (- (sqrt (pow re 2)) re))) (sqrt (pow re 2))))))))))
#s(approx (* (sqrt (/ 2 im)) im) #s(hole binary64 (sqrt (* 2 im))))
#s(approx (sqrt (/ 2 im)) #s(hole binary64 (/ (sqrt (* 2 im)) im)))
#s(approx (/ 2 im) #s(hole binary64 (/ 2 im)))
#s(approx im #s(hole binary64 im))
#s(approx (fabs im) #s(hole binary64 (fabs im)))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* 2 (- (sqrt (pow re 2)) re))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (+ (* 2 (- (sqrt (pow re 2)) re)) (/ (pow im 2) (sqrt (pow re 2))))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (+ (* 2 (- (sqrt (pow re 2)) re)) (* (pow im 2) (+ (* -1/4 (/ (pow im 2) (pow (sqrt (pow re 2)) 3))) (/ 1 (sqrt (pow re 2))))))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (+ (* 2 (- (sqrt (pow re 2)) re)) (* (pow im 2) (+ (* (pow im 2) (- (* 1/8 (/ (pow im 2) (pow (sqrt (pow re 2)) 5))) (* 1/4 (/ 1 (pow (sqrt (pow re 2)) 3))))) (/ 1 (sqrt (pow re 2))))))))
#s(approx (* (neg re) (+ (* (/ im re) (/ im re)) 4)) #s(hole binary64 (+ (* -4 re) (* -1 (/ (pow im 2) re)))))
#s(approx (+ (* (* re re) -4) (neg (* im im))) #s(hole binary64 (+ (* -4 (pow re 2)) (* -1 (pow im 2)))))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) #s(hole binary64 (- (sqrt (pow re 2)) re)))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) #s(hole binary64 (- (+ (sqrt (pow re 2)) (* 1/2 (/ (pow im 2) (sqrt (pow re 2))))) re)))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) #s(hole binary64 (- (+ (sqrt (pow re 2)) (* (pow im 2) (+ (* -1/8 (/ (pow im 2) (pow (sqrt (pow re 2)) 3))) (* 1/2 (/ 1 (sqrt (pow re 2))))))) re)))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) #s(hole binary64 (- (+ (sqrt (pow re 2)) (* (pow im 2) (+ (* (pow im 2) (- (* 1/16 (/ (pow im 2) (pow (sqrt (pow re 2)) 5))) (* 1/8 (/ 1 (pow (sqrt (pow re 2)) 3))))) (* 1/2 (/ 1 (sqrt (pow re 2))))))) re)))
#s(approx (sqrt (+ (* im im) (* re re))) #s(hole binary64 (sqrt (pow re 2))))
#s(approx (sqrt (+ (* im im) (* re re))) #s(hole binary64 (+ (sqrt (pow re 2)) (* 1/2 (/ (pow im 2) (sqrt (pow re 2)))))))
#s(approx (sqrt (+ (* im im) (* re re))) #s(hole binary64 (+ (sqrt (pow re 2)) (* (pow im 2) (+ (* -1/8 (/ (pow im 2) (pow (sqrt (pow re 2)) 3))) (* 1/2 (/ 1 (sqrt (pow re 2)))))))))
#s(approx (sqrt (+ (* im im) (* re re))) #s(hole binary64 (+ (sqrt (pow re 2)) (* (pow im 2) (+ (* (pow im 2) (- (* 1/16 (/ (pow im 2) (pow (sqrt (pow re 2)) 5))) (* 1/8 (/ 1 (pow (sqrt (pow re 2)) 3))))) (* 1/2 (/ 1 (sqrt (pow re 2)))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* 1/2 (* im (sqrt (/ 2 im))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* im (+ (* -1/2 (/ re (* (pow im 2) (sqrt (/ 2 im))))) (* 1/2 (sqrt (/ 2 im)))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* im (+ (* -1/2 (/ re (* (pow im 2) (sqrt (/ 2 im))))) (+ (* 1/4 (/ (pow re 2) (* (pow im 3) (sqrt (/ 2 im))))) (* 1/2 (sqrt (/ 2 im))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* im (+ (* -1/2 (/ re (* (pow im 2) (sqrt (/ 2 im))))) (+ (* -1/4 (/ (pow re 2) (* (pow im 4) (pow (sqrt (/ 2 im)) 3)))) (+ (* 1/4 (/ (pow re 2) (* (pow im 3) (sqrt (/ 2 im))))) (* 1/2 (sqrt (/ 2 im)))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* im (sqrt (/ 2 im)))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* im (+ (sqrt (/ 2 im)) (* -1 (/ re (* (pow im 2) (sqrt (/ 2 im)))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* im (+ (sqrt (/ 2 im)) (+ (* -1 (/ re (* (pow im 2) (sqrt (/ 2 im))))) (* 1/2 (/ (pow re 2) (* (pow im 3) (sqrt (/ 2 im))))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* im (+ (sqrt (/ 2 im)) (+ (* -1 (/ re (* (pow im 2) (sqrt (/ 2 im))))) (+ (* -1/2 (/ (pow re 2) (* (pow im 4) (pow (sqrt (/ 2 im)) 3)))) (* 1/2 (/ (pow re 2) (* (pow im 3) (sqrt (/ 2 im)))))))))))
#s(approx (sqrt (/ 2 im)) #s(hole binary64 (sqrt (/ 2 im))))
#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 (* 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 (* (neg re) (+ (* (/ im re) (/ im re)) 4)) #s(hole binary64 (* (pow im 2) (- (* -4 (/ re (pow im 2))) (/ 1 re)))))
#s(approx (+ (* (* re re) -4) (neg (* im im))) #s(hole binary64 (* (pow im 2) (- (* -4 (/ (pow re 2) (pow im 2))) 1))))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) #s(hole binary64 (* im (+ 1 (* -1 (/ re im))))))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) #s(hole binary64 (* im (- (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))) (/ re im)))))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) #s(hole binary64 (* im (- (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2))))) (/ re im)))))
#s(approx (sqrt (+ (* im im) (* re re))) #s(hole binary64 (* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))))))
#s(approx (sqrt (+ (* im im) (* re re))) #s(hole binary64 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2))))))))
#s(approx (sqrt (+ (* im im) (* re re))) #s(hole binary64 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (+ (* 1/16 (/ (pow re 6) (pow im 6))) (* 1/2 (/ (pow re 2) (pow im 2)))))))))
#s(approx (+ (* im im) (* re re)) #s(hole binary64 (* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* -1/2 (* im (sqrt (/ -2 im))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* -1 (* im (+ (* -1/2 (/ re (* (pow im 2) (sqrt (/ -2 im))))) (* 1/2 (sqrt (/ -2 im))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* -1 (* im (+ (* -1/2 (/ re (* (pow im 2) (sqrt (/ -2 im))))) (+ (* -1/4 (/ (pow re 2) (* (pow im 3) (sqrt (/ -2 im))))) (* 1/2 (sqrt (/ -2 im)))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* -1 (* im (+ (* -1 (/ (+ (* 1/4 (/ (pow re 2) (sqrt (/ -2 im)))) (* 1/4 (/ (pow re 2) (* im (pow (sqrt (/ -2 im)) 3))))) (pow im 3))) (+ (* -1/2 (/ re (* (pow im 2) (sqrt (/ -2 im))))) (* 1/2 (sqrt (/ -2 im)))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* -1 (* im (sqrt (/ -2 im))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* -1 (* im (+ (sqrt (/ -2 im)) (* -1 (/ re (* (pow im 2) (sqrt (/ -2 im))))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* -1 (* im (+ (sqrt (/ -2 im)) (+ (* -1 (/ re (* (pow im 2) (sqrt (/ -2 im))))) (* -1/2 (/ (pow re 2) (* (pow im 3) (sqrt (/ -2 im)))))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* -1 (* im (+ (sqrt (/ -2 im)) (+ (* -1 (/ re (* (pow im 2) (sqrt (/ -2 im))))) (* -1 (/ (+ (* 1/2 (/ (pow re 2) (sqrt (/ -2 im)))) (* 1/2 (/ (pow re 2) (* im (pow (sqrt (/ -2 im)) 3))))) (pow im 3)))))))))
#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 (+ (* im im) (* re re))) re) #s(hole binary64 (* -1 im)))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) #s(hole binary64 (* -1 (* im (+ 1 (/ re im))))))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) #s(hole binary64 (* -1 (* im (+ 1 (* -1 (/ (- (* -1/2 (/ (pow re 2) im)) re) im)))))))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) #s(hole binary64 (* -1 (* im (+ 1 (* -1 (/ (- (* -1 (/ (+ (* -1/8 (/ (pow re 4) (pow im 2))) (* 1/2 (pow re 2))) im)) re) im)))))))
#s(approx (sqrt (+ (* im im) (* re re))) #s(hole binary64 (* -1 (* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2))))))))
#s(approx (sqrt (+ (* im im) (* re re))) #s(hole binary64 (* -1 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2)))))))))
#s(approx (sqrt (+ (* im im) (* re re))) #s(hole binary64 (* -1 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (+ (* 1/16 (/ (pow re 6) (pow im 6))) (* 1/2 (/ (pow re 2) (pow im 2))))))))))
Calls

6 calls:

TimeVariablePointExpression
10.0ms
re
@-inf
((* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (* (sqrt (/ 2 im)) im) (sqrt (/ 2 im)) (/ 2 im) 2 im (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (* (fabs im) (/ 1 (sqrt re))) (fabs im) (/ 1 (sqrt re)) 1 (sqrt re) 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)) (* (neg re) (+ (* (/ im re) (/ im re)) 4)) (- (* -4 re) (* (/ im re) im)) (* -4 re) -4 (* (/ im re) im) (/ 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)) (* (neg re) (+ (* (/ im re) (/ im re)) 4)) (/ (+ (* (* re re) -4) (neg (* im im))) re) (+ (* (* re re) -4) (neg (* im im))) (* re re) (neg (* im im)) (* im im) (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) (* (- (sqrt (+ (* im im) (* re re))) re) 2) (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re))) (+ (* im im) (* re re)))
4.0ms
im
@-inf
((* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (* (sqrt (/ 2 im)) im) (sqrt (/ 2 im)) (/ 2 im) 2 im (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (* (fabs im) (/ 1 (sqrt re))) (fabs im) (/ 1 (sqrt re)) 1 (sqrt re) 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)) (* (neg re) (+ (* (/ im re) (/ im re)) 4)) (- (* -4 re) (* (/ im re) im)) (* -4 re) -4 (* (/ im re) im) (/ 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)) (* (neg re) (+ (* (/ im re) (/ im re)) 4)) (/ (+ (* (* re re) -4) (neg (* im im))) re) (+ (* (* re re) -4) (neg (* im im))) (* re re) (neg (* im im)) (* im im) (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) (* (- (sqrt (+ (* im im) (* re re))) re) 2) (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re))) (+ (* im im) (* re re)))
4.0ms
im
@0
((* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (* (sqrt (/ 2 im)) im) (sqrt (/ 2 im)) (/ 2 im) 2 im (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (* (fabs im) (/ 1 (sqrt re))) (fabs im) (/ 1 (sqrt re)) 1 (sqrt re) 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)) (* (neg re) (+ (* (/ im re) (/ im re)) 4)) (- (* -4 re) (* (/ im re) im)) (* -4 re) -4 (* (/ im re) im) (/ 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)) (* (neg re) (+ (* (/ im re) (/ im re)) 4)) (/ (+ (* (* re re) -4) (neg (* im im))) re) (+ (* (* re re) -4) (neg (* im im))) (* re re) (neg (* im im)) (* im im) (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) (* (- (sqrt (+ (* im im) (* re re))) re) 2) (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re))) (+ (* im im) (* re re)))
4.0ms
im
@inf
((* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (* (sqrt (/ 2 im)) im) (sqrt (/ 2 im)) (/ 2 im) 2 im (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (* (fabs im) (/ 1 (sqrt re))) (fabs im) (/ 1 (sqrt re)) 1 (sqrt re) 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)) (* (neg re) (+ (* (/ im re) (/ im re)) 4)) (- (* -4 re) (* (/ im re) im)) (* -4 re) -4 (* (/ im re) im) (/ 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)) (* (neg re) (+ (* (/ im re) (/ im re)) 4)) (/ (+ (* (* re re) -4) (neg (* im im))) re) (+ (* (* re re) -4) (neg (* im im))) (* re re) (neg (* im im)) (* im im) (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) (* (- (sqrt (+ (* im im) (* re re))) re) 2) (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re))) (+ (* im im) (* re re)))
3.0ms
re
@inf
((* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (* (sqrt (/ 2 im)) im) (sqrt (/ 2 im)) (/ 2 im) 2 im (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (* (fabs im) (/ 1 (sqrt re))) (fabs im) (/ 1 (sqrt re)) 1 (sqrt re) 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)) (* (neg re) (+ (* (/ im re) (/ im re)) 4)) (- (* -4 re) (* (/ im re) im)) (* -4 re) -4 (* (/ im re) im) (/ 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)) (* (neg re) (+ (* (/ im re) (/ im re)) 4)) (/ (+ (* (* re re) -4) (neg (* im im))) re) (+ (* (* re re) -4) (neg (* im im))) (* re re) (neg (* im im)) (* im im) (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) (* (- (sqrt (+ (* im im) (* re re))) re) 2) (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re))) (+ (* im im) (* re re)))

rewrite281.0ms (6.2%)

Memory
-10.3MiB live, 227.2MiB allocated; 28ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
07705684
08075206
150565001
080864347
1205584347
Stop Event
saturated
node-limit
iter-limit
Counts
189 → 427
Calls
Call 1
Inputs
(*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (sqrt.f64 (/.f64 #s(literal 2 binary64) im)) im)))
#s(literal 1/2 binary64)
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (sqrt.f64 (/.f64 #s(literal 2 binary64) im)) im))
(*.f64 (sqrt.f64 (/.f64 #s(literal 2 binary64) im)) im)
(sqrt.f64 (/.f64 #s(literal 2 binary64) im))
(/.f64 #s(literal 2 binary64) im)
#s(literal 2 binary64)
im
(*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (fabs.f64 im) (/.f64 #s(literal 1 binary64) (sqrt.f64 re)))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (fabs.f64 im) (/.f64 #s(literal 1 binary64) (sqrt.f64 re))))
(*.f64 (fabs.f64 im) (/.f64 #s(literal 1 binary64) (sqrt.f64 re)))
(fabs.f64 im)
(/.f64 #s(literal 1 binary64) (sqrt.f64 re))
#s(literal 1 binary64)
(sqrt.f64 re)
re
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(approx (* (neg re) (+ (* (/ im re) (/ im re)) 4)) (-.f64 (*.f64 #s(literal -4 binary64) re) (*.f64 (/.f64 im re) im))))))
(sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(approx (* (neg re) (+ (* (/ im re) (/ im re)) 4)) (-.f64 (*.f64 #s(literal -4 binary64) re) (*.f64 (/.f64 im re) im)))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(approx (* (neg re) (+ (* (/ im re) (/ im re)) 4)) (-.f64 (*.f64 #s(literal -4 binary64) re) (*.f64 (/.f64 im re) im))))
#s(approx (* (neg re) (+ (* (/ im re) (/ im re)) 4)) (-.f64 (*.f64 #s(literal -4 binary64) re) (*.f64 (/.f64 im re) im)))
(-.f64 (*.f64 #s(literal -4 binary64) re) (*.f64 (/.f64 im re) im))
(*.f64 #s(literal -4 binary64) re)
#s(literal -4 binary64)
(*.f64 (/.f64 im re) im)
(/.f64 im re)
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(approx (* (neg re) (+ (* (/ im re) (/ im re)) 4)) (/.f64 (fma.f64 (*.f64 re re) #s(literal -4 binary64) (neg.f64 (*.f64 im im))) re)))))
(sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(approx (* (neg re) (+ (* (/ im re) (/ im re)) 4)) (/.f64 (fma.f64 (*.f64 re re) #s(literal -4 binary64) (neg.f64 (*.f64 im im))) re))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(approx (* (neg re) (+ (* (/ im re) (/ im re)) 4)) (/.f64 (fma.f64 (*.f64 re re) #s(literal -4 binary64) (neg.f64 (*.f64 im im))) re)))
#s(approx (* (neg re) (+ (* (/ im re) (/ im re)) 4)) (/.f64 (fma.f64 (*.f64 re re) #s(literal -4 binary64) (neg.f64 (*.f64 im im))) re))
(/.f64 (fma.f64 (*.f64 re re) #s(literal -4 binary64) (neg.f64 (*.f64 im im))) re)
(fma.f64 (*.f64 re re) #s(literal -4 binary64) (neg.f64 (*.f64 im im)))
(*.f64 re re)
(neg.f64 (*.f64 im im))
(*.f64 im im)
(*.f64 (sqrt.f64 (*.f64 (-.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re))) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))
(sqrt.f64 (*.f64 (-.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re))) re) #s(literal 2 binary64)))
(*.f64 (-.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re))) re) #s(literal 2 binary64))
(-.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re))) re)
(sqrt.f64 (fma.f64 im im (*.f64 re re)))
(fma.f64 im im (*.f64 re re))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* 1/2 (sqrt (* 2 (sqrt (pow im 2)))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (+ (* -1/2 (/ re (sqrt (* 2 (sqrt (pow im 2)))))) (* 1/2 (sqrt (* 2 (sqrt (pow im 2))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (+ (* 1/2 (sqrt (* 2 (sqrt (pow im 2))))) (* re (- (* 1/4 (/ (* re (- (/ 1 (sqrt (pow im 2))) (/ 1 (pow (sqrt (* 2 (sqrt (pow im 2)))) 2)))) (sqrt (* 2 (sqrt (pow im 2)))))) (* 1/2 (/ 1 (sqrt (* 2 (sqrt (pow im 2)))))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (+ (* 1/2 (sqrt (* 2 (sqrt (pow im 2))))) (* re (- (* re (+ (* 1/4 (/ (* re (- (/ 1 (sqrt (pow im 2))) (/ 1 (pow (sqrt (* 2 (sqrt (pow im 2)))) 2)))) (pow (sqrt (* 2 (sqrt (pow im 2)))) 3))) (* 1/4 (/ (- (/ 1 (sqrt (pow im 2))) (/ 1 (pow (sqrt (* 2 (sqrt (pow im 2)))) 2))) (sqrt (* 2 (sqrt (pow im 2)))))))) (* 1/2 (/ 1 (sqrt (* 2 (sqrt (pow im 2)))))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (sqrt (* 2 (sqrt (pow im 2))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (+ (sqrt (* 2 (sqrt (pow im 2)))) (* -1 (/ re (sqrt (* 2 (sqrt (pow im 2)))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (+ (sqrt (* 2 (sqrt (pow im 2)))) (* re (- (* 1/2 (/ (* re (- (/ 1 (sqrt (pow im 2))) (/ 1 (pow (sqrt (* 2 (sqrt (pow im 2)))) 2)))) (sqrt (* 2 (sqrt (pow im 2)))))) (/ 1 (sqrt (* 2 (sqrt (pow im 2))))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (+ (sqrt (* 2 (sqrt (pow im 2)))) (* re (- (* re (+ (* 1/2 (/ (* re (- (/ 1 (sqrt (pow im 2))) (/ 1 (pow (sqrt (* 2 (sqrt (pow im 2)))) 2)))) (pow (sqrt (* 2 (sqrt (pow im 2)))) 3))) (* 1/2 (/ (- (/ 1 (sqrt (pow im 2))) (/ 1 (pow (sqrt (* 2 (sqrt (pow im 2)))) 2))) (sqrt (* 2 (sqrt (pow im 2)))))))) (/ 1 (sqrt (* 2 (sqrt (pow im 2))))))))))
#s(approx (* (fabs im) (/ 1 (sqrt re))) #s(hole binary64 (/ (fabs im) (sqrt re))))
#s(approx (/ 1 (sqrt re)) #s(hole binary64 (/ 1 (sqrt re))))
#s(approx (sqrt re) #s(hole binary64 (sqrt re)))
#s(approx re #s(hole binary64 re))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* 2 (sqrt (pow im 2)))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (+ (* -2 re) (* 2 (sqrt (pow im 2))))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (+ (* 2 (sqrt (pow im 2))) (* re (- (/ re (sqrt (pow im 2))) 2)))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (+ (* 2 (sqrt (pow im 2))) (* re (- (* re (+ (* -1/4 (/ (pow re 2) (pow (sqrt (pow im 2)) 3))) (/ 1 (sqrt (pow im 2))))) 2)))))
#s(approx (* (neg re) (+ (* (/ im re) (/ im re)) 4)) #s(hole binary64 (* -1 (/ (pow im 2) re))))
#s(approx (* (neg re) (+ (* (/ im re) (/ im re)) 4)) #s(hole binary64 (/ (+ (* -4 (pow re 2)) (* -1 (pow im 2))) re)))
#s(approx (- (* -4 re) (* (/ im re) im)) #s(hole binary64 (/ (- (* -4 (pow re 2)) (pow im 2)) re)))
#s(approx (* -4 re) #s(hole binary64 (* -4 re)))
#s(approx (* (/ im re) im) #s(hole binary64 (/ (pow im 2) re)))
#s(approx (/ im re) #s(hole binary64 (/ im re)))
#s(approx (+ (* (* re re) -4) (neg (* im im))) #s(hole binary64 (* -1 (pow im 2))))
#s(approx (+ (* (* re re) -4) (neg (* im im))) #s(hole binary64 (- (* -4 (pow re 2)) (pow im 2))))
#s(approx (* re re) #s(hole binary64 (pow re 2)))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) #s(hole binary64 (sqrt (pow im 2))))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) #s(hole binary64 (+ (sqrt (pow im 2)) (* -1 re))))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) #s(hole binary64 (+ (sqrt (pow im 2)) (* re (- (* 1/2 (/ re (sqrt (pow im 2)))) 1)))))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) #s(hole binary64 (+ (sqrt (pow im 2)) (* re (- (* re (+ (* -1/8 (/ (pow re 2) (pow (sqrt (pow im 2)) 3))) (* 1/2 (/ 1 (sqrt (pow im 2)))))) 1)))))
#s(approx (sqrt (+ (* im im) (* re re))) #s(hole binary64 (+ (sqrt (pow im 2)) (* 1/2 (/ (pow re 2) (sqrt (pow im 2)))))))
#s(approx (sqrt (+ (* im im) (* re re))) #s(hole binary64 (+ (sqrt (pow im 2)) (* (pow re 2) (+ (* -1/8 (/ (pow re 2) (pow (sqrt (pow im 2)) 3))) (* 1/2 (/ 1 (sqrt (pow im 2)))))))))
#s(approx (sqrt (+ (* im im) (* re re))) #s(hole binary64 (+ (sqrt (pow im 2)) (* (pow re 2) (+ (* (pow re 2) (- (* 1/16 (/ (pow re 2) (pow (sqrt (pow im 2)) 5))) (* 1/8 (/ 1 (pow (sqrt (pow im 2)) 3))))) (* 1/2 (/ 1 (sqrt (pow im 2)))))))))
#s(approx (+ (* im im) (* re re)) #s(hole binary64 (pow im 2)))
#s(approx (+ (* im im) (* re re)) #s(hole binary64 (+ (pow im 2) (pow re 2))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* 1/2 (sqrt (/ (pow im 2) re)))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (+ (* -1/16 (/ (pow im 4) (* (pow re 3) (sqrt (/ (pow im 2) re))))) (* 1/2 (sqrt (/ (pow im 2) re))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (+ (* -1/16 (/ (pow im 4) (* (pow re 3) (sqrt (/ (pow im 2) re))))) (+ (* 1/32 (/ (pow im 6) (* (pow re 5) (sqrt (/ (pow im 2) re))))) (* 1/2 (sqrt (/ (pow im 2) re)))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (+ (* -1/16 (/ (pow im 4) (* (pow re 3) (sqrt (/ (pow im 2) re))))) (+ (* -1/256 (/ (pow im 8) (* (pow re 6) (pow (sqrt (/ (pow im 2) re)) 3)))) (+ (* 1/32 (/ (pow im 6) (* (pow re 5) (sqrt (/ (pow im 2) re))))) (* 1/2 (sqrt (/ (pow im 2) re))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (sqrt (/ (pow im 2) re))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (+ (sqrt (/ (pow im 2) re)) (* -1/8 (/ (pow im 4) (* (pow re 3) (sqrt (/ (pow im 2) re))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (+ (sqrt (/ (pow im 2) re)) (+ (* -1/8 (/ (pow im 4) (* (pow re 3) (sqrt (/ (pow im 2) re))))) (* 1/16 (/ (pow im 6) (* (pow re 5) (sqrt (/ (pow im 2) re)))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (+ (sqrt (/ (pow im 2) re)) (+ (* -1/8 (/ (pow im 4) (* (pow re 3) (sqrt (/ (pow im 2) re))))) (+ (* -1/128 (/ (pow im 8) (* (pow re 6) (pow (sqrt (/ (pow im 2) re)) 3)))) (* 1/16 (/ (pow im 6) (* (pow re 5) (sqrt (/ (pow im 2) re))))))))))
#s(approx (* (fabs im) (/ 1 (sqrt re))) #s(hole binary64 (/ (fabs im) (* re (sqrt (/ 1 re))))))
#s(approx (/ 1 (sqrt re)) #s(hole binary64 (/ 1 (* re (sqrt (/ 1 re))))))
#s(approx (sqrt re) #s(hole binary64 (* re (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 (* (neg re) (+ (* (/ im re) (/ im re)) 4)) #s(hole binary64 (* re (- (* -1 (/ (pow im 2) (pow re 2))) 4))))
#s(approx (+ (* (* re re) -4) (neg (* im im))) #s(hole binary64 (* -4 (pow re 2))))
#s(approx (+ (* (* re re) -4) (neg (* im im))) #s(hole binary64 (* (pow re 2) (- (* -1 (/ (pow im 2) (pow re 2))) 4))))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) #s(hole binary64 (* 1/2 (/ (pow im 2) re))))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) #s(hole binary64 (/ (+ (* -1/8 (/ (pow im 4) (pow re 2))) (* 1/2 (pow im 2))) re)))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) #s(hole binary64 (/ (+ (* -1/8 (/ (pow im 4) (pow re 2))) (+ (* 1/16 (/ (pow im 6) (pow re 4))) (* 1/2 (pow im 2)))) re)))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) #s(hole binary64 (/ (+ (* -1/2 (/ (+ (* 1/64 (pow im 8)) (* 1/16 (pow im 8))) (pow re 6))) (+ (* -1/8 (/ (pow im 4) (pow re 2))) (+ (* 1/16 (/ (pow im 6) (pow re 4))) (* 1/2 (pow im 2))))) re)))
#s(approx (sqrt (+ (* im im) (* re re))) #s(hole binary64 (* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2)))))))
#s(approx (sqrt (+ (* im im) (* re re))) #s(hole binary64 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2))))))))
#s(approx (sqrt (+ (* im im) (* re re))) #s(hole binary64 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2)))))))))
#s(approx (+ (* im im) (* re re)) #s(hole binary64 (* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* -1/2 (* re (sqrt (/ -4 re))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* -1 (* re (+ (* -1/4 (/ (pow im 2) (* (pow re 3) (sqrt (/ -4 re))))) (* 1/2 (sqrt (/ -4 re))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* -1 (* re (+ (* -1 (/ (+ (* -1/16 (/ (pow im 4) (* (pow re 2) (sqrt (/ -4 re))))) (* 1/4 (/ (pow im 2) (sqrt (/ -4 re))))) (pow re 3))) (* 1/2 (sqrt (/ -4 re))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* -1 (* re (+ (* -1 (/ (+ (* -1/16 (/ (pow im 4) (* (pow re 2) (sqrt (/ -4 re))))) (+ (* 1/16 (/ (pow im 4) (* (pow re 3) (pow (sqrt (/ -4 re)) 3)))) (* 1/4 (/ (pow im 2) (sqrt (/ -4 re)))))) (pow re 3))) (* 1/2 (sqrt (/ -4 re))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* -1 (* re (sqrt (/ -4 re))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* -1 (* re (+ (sqrt (/ -4 re)) (* -1/2 (/ (pow im 2) (* (pow re 3) (sqrt (/ -4 re))))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* -1 (* re (+ (sqrt (/ -4 re)) (* -1 (/ (+ (* -1/8 (/ (pow im 4) (* (pow re 2) (sqrt (/ -4 re))))) (* 1/2 (/ (pow im 2) (sqrt (/ -4 re))))) (pow re 3))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* -1 (* re (+ (sqrt (/ -4 re)) (* -1 (/ (+ (* -1/8 (/ (pow im 4) (* (pow re 2) (sqrt (/ -4 re))))) (+ (* 1/8 (/ (pow im 4) (* (pow re 3) (pow (sqrt (/ -4 re)) 3)))) (* 1/2 (/ (pow im 2) (sqrt (/ -4 re)))))) (pow re 3))))))))
#s(approx (* (fabs im) (/ 1 (sqrt re))) #s(hole binary64 (* -1 (/ (fabs im) (* re (sqrt (/ 1 re)))))))
#s(approx (/ 1 (sqrt re)) #s(hole binary64 (/ -1 (* re (sqrt (/ 1 re))))))
#s(approx (sqrt re) #s(hole binary64 (* -1 (* re (sqrt (/ 1 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 (+ (* im im) (* re re))) re) #s(hole binary64 (* -2 re)))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) #s(hole binary64 (* -1 (* re (+ 2 (* 1/2 (/ (pow im 2) (pow re 2))))))))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) #s(hole binary64 (* -1 (* re (+ 2 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2)))))))))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) #s(hole binary64 (* -1 (* re (+ 2 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2))))))))))
#s(approx (sqrt (+ (* im im) (* re re))) #s(hole binary64 (* -1 re)))
#s(approx (sqrt (+ (* im im) (* re re))) #s(hole binary64 (* -1 (* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2))))))))
#s(approx (sqrt (+ (* im im) (* re re))) #s(hole binary64 (* -1 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2)))))))))
#s(approx (sqrt (+ (* im im) (* re re))) #s(hole binary64 (* -1 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2))))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* 1/2 (sqrt (* 2 (- (sqrt (pow re 2)) re))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (+ (* 1/4 (/ (pow im 2) (* (sqrt (* 2 (- (sqrt (pow re 2)) re))) (sqrt (pow re 2))))) (* 1/2 (sqrt (* 2 (- (sqrt (pow re 2)) re)))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (+ (* 1/2 (sqrt (* 2 (- (sqrt (pow re 2)) re)))) (* (pow im 2) (+ (* -1/4 (/ (* (pow im 2) (+ (* 1/4 (/ 1 (* (pow (sqrt (* 2 (- (sqrt (pow re 2)) re))) 2) (pow (sqrt (pow re 2)) 2)))) (* 1/4 (/ 1 (pow (sqrt (pow re 2)) 3))))) (sqrt (* 2 (- (sqrt (pow re 2)) re))))) (* 1/4 (/ 1 (* (sqrt (* 2 (- (sqrt (pow re 2)) re))) (sqrt (pow re 2))))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (+ (* 1/2 (sqrt (* 2 (- (sqrt (pow re 2)) re)))) (* (pow im 2) (+ (* (pow im 2) (+ (* -1/4 (/ (+ (* 1/4 (/ 1 (* (pow (sqrt (* 2 (- (sqrt (pow re 2)) re))) 2) (pow (sqrt (pow re 2)) 2)))) (* 1/4 (/ 1 (pow (sqrt (pow re 2)) 3)))) (sqrt (* 2 (- (sqrt (pow re 2)) re))))) (* 1/4 (/ (* (pow im 2) (- (* 1/8 (/ 1 (pow (sqrt (pow re 2)) 5))) (* -1/2 (/ (+ (* 1/4 (/ 1 (* (pow (sqrt (* 2 (- (sqrt (pow re 2)) re))) 2) (pow (sqrt (pow re 2)) 2)))) (* 1/4 (/ 1 (pow (sqrt (pow re 2)) 3)))) (* (pow (sqrt (* 2 (- (sqrt (pow re 2)) re))) 2) (sqrt (pow re 2))))))) (sqrt (* 2 (- (sqrt (pow re 2)) re))))))) (* 1/4 (/ 1 (* (sqrt (* 2 (- (sqrt (pow re 2)) re))) (sqrt (pow re 2))))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (sqrt (* 2 (- (sqrt (pow re 2)) re)))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (+ (sqrt (* 2 (- (sqrt (pow re 2)) re))) (* 1/2 (/ (pow im 2) (* (sqrt (* 2 (- (sqrt (pow re 2)) re))) (sqrt (pow re 2))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (+ (sqrt (* 2 (- (sqrt (pow re 2)) re))) (* (pow im 2) (+ (* -1/2 (/ (* (pow im 2) (+ (* 1/4 (/ 1 (* (pow (sqrt (* 2 (- (sqrt (pow re 2)) re))) 2) (pow (sqrt (pow re 2)) 2)))) (* 1/4 (/ 1 (pow (sqrt (pow re 2)) 3))))) (sqrt (* 2 (- (sqrt (pow re 2)) re))))) (* 1/2 (/ 1 (* (sqrt (* 2 (- (sqrt (pow re 2)) re))) (sqrt (pow re 2))))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (+ (sqrt (* 2 (- (sqrt (pow re 2)) re))) (* (pow im 2) (+ (* (pow im 2) (+ (* -1/2 (/ (+ (* 1/4 (/ 1 (* (pow (sqrt (* 2 (- (sqrt (pow re 2)) re))) 2) (pow (sqrt (pow re 2)) 2)))) (* 1/4 (/ 1 (pow (sqrt (pow re 2)) 3)))) (sqrt (* 2 (- (sqrt (pow re 2)) re))))) (* 1/2 (/ (* (pow im 2) (- (* 1/8 (/ 1 (pow (sqrt (pow re 2)) 5))) (* -1/2 (/ (+ (* 1/4 (/ 1 (* (pow (sqrt (* 2 (- (sqrt (pow re 2)) re))) 2) (pow (sqrt (pow re 2)) 2)))) (* 1/4 (/ 1 (pow (sqrt (pow re 2)) 3)))) (* (pow (sqrt (* 2 (- (sqrt (pow re 2)) re))) 2) (sqrt (pow re 2))))))) (sqrt (* 2 (- (sqrt (pow re 2)) re))))))) (* 1/2 (/ 1 (* (sqrt (* 2 (- (sqrt (pow re 2)) re))) (sqrt (pow re 2))))))))))
#s(approx (* (sqrt (/ 2 im)) im) #s(hole binary64 (sqrt (* 2 im))))
#s(approx (sqrt (/ 2 im)) #s(hole binary64 (/ (sqrt (* 2 im)) im)))
#s(approx (/ 2 im) #s(hole binary64 (/ 2 im)))
#s(approx im #s(hole binary64 im))
#s(approx (fabs im) #s(hole binary64 (fabs im)))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (* 2 (- (sqrt (pow re 2)) re))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (+ (* 2 (- (sqrt (pow re 2)) re)) (/ (pow im 2) (sqrt (pow re 2))))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (+ (* 2 (- (sqrt (pow re 2)) re)) (* (pow im 2) (+ (* -1/4 (/ (pow im 2) (pow (sqrt (pow re 2)) 3))) (/ 1 (sqrt (pow re 2))))))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(hole binary64 (+ (* 2 (- (sqrt (pow re 2)) re)) (* (pow im 2) (+ (* (pow im 2) (- (* 1/8 (/ (pow im 2) (pow (sqrt (pow re 2)) 5))) (* 1/4 (/ 1 (pow (sqrt (pow re 2)) 3))))) (/ 1 (sqrt (pow re 2))))))))
#s(approx (* (neg re) (+ (* (/ im re) (/ im re)) 4)) #s(hole binary64 (+ (* -4 re) (* -1 (/ (pow im 2) re)))))
#s(approx (+ (* (* re re) -4) (neg (* im im))) #s(hole binary64 (+ (* -4 (pow re 2)) (* -1 (pow im 2)))))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) #s(hole binary64 (- (sqrt (pow re 2)) re)))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) #s(hole binary64 (- (+ (sqrt (pow re 2)) (* 1/2 (/ (pow im 2) (sqrt (pow re 2))))) re)))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) #s(hole binary64 (- (+ (sqrt (pow re 2)) (* (pow im 2) (+ (* -1/8 (/ (pow im 2) (pow (sqrt (pow re 2)) 3))) (* 1/2 (/ 1 (sqrt (pow re 2))))))) re)))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) #s(hole binary64 (- (+ (sqrt (pow re 2)) (* (pow im 2) (+ (* (pow im 2) (- (* 1/16 (/ (pow im 2) (pow (sqrt (pow re 2)) 5))) (* 1/8 (/ 1 (pow (sqrt (pow re 2)) 3))))) (* 1/2 (/ 1 (sqrt (pow re 2))))))) re)))
#s(approx (sqrt (+ (* im im) (* re re))) #s(hole binary64 (sqrt (pow re 2))))
#s(approx (sqrt (+ (* im im) (* re re))) #s(hole binary64 (+ (sqrt (pow re 2)) (* 1/2 (/ (pow im 2) (sqrt (pow re 2)))))))
#s(approx (sqrt (+ (* im im) (* re re))) #s(hole binary64 (+ (sqrt (pow re 2)) (* (pow im 2) (+ (* -1/8 (/ (pow im 2) (pow (sqrt (pow re 2)) 3))) (* 1/2 (/ 1 (sqrt (pow re 2)))))))))
#s(approx (sqrt (+ (* im im) (* re re))) #s(hole binary64 (+ (sqrt (pow re 2)) (* (pow im 2) (+ (* (pow im 2) (- (* 1/16 (/ (pow im 2) (pow (sqrt (pow re 2)) 5))) (* 1/8 (/ 1 (pow (sqrt (pow re 2)) 3))))) (* 1/2 (/ 1 (sqrt (pow re 2)))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* 1/2 (* im (sqrt (/ 2 im))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* im (+ (* -1/2 (/ re (* (pow im 2) (sqrt (/ 2 im))))) (* 1/2 (sqrt (/ 2 im)))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* im (+ (* -1/2 (/ re (* (pow im 2) (sqrt (/ 2 im))))) (+ (* 1/4 (/ (pow re 2) (* (pow im 3) (sqrt (/ 2 im))))) (* 1/2 (sqrt (/ 2 im))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* im (+ (* -1/2 (/ re (* (pow im 2) (sqrt (/ 2 im))))) (+ (* -1/4 (/ (pow re 2) (* (pow im 4) (pow (sqrt (/ 2 im)) 3)))) (+ (* 1/4 (/ (pow re 2) (* (pow im 3) (sqrt (/ 2 im))))) (* 1/2 (sqrt (/ 2 im)))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* im (sqrt (/ 2 im)))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* im (+ (sqrt (/ 2 im)) (* -1 (/ re (* (pow im 2) (sqrt (/ 2 im)))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* im (+ (sqrt (/ 2 im)) (+ (* -1 (/ re (* (pow im 2) (sqrt (/ 2 im))))) (* 1/2 (/ (pow re 2) (* (pow im 3) (sqrt (/ 2 im))))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* im (+ (sqrt (/ 2 im)) (+ (* -1 (/ re (* (pow im 2) (sqrt (/ 2 im))))) (+ (* -1/2 (/ (pow re 2) (* (pow im 4) (pow (sqrt (/ 2 im)) 3)))) (* 1/2 (/ (pow re 2) (* (pow im 3) (sqrt (/ 2 im)))))))))))
#s(approx (sqrt (/ 2 im)) #s(hole binary64 (sqrt (/ 2 im))))
#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 (* 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 (* (neg re) (+ (* (/ im re) (/ im re)) 4)) #s(hole binary64 (* (pow im 2) (- (* -4 (/ re (pow im 2))) (/ 1 re)))))
#s(approx (+ (* (* re re) -4) (neg (* im im))) #s(hole binary64 (* (pow im 2) (- (* -4 (/ (pow re 2) (pow im 2))) 1))))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) #s(hole binary64 (* im (+ 1 (* -1 (/ re im))))))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) #s(hole binary64 (* im (- (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))) (/ re im)))))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) #s(hole binary64 (* im (- (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2))))) (/ re im)))))
#s(approx (sqrt (+ (* im im) (* re re))) #s(hole binary64 (* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))))))
#s(approx (sqrt (+ (* im im) (* re re))) #s(hole binary64 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2))))))))
#s(approx (sqrt (+ (* im im) (* re re))) #s(hole binary64 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (+ (* 1/16 (/ (pow re 6) (pow im 6))) (* 1/2 (/ (pow re 2) (pow im 2)))))))))
#s(approx (+ (* im im) (* re re)) #s(hole binary64 (* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* -1/2 (* im (sqrt (/ -2 im))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* -1 (* im (+ (* -1/2 (/ re (* (pow im 2) (sqrt (/ -2 im))))) (* 1/2 (sqrt (/ -2 im))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* -1 (* im (+ (* -1/2 (/ re (* (pow im 2) (sqrt (/ -2 im))))) (+ (* -1/4 (/ (pow re 2) (* (pow im 3) (sqrt (/ -2 im))))) (* 1/2 (sqrt (/ -2 im)))))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) #s(hole binary64 (* -1 (* im (+ (* -1 (/ (+ (* 1/4 (/ (pow re 2) (sqrt (/ -2 im)))) (* 1/4 (/ (pow re 2) (* im (pow (sqrt (/ -2 im)) 3))))) (pow im 3))) (+ (* -1/2 (/ re (* (pow im 2) (sqrt (/ -2 im))))) (* 1/2 (sqrt (/ -2 im)))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* -1 (* im (sqrt (/ -2 im))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* -1 (* im (+ (sqrt (/ -2 im)) (* -1 (/ re (* (pow im 2) (sqrt (/ -2 im))))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* -1 (* im (+ (sqrt (/ -2 im)) (+ (* -1 (/ re (* (pow im 2) (sqrt (/ -2 im))))) (* -1/2 (/ (pow re 2) (* (pow im 3) (sqrt (/ -2 im)))))))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(hole binary64 (* -1 (* im (+ (sqrt (/ -2 im)) (+ (* -1 (/ re (* (pow im 2) (sqrt (/ -2 im))))) (* -1 (/ (+ (* 1/2 (/ (pow re 2) (sqrt (/ -2 im)))) (* 1/2 (/ (pow re 2) (* im (pow (sqrt (/ -2 im)) 3))))) (pow im 3)))))))))
#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 (+ (* im im) (* re re))) re) #s(hole binary64 (* -1 im)))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) #s(hole binary64 (* -1 (* im (+ 1 (/ re im))))))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) #s(hole binary64 (* -1 (* im (+ 1 (* -1 (/ (- (* -1/2 (/ (pow re 2) im)) re) im)))))))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) #s(hole binary64 (* -1 (* im (+ 1 (* -1 (/ (- (* -1 (/ (+ (* -1/8 (/ (pow re 4) (pow im 2))) (* 1/2 (pow re 2))) im)) re) im)))))))
#s(approx (sqrt (+ (* im im) (* re re))) #s(hole binary64 (* -1 (* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2))))))))
#s(approx (sqrt (+ (* im im) (* re re))) #s(hole binary64 (* -1 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2)))))))))
#s(approx (sqrt (+ (* im im) (* re re))) #s(hole binary64 (* -1 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (+ (* 1/16 (/ (pow re 6) (pow im 6))) (* 1/2 (/ (pow re 2) (pow im 2))))))))))
Outputs
(*.f64 #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (sqrt.f64 (/.f64 #s(literal 2 binary64) im)) im)) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (sqrt.f64 (/.f64 #s(literal 2 binary64) im)) im)))
#s(literal 1/2 binary64)
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (sqrt.f64 (/.f64 #s(literal 2 binary64) im)) im))
(*.f64 (sqrt.f64 (/.f64 #s(literal 2 binary64) im)) im)
(*.f64 im (sqrt.f64 (/.f64 #s(literal 2 binary64) im)))
(pow.f64 (/.f64 #s(literal 2 binary64) im) #s(literal 1/2 binary64))
(sqrt.f64 (/.f64 #s(literal 2 binary64) im))
(fabs.f64 (neg.f64 (sqrt.f64 (/.f64 #s(literal 2 binary64) im))))
(fabs.f64 (sqrt.f64 (/.f64 #s(literal 2 binary64) im)))
(*.f64 (neg.f64 (sqrt.f64 (/.f64 #s(literal 2 binary64) im))) (neg.f64 (sqrt.f64 (/.f64 #s(literal 2 binary64) im))))
(*.f64 (sqrt.f64 (/.f64 #s(literal 2 binary64) im)) (sqrt.f64 (/.f64 #s(literal 2 binary64) im)))
(*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) im))
(pow.f64 (*.f64 (/.f64 #s(literal 2 binary64) im) (/.f64 #s(literal 2 binary64) im)) #s(literal 1/2 binary64))
(pow.f64 (sqrt.f64 (/.f64 #s(literal 2 binary64) im)) #s(literal 2 binary64))
(pow.f64 (/.f64 #s(literal 2 binary64) im) #s(literal 1 binary64))
(/.f64 #s(literal -2 binary64) (neg.f64 im))
(/.f64 #s(literal 2 binary64) (neg.f64 (neg.f64 im)))
(/.f64 #s(literal 2 binary64) im)
(sqrt.f64 (*.f64 (/.f64 #s(literal 2 binary64) im) (/.f64 #s(literal 2 binary64) im)))
(fabs.f64 (/.f64 #s(literal 2 binary64) im))
(+.f64 (/.f64 #s(literal 1 binary64) im) (/.f64 #s(literal 1 binary64) im))
#s(literal 2 binary64)
im
(*.f64 #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (/.f64 (fabs.f64 im) (sqrt.f64 re))) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (/.f64 (fabs.f64 im) (sqrt.f64 re))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (/.f64 (fabs.f64 im) (sqrt.f64 re)))
(*.f64 (/.f64 #s(literal 1 binary64) (sqrt.f64 re)) (fabs.f64 im))
(*.f64 (fabs.f64 im) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))
(*.f64 (fabs.f64 im) (/.f64 #s(literal 1 binary64) (sqrt.f64 re)))
(pow.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64))
(/.f64 (neg.f64 (neg.f64 (fabs.f64 im))) (neg.f64 (neg.f64 (sqrt.f64 re))))
(/.f64 (neg.f64 (fabs.f64 im)) (neg.f64 (sqrt.f64 re)))
(/.f64 (fabs.f64 im) (sqrt.f64 re))
(sqrt.f64 (*.f64 (/.f64 im re) im))
(fabs.f64 (neg.f64 (/.f64 (fabs.f64 im) (sqrt.f64 re))))
(fabs.f64 (/.f64 (neg.f64 im) (sqrt.f64 re)))
(fabs.f64 (/.f64 im (sqrt.f64 re)))
(fabs.f64 (/.f64 (fabs.f64 im) (sqrt.f64 re)))
(*.f64 (sqrt.f64 (fabs.f64 im)) (sqrt.f64 (fabs.f64 im)))
(*.f64 (fabs.f64 im) #s(literal 1 binary64))
(*.f64 #s(literal 1 binary64) (fabs.f64 im))
(pow.f64 (*.f64 im im) #s(literal 1/2 binary64))
(sqrt.f64 (*.f64 im im))
(fabs.f64 (neg.f64 (neg.f64 im)))
(fabs.f64 (neg.f64 (fabs.f64 im)))
(fabs.f64 (neg.f64 im))
(fabs.f64 (fabs.f64 im))
(fabs.f64 im)
(*.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (sqrt.f64 re)))
(pow.f64 (sqrt.f64 re) #s(literal -1 binary64))
(pow.f64 re #s(literal -1/2 binary64))
(/.f64 #s(literal -2 binary64) (*.f64 #s(literal 2 binary64) (neg.f64 (sqrt.f64 re))))
(/.f64 #s(literal -1 binary64) (neg.f64 (sqrt.f64 re)))
(/.f64 #s(literal 1 binary64) (neg.f64 (neg.f64 (sqrt.f64 re))))
(/.f64 #s(literal 1 binary64) (sqrt.f64 re))
(/.f64 #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (sqrt.f64 re)))
#s(literal 1 binary64)
(pow.f64 re #s(literal 1/2 binary64))
(sqrt.f64 (*.f64 (sqrt.f64 re) (sqrt.f64 re)))
(sqrt.f64 re)
(fabs.f64 (neg.f64 (sqrt.f64 re)))
(fabs.f64 (sqrt.f64 re))
re
(*.f64 (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(approx (* (neg re) (+ (* (/ im re) (/ im re)) 4)) (-.f64 (*.f64 #s(literal -4 binary64) 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)) #s(approx (* (neg re) (+ (* (/ im re) (/ im re)) 4)) (-.f64 (*.f64 #s(literal -4 binary64) re) (*.f64 (/.f64 im re) im))))))
(pow.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(approx (* (neg re) (+ (* (/ im re) (/ im re)) 4)) (-.f64 (*.f64 #s(literal -4 binary64) re) (*.f64 (/.f64 im re) im)))) #s(literal 1/2 binary64))
(sqrt.f64 (*.f64 (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(approx (* (neg re) (+ (* (/ im re) (/ im re)) 4)) (-.f64 (*.f64 #s(literal -4 binary64) re) (*.f64 (/.f64 im re) im))))) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(approx (* (neg re) (+ (* (/ im re) (/ im re)) 4)) (-.f64 (*.f64 #s(literal -4 binary64) re) (*.f64 (/.f64 im re) im)))))))
(sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(approx (* (neg re) (+ (* (/ im re) (/ im re)) 4)) (-.f64 (*.f64 #s(literal -4 binary64) re) (*.f64 (/.f64 im re) im)))))
(fabs.f64 (neg.f64 (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(approx (* (neg re) (+ (* (/ im re) (/ im re)) 4)) (-.f64 (*.f64 #s(literal -4 binary64) re) (*.f64 (/.f64 im re) im)))))))
(fabs.f64 (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(approx (* (neg re) (+ (* (/ im re) (/ im re)) 4)) (-.f64 (*.f64 #s(literal -4 binary64) re) (*.f64 (/.f64 im re) im))))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(approx (* (neg re) (+ (* (/ im re) (/ im re)) 4)) (-.f64 (*.f64 #s(literal -4 binary64) re) (*.f64 (/.f64 im re) im))))
#s(approx (* (neg re) (+ (* (/ im re) (/ im re)) 4)) (-.f64 (*.f64 #s(literal -4 binary64) re) (*.f64 (/.f64 im re) im)))
(neg.f64 (-.f64 (*.f64 (/.f64 im re) im) (*.f64 #s(literal -4 binary64) re)))
(fma.f64 #s(literal -1 binary64) (*.f64 (/.f64 im re) im) (*.f64 #s(literal -4 binary64) re))
(fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1 binary64) (*.f64 #s(literal -4 binary64) re))
(fma.f64 #s(literal -4 binary64) re (*.f64 (neg.f64 (/.f64 im re)) im))
(fma.f64 #s(literal -4 binary64) re (/.f64 (*.f64 (neg.f64 im) im) re))
(fma.f64 re #s(literal -4 binary64) (*.f64 (neg.f64 (/.f64 im re)) im))
(fma.f64 re #s(literal -4 binary64) (/.f64 (*.f64 (neg.f64 im) im) re))
(-.f64 (*.f64 #s(literal -4 binary64) re) (neg.f64 (/.f64 (*.f64 (neg.f64 im) im) re)))
(-.f64 (*.f64 #s(literal -4 binary64) re) (*.f64 (/.f64 im re) im))
(+.f64 (*.f64 #s(literal -4 binary64) re) (*.f64 (neg.f64 (/.f64 im re)) im))
(+.f64 (*.f64 #s(literal -4 binary64) re) (/.f64 (*.f64 (neg.f64 im) im) re))
(+.f64 (/.f64 (*.f64 (neg.f64 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 (/.f64 (*.f64 im im) #s(literal -1 binary64)) (/.f64 #s(literal -1 binary64) re))
(*.f64 (/.f64 im #s(literal -1 binary64)) (/.f64 (neg.f64 im) re))
(*.f64 (/.f64 (neg.f64 im) #s(literal -1 binary64)) (/.f64 im re))
(*.f64 (/.f64 (neg.f64 im) re) (/.f64 im #s(literal -1 binary64)))
(*.f64 (neg.f64 (/.f64 (fabs.f64 im) (sqrt.f64 re))) (neg.f64 (/.f64 (fabs.f64 im) (sqrt.f64 re))))
(*.f64 (/.f64 #s(literal -1 binary64) re) (/.f64 (*.f64 im im) #s(literal -1 binary64)))
(*.f64 (/.f64 (fabs.f64 im) (sqrt.f64 re)) (/.f64 (fabs.f64 im) (sqrt.f64 re)))
(*.f64 (*.f64 im im) (/.f64 #s(literal 1 binary64) re))
(*.f64 (*.f64 (/.f64 im re) im) #s(literal 1 binary64))
(*.f64 (/.f64 im re) (/.f64 (neg.f64 im) #s(literal -1 binary64)))
(*.f64 (/.f64 im re) im)
(*.f64 #s(literal 1 binary64) (*.f64 (/.f64 im re) im))
(*.f64 im (/.f64 im re))
(pow.f64 (*.f64 (*.f64 (/.f64 im re) im) (*.f64 (/.f64 im re) im)) #s(literal 1/2 binary64))
(pow.f64 (/.f64 (fabs.f64 im) (sqrt.f64 re)) #s(literal 2 binary64))
(pow.f64 (*.f64 (/.f64 im re) im) #s(literal 1 binary64))
(/.f64 (*.f64 #s(literal 2 binary64) (*.f64 (neg.f64 im) im)) (*.f64 #s(literal 2 binary64) (neg.f64 re)))
(/.f64 (*.f64 #s(literal 2 binary64) (*.f64 im im)) (*.f64 #s(literal 2 binary64) re))
(/.f64 (neg.f64 (*.f64 (neg.f64 im) im)) (neg.f64 (neg.f64 re)))
(/.f64 (*.f64 (neg.f64 im) im) (neg.f64 re))
(/.f64 (*.f64 im im) re)
(sqrt.f64 (*.f64 (*.f64 (/.f64 im re) im) (*.f64 (/.f64 im re) im)))
(fabs.f64 (*.f64 (/.f64 im re) im))
(*.f64 (/.f64 im #s(literal -1 binary64)) (/.f64 #s(literal -1 binary64) re))
(*.f64 (/.f64 #s(literal -1 binary64) re) (/.f64 im #s(literal -1 binary64)))
(*.f64 (/.f64 im re) #s(literal 1 binary64))
(*.f64 #s(literal 1 binary64) (/.f64 im re))
(*.f64 im (/.f64 #s(literal 1 binary64) re))
(/.f64 (neg.f64 (neg.f64 im)) (neg.f64 (neg.f64 re)))
(/.f64 (neg.f64 im) (neg.f64 re))
(/.f64 im re)
(*.f64 (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(approx (* (neg re) (+ (* (/ im re) (/ im re)) 4)) (/.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal -4 binary64)) (*.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)) #s(approx (* (neg re) (+ (* (/ im re) (/ im re)) 4)) (/.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal -4 binary64)) (*.f64 im im)) re)))))
(pow.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(approx (* (neg re) (+ (* (/ im re) (/ im re)) 4)) (/.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal -4 binary64)) (*.f64 im im)) re))) #s(literal 1/2 binary64))
(sqrt.f64 (*.f64 (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(approx (* (neg re) (+ (* (/ im re) (/ im re)) 4)) (/.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal -4 binary64)) (*.f64 im im)) re)))) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(approx (* (neg re) (+ (* (/ im re) (/ im re)) 4)) (/.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal -4 binary64)) (*.f64 im im)) re))))))
(sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(approx (* (neg re) (+ (* (/ im re) (/ im re)) 4)) (/.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal -4 binary64)) (*.f64 im im)) re))))
(fabs.f64 (neg.f64 (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(approx (* (neg re) (+ (* (/ im re) (/ im re)) 4)) (/.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal -4 binary64)) (*.f64 im im)) re))))))
(fabs.f64 (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(approx (* (neg re) (+ (* (/ im re) (/ im re)) 4)) (/.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal -4 binary64)) (*.f64 im im)) re)))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(approx (* (neg re) (+ (* (/ im re) (/ im re)) 4)) (/.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal -4 binary64)) (*.f64 im im)) re)))
#s(approx (* (neg re) (+ (* (/ im re) (/ im re)) 4)) (/.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal -4 binary64)) (*.f64 im im)) re))
(*.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal -4 binary64)) (*.f64 im im)) (/.f64 #s(literal 1 binary64) re))
(/.f64 (fma.f64 (*.f64 (*.f64 re re) #s(literal -4 binary64)) re (*.f64 re (*.f64 (neg.f64 im) im))) (*.f64 re re))
(/.f64 (-.f64 (*.f64 (*.f64 (*.f64 re re) #s(literal -4 binary64)) (neg.f64 re)) (*.f64 re (*.f64 (neg.f64 im) im))) (*.f64 re (neg.f64 re)))
(/.f64 (-.f64 (*.f64 (*.f64 (*.f64 re re) #s(literal -4 binary64)) re) (*.f64 re (*.f64 im im))) (*.f64 re re))
(/.f64 (neg.f64 (neg.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal -4 binary64)) (*.f64 im im)))) (neg.f64 (neg.f64 re)))
(/.f64 (neg.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal -4 binary64)) (*.f64 im im))) (neg.f64 re))
(/.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal -4 binary64)) (*.f64 im im)) re)
(fma.f64 #s(literal -1 binary64) (*.f64 (/.f64 im re) im) (/.f64 (*.f64 (*.f64 re re) #s(literal -4 binary64)) re))
(fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1 binary64) (/.f64 (*.f64 (*.f64 re re) #s(literal -4 binary64)) re))
(-.f64 (/.f64 (*.f64 (*.f64 re re) #s(literal -4 binary64)) re) (/.f64 (*.f64 #s(literal 1 binary64) (*.f64 im im)) re))
(-.f64 (/.f64 (*.f64 (*.f64 re re) #s(literal -4 binary64)) re) (/.f64 (neg.f64 (*.f64 (neg.f64 im) im)) re))
(-.f64 (/.f64 (*.f64 (*.f64 re re) #s(literal -4 binary64)) re) (*.f64 (/.f64 im re) im))
(+.f64 (/.f64 (*.f64 (*.f64 re re) #s(literal -4 binary64)) re) (/.f64 (*.f64 (neg.f64 im) im) re))
(+.f64 (/.f64 (*.f64 (neg.f64 im) im) re) (/.f64 (*.f64 (*.f64 re re) #s(literal -4 binary64)) re))
(neg.f64 (-.f64 (*.f64 im im) (*.f64 (*.f64 re re) #s(literal -4 binary64))))
(fma.f64 (neg.f64 im) im (*.f64 (*.f64 re re) #s(literal -4 binary64)))
(fma.f64 (*.f64 re re) #s(literal -4 binary64) (*.f64 (neg.f64 im) im))
(fma.f64 #s(literal -1 binary64) (*.f64 im im) (*.f64 (*.f64 re re) #s(literal -4 binary64)))
(fma.f64 (*.f64 im im) #s(literal -1 binary64) (*.f64 (*.f64 re re) #s(literal -4 binary64)))
(fma.f64 #s(literal -4 binary64) (*.f64 re re) (*.f64 (neg.f64 im) im))
(fma.f64 im (neg.f64 im) (*.f64 (*.f64 re re) #s(literal -4 binary64)))
(fma.f64 re (*.f64 #s(literal -4 binary64) re) (*.f64 (neg.f64 im) im))
(-.f64 (*.f64 (*.f64 re re) #s(literal -4 binary64)) (*.f64 #s(literal 1 binary64) (*.f64 im im)))
(-.f64 (*.f64 (*.f64 re re) #s(literal -4 binary64)) (neg.f64 (*.f64 (neg.f64 im) im)))
(-.f64 (*.f64 (*.f64 re re) #s(literal -4 binary64)) (*.f64 im im))
(+.f64 (*.f64 (neg.f64 im) im) (*.f64 (*.f64 re re) #s(literal -4 binary64)))
(+.f64 (*.f64 (*.f64 re re) #s(literal -4 binary64)) (*.f64 (neg.f64 im) im))
(*.f64 (neg.f64 (neg.f64 re)) (neg.f64 (neg.f64 re)))
(*.f64 (neg.f64 (fabs.f64 re)) (neg.f64 (fabs.f64 re)))
(*.f64 (fabs.f64 re) (fabs.f64 re))
(*.f64 (neg.f64 re) (neg.f64 re))
(*.f64 re re)
(pow.f64 (neg.f64 (neg.f64 (fabs.f64 re))) #s(literal 2 binary64))
(pow.f64 (*.f64 (*.f64 re re) (*.f64 re re)) #s(literal 1/2 binary64))
(pow.f64 (neg.f64 (neg.f64 re)) #s(literal 2 binary64))
(pow.f64 (neg.f64 (fabs.f64 re)) #s(literal 2 binary64))
(pow.f64 (fabs.f64 re) #s(literal 2 binary64))
(pow.f64 (*.f64 re re) #s(literal 1 binary64))
(pow.f64 (neg.f64 re) #s(literal 2 binary64))
(pow.f64 re #s(literal 2 binary64))
(sqrt.f64 (*.f64 (*.f64 re re) (*.f64 re re)))
(fabs.f64 (neg.f64 (*.f64 re re)))
(fabs.f64 (*.f64 re re))
(*.f64 (neg.f64 im) im)
(*.f64 #s(literal -1 binary64) (*.f64 im im))
(*.f64 (*.f64 im im) #s(literal -1 binary64))
(*.f64 im (neg.f64 im))
(neg.f64 (*.f64 im im))
(*.f64 (neg.f64 (neg.f64 im)) (neg.f64 (neg.f64 im)))
(*.f64 (neg.f64 (fabs.f64 im)) (neg.f64 (fabs.f64 im)))
(*.f64 (neg.f64 im) (neg.f64 im))
(*.f64 (fabs.f64 im) (fabs.f64 im))
(*.f64 im im)
(pow.f64 (neg.f64 (neg.f64 im)) #s(literal 2 binary64))
(pow.f64 (*.f64 (*.f64 im im) (*.f64 im im)) #s(literal 1/2 binary64))
(pow.f64 (neg.f64 (fabs.f64 im)) #s(literal 2 binary64))
(pow.f64 (neg.f64 im) #s(literal 2 binary64))
(pow.f64 (fabs.f64 im) #s(literal 2 binary64))
(pow.f64 (*.f64 im im) #s(literal 1 binary64))
(pow.f64 im #s(literal 2 binary64))
(sqrt.f64 (*.f64 (*.f64 im im) (*.f64 im im)))
(fabs.f64 (*.f64 (neg.f64 im) (fabs.f64 im)))
(fabs.f64 (*.f64 (fabs.f64 im) (neg.f64 im)))
(fabs.f64 (*.f64 (fabs.f64 im) im))
(fabs.f64 (*.f64 im (fabs.f64 im)))
(fabs.f64 (*.f64 (neg.f64 im) im))
(fabs.f64 (*.f64 im im))
(*.f64 (sqrt.f64 (*.f64 (-.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re))) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 (-.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re))) re) #s(literal 2 binary64))))
(pow.f64 (*.f64 (-.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re))) re) #s(literal 2 binary64)) #s(literal 1/2 binary64))
(sqrt.f64 (*.f64 (sqrt.f64 (*.f64 (-.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re))) re) #s(literal 2 binary64))) (sqrt.f64 (*.f64 (-.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re))) re) #s(literal 2 binary64)))))
(sqrt.f64 (*.f64 (-.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re))) re) #s(literal 2 binary64)))
(fabs.f64 (neg.f64 (sqrt.f64 (*.f64 (-.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re))) re) #s(literal 2 binary64)))))
(fabs.f64 (sqrt.f64 (*.f64 (-.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re))) re) #s(literal 2 binary64))))
(*.f64 (-.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re))) re) #s(literal 2 binary64))
(*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re))) re))
(+.f64 (-.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re))) re) (-.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re))) re))
(neg.f64 (-.f64 re (sqrt.f64 (fma.f64 im im (*.f64 re re)))))
(-.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re))) re)
(+.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re))) (neg.f64 re))
(pow.f64 (fma.f64 im im (*.f64 re re)) #s(literal 1/2 binary64))
(sqrt.f64 (*.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re))) (sqrt.f64 (fma.f64 im im (*.f64 re re)))))
(sqrt.f64 (fma.f64 im im (*.f64 re re)))
(fabs.f64 (neg.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re)))))
(fabs.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re))))
(hypot.f64 (neg.f64 (neg.f64 im)) (neg.f64 (neg.f64 re)))
(hypot.f64 (neg.f64 (neg.f64 im)) (neg.f64 (fabs.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 (neg.f64 re)) (neg.f64 (neg.f64 im)))
(hypot.f64 (neg.f64 (neg.f64 re)) (neg.f64 (fabs.f64 im)))
(hypot.f64 (neg.f64 (neg.f64 re)) (neg.f64 im))
(hypot.f64 (neg.f64 (neg.f64 re)) (fabs.f64 im))
(hypot.f64 (neg.f64 (neg.f64 re)) im)
(hypot.f64 (neg.f64 (fabs.f64 im)) (neg.f64 (neg.f64 re)))
(hypot.f64 (neg.f64 (fabs.f64 im)) (neg.f64 (fabs.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 (fabs.f64 re)) (neg.f64 (neg.f64 im)))
(hypot.f64 (neg.f64 (fabs.f64 re)) (neg.f64 (fabs.f64 im)))
(hypot.f64 (neg.f64 (fabs.f64 re)) (neg.f64 im))
(hypot.f64 (neg.f64 (fabs.f64 re)) (fabs.f64 im))
(hypot.f64 (neg.f64 (fabs.f64 re)) im)
(hypot.f64 (neg.f64 im) (neg.f64 (neg.f64 re)))
(hypot.f64 (neg.f64 im) (neg.f64 (fabs.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 (fabs.f64 re) (neg.f64 (neg.f64 im)))
(hypot.f64 (fabs.f64 re) (neg.f64 (fabs.f64 im)))
(hypot.f64 (fabs.f64 re) (neg.f64 im))
(hypot.f64 (fabs.f64 re) (fabs.f64 im))
(hypot.f64 (fabs.f64 re) im)
(hypot.f64 (fabs.f64 im) (neg.f64 (neg.f64 re)))
(hypot.f64 (fabs.f64 im) (neg.f64 (fabs.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) (neg.f64 (neg.f64 im)))
(hypot.f64 (neg.f64 re) (neg.f64 (fabs.f64 im)))
(hypot.f64 (neg.f64 re) (neg.f64 im))
(hypot.f64 (neg.f64 re) (fabs.f64 im))
(hypot.f64 (neg.f64 re) im)
(hypot.f64 im (neg.f64 (neg.f64 re)))
(hypot.f64 im (neg.f64 (fabs.f64 re)))
(hypot.f64 im (fabs.f64 re))
(hypot.f64 im (neg.f64 re))
(hypot.f64 im re)
(hypot.f64 re (neg.f64 (neg.f64 im)))
(hypot.f64 re (neg.f64 (fabs.f64 im)))
(hypot.f64 re (neg.f64 im))
(hypot.f64 re (fabs.f64 im))
(hypot.f64 re im)
(fma.f64 (neg.f64 (neg.f64 im)) (neg.f64 (neg.f64 im)) (*.f64 re re))
(fma.f64 (neg.f64 (neg.f64 re)) (neg.f64 (neg.f64 re)) (*.f64 im im))
(fma.f64 (neg.f64 (fabs.f64 im)) (neg.f64 (fabs.f64 im)) (*.f64 re re))
(fma.f64 (neg.f64 (fabs.f64 re)) (neg.f64 (fabs.f64 re)) (*.f64 im im))
(fma.f64 (neg.f64 im) (neg.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 im im (*.f64 re re))
(fma.f64 re re (*.f64 im im))
(-.f64 (*.f64 re re) (*.f64 (neg.f64 im) im))
(-.f64 (*.f64 im im) (*.f64 (neg.f64 re) re))
(-.f64 (*.f64 im im) (neg.f64 (*.f64 re re)))
(+.f64 (*.f64 re re) (*.f64 im im))
(+.f64 (*.f64 im im) (*.f64 re re))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 (sqrt.f64 (*.f64 (fabs.f64 im) #s(literal 2 binary64))) #s(literal 1/2 binary64)))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (fma.f64 (/.f64 re (sqrt.f64 (*.f64 (fabs.f64 im) #s(literal 2 binary64)))) #s(literal -1/2 binary64) (*.f64 (sqrt.f64 (*.f64 (fabs.f64 im) #s(literal 2 binary64))) #s(literal 1/2 binary64))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (fma.f64 (/.f64 (-.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (fabs.f64 im)) (/.f64 #s(literal 1 binary64) (*.f64 (fabs.f64 im) #s(literal 2 binary64)))) re)) #s(literal 1/2 binary64)) (sqrt.f64 (*.f64 (fabs.f64 im) #s(literal 2 binary64)))) re (*.f64 (sqrt.f64 (*.f64 (fabs.f64 im) #s(literal 2 binary64))) #s(literal 1/2 binary64))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (fma.f64 re (-.f64 (*.f64 (*.f64 #s(literal 1/4 binary64) (fma.f64 re (/.f64 (-.f64 (/.f64 #s(literal 1 binary64) (fabs.f64 im)) (/.f64 #s(literal 1 binary64) (*.f64 (fabs.f64 im) #s(literal 2 binary64)))) (*.f64 (sqrt.f64 (*.f64 (fabs.f64 im) #s(literal 2 binary64))) (*.f64 (fabs.f64 im) #s(literal 2 binary64)))) (/.f64 (-.f64 (/.f64 #s(literal 1 binary64) (fabs.f64 im)) (/.f64 #s(literal 1 binary64) (*.f64 (fabs.f64 im) #s(literal 2 binary64)))) (sqrt.f64 (*.f64 (fabs.f64 im) #s(literal 2 binary64)))))) re) (/.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 (fabs.f64 im) #s(literal 2 binary64))))) (*.f64 (sqrt.f64 (*.f64 (fabs.f64 im) #s(literal 2 binary64))) #s(literal 1/2 binary64))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (sqrt.f64 (*.f64 (fabs.f64 im) #s(literal 2 binary64))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (+.f64 (/.f64 (neg.f64 re) (sqrt.f64 (*.f64 (fabs.f64 im) #s(literal 2 binary64)))) (sqrt.f64 (*.f64 (fabs.f64 im) #s(literal 2 binary64)))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (fma.f64 (/.f64 (-.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (fabs.f64 im)) (/.f64 #s(literal 1 binary64) (*.f64 (fabs.f64 im) #s(literal 2 binary64)))) re)) #s(literal 1 binary64)) (sqrt.f64 (*.f64 (fabs.f64 im) #s(literal 2 binary64)))) re (sqrt.f64 (*.f64 (fabs.f64 im) #s(literal 2 binary64)))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (fma.f64 re (-.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (fma.f64 re (/.f64 (-.f64 (/.f64 #s(literal 1 binary64) (fabs.f64 im)) (/.f64 #s(literal 1 binary64) (*.f64 (fabs.f64 im) #s(literal 2 binary64)))) (*.f64 (sqrt.f64 (*.f64 (fabs.f64 im) #s(literal 2 binary64))) (*.f64 (fabs.f64 im) #s(literal 2 binary64)))) (/.f64 (-.f64 (/.f64 #s(literal 1 binary64) (fabs.f64 im)) (/.f64 #s(literal 1 binary64) (*.f64 (fabs.f64 im) #s(literal 2 binary64)))) (sqrt.f64 (*.f64 (fabs.f64 im) #s(literal 2 binary64)))))) re) (/.f64 #s(literal 1 binary64) (sqrt.f64 (*.f64 (fabs.f64 im) #s(literal 2 binary64))))) (sqrt.f64 (*.f64 (fabs.f64 im) #s(literal 2 binary64)))))
#s(approx (* (fabs im) (/ 1 (sqrt re))) (/.f64 (fabs.f64 im) (sqrt.f64 re)))
#s(approx (/ 1 (sqrt re)) (/.f64 #s(literal 1 binary64) (sqrt.f64 re)))
#s(approx (sqrt re) (sqrt.f64 re))
#s(approx re re)
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (fabs.f64 im) #s(literal 2 binary64)))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (fma.f64 #s(literal -2 binary64) re (*.f64 (fabs.f64 im) #s(literal 2 binary64))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (fma.f64 (-.f64 (/.f64 re (fabs.f64 im)) #s(literal 2 binary64)) re (*.f64 (fabs.f64 im) #s(literal 2 binary64))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (fma.f64 (fma.f64 (fma.f64 (/.f64 (*.f64 re re) (*.f64 (fabs.f64 im) (*.f64 im im))) #s(literal -1/4 binary64) (/.f64 #s(literal 1 binary64) (fabs.f64 im))) re #s(literal -2 binary64)) re (*.f64 (fabs.f64 im) #s(literal 2 binary64))))
#s(approx (* (neg re) (+ (* (/ im re) (/ im re)) 4)) (/.f64 (*.f64 (neg.f64 im) im) re))
#s(approx (* (neg re) (+ (* (/ im re) (/ im re)) 4)) (/.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal -4 binary64)) (*.f64 im im)) re))
#s(approx (- (* -4 re) (* (/ im re) im)) (/.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal -4 binary64)) (*.f64 im im)) re))
#s(approx (* -4 re) (*.f64 #s(literal -4 binary64) re))
#s(approx (* (/ im re) im) (*.f64 (/.f64 im re) im))
#s(approx (/ im re) (/.f64 im re))
#s(approx (+ (* (* re re) -4) (neg (* im im))) (*.f64 (neg.f64 im) im))
#s(approx (+ (* (* re re) -4) (neg (* im im))) (-.f64 (*.f64 (*.f64 re re) #s(literal -4 binary64)) (*.f64 im im)))
#s(approx (* re re) (*.f64 re re))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) (fabs.f64 im))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) (+.f64 (fabs.f64 im) (neg.f64 re)))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) (fma.f64 (fma.f64 (/.f64 re (fabs.f64 im)) #s(literal 1/2 binary64) #s(literal -1 binary64)) re (fabs.f64 im)))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) (fma.f64 (fma.f64 (fma.f64 (/.f64 (*.f64 re re) (*.f64 (fabs.f64 im) (*.f64 im im))) #s(literal -1/8 binary64) (/.f64 #s(literal 1/2 binary64) (fabs.f64 im))) re #s(literal -1 binary64)) re (fabs.f64 im)))
#s(approx (sqrt (+ (* im im) (* re re))) (fma.f64 (/.f64 (*.f64 re re) (fabs.f64 im)) #s(literal 1/2 binary64) (fabs.f64 im)))
#s(approx (sqrt (+ (* im im) (* re re))) (fma.f64 (*.f64 re re) (fma.f64 (/.f64 (*.f64 re re) (*.f64 (fabs.f64 im) (*.f64 im im))) #s(literal -1/8 binary64) (/.f64 #s(literal 1/2 binary64) (fabs.f64 im))) (fabs.f64 im)))
#s(approx (sqrt (+ (* im im) (* re re))) (fma.f64 (fma.f64 (-.f64 (*.f64 (*.f64 (*.f64 re re) (pow.f64 (fabs.f64 im) #s(literal -5 binary64))) #s(literal 1/16 binary64)) (/.f64 #s(literal 1/8 binary64) (*.f64 (fabs.f64 im) (*.f64 im im)))) (*.f64 re re) (/.f64 #s(literal 1/2 binary64) (fabs.f64 im))) (*.f64 re re) (fabs.f64 im)))
#s(approx (+ (* im im) (* re re)) (*.f64 im im))
#s(approx (+ (* im im) (* re re)) (fma.f64 im im (*.f64 re re)))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 (/.f64 (fabs.f64 im) (sqrt.f64 re)) #s(literal 1/2 binary64)))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (*.f64 (*.f64 re re) re) (/.f64 (fabs.f64 im) (sqrt.f64 re)))) #s(literal -1/16 binary64) (*.f64 (/.f64 (fabs.f64 im) (sqrt.f64 re)) #s(literal 1/2 binary64))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (*.f64 (*.f64 re re) re) (/.f64 (fabs.f64 im) (sqrt.f64 re)))) #s(literal -1/16 binary64) (fma.f64 (/.f64 (pow.f64 im #s(literal 6 binary64)) (*.f64 (pow.f64 re #s(literal 5 binary64)) (/.f64 (fabs.f64 im) (sqrt.f64 re)))) #s(literal 1/32 binary64) (*.f64 (/.f64 (fabs.f64 im) (sqrt.f64 re)) #s(literal 1/2 binary64)))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (*.f64 (*.f64 re re) re) (/.f64 (fabs.f64 im) (sqrt.f64 re)))) #s(literal -1/16 binary64) (fma.f64 (/.f64 (pow.f64 im #s(literal 8 binary64)) (*.f64 (*.f64 (/.f64 (fabs.f64 im) (sqrt.f64 re)) (*.f64 (/.f64 im re) im)) (pow.f64 re #s(literal 6 binary64)))) #s(literal -1/256 binary64) (fma.f64 (/.f64 (pow.f64 im #s(literal 6 binary64)) (*.f64 (pow.f64 re #s(literal 5 binary64)) (/.f64 (fabs.f64 im) (sqrt.f64 re)))) #s(literal 1/32 binary64) (*.f64 (/.f64 (fabs.f64 im) (sqrt.f64 re)) #s(literal 1/2 binary64))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (/.f64 (fabs.f64 im) (sqrt.f64 re)))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (*.f64 (*.f64 re re) re) (/.f64 (fabs.f64 im) (sqrt.f64 re)))) #s(literal -1/8 binary64) (/.f64 (fabs.f64 im) (sqrt.f64 re))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (+.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 6 binary64)) (*.f64 (pow.f64 re #s(literal 5 binary64)) (/.f64 (fabs.f64 im) (sqrt.f64 re)))) #s(literal 1/16 binary64) (/.f64 (*.f64 #s(literal -1/8 binary64) (pow.f64 im #s(literal 4 binary64))) (*.f64 (*.f64 (*.f64 re re) re) (/.f64 (fabs.f64 im) (sqrt.f64 re))))) (/.f64 (fabs.f64 im) (sqrt.f64 re))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (+.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (*.f64 (*.f64 re re) re) (/.f64 (fabs.f64 im) (sqrt.f64 re)))) #s(literal -1/8 binary64) (fma.f64 #s(literal -1/128 binary64) (/.f64 (pow.f64 im #s(literal 8 binary64)) (*.f64 (*.f64 (/.f64 (fabs.f64 im) (sqrt.f64 re)) (*.f64 (/.f64 im re) im)) (pow.f64 re #s(literal 6 binary64)))) (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 6 binary64))) (*.f64 (pow.f64 re #s(literal 5 binary64)) (/.f64 (fabs.f64 im) (sqrt.f64 re)))))) (/.f64 (fabs.f64 im) (sqrt.f64 re))))
#s(approx (* (fabs im) (/ 1 (sqrt re))) (/.f64 (fabs.f64 im) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) re)))
#s(approx (/ 1 (sqrt re)) (/.f64 #s(literal 1 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) re)))
#s(approx (sqrt re) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) re))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (/.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.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 (pow.f64 im #s(literal 4 binary64)) (*.f64 re re)) #s(literal -1/4 binary64) (fma.f64 (*.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal -4 binary64))) #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)) (pow.f64 re #s(literal -6 binary64)))) (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 re re)) #s(literal -1/4 binary64) (fma.f64 (*.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal -4 binary64))) #s(literal 1/8 binary64) (*.f64 im im)))) re))
#s(approx (* (neg re) (+ (* (/ im re) (/ im re)) 4)) (*.f64 (neg.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 4 binary64))) re))
#s(approx (+ (* (* re re) -4) (neg (* im im))) (*.f64 (*.f64 re re) #s(literal -4 binary64)))
#s(approx (+ (* (* re re) -4) (neg (* im im))) (*.f64 (neg.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 4 binary64))) (*.f64 re re)))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) (*.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64)))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) (/.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 re re)) #s(literal -1/8 binary64) (*.f64 (*.f64 im im) #s(literal 1/2 binary64))) re))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) (/.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 re re)) #s(literal -1/8 binary64) (fma.f64 (*.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal -4 binary64))) #s(literal 1/16 binary64) (*.f64 (*.f64 im im) #s(literal 1/2 binary64)))) re))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) (/.f64 (fma.f64 (*.f64 (*.f64 (pow.f64 im #s(literal 8 binary64)) #s(literal 5/64 binary64)) (pow.f64 re #s(literal -6 binary64))) #s(literal -1/2 binary64) (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 re re)) #s(literal -1/8 binary64) (fma.f64 (*.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal -4 binary64))) #s(literal 1/16 binary64) (*.f64 (*.f64 im im) #s(literal 1/2 binary64))))) re))
#s(approx (sqrt (+ (* im im) (* re re))) (*.f64 (fma.f64 (/.f64 (*.f64 im im) (*.f64 re re)) #s(literal 1/2 binary64) #s(literal 1 binary64)) re))
#s(approx (sqrt (+ (* im im) (* re re))) (*.f64 (+.f64 (fma.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal -4 binary64))) #s(literal -1/8 binary64) (*.f64 (/.f64 (*.f64 im im) (*.f64 re re)) #s(literal 1/2 binary64))) #s(literal 1 binary64)) re))
#s(approx (sqrt (+ (* im im) (* re re))) (*.f64 (+.f64 (fma.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal -4 binary64))) #s(literal -1/8 binary64) (fma.f64 (*.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal -6 binary64))) #s(literal 1/16 binary64) (*.f64 (/.f64 (*.f64 im im) (*.f64 re re)) #s(literal 1/2 binary64)))) #s(literal 1 binary64)) re))
#s(approx (+ (* im im) (* re re)) (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) (*.f64 re re)))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 (*.f64 #s(literal -1/2 binary64) re) (sqrt.f64 (/.f64 #s(literal -4 binary64) re))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 (neg.f64 re) (fma.f64 (/.f64 (*.f64 im im) (*.f64 (sqrt.f64 (/.f64 #s(literal -4 binary64) re)) (*.f64 (*.f64 re re) re))) #s(literal -1/4 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal -4 binary64) re)) #s(literal 1/2 binary64)))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 (neg.f64 re) (fma.f64 (sqrt.f64 (/.f64 #s(literal -4 binary64) re)) #s(literal 1/2 binary64) (neg.f64 (/.f64 (fma.f64 (/.f64 (*.f64 im im) (sqrt.f64 (/.f64 #s(literal -4 binary64) re))) #s(literal 1/4 binary64) (/.f64 (*.f64 #s(literal -1/16 binary64) (pow.f64 im #s(literal 4 binary64))) (*.f64 (sqrt.f64 (/.f64 #s(literal -4 binary64) re)) (*.f64 re re)))) (*.f64 (*.f64 re re) re))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 (neg.f64 re) (fma.f64 (sqrt.f64 (/.f64 #s(literal -4 binary64) re)) #s(literal 1/2 binary64) (neg.f64 (/.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (sqrt.f64 (/.f64 #s(literal -4 binary64) re)) (*.f64 re re))) #s(literal -1/16 binary64) (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal -4 binary64) re)) (/.f64 #s(literal -4 binary64) re)) (*.f64 (*.f64 re re) re))) #s(literal 1/16 binary64) (/.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 im im)) (sqrt.f64 (/.f64 #s(literal -4 binary64) re))))) (*.f64 (*.f64 re re) re))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (neg.f64 re) (sqrt.f64 (/.f64 #s(literal -4 binary64) re))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (neg.f64 re) (fma.f64 (/.f64 (*.f64 im im) (*.f64 (sqrt.f64 (/.f64 #s(literal -4 binary64) re)) (*.f64 (*.f64 re re) re))) #s(literal -1/2 binary64) (sqrt.f64 (/.f64 #s(literal -4 binary64) re)))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (neg.f64 re) (+.f64 (neg.f64 (/.f64 (fma.f64 (/.f64 (*.f64 im im) (sqrt.f64 (/.f64 #s(literal -4 binary64) re))) #s(literal 1/2 binary64) (/.f64 (*.f64 #s(literal -1/8 binary64) (pow.f64 im #s(literal 4 binary64))) (*.f64 (sqrt.f64 (/.f64 #s(literal -4 binary64) re)) (*.f64 re re)))) (*.f64 (*.f64 re re) re))) (sqrt.f64 (/.f64 #s(literal -4 binary64) re)))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (neg.f64 re) (+.f64 (neg.f64 (/.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (sqrt.f64 (/.f64 #s(literal -4 binary64) re)) (*.f64 re re))) #s(literal -1/8 binary64) (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal -4 binary64) re)) (/.f64 #s(literal -4 binary64) re)) (*.f64 (*.f64 re re) re))) #s(literal 1/8 binary64) (/.f64 (*.f64 (*.f64 im im) #s(literal 1/2 binary64)) (sqrt.f64 (/.f64 #s(literal -4 binary64) re))))) (*.f64 (*.f64 re re) re))) (sqrt.f64 (/.f64 #s(literal -4 binary64) re)))))
#s(approx (* (fabs im) (/ 1 (sqrt re))) (neg.f64 (/.f64 (fabs.f64 im) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) re))))
#s(approx (/ 1 (sqrt re)) (/.f64 #s(literal -1 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) re)))
#s(approx (sqrt re) (*.f64 (neg.f64 re) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 4 binary64)) (neg.f64 re)))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (neg.f64 re) (+.f64 (fma.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal -4 binary64))) #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 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal -4 binary64))) #s(literal -1/4 binary64) (fma.f64 (*.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal -6 binary64))) #s(literal 1/8 binary64) (/.f64 (*.f64 im im) (*.f64 re re)))) #s(literal 4 binary64))))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) (*.f64 #s(literal -2 binary64) re))
#s(approx (- (sqrt (+ (* im im) (* re re))) 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 (+ (* im im) (* re re))) re) (*.f64 (neg.f64 re) (+.f64 (fma.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal -4 binary64))) #s(literal -1/8 binary64) (*.f64 (/.f64 (*.f64 im im) (*.f64 re re)) #s(literal 1/2 binary64))) #s(literal 2 binary64))))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) (*.f64 (neg.f64 re) (+.f64 (fma.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal -4 binary64))) #s(literal -1/8 binary64) (fma.f64 (*.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal -6 binary64))) #s(literal 1/16 binary64) (*.f64 (/.f64 (*.f64 im im) (*.f64 re re)) #s(literal 1/2 binary64)))) #s(literal 2 binary64))))
#s(approx (sqrt (+ (* im im) (* re re))) (neg.f64 re))
#s(approx (sqrt (+ (* im im) (* re re))) (*.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 (+ (* im im) (* re re))) (*.f64 (neg.f64 re) (+.f64 (fma.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal -4 binary64))) #s(literal -1/8 binary64) (*.f64 (/.f64 (*.f64 im im) (*.f64 re re)) #s(literal 1/2 binary64))) #s(literal 1 binary64))))
#s(approx (sqrt (+ (* im im) (* re re))) (*.f64 (neg.f64 re) (+.f64 (fma.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal -4 binary64))) #s(literal -1/8 binary64) (fma.f64 (*.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal -6 binary64))) #s(literal 1/16 binary64) (*.f64 (/.f64 (*.f64 im im) (*.f64 re re)) #s(literal 1/2 binary64)))) #s(literal 1 binary64))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 (sqrt.f64 (*.f64 (-.f64 (fabs.f64 re) re) #s(literal 2 binary64))) #s(literal 1/2 binary64)))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (fma.f64 (/.f64 (*.f64 im im) (*.f64 (sqrt.f64 (*.f64 (-.f64 (fabs.f64 re) re) #s(literal 2 binary64))) (fabs.f64 re))) #s(literal 1/4 binary64) (*.f64 (sqrt.f64 (*.f64 (-.f64 (fabs.f64 re) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (fma.f64 (sqrt.f64 (*.f64 (-.f64 (fabs.f64 re) re) #s(literal 2 binary64))) #s(literal 1/2 binary64) (*.f64 (fma.f64 (/.f64 (*.f64 (*.f64 im im) (+.f64 (/.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 (-.f64 (fabs.f64 re) re) #s(literal 2 binary64)) (*.f64 re re))) (/.f64 #s(literal 1/4 binary64) (*.f64 (fabs.f64 re) (*.f64 re re))))) (sqrt.f64 (*.f64 (-.f64 (fabs.f64 re) re) #s(literal 2 binary64)))) #s(literal -1/4 binary64) (/.f64 #s(literal 1/4 binary64) (*.f64 (sqrt.f64 (*.f64 (-.f64 (fabs.f64 re) re) #s(literal 2 binary64))) (fabs.f64 re)))) (*.f64 im im))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (fma.f64 (fma.f64 (/.f64 (fma.f64 #s(literal 1/4 binary64) (*.f64 (fma.f64 (pow.f64 (fabs.f64 re) #s(literal -5 binary64)) #s(literal 1/8 binary64) (*.f64 #s(literal 1/2 binary64) (/.f64 (+.f64 (/.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 (-.f64 (fabs.f64 re) re) #s(literal 2 binary64)) (*.f64 re re))) (/.f64 #s(literal 1/4 binary64) (*.f64 (fabs.f64 re) (*.f64 re re)))) (*.f64 (*.f64 (-.f64 (fabs.f64 re) re) #s(literal 2 binary64)) (fabs.f64 re))))) (*.f64 im im)) (*.f64 #s(literal -1/4 binary64) (+.f64 (/.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 (-.f64 (fabs.f64 re) re) #s(literal 2 binary64)) (*.f64 re re))) (/.f64 #s(literal 1/4 binary64) (*.f64 (fabs.f64 re) (*.f64 re re)))))) (sqrt.f64 (*.f64 (-.f64 (fabs.f64 re) re) #s(literal 2 binary64)))) (*.f64 im im) (/.f64 #s(literal 1/4 binary64) (*.f64 (sqrt.f64 (*.f64 (-.f64 (fabs.f64 re) re) #s(literal 2 binary64))) (fabs.f64 re)))) (*.f64 im im) (*.f64 (sqrt.f64 (*.f64 (-.f64 (fabs.f64 re) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (sqrt.f64 (*.f64 (-.f64 (fabs.f64 re) re) #s(literal 2 binary64))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (fma.f64 (/.f64 (*.f64 im im) (*.f64 (sqrt.f64 (*.f64 (-.f64 (fabs.f64 re) re) #s(literal 2 binary64))) (fabs.f64 re))) #s(literal 1/2 binary64) (sqrt.f64 (*.f64 (-.f64 (fabs.f64 re) re) #s(literal 2 binary64)))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (fma.f64 (fma.f64 (/.f64 (*.f64 (*.f64 im im) (+.f64 (/.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 (-.f64 (fabs.f64 re) re) #s(literal 2 binary64)) (*.f64 re re))) (/.f64 #s(literal 1/4 binary64) (*.f64 (fabs.f64 re) (*.f64 re re))))) (sqrt.f64 (*.f64 (-.f64 (fabs.f64 re) re) #s(literal 2 binary64)))) #s(literal -1/2 binary64) (/.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 (*.f64 (-.f64 (fabs.f64 re) re) #s(literal 2 binary64))) (fabs.f64 re)))) (*.f64 im im) (sqrt.f64 (*.f64 (-.f64 (fabs.f64 re) re) #s(literal 2 binary64)))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (fma.f64 (fma.f64 (/.f64 (fma.f64 #s(literal 1/2 binary64) (*.f64 (fma.f64 (pow.f64 (fabs.f64 re) #s(literal -5 binary64)) #s(literal 1/8 binary64) (*.f64 #s(literal 1/2 binary64) (/.f64 (+.f64 (/.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 (-.f64 (fabs.f64 re) re) #s(literal 2 binary64)) (*.f64 re re))) (/.f64 #s(literal 1/4 binary64) (*.f64 (fabs.f64 re) (*.f64 re re)))) (*.f64 (*.f64 (-.f64 (fabs.f64 re) re) #s(literal 2 binary64)) (fabs.f64 re))))) (*.f64 im im)) (*.f64 #s(literal -1/2 binary64) (+.f64 (/.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 (-.f64 (fabs.f64 re) re) #s(literal 2 binary64)) (*.f64 re re))) (/.f64 #s(literal 1/4 binary64) (*.f64 (fabs.f64 re) (*.f64 re re)))))) (sqrt.f64 (*.f64 (-.f64 (fabs.f64 re) re) #s(literal 2 binary64)))) (*.f64 im im) (/.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 (*.f64 (-.f64 (fabs.f64 re) re) #s(literal 2 binary64))) (fabs.f64 re)))) (*.f64 im im) (sqrt.f64 (*.f64 (-.f64 (fabs.f64 re) re) #s(literal 2 binary64)))))
#s(approx (* (sqrt (/ 2 im)) im) (sqrt.f64 (+.f64 im im)))
#s(approx (sqrt (/ 2 im)) (/.f64 (sqrt.f64 (+.f64 im im)) im))
#s(approx (/ 2 im) (/.f64 #s(literal 2 binary64) im))
#s(approx im im)
#s(approx (fabs im) (fabs.f64 im))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (-.f64 (fabs.f64 re) re) #s(literal 2 binary64)))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (fma.f64 (-.f64 (fabs.f64 re) re) #s(literal 2 binary64) (/.f64 (*.f64 im im) (fabs.f64 re))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (fma.f64 (fma.f64 (/.f64 (*.f64 im im) (*.f64 (fabs.f64 re) (*.f64 re re))) #s(literal -1/4 binary64) (/.f64 #s(literal 1 binary64) (fabs.f64 re))) (*.f64 im im) (*.f64 (-.f64 (fabs.f64 re) re) #s(literal 2 binary64))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (fma.f64 (fma.f64 (-.f64 (*.f64 (*.f64 (*.f64 im im) (pow.f64 (fabs.f64 re) #s(literal -5 binary64))) #s(literal 1/8 binary64)) (/.f64 #s(literal 1/4 binary64) (*.f64 (fabs.f64 re) (*.f64 re re)))) (*.f64 im im) (/.f64 #s(literal 1 binary64) (fabs.f64 re))) (*.f64 im im) (*.f64 (-.f64 (fabs.f64 re) re) #s(literal 2 binary64))))
#s(approx (* (neg re) (+ (* (/ im re) (/ im re)) 4)) (-.f64 (*.f64 #s(literal -4 binary64) re) (*.f64 (/.f64 im re) im)))
#s(approx (+ (* (* re re) -4) (neg (* im im))) (-.f64 (*.f64 (*.f64 re re) #s(literal -4 binary64)) (*.f64 im im)))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 (fabs.f64 re) re))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 (fma.f64 (/.f64 (*.f64 im im) (fabs.f64 re)) #s(literal 1/2 binary64) (fabs.f64 re)) re))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 (fma.f64 (*.f64 im im) (fma.f64 (/.f64 (*.f64 im im) (*.f64 (fabs.f64 re) (*.f64 re re))) #s(literal -1/8 binary64) (/.f64 #s(literal 1/2 binary64) (fabs.f64 re))) (fabs.f64 re)) re))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 (fma.f64 (fma.f64 (-.f64 (*.f64 (*.f64 (*.f64 im im) (pow.f64 (fabs.f64 re) #s(literal -5 binary64))) #s(literal 1/16 binary64)) (/.f64 #s(literal 1/8 binary64) (*.f64 (fabs.f64 re) (*.f64 re re)))) (*.f64 im im) (/.f64 #s(literal 1/2 binary64) (fabs.f64 re))) (*.f64 im im) (fabs.f64 re)) re))
#s(approx (sqrt (+ (* im im) (* re re))) (fabs.f64 re))
#s(approx (sqrt (+ (* im im) (* re re))) (fma.f64 (/.f64 (*.f64 im im) (fabs.f64 re)) #s(literal 1/2 binary64) (fabs.f64 re)))
#s(approx (sqrt (+ (* im im) (* re re))) (fma.f64 (*.f64 im im) (fma.f64 (/.f64 (*.f64 im im) (*.f64 (fabs.f64 re) (*.f64 re re))) #s(literal -1/8 binary64) (/.f64 #s(literal 1/2 binary64) (fabs.f64 re))) (fabs.f64 re)))
#s(approx (sqrt (+ (* im im) (* re re))) (fma.f64 (fma.f64 (-.f64 (*.f64 (*.f64 (*.f64 im im) (pow.f64 (fabs.f64 re) #s(literal -5 binary64))) #s(literal 1/16 binary64)) (/.f64 #s(literal 1/8 binary64) (*.f64 (fabs.f64 re) (*.f64 re re)))) (*.f64 im im) (/.f64 #s(literal 1/2 binary64) (fabs.f64 re))) (*.f64 im im) (fabs.f64 re)))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 (*.f64 #s(literal 1/2 binary64) im) (sqrt.f64 (/.f64 #s(literal 2 binary64) im))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 (fma.f64 (/.f64 re (*.f64 (sqrt.f64 (/.f64 #s(literal 2 binary64) im)) (*.f64 im im))) #s(literal -1/2 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 2 binary64) im)) #s(literal 1/2 binary64))) im))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 (fma.f64 (/.f64 re (*.f64 (sqrt.f64 (/.f64 #s(literal 2 binary64) im)) (*.f64 im im))) #s(literal -1/2 binary64) (fma.f64 (/.f64 (*.f64 re re) (*.f64 (*.f64 (*.f64 im im) im) (sqrt.f64 (/.f64 #s(literal 2 binary64) im)))) #s(literal 1/4 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 2 binary64) im)) #s(literal 1/2 binary64)))) im))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 (fma.f64 (/.f64 re (*.f64 (sqrt.f64 (/.f64 #s(literal 2 binary64) im)) (*.f64 im im))) #s(literal -1/2 binary64) (fma.f64 (/.f64 (*.f64 re re) (*.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (sqrt.f64 (/.f64 #s(literal 2 binary64) im)) (/.f64 #s(literal 2 binary64) im)))) #s(literal -1/4 binary64) (fma.f64 (/.f64 (*.f64 re re) (*.f64 (*.f64 (*.f64 im im) im) (sqrt.f64 (/.f64 #s(literal 2 binary64) im)))) #s(literal 1/4 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 2 binary64) im)) #s(literal 1/2 binary64))))) im))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (sqrt.f64 (/.f64 #s(literal 2 binary64) im)) im))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (+.f64 (/.f64 (neg.f64 re) (*.f64 (sqrt.f64 (/.f64 #s(literal 2 binary64) im)) (*.f64 im im))) (sqrt.f64 (/.f64 #s(literal 2 binary64) im))) im))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (+.f64 (fma.f64 (/.f64 (*.f64 re re) (*.f64 (*.f64 (*.f64 im im) im) (sqrt.f64 (/.f64 #s(literal 2 binary64) im)))) #s(literal 1/2 binary64) (/.f64 (neg.f64 re) (*.f64 (sqrt.f64 (/.f64 #s(literal 2 binary64) im)) (*.f64 im im)))) (sqrt.f64 (/.f64 #s(literal 2 binary64) im))) im))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (+.f64 (+.f64 (fma.f64 (/.f64 (*.f64 re re) (*.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (sqrt.f64 (/.f64 #s(literal 2 binary64) im)) (/.f64 #s(literal 2 binary64) im)))) #s(literal -1/2 binary64) (*.f64 (/.f64 (*.f64 re re) (*.f64 (*.f64 (*.f64 im im) im) (sqrt.f64 (/.f64 #s(literal 2 binary64) im)))) #s(literal 1/2 binary64))) (/.f64 (neg.f64 re) (*.f64 (sqrt.f64 (/.f64 #s(literal 2 binary64) im)) (*.f64 im im)))) (sqrt.f64 (/.f64 #s(literal 2 binary64) im))) im))
#s(approx (sqrt (/ 2 im)) (sqrt.f64 (/.f64 #s(literal 2 binary64) im)))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (+.f64 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 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal -4 binary64))) #s(literal -1/4 binary64) (/.f64 (*.f64 re re) (*.f64 im im)))) #s(literal 2 binary64)) im))
#s(approx (* (neg re) (+ (* (/ im re) (/ im re)) 4)) (*.f64 (-.f64 (*.f64 (/.f64 re (*.f64 im im)) #s(literal -4 binary64)) (/.f64 #s(literal 1 binary64) re)) (*.f64 im im)))
#s(approx (+ (* (* re re) -4) (neg (* im im))) (*.f64 (fma.f64 (/.f64 (*.f64 re re) (*.f64 im im)) #s(literal -4 binary64) #s(literal -1 binary64)) (*.f64 im im)))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 re im)) im))
#s(approx (- (sqrt (+ (* im im) (* re re))) 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 (+ (* im im) (* re re))) re) (*.f64 (-.f64 (+.f64 (fma.f64 (*.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal -4 binary64))) #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 (+ (* im im) (* re re))) (*.f64 (fma.f64 (/.f64 (*.f64 re re) (*.f64 im im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) im))
#s(approx (sqrt (+ (* im im) (* re re))) (*.f64 (+.f64 (fma.f64 (*.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal -4 binary64))) #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 (+ (* im im) (* re re))) (*.f64 (+.f64 (fma.f64 (*.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal -4 binary64))) #s(literal -1/8 binary64) (fma.f64 (*.f64 (pow.f64 re #s(literal 6 binary64)) (pow.f64 im #s(literal -6 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 (+ (* im im) (* re re)) (*.f64 (fma.f64 (/.f64 re im) (/.f64 re im) #s(literal 1 binary64)) (*.f64 im im)))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 (*.f64 #s(literal -1/2 binary64) im) (sqrt.f64 (/.f64 #s(literal -2 binary64) im))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 (neg.f64 im) (fma.f64 (/.f64 re (*.f64 (sqrt.f64 (/.f64 #s(literal -2 binary64) im)) (*.f64 im im))) #s(literal -1/2 binary64) (*.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 (/.f64 re (*.f64 (sqrt.f64 (/.f64 #s(literal -2 binary64) im)) (*.f64 im im))) #s(literal -1/2 binary64) (fma.f64 (/.f64 (*.f64 re re) (*.f64 (sqrt.f64 (/.f64 #s(literal -2 binary64) im)) (*.f64 (*.f64 im im) im))) #s(literal -1/4 binary64) (*.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) (+.f64 (neg.f64 (/.f64 (*.f64 #s(literal 1/4 binary64) (+.f64 (/.f64 (*.f64 re re) (sqrt.f64 (/.f64 #s(literal -2 binary64) im))) (/.f64 (*.f64 re re) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal -2 binary64) im)) (/.f64 #s(literal -2 binary64) im)) im)))) (*.f64 (*.f64 im im) im))) (fma.f64 (/.f64 re (*.f64 (sqrt.f64 (/.f64 #s(literal -2 binary64) im)) (*.f64 im im))) #s(literal -1/2 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal -2 binary64) im)) #s(literal 1/2 binary64))))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (neg.f64 im) (sqrt.f64 (/.f64 #s(literal -2 binary64) im))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (neg.f64 im) (+.f64 (/.f64 (neg.f64 re) (*.f64 (sqrt.f64 (/.f64 #s(literal -2 binary64) im)) (*.f64 im im))) (sqrt.f64 (/.f64 #s(literal -2 binary64) im)))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (neg.f64 im) (+.f64 (fma.f64 (/.f64 (*.f64 re re) (*.f64 (sqrt.f64 (/.f64 #s(literal -2 binary64) im)) (*.f64 (*.f64 im im) im))) #s(literal -1/2 binary64) (/.f64 (neg.f64 re) (*.f64 (sqrt.f64 (/.f64 #s(literal -2 binary64) im)) (*.f64 im im)))) (sqrt.f64 (/.f64 #s(literal -2 binary64) im)))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (neg.f64 im) (+.f64 (+.f64 (neg.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) (+.f64 (/.f64 (*.f64 re re) (sqrt.f64 (/.f64 #s(literal -2 binary64) im))) (/.f64 (*.f64 re re) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal -2 binary64) im)) (/.f64 #s(literal -2 binary64) im)) im)))) (*.f64 (*.f64 im im) im))) (/.f64 (neg.f64 re) (*.f64 (sqrt.f64 (/.f64 #s(literal -2 binary64) im)) (*.f64 im im)))) (sqrt.f64 (/.f64 #s(literal -2 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 (pow.f64 re #s(literal 4 binary64)) (*.f64 im im)) #s(literal -1/4 binary64) (*.f64 re re)) im))) im)) #s(literal 2 binary64))))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) (neg.f64 im))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) (*.f64 (neg.f64 im) (+.f64 (/.f64 re im) #s(literal 1 binary64))))
#s(approx (- (sqrt (+ (* im im) (* re re))) 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 (+ (* im im) (* re re))) re) (*.f64 (neg.f64 im) (+.f64 (neg.f64 (/.f64 (-.f64 (neg.f64 (/.f64 (fma.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (*.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 (+ (* im im) (* re re))) (*.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 (+ (* im im) (* re re))) (*.f64 (neg.f64 im) (+.f64 (fma.f64 (*.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal -4 binary64))) #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 (+ (* im im) (* re re))) (*.f64 (neg.f64 im) (+.f64 (fma.f64 (*.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal -4 binary64))) #s(literal -1/8 binary64) (fma.f64 (*.f64 (pow.f64 re #s(literal 6 binary64)) (pow.f64 im #s(literal -6 binary64))) #s(literal 1/16 binary64) (/.f64 (*.f64 (*.f64 re re) #s(literal 1/2 binary64)) (*.f64 im im)))) #s(literal 1 binary64))))

eval74.0ms (1.6%)

Memory
22.8MiB live, 110.3MiB allocated; 15ms collecting garbage
Compiler

Compiled 5 267 to 2 427 computations (53.9% saved)

prune33.0ms (0.7%)

Memory
-53.0MiB live, 49.9MiB allocated; 39ms collecting garbage
Pruning

15 alts after pruning (4 fresh and 11 done)

PrunedKeptTotal
New4044408
Fresh000
Picked235
Done189
Total40715422
Accuracy
100.0%
Counts
422 → 15
Alt Table
Click to see full alt table
StatusAccuracyProgram
80.2%
(*.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))
41.1%
(*.f64 (sqrt.f64 (*.f64 (-.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re))) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))
12.9%
(*.f64 (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(approx (* (neg re) (+ (* (/ im re) (/ im re)) 4)) (/.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal -4 binary64)) (*.f64 im im)) re)))) #s(literal 1/2 binary64))
26.8%
(*.f64 (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(approx (* (neg re) (+ (* (/ im re) (/ im re)) 4)) (-.f64 (*.f64 #s(literal -4 binary64) re) (*.f64 (/.f64 im re) im))))) #s(literal 1/2 binary64))
19.3%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 im im) re))))
51.5%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (+.f64 im im))))
52.9%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (fma.f64 (/.f64 re im) #s(literal -2 binary64) #s(literal 2 binary64)) im))))
20.3%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 im (/.f64 im re)))))
26.5%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re))))
53.9%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(approx (* (+ (* (/ re im) -2) 2) im) (fma.f64 #s(literal -2 binary64) re (+.f64 im im))))))
27.2%
(*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (/.f64 (fabs.f64 im) (sqrt.f64 re))))
27.2%
(*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (/.f64 (fabs.f64 im) #s(approx (sqrt re) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) re)))))
51.3%
(*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (sqrt.f64 (/.f64 #s(literal 2 binary64) im)) im)))
27.2%
(*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (fabs.f64 im) (pow.f64 re #s(literal -1/2 binary64)))))
27.2%
(*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (fabs.f64 im) (/.f64 #s(literal 1 binary64) (sqrt.f64 re)))))
Compiler

Compiled 516 to 404 computations (21.7% saved)

regimes47.0ms (1%)

Memory
22.8MiB live, 112.5MiB allocated; 13ms 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))))
(*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (/.f64 (fabs.f64 im) (sqrt.f64 re))))
(*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (sqrt.f64 (/.f64 #s(literal 2 binary64) im)) im)))
(*.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) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (fabs.f64 im) (/.f64 #s(literal 1 binary64) (sqrt.f64 re)))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(approx (* (+ (* (/ re im) -2) 2) im) (fma.f64 #s(literal -2 binary64) 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) (fabs.f64 im))))))
(*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (/.f64 (fabs.f64 im) #s(approx (sqrt re) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) re)))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (fma.f64 (/.f64 re im) #s(literal -2 binary64) #s(literal 2 binary64)) im))))
(*.f64 (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(approx (* (neg re) (+ (* (/ im re) (/ im re)) 4)) (-.f64 (*.f64 #s(literal -4 binary64) 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)) #s(approx (* (neg re) (+ (* (/ im re) (/ im re)) 4)) (-.f64 (*.f64 #s(literal -4 binary64) re) (*.f64 (/.f64 im re) im))))))
(*.f64 (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(approx (* (neg re) (+ (* (/ im re) (/ im re)) 4)) (/.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal -4 binary64)) (*.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)) #s(approx (* (neg re) (+ (* (/ im re) (/ im re)) 4)) (/.f64 (fma.f64 (*.f64 re re) #s(literal -4 binary64) (neg.f64 (*.f64 im im))) re)))))
(*.f64 (sqrt.f64 (*.f64 (-.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re))) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (neg.f64 re) (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 4 binary64))))))
(*.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) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (fabs.f64 im) (pow.f64 re #s(literal -1/2 binary64)))))
(*.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 re im) re))))
(*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (neg.f64 re) (fma.f64 (/.f64 (*.f64 im im) (*.f64 (sqrt.f64 (/.f64 #s(literal -4 binary64) re)) (*.f64 (*.f64 re re) re))) #s(literal -1/2 binary64) (sqrt.f64 (/.f64 #s(literal -4 binary64) re))))))
Outputs
(*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (/.f64 (fabs.f64 im) (sqrt.f64 re))))
(*.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))
Calls

7 calls:

9.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))))
8.0ms
(*.f64 im im)
6.0ms
im
6.0ms
re
5.0ms
(sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))
Results
AccuracySegmentsBranch
80.2%1(*.f64 im im)
91.6%2(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
91.6%2(*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
91.9%2(sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))
91.9%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))))
91.6%2re
80.2%1im
Compiler

Compiled 42 to 45 computations (-7.1% saved)

regimes51.0ms (1.1%)

Memory
-10.1MiB live, 85.0MiB allocated; 17ms collecting garbage
Counts
19 → 3
Calls
Call 1
Inputs
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (+.f64 im im))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re))))
(*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (/.f64 (fabs.f64 im) (sqrt.f64 re))))
(*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (sqrt.f64 (/.f64 #s(literal 2 binary64) im)) im)))
(*.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) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (fabs.f64 im) (/.f64 #s(literal 1 binary64) (sqrt.f64 re)))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(approx (* (+ (* (/ re im) -2) 2) im) (fma.f64 #s(literal -2 binary64) 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) (fabs.f64 im))))))
(*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (/.f64 (fabs.f64 im) #s(approx (sqrt re) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) re)))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (fma.f64 (/.f64 re im) #s(literal -2 binary64) #s(literal 2 binary64)) im))))
(*.f64 (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(approx (* (neg re) (+ (* (/ im re) (/ im re)) 4)) (-.f64 (*.f64 #s(literal -4 binary64) 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)) #s(approx (* (neg re) (+ (* (/ im re) (/ im re)) 4)) (-.f64 (*.f64 #s(literal -4 binary64) re) (*.f64 (/.f64 im re) im))))))
(*.f64 (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(approx (* (neg re) (+ (* (/ im re) (/ im re)) 4)) (/.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal -4 binary64)) (*.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)) #s(approx (* (neg re) (+ (* (/ im re) (/ im re)) 4)) (/.f64 (fma.f64 (*.f64 re re) #s(literal -4 binary64) (neg.f64 (*.f64 im im))) re)))))
(*.f64 (sqrt.f64 (*.f64 (-.f64 (sqrt.f64 (fma.f64 im im (*.f64 re re))) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (neg.f64 re) (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 4 binary64))))))
(*.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) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (fabs.f64 im) (pow.f64 re #s(literal -1/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)) #s(approx (* (+ (* (/ re im) -2) 2) im) (fma.f64 #s(literal -2 binary64) re (+.f64 im im))))))
(*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (/.f64 (fabs.f64 im) (sqrt.f64 re))))
Calls

7 calls:

17.0ms
(*.f64 im im)
8.0ms
(*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
5.0ms
im
5.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))))
Results
AccuracySegmentsBranch
64.5%3(*.f64 im im)
66.1%3im
80.8%3re
76.2%3(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
76.2%3(*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
76.4%3(sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))
76.4%3(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
Compiler

Compiled 42 to 45 computations (-7.1% saved)

regimes3.0ms (0.1%)

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

1 calls:

2.0ms
re
Results
AccuracySegmentsBranch
79.3%3re
Compiler

Compiled 1 to 2 computations (-100% saved)

regimes7.0ms (0.2%)

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

6 calls:

1.0ms
re
1.0ms
im
1.0ms
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
1.0ms
(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
58.7%2im
51.5%1(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
51.5%1(*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
51.5%1(sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))
51.5%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))))
63.5%2re
Compiler

Compiled 40 to 42 computations (-5% saved)

regimes5.0ms (0.1%)

Memory
14.0MiB live, 14.0MiB allocated; 0ms 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

5 calls:

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

Compiled 20 to 23 computations (-15% saved)

bsearch0.0ms (0%)

Memory
0.9MiB live, 0.9MiB allocated; 0ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.0
1.5865193214816472e-154
Compiler

Compiled 15 to 17 computations (-13.3% saved)

bsearch43.0ms (1%)

Memory
-15.9MiB live, 74.9MiB allocated; 8ms collecting garbage
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
20.0ms
2.043601009757882e-68
8.851635246508203e-67
12.0ms
-2.8535512947566672e+104
-1.1049399741542325e+102
Samples
11.0ms186×0valid
6.0ms23×1valid
5.0ms31×2valid
Compiler

Compiled 580 to 606 computations (-4.5% saved)

Precisions
Click to see histograms. Total time spent on operations: 17.0ms
ival-hypot: 6.0ms (36.2% of total)
ival-sqrt: 6.0ms (36.2% of total)
ival-mult!: 3.0ms (18.1% of total)
adjust: 1.0ms (6% of total)
ival-sub!: 1.0ms (6% of total)

bsearch29.0ms (0.6%)

Memory
20.5MiB live, 66.0MiB allocated; 6ms collecting garbage
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
13.0ms
2.043601009757882e-68
8.851635246508203e-67
14.0ms
-2.8535512947566672e+104
-1.1049399741542325e+102
Samples
9.0ms160×0valid
5.0ms28×2valid
2.0ms20×1valid
Compiler

Compiled 460 to 486 computations (-5.7% saved)

Precisions
Click to see histograms. Total time spent on operations: 11.0ms
ival-hypot: 5.0ms (47.3% of total)
ival-sqrt: 2.0ms (18.9% of total)
ival-mult!: 2.0ms (18.9% of total)
adjust: 1.0ms (9.5% of total)
ival-sub!: 1.0ms (9.5% of total)

bsearch1.0ms (0%)

Memory
3.4MiB live, 3.4MiB allocated; 0ms collecting garbage
Algorithm
binary-search
Stop Event
narrow-enough
Steps
TimeLeftRight
1.0ms
-2.8535512947566672e+104
-1.1049399741542325e+102
Compiler

Compiled 250 to 262 computations (-4.8% saved)

derivations144.0ms (3.2%)

Memory
-8.2MiB live, 176.9MiB allocated; 28ms collecting garbage
Stop Event
fuel
Compiler

Compiled 87 to 66 computations (24.1% saved)

preprocess65.0ms (1.4%)

Memory
13.5MiB live, 103.4MiB allocated; 25ms collecting garbage
Remove

(abs im)

Compiler

Compiled 437 to 356 computations (18.5% saved)

end0.0ms (0%)

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

Profiling

Loading profile data...