Details

Time bar (total: 35.6s)

analyze594.0ms (1.7%)

Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%50%50%0%0%0%0
0%0%50%50%0%0%0%1
0%0%50%50%0%0%0%2
0%0%50%50%0%0%0%3
12.5%6.2%43.7%50%0%0%0%4
25%12.5%37.5%50%0%0%0%5
37.5%18.7%31.2%50%0%0%0%6
46.9%23.4%26.5%50%0%0%0%7
54.7%27.3%22.6%50%0%0%0%8
60.2%30%19.9%50%0%0%0%9
64.5%32.2%17.8%50%0%0%0%10
67.4%33.7%16.3%50%0%0%0%11
69.6%34.8%15.2%50%0%0%0%12
Compiler

Compiled 20 to 14 computations (30% saved)

sample6.1s (17.2%)

Results
3.1s6390×body256valid
1.4s566×body4096valid
1.0s655×body2048valid
489.0ms410×body1024valid
86.0ms235×body512valid
Bogosity

preprocess354.0ms (1%)

Algorithm
egg-herbie
Rules
1274×rational_best-simplify-62
896×rational_best-simplify-3
874×rational_best-simplify-1
788×rational_best-simplify-85
522×rational_best-simplify-55
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02190
13790
25590
38090
412590
522990
674590
7427590
022
Stop Event
saturated
node limit
Calls
Call 1
Inputs
0
1
Outputs
0
1
Call 2
Inputs
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (sqrt.f64 (+.f64 (*.f64 im im) (*.f64 re re))) im))))
Outputs
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (sqrt.f64 (+.f64 (*.f64 im im) (*.f64 re re))) im))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) im))))
Compiler

Compiled 19 to 14 computations (26.3% saved)

simplify458.0ms (1.3%)

Algorithm
egg-herbie
Rules
1008×rational_best-simplify-56
860×rational_best-simplify-63
648×rational_best-simplify-62
636×rational_best-simplify-49
606×rational_best-simplify-64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01545
12545
24045
36045
49345
516845
650545
7251145
8739645
Stop Event
node limit
Counts
1 → 1
Calls
Call 1
Inputs
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
Outputs
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))

eval1.0ms (0%)

Compiler

Compiled 17 to 12 computations (29.4% saved)

prune16.0ms (0%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New011
Fresh011
Picked000
Done000
Total022
Error
39.8b
Counts
2 → 1
Alt Table
Click to see full alt table
StatusErrorProgram
39.8b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
Compiler

Compiled 17 to 12 computations (29.4% saved)

localize62.0ms (0.2%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(+.f64 (*.f64 re re) (*.f64 im im))
0.2b
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
31.5b
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
Compiler

Compiled 77 to 19 computations (75.3% saved)

series7.0ms (0%)

Counts
3 → 72
Calls

18 calls:

TimeVariablePointExpression
1.0ms
im
@0
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
1.0ms
re
@0
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
1.0ms
re
@inf
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
1.0ms
im
@inf
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
1.0ms
re
@inf
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)

rewrite289.0ms (0.8%)

Algorithm
batch-egg-rewrite
Rules
954×rational_best-simplify-57
942×rational_best-simplify-51
724×rational_best-4
724×rational_best-2
724×rational_best-3
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01071
16771
215271
347871
4186271
Stop Event
node limit
Counts
3 → 147
Calls
Call 1
Inputs
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
(+.f64 (*.f64 re re) (*.f64 im im))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 re) (+.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2) (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) (neg.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 4) (/.f64 (/.f64 (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 3) 2) 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 4) (/.f64 (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 3) 4))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 re (-.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2) (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) -2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2) (/.f64 (*.f64 -2 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) re)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 re (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) (+.f64 (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) -2) re))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re 1/2)) (+.f64 (/.f64 re -2) re))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (/.f64 (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 3) 2) 2) (/.f64 (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) -2) 2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 3) 4) (/.f64 (neg.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 4)) 1/8)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (+.f64 (*.f64 re re) (*.f64 im im)) 2)) (sqrt.f64 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 1/2) (sqrt.f64 (*.f64 (+.f64 (*.f64 re re) (*.f64 im im)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 4)) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (+.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))) (*.f64 re -2)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (+.f64 (*.f64 re 4) (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 4)) (neg.f64 (*.f64 re 4))) 4)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 1)))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (neg.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 re) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 re) (neg.f64 (neg.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2) (neg.f64 (+.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2) re) (neg.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) (-.f64 (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2) re))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2) (-.f64 (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2) re))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) 2) (/.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) (*.f64 re -2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (*.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) 3) 2) (/.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) -2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re -2)) re)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 re -2) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (/.f64 re -2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 re -2) (neg.f64 (-.f64 (*.f64 re 1/2) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 re -2) (/.f64 (-.f64 (*.f64 re 1/2) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) -1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (/.f64 re -2)) (/.f64 re -2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 (neg.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))) (neg.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) 4) (/.f64 (/.f64 (*.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) 3) 2) 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) 4) (/.f64 (*.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) 3) 4))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2) re) (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2) re) (neg.f64 (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2) (*.f64 re 1/2)) (neg.f64 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) (neg.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2) (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) (neg.f64 (+.f64 re (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (+.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) (*.f64 re 1/2)) (neg.f64 (+.f64 re (*.f64 re 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (+.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) (+.f64 re (*.f64 re 1/2))) (/.f64 re -2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (-.f64 (*.f64 re 1/2) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) -1) (/.f64 re -2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (-.f64 re (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) -1) (/.f64 (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) -2) -1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (-.f64 (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2) re) 4) (/.f64 (+.f64 (neg.f64 re) (*.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) 2)) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (-.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (-.f64 (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 4) (*.f64 2 (+.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) 4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) 2) 4) 1/8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) 2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) 2) -2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) 2) 4) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 re 4) (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 4)) -4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (-.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) 2) 2) -4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (-.f64 (*.f64 re 4) (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 4)) -1) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (*.f64 (-.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) 2) 2) -1) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 4) (*.f64 2 (+.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (neg.f64 (*.f64 re 4)) (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 4)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 2 (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 4)) (*.f64 (+.f64 re re) 4)) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 2 (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 4)) (+.f64 (*.f64 re 4) (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 4))) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 2 (+.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))) (*.f64 re 4)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (+.f64 (*.f64 re 4) (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 4)) (*.f64 (+.f64 re re) 4)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (-.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 re re) (*.f64 im (neg.f64 im)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 re re) (-.f64 (*.f64 im im) (*.f64 im (+.f64 im im))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 im im) (*.f64 re (neg.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 im im) (-.f64 (*.f64 im im) (+.f64 (*.f64 re re) (*.f64 im im))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 im im) (/.f64 (+.f64 (-.f64 (*.f64 re (neg.f64 re)) (*.f64 im im)) (-.f64 (*.f64 im im) (*.f64 re re))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (*.f64 re re) (*.f64 im im)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (*.f64 re re) (*.f64 im im)) (/.f64 (*.f64 (neg.f64 re) 0) 2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (-.f64 (*.f64 re (neg.f64 re)) (*.f64 im im)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 re (+.f64 re re)) (-.f64 (*.f64 re re) (*.f64 im im)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 im (+.f64 im im)) (-.f64 (*.f64 im im) (*.f64 re re)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (+.f64 (*.f64 re re) (*.f64 im im)) 2) (/.f64 (+.f64 (*.f64 re re) (*.f64 im im)) -2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 re re) 2) (+.f64 (*.f64 im (neg.f64 im)) (/.f64 (*.f64 re re) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 re re) 2) (-.f64 (/.f64 (*.f64 re re) -2) (*.f64 im im)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 re re) 2) (+.f64 (/.f64 (*.f64 re re) -2) (*.f64 im (neg.f64 im))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 re re) 2) (/.f64 (-.f64 (*.f64 re (neg.f64 re)) (*.f64 im (+.f64 im im))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 im im) 2) (+.f64 (*.f64 re (neg.f64 re)) (/.f64 (*.f64 im im) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 im im) 2) (+.f64 (/.f64 (*.f64 im im) -2) (*.f64 re (neg.f64 re))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 im im) 2) (/.f64 (-.f64 (*.f64 im (neg.f64 im)) (*.f64 re (+.f64 re re))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (*.f64 im im) (*.f64 re re)) (*.f64 re (*.f64 re -2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (*.f64 re re) (/.f64 (*.f64 im im) 2)) (/.f64 (*.f64 im im) -2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (+.f64 (*.f64 re re) (*.f64 im im)) 4) (/.f64 (*.f64 -3 (/.f64 (+.f64 (*.f64 re re) (*.f64 im im)) 2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (*.f64 im im) (/.f64 (*.f64 re re) 2)) (/.f64 (*.f64 re re) -2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (*.f64 re re) (*.f64 im im)) (*.f64 im (/.f64 im -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (/.f64 (*.f64 (+.f64 (*.f64 re re) (*.f64 im im)) 3) 2) 2) (/.f64 (/.f64 (+.f64 (*.f64 re re) (*.f64 im im)) -2) 2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 (+.f64 (*.f64 re re) (*.f64 im im)) 3) 4) (/.f64 (-.f64 (*.f64 re (neg.f64 re)) (*.f64 im im)) 4))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (+.f64 (*.f64 re re) (/.f64 (+.f64 (*.f64 re re) (*.f64 im im)) 2)) 2) (/.f64 (+.f64 (*.f64 -3 (/.f64 (*.f64 im im) 2)) (/.f64 (*.f64 re re) -2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (+.f64 (*.f64 im im) (/.f64 (+.f64 (*.f64 re re) (*.f64 im im)) 2)) 2) (/.f64 (-.f64 (/.f64 (*.f64 im im) -2) (/.f64 (*.f64 re (*.f64 re 3)) 2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (+.f64 (*.f64 im (+.f64 im im)) (+.f64 (*.f64 re re) (*.f64 im im))) 2) (/.f64 (-.f64 (*.f64 im im) (*.f64 re re)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (+.f64 (*.f64 im (+.f64 im im)) (/.f64 (+.f64 (*.f64 re re) (*.f64 im im)) 2)) 2) (/.f64 (-.f64 (/.f64 (-.f64 (*.f64 im im) (*.f64 re re)) 2) (*.f64 re re)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (*.f64 re re) (*.f64 im im)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (+.f64 (*.f64 re re) (*.f64 im im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (-.f64 (*.f64 re (neg.f64 re)) (*.f64 im im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (+.f64 (*.f64 re re) (*.f64 im im)) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (*.f64 re re) (*.f64 im im)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 re (neg.f64 re)) (*.f64 im im)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 (+.f64 (*.f64 re re) (*.f64 im im)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (*.f64 re re) (*.f64 im im)) 4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 (+.f64 (*.f64 re re) (*.f64 im im)) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 re re) (*.f64 im im)) 4)) 1/8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 re re) (*.f64 im im)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (*.f64 re re) (*.f64 im im)) 2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 re (neg.f64 re)) (*.f64 im im)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (*.f64 re re) (*.f64 im im)) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 re re) (*.f64 im im)) 4)) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 re (*.f64 (+.f64 re re) 4)) (*.f64 im (*.f64 2 (*.f64 im 4)))) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 (*.f64 re 4) (*.f64 re 4)) (*.f64 (*.f64 im 4) (*.f64 im 4))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 im (*.f64 2 (*.f64 im 4))) (*.f64 re (*.f64 (+.f64 re re) 4))) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 (*.f64 im 4) (*.f64 im 4)) (*.f64 (*.f64 re 4) (*.f64 re 4))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 re (*.f64 re 4)) (neg.f64 (*.f64 im (*.f64 im 4)))) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 im (*.f64 im 4)) (neg.f64 (*.f64 re (*.f64 re 4)))) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 im (*.f64 im 4)) (*.f64 2 (-.f64 (*.f64 im im) (*.f64 re re)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (+.f64 (*.f64 re re) (*.f64 im im)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (-.f64 (*.f64 re (neg.f64 re)) (*.f64 im im)))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (-.f64 (*.f64 re (neg.f64 re)) (*.f64 im im)))))))

simplify393.0ms (1.1%)

Algorithm
egg-herbie
Rules
1028×rational_best-simplify-65
836×rational_best-simplify-64
774×rational_best-simplify-3
762×rational_best-simplify-50
742×rational_best-simplify-49
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
04317411
111727137
229866735
Stop Event
node limit
Counts
219 → 290
Calls
Call 1
Inputs
im
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) im)
(+.f64 (*.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) im))
(+.f64 (*.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 re 6) (pow.f64 im 5))) im)))
re
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) re)
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 re (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (+.f64 re (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))))
(*.f64 -1 re)
(+.f64 (*.f64 -1 re) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)))
(+.f64 (*.f64 -1 re) (+.f64 (*.f64 1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re))))
(+.f64 (*.f64 -1 re) (+.f64 (*.f64 1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))) (+.f64 (*.f64 -1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)))))
re
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) re)
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 re (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (+.f64 re (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))))
im
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) im)
(+.f64 (*.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) im))
(+.f64 (*.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 re 6) (pow.f64 im 5))) im)))
(*.f64 -1 im)
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 re 2) im)) (*.f64 -1 im))
(+.f64 (*.f64 1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 re 2) im)) (*.f64 -1 im)))
(+.f64 (*.f64 -1/16 (/.f64 (pow.f64 re 6) (pow.f64 im 5))) (+.f64 (*.f64 1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 re 2) im)) (*.f64 -1 im))))
im
(+.f64 (*.f64 -1 re) im)
(+.f64 (*.f64 -1 re) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) im))
(+.f64 (*.f64 -1 re) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) im)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (+.f64 (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (*.f64 -1/8 (pow.f64 im 4)) 2) (*.f64 1/16 (pow.f64 im 8))) (pow.f64 re 7))) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))))
(*.f64 -2 re)
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 -2 re))
(+.f64 (*.f64 1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 -2 re)))
(+.f64 (*.f64 1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))) (+.f64 (*.f64 -1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 -2 re))))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 re 6)))) (pow.f64 im 8)) re)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))))
im
(+.f64 (*.f64 -1 re) im)
(+.f64 (*.f64 -1 re) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) im))
(+.f64 (*.f64 -1 re) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) im)))
(*.f64 -1 im)
(+.f64 (*.f64 -1 re) (*.f64 -1 im))
(+.f64 (*.f64 -1 re) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 re 2) im)) (*.f64 -1 im)))
(+.f64 (*.f64 -1 re) (+.f64 (*.f64 1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 re 2) im)) (*.f64 -1 im))))
(pow.f64 im 2)
(+.f64 (pow.f64 re 2) (pow.f64 im 2))
(+.f64 (pow.f64 re 2) (pow.f64 im 2))
(+.f64 (pow.f64 re 2) (pow.f64 im 2))
(pow.f64 re 2)
(+.f64 (pow.f64 re 2) (pow.f64 im 2))
(+.f64 (pow.f64 re 2) (pow.f64 im 2))
(+.f64 (pow.f64 re 2) (pow.f64 im 2))
(pow.f64 re 2)
(+.f64 (pow.f64 re 2) (pow.f64 im 2))
(+.f64 (pow.f64 re 2) (pow.f64 im 2))
(+.f64 (pow.f64 re 2) (pow.f64 im 2))
(pow.f64 re 2)
(+.f64 (pow.f64 re 2) (pow.f64 im 2))
(+.f64 (pow.f64 re 2) (pow.f64 im 2))
(+.f64 (pow.f64 re 2) (pow.f64 im 2))
(pow.f64 im 2)
(+.f64 (pow.f64 re 2) (pow.f64 im 2))
(+.f64 (pow.f64 re 2) (pow.f64 im 2))
(+.f64 (pow.f64 re 2) (pow.f64 im 2))
(pow.f64 im 2)
(+.f64 (pow.f64 re 2) (pow.f64 im 2))
(+.f64 (pow.f64 re 2) (pow.f64 im 2))
(+.f64 (pow.f64 re 2) (pow.f64 im 2))
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 0)
(+.f64 0 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))
(+.f64 (neg.f64 re) (+.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))
(+.f64 (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2) (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2))
(+.f64 (+.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) (neg.f64 re))
(+.f64 (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 4) (/.f64 (/.f64 (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 3) 2) 2))
(+.f64 (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 4) (/.f64 (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 3) 4))
(-.f64 re (-.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 0)
(-.f64 (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2) (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) -2))
(-.f64 (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2) (/.f64 (*.f64 -2 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) 4))
(-.f64 (+.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) re)
(-.f64 (+.f64 re (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) (+.f64 (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) -2) re))
(-.f64 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re 1/2)) (+.f64 (/.f64 re -2) re))
(-.f64 (/.f64 (/.f64 (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 3) 2) 2) (/.f64 (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) -2) 2))
(-.f64 (/.f64 (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 3) 4) (/.f64 (neg.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) 4))
(*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 1)
(*.f64 1 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))
(*.f64 2 (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 1/2))
(*.f64 (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2) 1/2)
(*.f64 1/2 (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2))
(*.f64 (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 4) 1/4)
(*.f64 1/4 (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 4))
(*.f64 (*.f64 2 (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 4)) 1/8)
(*.f64 (sqrt.f64 (*.f64 (+.f64 (*.f64 re re) (*.f64 im im)) 2)) (sqrt.f64 1/2))
(*.f64 (sqrt.f64 1/2) (sqrt.f64 (*.f64 (+.f64 (*.f64 re re) (*.f64 im im)) 2)))
(/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 1)
(/.f64 (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2) 2)
(/.f64 (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 4) 4)
(/.f64 (*.f64 2 (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 4)) 8)
(/.f64 (+.f64 (*.f64 2 (+.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))) (*.f64 re -2)) 2)
(/.f64 (+.f64 (+.f64 (*.f64 re 4) (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 4)) (neg.f64 (*.f64 re 4))) 4)
(pow.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 1)
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (neg.f64 re))
(+.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) 0)
(+.f64 0 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
(+.f64 (neg.f64 re) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))
(+.f64 (neg.f64 re) (neg.f64 (neg.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))))
(+.f64 (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2) (neg.f64 (+.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))))
(+.f64 (-.f64 (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2) re) (neg.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))
(+.f64 (neg.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) (-.f64 (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2) re))
(+.f64 (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2) (-.f64 (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2) re))
(+.f64 (/.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) 2) (/.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) 2))
(+.f64 (+.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) (*.f64 re -2))
(+.f64 (/.f64 (*.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) 3) 2) (/.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) -2))
(+.f64 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re -2)) re)
(+.f64 (/.f64 re -2) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (/.f64 re -2)))
(+.f64 (/.f64 re -2) (neg.f64 (-.f64 (*.f64 re 1/2) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))))
(+.f64 (/.f64 re -2) (/.f64 (-.f64 (*.f64 re 1/2) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) -1))
(+.f64 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (/.f64 re -2)) (/.f64 re -2))
(+.f64 (neg.f64 (neg.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))) (neg.f64 re))
(+.f64 (/.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) 4) (/.f64 (/.f64 (*.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) 3) 2) 2))
(+.f64 (/.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) 4) (/.f64 (*.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) 3) 4))
(+.f64 (-.f64 (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2) re) (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2))
(+.f64 (-.f64 (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2) re) (neg.f64 (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) -2)))
(+.f64 (-.f64 (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2) (*.f64 re 1/2)) (neg.f64 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re 1/2))))
(+.f64 (-.f64 (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) (neg.f64 re))
(+.f64 (-.f64 (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2) (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) (neg.f64 (+.f64 re (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2))))
(+.f64 (-.f64 (+.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) (*.f64 re 1/2)) (neg.f64 (+.f64 re (*.f64 re 1/2))))
(+.f64 (-.f64 (+.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) (+.f64 re (*.f64 re 1/2))) (/.f64 re -2))
(+.f64 (/.f64 (-.f64 (*.f64 re 1/2) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) -1) (/.f64 re -2))
(+.f64 (/.f64 (-.f64 re (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) -1) (/.f64 (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) -2) -1))
(+.f64 (/.f64 (-.f64 (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2) re) 4) (/.f64 (+.f64 (neg.f64 re) (*.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) 2)) 4))
(*.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) 1)
(*.f64 1 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
(*.f64 -1 (-.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))
(*.f64 (-.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) -1)
(*.f64 2 (*.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) 1/2))
(*.f64 (*.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) 2) 1/2)
(*.f64 1/2 (*.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) 2))
(*.f64 1/2 (-.f64 (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 4) (*.f64 2 (+.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))))
(*.f64 (*.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) 4) 1/4)
(*.f64 1/4 (*.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) 4))
(*.f64 (*.f64 (*.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) 2) 4) 1/8)
(/.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) 1)
(/.f64 (-.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) -1)
(/.f64 (*.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) 2) 2)
(/.f64 (*.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) 4) 4)
(/.f64 (*.f64 (-.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) 2) -2)
(/.f64 (*.f64 (*.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) 2) 4) 8)
(/.f64 (-.f64 (*.f64 re 4) (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 4)) -4)
(/.f64 (*.f64 (*.f64 (-.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) 2) 2) -4)
(/.f64 (/.f64 (-.f64 (*.f64 re 4) (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 4)) -1) 4)
(/.f64 (/.f64 (*.f64 (*.f64 (-.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) 2) 2) -1) 4)
(/.f64 (-.f64 (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 4) (*.f64 2 (+.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))) 2)
(/.f64 (+.f64 (neg.f64 (*.f64 re 4)) (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 4)) 4)
(/.f64 (-.f64 (*.f64 2 (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 4)) (*.f64 (+.f64 re re) 4)) 8)
(/.f64 (-.f64 (*.f64 2 (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 4)) (+.f64 (*.f64 re 4) (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 4))) 4)
(/.f64 (-.f64 (*.f64 2 (+.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))) (*.f64 re 4)) 2)
(/.f64 (-.f64 (+.f64 (*.f64 re 4) (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 4)) (*.f64 (+.f64 re re) 4)) 4)
(pow.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) 1)
(neg.f64 (-.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))
(-.f64 (*.f64 re re) (*.f64 im (neg.f64 im)))
(-.f64 (*.f64 re re) (-.f64 (*.f64 im im) (*.f64 im (+.f64 im im))))
(-.f64 (*.f64 im im) (*.f64 re (neg.f64 re)))
(-.f64 (*.f64 im im) (-.f64 (*.f64 im im) (+.f64 (*.f64 re re) (*.f64 im im))))
(-.f64 (*.f64 im im) (/.f64 (+.f64 (-.f64 (*.f64 re (neg.f64 re)) (*.f64 im im)) (-.f64 (*.f64 im im) (*.f64 re re))) 2))
(-.f64 (+.f64 (*.f64 re re) (*.f64 im im)) 0)
(-.f64 (+.f64 (*.f64 re re) (*.f64 im im)) (/.f64 (*.f64 (neg.f64 re) 0) 2))
(-.f64 0 (-.f64 (*.f64 re (neg.f64 re)) (*.f64 im im)))
(-.f64 (*.f64 re (+.f64 re re)) (-.f64 (*.f64 re re) (*.f64 im im)))
(-.f64 (*.f64 im (+.f64 im im)) (-.f64 (*.f64 im im) (*.f64 re re)))
(-.f64 (/.f64 (+.f64 (*.f64 re re) (*.f64 im im)) 2) (/.f64 (+.f64 (*.f64 re re) (*.f64 im im)) -2))
(-.f64 (/.f64 (*.f64 re re) 2) (+.f64 (*.f64 im (neg.f64 im)) (/.f64 (*.f64 re re) -2)))
(-.f64 (/.f64 (*.f64 re re) 2) (-.f64 (/.f64 (*.f64 re re) -2) (*.f64 im im)))
(-.f64 (/.f64 (*.f64 re re) 2) (+.f64 (/.f64 (*.f64 re re) -2) (*.f64 im (neg.f64 im))))
(-.f64 (/.f64 (*.f64 re re) 2) (/.f64 (-.f64 (*.f64 re (neg.f64 re)) (*.f64 im (+.f64 im im))) 2))
(-.f64 (/.f64 (*.f64 im im) 2) (+.f64 (*.f64 re (neg.f64 re)) (/.f64 (*.f64 im im) -2)))
(-.f64 (/.f64 (*.f64 im im) 2) (+.f64 (/.f64 (*.f64 im im) -2) (*.f64 re (neg.f64 re))))
(-.f64 (/.f64 (*.f64 im im) 2) (/.f64 (-.f64 (*.f64 im (neg.f64 im)) (*.f64 re (+.f64 re re))) 2))
(-.f64 (-.f64 (*.f64 im im) (*.f64 re re)) (*.f64 re (*.f64 re -2)))
(-.f64 (+.f64 (*.f64 re re) (/.f64 (*.f64 im im) 2)) (/.f64 (*.f64 im im) -2))
(-.f64 (/.f64 (+.f64 (*.f64 re re) (*.f64 im im)) 4) (/.f64 (*.f64 -3 (/.f64 (+.f64 (*.f64 re re) (*.f64 im im)) 2)) 2))
(-.f64 (+.f64 (*.f64 im im) (/.f64 (*.f64 re re) 2)) (/.f64 (*.f64 re re) -2))
(-.f64 (-.f64 (*.f64 re re) (*.f64 im im)) (*.f64 im (/.f64 im -1/2)))
(-.f64 (/.f64 (/.f64 (*.f64 (+.f64 (*.f64 re re) (*.f64 im im)) 3) 2) 2) (/.f64 (/.f64 (+.f64 (*.f64 re re) (*.f64 im im)) -2) 2))
(-.f64 (/.f64 (*.f64 (+.f64 (*.f64 re re) (*.f64 im im)) 3) 4) (/.f64 (-.f64 (*.f64 re (neg.f64 re)) (*.f64 im im)) 4))
(-.f64 (/.f64 (+.f64 (*.f64 re re) (/.f64 (+.f64 (*.f64 re re) (*.f64 im im)) 2)) 2) (/.f64 (+.f64 (*.f64 -3 (/.f64 (*.f64 im im) 2)) (/.f64 (*.f64 re re) -2)) 2))
(-.f64 (/.f64 (+.f64 (*.f64 im im) (/.f64 (+.f64 (*.f64 re re) (*.f64 im im)) 2)) 2) (/.f64 (-.f64 (/.f64 (*.f64 im im) -2) (/.f64 (*.f64 re (*.f64 re 3)) 2)) 2))
(-.f64 (/.f64 (+.f64 (*.f64 im (+.f64 im im)) (+.f64 (*.f64 re re) (*.f64 im im))) 2) (/.f64 (-.f64 (*.f64 im im) (*.f64 re re)) 2))
(-.f64 (/.f64 (+.f64 (*.f64 im (+.f64 im im)) (/.f64 (+.f64 (*.f64 re re) (*.f64 im im)) 2)) 2) (/.f64 (-.f64 (/.f64 (-.f64 (*.f64 im im) (*.f64 re re)) 2) (*.f64 re re)) 2))
(*.f64 (+.f64 (*.f64 re re) (*.f64 im im)) 1)
(*.f64 1 (+.f64 (*.f64 re re) (*.f64 im im)))
(*.f64 -1 (-.f64 (*.f64 re (neg.f64 re)) (*.f64 im im)))
(*.f64 2 (*.f64 (+.f64 (*.f64 re re) (*.f64 im im)) 1/2))
(*.f64 (*.f64 (+.f64 (*.f64 re re) (*.f64 im im)) 2) 1/2)
(*.f64 (-.f64 (*.f64 re (neg.f64 re)) (*.f64 im im)) -1)
(*.f64 1/2 (*.f64 (+.f64 (*.f64 re re) (*.f64 im im)) 2))
(*.f64 (*.f64 (+.f64 (*.f64 re re) (*.f64 im im)) 4) 1/4)
(*.f64 1/4 (*.f64 (+.f64 (*.f64 re re) (*.f64 im im)) 4))
(*.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 re re) (*.f64 im im)) 4)) 1/8)
(/.f64 (+.f64 (*.f64 re re) (*.f64 im im)) 1)
(/.f64 (*.f64 (+.f64 (*.f64 re re) (*.f64 im im)) 2) 2)
(/.f64 (-.f64 (*.f64 re (neg.f64 re)) (*.f64 im im)) -1)
(/.f64 (*.f64 (+.f64 (*.f64 re re) (*.f64 im im)) 4) 4)
(/.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 re re) (*.f64 im im)) 4)) 8)
(/.f64 (+.f64 (*.f64 re (*.f64 (+.f64 re re) 4)) (*.f64 im (*.f64 2 (*.f64 im 4)))) 8)
(/.f64 (+.f64 (*.f64 (*.f64 re 4) (*.f64 re 4)) (*.f64 (*.f64 im 4) (*.f64 im 4))) 16)
(/.f64 (+.f64 (*.f64 im (*.f64 2 (*.f64 im 4))) (*.f64 re (*.f64 (+.f64 re re) 4))) 8)
(/.f64 (+.f64 (*.f64 (*.f64 im 4) (*.f64 im 4)) (*.f64 (*.f64 re 4) (*.f64 re 4))) 16)
(/.f64 (-.f64 (*.f64 re (*.f64 re 4)) (neg.f64 (*.f64 im (*.f64 im 4)))) 4)
(/.f64 (-.f64 (*.f64 im (*.f64 im 4)) (neg.f64 (*.f64 re (*.f64 re 4)))) 4)
(/.f64 (-.f64 (*.f64 im (*.f64 im 4)) (*.f64 2 (-.f64 (*.f64 im im) (*.f64 re re)))) 2)
(pow.f64 (+.f64 (*.f64 re re) (*.f64 im im)) 1)
(neg.f64 (-.f64 (*.f64 re (neg.f64 re)) (*.f64 im im)))
(fabs.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
(fabs.f64 (-.f64 (*.f64 re (neg.f64 re)) (*.f64 im im)))
Outputs
im
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) im)
(+.f64 im (*.f64 (pow.f64 re 2) (/.f64 1/2 im)))
(+.f64 im (*.f64 1/2 (/.f64 (pow.f64 re 2) im)))
(+.f64 (*.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) im))
(+.f64 im (+.f64 (*.f64 (pow.f64 re 2) (/.f64 1/2 im)) (*.f64 (pow.f64 re 4) (/.f64 -1/8 (pow.f64 im 3)))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) (+.f64 im (*.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3)))))
(+.f64 im (+.f64 (*.f64 (pow.f64 re 2) (/.f64 1/2 im)) (*.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3)))))
(+.f64 (*.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 re 6) (pow.f64 im 5))) im)))
(+.f64 (+.f64 im (*.f64 1/16 (/.f64 (pow.f64 re 6) (pow.f64 im 5)))) (+.f64 (*.f64 (pow.f64 re 2) (/.f64 1/2 im)) (*.f64 (pow.f64 re 4) (/.f64 -1/8 (pow.f64 im 3)))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) (+.f64 (+.f64 im (*.f64 1/16 (/.f64 (pow.f64 re 6) (pow.f64 im 5)))) (*.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3)))))
(+.f64 (*.f64 (pow.f64 re 2) (/.f64 1/2 im)) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3))) (+.f64 im (*.f64 (pow.f64 re 6) (/.f64 1/16 (pow.f64 im 5))))))
re
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) re)
(+.f64 re (*.f64 (pow.f64 im 2) (/.f64 1/2 re)))
(+.f64 re (*.f64 1/2 (/.f64 (pow.f64 im 2) re)))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 re (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)))))
(+.f64 (*.f64 (pow.f64 im 2) (/.f64 1/2 re)) (+.f64 re (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)))))
(+.f64 (+.f64 re (*.f64 (pow.f64 im 2) (/.f64 1/2 re))) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (+.f64 re (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))))
(+.f64 (*.f64 (pow.f64 im 2) (/.f64 1/2 re)) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))) (+.f64 re (*.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))) (+.f64 re (*.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))))))
(+.f64 (*.f64 (pow.f64 im 2) (/.f64 1/2 re)) (+.f64 re (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))) (*.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))))))
(*.f64 -1 re)
(neg.f64 re)
(+.f64 (*.f64 -1 re) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)))
(+.f64 (neg.f64 re) (*.f64 (pow.f64 im 2) (/.f64 -1/2 re)))
(-.f64 (*.f64 (pow.f64 im 2) (/.f64 -1/2 re)) re)
(+.f64 (*.f64 -1 re) (+.f64 (*.f64 1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re))))
(+.f64 (neg.f64 re) (+.f64 (*.f64 (pow.f64 im 2) (/.f64 -1/2 re)) (*.f64 (pow.f64 im 4) (/.f64 1/8 (pow.f64 re 3)))))
(+.f64 (-.f64 (*.f64 (pow.f64 im 2) (/.f64 -1/2 re)) re) (*.f64 (pow.f64 im 4) (/.f64 1/8 (pow.f64 re 3))))
(+.f64 (*.f64 -1 re) (+.f64 (*.f64 1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))) (+.f64 (*.f64 -1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)))))
(+.f64 (+.f64 (*.f64 (pow.f64 im 2) (/.f64 -1/2 re)) (*.f64 (pow.f64 im 6) (/.f64 -1/16 (pow.f64 re 5)))) (+.f64 (*.f64 (pow.f64 im 4) (/.f64 1/8 (pow.f64 re 3))) (neg.f64 re)))
(+.f64 (neg.f64 re) (+.f64 (*.f64 (pow.f64 im 4) (/.f64 1/8 (pow.f64 re 3))) (+.f64 (*.f64 (pow.f64 im 2) (/.f64 -1/2 re)) (*.f64 (pow.f64 im 6) (/.f64 -1/16 (pow.f64 re 5))))))
(+.f64 (-.f64 (*.f64 (pow.f64 im 2) (/.f64 -1/2 re)) re) (+.f64 (*.f64 (pow.f64 im 4) (/.f64 1/8 (pow.f64 re 3))) (*.f64 (pow.f64 im 6) (/.f64 -1/16 (pow.f64 re 5)))))
re
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) re)
(+.f64 re (*.f64 (pow.f64 im 2) (/.f64 1/2 re)))
(+.f64 re (*.f64 1/2 (/.f64 (pow.f64 im 2) re)))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 re (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)))))
(+.f64 (*.f64 (pow.f64 im 2) (/.f64 1/2 re)) (+.f64 re (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)))))
(+.f64 (+.f64 re (*.f64 (pow.f64 im 2) (/.f64 1/2 re))) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (+.f64 re (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))))
(+.f64 (*.f64 (pow.f64 im 2) (/.f64 1/2 re)) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))) (+.f64 re (*.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))) (+.f64 re (*.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))))))
(+.f64 (*.f64 (pow.f64 im 2) (/.f64 1/2 re)) (+.f64 re (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))) (*.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))))))
im
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) im)
(+.f64 im (*.f64 (pow.f64 re 2) (/.f64 1/2 im)))
(+.f64 im (*.f64 1/2 (/.f64 (pow.f64 re 2) im)))
(+.f64 (*.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) im))
(+.f64 im (+.f64 (*.f64 (pow.f64 re 2) (/.f64 1/2 im)) (*.f64 (pow.f64 re 4) (/.f64 -1/8 (pow.f64 im 3)))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) (+.f64 im (*.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3)))))
(+.f64 im (+.f64 (*.f64 (pow.f64 re 2) (/.f64 1/2 im)) (*.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3)))))
(+.f64 (*.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 re 6) (pow.f64 im 5))) im)))
(+.f64 (+.f64 im (*.f64 1/16 (/.f64 (pow.f64 re 6) (pow.f64 im 5)))) (+.f64 (*.f64 (pow.f64 re 2) (/.f64 1/2 im)) (*.f64 (pow.f64 re 4) (/.f64 -1/8 (pow.f64 im 3)))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) (+.f64 (+.f64 im (*.f64 1/16 (/.f64 (pow.f64 re 6) (pow.f64 im 5)))) (*.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3)))))
(+.f64 (*.f64 (pow.f64 re 2) (/.f64 1/2 im)) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3))) (+.f64 im (*.f64 (pow.f64 re 6) (/.f64 1/16 (pow.f64 im 5))))))
(*.f64 -1 im)
(neg.f64 im)
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 re 2) im)) (*.f64 -1 im))
(+.f64 (neg.f64 im) (*.f64 (pow.f64 re 2) (/.f64 -1/2 im)))
(+.f64 (*.f64 1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 re 2) im)) (*.f64 -1 im)))
(+.f64 (neg.f64 im) (+.f64 (*.f64 (pow.f64 re 2) (/.f64 -1/2 im)) (*.f64 (pow.f64 re 4) (/.f64 1/8 (pow.f64 im 3)))))
(+.f64 (*.f64 -1/16 (/.f64 (pow.f64 re 6) (pow.f64 im 5))) (+.f64 (*.f64 1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 re 2) im)) (*.f64 -1 im))))
(+.f64 (+.f64 (neg.f64 im) (*.f64 (pow.f64 re 2) (/.f64 -1/2 im))) (+.f64 (*.f64 (pow.f64 re 4) (/.f64 1/8 (pow.f64 im 3))) (*.f64 (pow.f64 re 6) (/.f64 -1/16 (pow.f64 im 5)))))
im
(+.f64 (*.f64 -1 re) im)
(+.f64 im (neg.f64 re))
(-.f64 im re)
(+.f64 (*.f64 -1 re) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) im))
(+.f64 im (+.f64 (*.f64 (pow.f64 re 2) (/.f64 1/2 im)) (neg.f64 re)))
(+.f64 im (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) (neg.f64 re)))
(+.f64 (*.f64 (pow.f64 re 2) (/.f64 1/2 im)) (-.f64 im re))
(+.f64 (*.f64 -1 re) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) im)))
(+.f64 (+.f64 im (*.f64 (pow.f64 re 2) (/.f64 1/2 im))) (+.f64 (*.f64 (pow.f64 re 4) (/.f64 -1/8 (pow.f64 im 3))) (neg.f64 re)))
(+.f64 (+.f64 im (*.f64 1/2 (/.f64 (pow.f64 re 2) im))) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3))) (neg.f64 re)))
(+.f64 (*.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3))) (+.f64 (*.f64 (pow.f64 re 2) (/.f64 1/2 im)) (-.f64 im re)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 (pow.f64 im 2) (/.f64 1/2 re))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))
(+.f64 (*.f64 (pow.f64 im 2) (/.f64 1/2 re)) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)))))
(+.f64 (*.f64 (pow.f64 im 2) (/.f64 1/2 re)) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))) (*.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5)))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))) (*.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5)))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (+.f64 (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (*.f64 -1/8 (pow.f64 im 4)) 2) (*.f64 1/16 (pow.f64 im 8))) (pow.f64 re 7))) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))))
(+.f64 (*.f64 (pow.f64 im 2) (/.f64 1/2 re)) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))) (+.f64 (*.f64 (+.f64 (*.f64 1/64 (pow.f64 (pow.f64 im 4) 2)) (*.f64 1/16 (pow.f64 im 8))) (/.f64 -1/2 (pow.f64 re 7))) (*.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (*.f64 (+.f64 (*.f64 (pow.f64 im 8) 1/64) (*.f64 1/16 (pow.f64 im 8))) (/.f64 -1/2 (pow.f64 re 7))))))
(+.f64 (*.f64 (pow.f64 im 2) (/.f64 1/2 re)) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (*.f64 (*.f64 (pow.f64 im 8) 5/64) (/.f64 -1/2 (pow.f64 re 7))))))
(*.f64 -2 re)
(*.f64 re -2)
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 -2 re))
(+.f64 (*.f64 (pow.f64 im 2) (/.f64 -1/2 re)) (*.f64 re -2))
(+.f64 (*.f64 1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 -2 re)))
(+.f64 (*.f64 (pow.f64 im 4) (/.f64 1/8 (pow.f64 re 3))) (+.f64 (*.f64 (pow.f64 im 2) (/.f64 -1/2 re)) (*.f64 re -2)))
(+.f64 (*.f64 (pow.f64 im 2) (/.f64 -1/2 re)) (+.f64 (*.f64 re -2) (*.f64 (pow.f64 im 4) (/.f64 1/8 (pow.f64 re 3)))))
(+.f64 (*.f64 (pow.f64 im 2) (/.f64 -1/2 re)) (+.f64 (*.f64 (pow.f64 im 4) (/.f64 1/8 (pow.f64 re 3))) (*.f64 re -2)))
(+.f64 (*.f64 1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))) (+.f64 (*.f64 -1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 -2 re))))
(+.f64 (*.f64 (pow.f64 im 4) (/.f64 1/8 (pow.f64 re 3))) (+.f64 (*.f64 (pow.f64 im 6) (/.f64 -1/16 (pow.f64 re 5))) (+.f64 (*.f64 (pow.f64 im 2) (/.f64 -1/2 re)) (*.f64 re -2))))
(+.f64 (*.f64 (pow.f64 im 4) (/.f64 1/8 (pow.f64 re 3))) (+.f64 (*.f64 (pow.f64 im 2) (/.f64 -1/2 re)) (+.f64 (*.f64 re -2) (*.f64 (pow.f64 im 6) (/.f64 -1/16 (pow.f64 re 5))))))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 (pow.f64 im 2) (/.f64 1/2 re))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))
(+.f64 (*.f64 (pow.f64 im 2) (/.f64 1/2 re)) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)))))
(+.f64 (*.f64 (pow.f64 im 2) (/.f64 1/2 re)) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))) (*.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5)))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))) (*.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5)))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 re 6)))) (pow.f64 im 8)) re)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))))
(+.f64 (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))) (*.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5)))) (+.f64 (*.f64 (*.f64 (pow.f64 im 8) (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 re 6))))) (/.f64 -1/2 re)) (*.f64 (pow.f64 im 2) (/.f64 1/2 re))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))) (*.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5)))) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 im 8) (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 re 6))))) re))))
(+.f64 (+.f64 (*.f64 (pow.f64 im 2) (/.f64 1/2 re)) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))) (*.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))))) (*.f64 (pow.f64 im 8) (*.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6))) (/.f64 -1/2 re))))
im
(+.f64 (*.f64 -1 re) im)
(+.f64 im (neg.f64 re))
(-.f64 im re)
(+.f64 (*.f64 -1 re) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) im))
(+.f64 im (+.f64 (*.f64 (pow.f64 re 2) (/.f64 1/2 im)) (neg.f64 re)))
(+.f64 im (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) (neg.f64 re)))
(+.f64 (*.f64 (pow.f64 re 2) (/.f64 1/2 im)) (-.f64 im re))
(+.f64 (*.f64 -1 re) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) im)))
(+.f64 (+.f64 im (*.f64 (pow.f64 re 2) (/.f64 1/2 im))) (+.f64 (*.f64 (pow.f64 re 4) (/.f64 -1/8 (pow.f64 im 3))) (neg.f64 re)))
(+.f64 (+.f64 im (*.f64 1/2 (/.f64 (pow.f64 re 2) im))) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3))) (neg.f64 re)))
(+.f64 (*.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3))) (+.f64 (*.f64 (pow.f64 re 2) (/.f64 1/2 im)) (-.f64 im re)))
(*.f64 -1 im)
(neg.f64 im)
(+.f64 (*.f64 -1 re) (*.f64 -1 im))
(+.f64 (neg.f64 re) (neg.f64 im))
(-.f64 0 (+.f64 im re))
(-.f64 (neg.f64 re) im)
(+.f64 (*.f64 -1 re) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 re 2) im)) (*.f64 -1 im)))
(+.f64 (neg.f64 re) (+.f64 (neg.f64 im) (*.f64 (pow.f64 re 2) (/.f64 -1/2 im))))
(+.f64 (*.f64 (pow.f64 re 2) (/.f64 -1/2 im)) (-.f64 0 (+.f64 im re)))
(-.f64 (-.f64 (*.f64 (pow.f64 re 2) (/.f64 -1/2 im)) re) im)
(+.f64 (*.f64 -1 re) (+.f64 (*.f64 1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 re 2) im)) (*.f64 -1 im))))
(+.f64 (neg.f64 re) (+.f64 (neg.f64 im) (+.f64 (*.f64 (pow.f64 re 2) (/.f64 -1/2 im)) (*.f64 (pow.f64 re 4) (/.f64 1/8 (pow.f64 im 3))))))
(+.f64 (*.f64 (pow.f64 re 4) (/.f64 1/8 (pow.f64 im 3))) (+.f64 (*.f64 (pow.f64 re 2) (/.f64 -1/2 im)) (-.f64 0 (+.f64 im re))))
(+.f64 (*.f64 (pow.f64 re 4) (/.f64 1/8 (pow.f64 im 3))) (-.f64 (-.f64 (*.f64 (pow.f64 re 2) (/.f64 -1/2 im)) re) im))
(pow.f64 im 2)
(+.f64 (pow.f64 re 2) (pow.f64 im 2))
(+.f64 (pow.f64 re 2) (pow.f64 im 2))
(+.f64 (pow.f64 re 2) (pow.f64 im 2))
(pow.f64 re 2)
(+.f64 (pow.f64 re 2) (pow.f64 im 2))
(+.f64 (pow.f64 re 2) (pow.f64 im 2))
(+.f64 (pow.f64 re 2) (pow.f64 im 2))
(pow.f64 re 2)
(+.f64 (pow.f64 re 2) (pow.f64 im 2))
(+.f64 (pow.f64 re 2) (pow.f64 im 2))
(+.f64 (pow.f64 re 2) (pow.f64 im 2))
(pow.f64 re 2)
(+.f64 (pow.f64 re 2) (pow.f64 im 2))
(+.f64 (pow.f64 re 2) (pow.f64 im 2))
(+.f64 (pow.f64 re 2) (pow.f64 im 2))
(pow.f64 im 2)
(+.f64 (pow.f64 re 2) (pow.f64 im 2))
(+.f64 (pow.f64 re 2) (pow.f64 im 2))
(+.f64 (pow.f64 re 2) (pow.f64 im 2))
(pow.f64 im 2)
(+.f64 (pow.f64 re 2) (pow.f64 im 2))
(+.f64 (pow.f64 re 2) (pow.f64 im 2))
(+.f64 (pow.f64 re 2) (pow.f64 im 2))
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 0)
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
(+.f64 0 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
(+.f64 (neg.f64 re) (+.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
(+.f64 (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2) (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2))
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
(+.f64 (+.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) (neg.f64 re))
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
(+.f64 (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 4) (/.f64 (/.f64 (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 3) 2) 2))
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
(+.f64 (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 4) (/.f64 (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 3) 4))
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
(-.f64 re (-.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 0)
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
(-.f64 (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2) (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) -2))
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
(-.f64 (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2) (/.f64 (*.f64 -2 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) 4))
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
(-.f64 (+.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) re)
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
(-.f64 (+.f64 re (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) (+.f64 (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) -2) re))
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
(-.f64 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re 1/2)) (+.f64 (/.f64 re -2) re))
(-.f64 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 1/2 re)) (+.f64 re (/.f64 re -2)))
(+.f64 (-.f64 (*.f64 1/2 re) (+.f64 re (/.f64 re -2))) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))
(-.f64 (/.f64 (/.f64 (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 3) 2) 2) (/.f64 (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) -2) 2))
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
(-.f64 (/.f64 (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 3) 4) (/.f64 (neg.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) 4))
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
(*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 1)
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
(*.f64 1 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
(*.f64 2 (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 1/2))
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
(*.f64 (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2) 1/2)
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
(*.f64 1/2 (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2))
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
(*.f64 (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 4) 1/4)
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
(*.f64 1/4 (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 4))
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
(*.f64 (*.f64 2 (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 4)) 1/8)
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
(*.f64 (sqrt.f64 (*.f64 (+.f64 (*.f64 re re) (*.f64 im im)) 2)) (sqrt.f64 1/2))
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
(*.f64 (sqrt.f64 1/2) (sqrt.f64 (*.f64 (+.f64 (*.f64 re re) (*.f64 im im)) 2)))
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
(/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 1)
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
(/.f64 (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2) 2)
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
(/.f64 (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 4) 4)
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
(/.f64 (*.f64 2 (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 4)) 8)
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
(/.f64 (+.f64 (*.f64 2 (+.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))) (*.f64 re -2)) 2)
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
(/.f64 (+.f64 (+.f64 (*.f64 re 4) (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 4)) (neg.f64 (*.f64 re 4))) 4)
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
(pow.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 1)
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (neg.f64 re))
(+.f64 (neg.f64 re) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
(+.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) 0)
(+.f64 (neg.f64 re) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
(+.f64 0 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
(+.f64 (neg.f64 re) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
(+.f64 (neg.f64 re) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
(+.f64 (neg.f64 re) (neg.f64 (neg.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))))
(+.f64 (neg.f64 re) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
(+.f64 (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2) (neg.f64 (+.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))))
(+.f64 (neg.f64 re) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
(+.f64 (-.f64 (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2) re) (neg.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))
(+.f64 (neg.f64 re) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
(+.f64 (neg.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) (-.f64 (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2) re))
(+.f64 (neg.f64 re) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
(+.f64 (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2) (-.f64 (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2) re))
(+.f64 (neg.f64 re) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
(+.f64 (/.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) 2) (/.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) 2))
(+.f64 (neg.f64 re) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
(+.f64 (+.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) (*.f64 re -2))
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (+.f64 re (*.f64 re -2)))
(+.f64 (/.f64 (*.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) 3) 2) (/.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) -2))
(+.f64 (/.f64 (*.f64 3 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)) 2) (/.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) -2))
(+.f64 (/.f64 (*.f64 3 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)) 2) (/.f64 (-.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) 2))
(+.f64 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re -2)) re)
(+.f64 (+.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) (*.f64 re -2))
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (+.f64 re (*.f64 re -2)))
(+.f64 (/.f64 re -2) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (/.f64 re -2)))
(+.f64 (neg.f64 re) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
(+.f64 (/.f64 re -2) (neg.f64 (-.f64 (*.f64 re 1/2) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))))
(+.f64 (/.f64 re -2) (neg.f64 (-.f64 (*.f64 1/2 re) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))))
(+.f64 (/.f64 re -2) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 1/2 re)))
(+.f64 (/.f64 re -2) (/.f64 (-.f64 (*.f64 re 1/2) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) -1))
(+.f64 (/.f64 re -2) (neg.f64 (-.f64 (*.f64 1/2 re) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))))
(+.f64 (/.f64 re -2) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 1/2 re)))
(+.f64 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (/.f64 re -2)) (/.f64 re -2))
(+.f64 (neg.f64 re) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
(+.f64 (neg.f64 (neg.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))) (neg.f64 re))
(+.f64 (neg.f64 re) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
(+.f64 (/.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) 4) (/.f64 (/.f64 (*.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) 3) 2) 2))
(+.f64 (neg.f64 re) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
(+.f64 (/.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) 4) (/.f64 (*.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) 3) 4))
(+.f64 (neg.f64 re) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
(+.f64 (-.f64 (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2) re) (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2))
(+.f64 (neg.f64 re) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
(+.f64 (-.f64 (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2) re) (neg.f64 (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) -2)))
(+.f64 (neg.f64 re) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
(+.f64 (-.f64 (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2) (*.f64 re 1/2)) (neg.f64 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re 1/2))))
(-.f64 (*.f64 2 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) (+.f64 (*.f64 1/2 re) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 1/2 re))))
(-.f64 (*.f64 2 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (+.f64 (*.f64 1/2 re) (*.f64 1/2 re))))
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (neg.f64 (*.f64 re 1)))
(+.f64 (-.f64 (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) (neg.f64 re))
(+.f64 (neg.f64 re) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
(+.f64 (-.f64 (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2) (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) (neg.f64 (+.f64 re (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2))))
(+.f64 (neg.f64 re) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
(+.f64 (-.f64 (+.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) (*.f64 re 1/2)) (neg.f64 (+.f64 re (*.f64 re 1/2))))
(-.f64 (*.f64 2 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) (+.f64 (*.f64 1/2 re) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 1/2 re))))
(-.f64 (*.f64 2 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (+.f64 (*.f64 1/2 re) (*.f64 1/2 re))))
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (neg.f64 (*.f64 re 1)))
(+.f64 (-.f64 (+.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) (+.f64 re (*.f64 re 1/2))) (/.f64 re -2))
(+.f64 (/.f64 re -2) (neg.f64 (-.f64 (*.f64 1/2 re) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))))
(+.f64 (/.f64 re -2) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 1/2 re)))
(+.f64 (/.f64 (-.f64 (*.f64 re 1/2) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) -1) (/.f64 re -2))
(+.f64 (/.f64 re -2) (neg.f64 (-.f64 (*.f64 1/2 re) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))))
(+.f64 (/.f64 re -2) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 1/2 re)))
(+.f64 (/.f64 (-.f64 re (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) -1) (/.f64 (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) -2) -1))
(+.f64 (neg.f64 re) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
(+.f64 (/.f64 (-.f64 (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2) re) 4) (/.f64 (+.f64 (neg.f64 re) (*.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) 2)) 4))
(/.f64 (+.f64 (-.f64 (*.f64 2 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) re) (+.f64 (neg.f64 re) (*.f64 2 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))) 4)
(/.f64 (+.f64 (neg.f64 re) (+.f64 (*.f64 2 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)) (-.f64 (*.f64 2 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) re))) 4)
(+.f64 (/.f64 (-.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) -2) (/.f64 (-.f64 (*.f64 2 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) (+.f64 re re)) 4))
(*.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) 1)
(+.f64 (neg.f64 re) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
(*.f64 1 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
(+.f64 (neg.f64 re) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
(*.f64 -1 (-.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))
(+.f64 (neg.f64 re) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
(*.f64 (-.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) -1)
(+.f64 (neg.f64 re) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
(*.f64 2 (*.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) 1/2))
(+.f64 (neg.f64 re) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
(*.f64 (*.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) 2) 1/2)
(+.f64 (neg.f64 re) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
(*.f64 1/2 (*.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) 2))
(+.f64 (neg.f64 re) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
(*.f64 1/2 (-.f64 (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 4) (*.f64 2 (+.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))))
(+.f64 (neg.f64 re) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
(*.f64 (*.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) 4) 1/4)
(+.f64 (neg.f64 re) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
(*.f64 1/4 (*.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) 4))
(+.f64 (neg.f64 re) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
(*.f64 (*.f64 (*.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) 2) 4) 1/8)
(+.f64 (neg.f64 re) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
(/.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) 1)
(+.f64 (neg.f64 re) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
(/.f64 (-.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) -1)
(+.f64 (neg.f64 re) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
(/.f64 (*.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) 2) 2)
(+.f64 (neg.f64 re) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
(/.f64 (*.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) 4) 4)
(+.f64 (neg.f64 re) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
(/.f64 (*.f64 (-.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) 2) -2)
(+.f64 (neg.f64 re) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
(/.f64 (*.f64 (*.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) 2) 4) 8)
(+.f64 (neg.f64 re) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
(/.f64 (-.f64 (*.f64 re 4) (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 4)) -4)
(+.f64 (neg.f64 re) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
(/.f64 (*.f64 (*.f64 (-.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) 2) 2) -4)
(+.f64 (neg.f64 re) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
(/.f64 (/.f64 (-.f64 (*.f64 re 4) (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 4)) -1) 4)
(+.f64 (neg.f64 re) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
(/.f64 (/.f64 (*.f64 (*.f64 (-.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) 2) 2) -1) 4)
(+.f64 (neg.f64 re) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
(/.f64 (-.f64 (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 4) (*.f64 2 (+.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))) 2)
(+.f64 (neg.f64 re) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
(/.f64 (+.f64 (neg.f64 (*.f64 re 4)) (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 4)) 4)
(+.f64 (neg.f64 re) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
(/.f64 (-.f64 (*.f64 2 (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 4)) (*.f64 (+.f64 re re) 4)) 8)
(/.f64 (-.f64 (*.f64 2 (*.f64 4 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))) (*.f64 4 (+.f64 re re))) 8)
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (/.f64 (*.f64 4 (+.f64 re re)) 8))
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (/.f64 (*.f64 re 8) 8))
(/.f64 (-.f64 (*.f64 2 (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 4)) (+.f64 (*.f64 re 4) (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 4))) 4)
(+.f64 (neg.f64 re) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
(/.f64 (-.f64 (*.f64 2 (+.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))) (*.f64 re 4)) 2)
(-.f64 (+.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) (/.f64 (*.f64 re 8) 4))
(/.f64 (-.f64 (+.f64 (*.f64 re 4) (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 4)) (*.f64 (+.f64 re re) 4)) 4)
(/.f64 (-.f64 (*.f64 2 (+.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))) (*.f64 re 4)) 2)
(-.f64 (+.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) (/.f64 (*.f64 re 8) 4))
(pow.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) 1)
(+.f64 (neg.f64 re) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
(neg.f64 (-.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))
(+.f64 (neg.f64 re) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
(-.f64 (*.f64 re re) (*.f64 im (neg.f64 im)))
(+.f64 (*.f64 re re) (*.f64 im im))
(-.f64 (*.f64 re re) (-.f64 (*.f64 im im) (*.f64 im (+.f64 im im))))
(-.f64 (*.f64 re re) (*.f64 im (neg.f64 im)))
(+.f64 (*.f64 re re) (*.f64 im im))
(-.f64 (*.f64 im im) (*.f64 re (neg.f64 re)))
(-.f64 (*.f64 re re) (*.f64 im (neg.f64 im)))
(+.f64 (*.f64 re re) (*.f64 im im))
(-.f64 (*.f64 im im) (-.f64 (*.f64 im im) (+.f64 (*.f64 re re) (*.f64 im im))))
(-.f64 (*.f64 re re) (*.f64 im (neg.f64 im)))
(+.f64 (*.f64 re re) (*.f64 im im))
(-.f64 (*.f64 im im) (/.f64 (+.f64 (-.f64 (*.f64 re (neg.f64 re)) (*.f64 im im)) (-.f64 (*.f64 im im) (*.f64 re re))) 2))
(-.f64 (*.f64 re re) (*.f64 im (neg.f64 im)))
(+.f64 (*.f64 re re) (*.f64 im im))
(-.f64 (+.f64 (*.f64 re re) (*.f64 im im)) 0)
(-.f64 (*.f64 re re) (*.f64 im (neg.f64 im)))
(+.f64 (*.f64 re re) (*.f64 im im))
(-.f64 (+.f64 (*.f64 re re) (*.f64 im im)) (/.f64 (*.f64 (neg.f64 re) 0) 2))
(-.f64 (*.f64 re re) (*.f64 im (neg.f64 im)))
(+.f64 (*.f64 re re) (*.f64 im im))
(-.f64 0 (-.f64 (*.f64 re (neg.f64 re)) (*.f64 im im)))
(-.f64 (*.f64 re re) (*.f64 im (neg.f64 im)))
(+.f64 (*.f64 re re) (*.f64 im im))
(-.f64 (*.f64 re (+.f64 re re)) (-.f64 (*.f64 re re) (*.f64 im im)))
(-.f64 (*.f64 re re) (*.f64 im (neg.f64 im)))
(+.f64 (*.f64 re re) (*.f64 im im))
(-.f64 (*.f64 im (+.f64 im im)) (-.f64 (*.f64 im im) (*.f64 re re)))
(-.f64 (*.f64 re re) (*.f64 im (neg.f64 im)))
(+.f64 (*.f64 re re) (*.f64 im im))
(-.f64 (/.f64 (+.f64 (*.f64 re re) (*.f64 im im)) 2) (/.f64 (+.f64 (*.f64 re re) (*.f64 im im)) -2))
(-.f64 (*.f64 re re) (*.f64 im (neg.f64 im)))
(+.f64 (*.f64 re re) (*.f64 im im))
(-.f64 (/.f64 (*.f64 re re) 2) (+.f64 (*.f64 im (neg.f64 im)) (/.f64 (*.f64 re re) -2)))
(-.f64 (*.f64 re re) (*.f64 im (neg.f64 im)))
(+.f64 (*.f64 re re) (*.f64 im im))
(-.f64 (/.f64 (*.f64 re re) 2) (-.f64 (/.f64 (*.f64 re re) -2) (*.f64 im im)))
(-.f64 (*.f64 re re) (*.f64 im (neg.f64 im)))
(+.f64 (*.f64 re re) (*.f64 im im))
(-.f64 (/.f64 (*.f64 re re) 2) (+.f64 (/.f64 (*.f64 re re) -2) (*.f64 im (neg.f64 im))))
(-.f64 (*.f64 re re) (*.f64 im (neg.f64 im)))
(+.f64 (*.f64 re re) (*.f64 im im))
(-.f64 (/.f64 (*.f64 re re) 2) (/.f64 (-.f64 (*.f64 re (neg.f64 re)) (*.f64 im (+.f64 im im))) 2))
(-.f64 (*.f64 re re) (*.f64 im (neg.f64 im)))
(+.f64 (*.f64 re re) (*.f64 im im))
(-.f64 (/.f64 (*.f64 im im) 2) (+.f64 (*.f64 re (neg.f64 re)) (/.f64 (*.f64 im im) -2)))
(-.f64 (*.f64 re re) (*.f64 im (neg.f64 im)))
(+.f64 (*.f64 re re) (*.f64 im im))
(-.f64 (/.f64 (*.f64 im im) 2) (+.f64 (/.f64 (*.f64 im im) -2) (*.f64 re (neg.f64 re))))
(-.f64 (*.f64 re re) (*.f64 im (neg.f64 im)))
(+.f64 (*.f64 re re) (*.f64 im im))
(-.f64 (/.f64 (*.f64 im im) 2) (/.f64 (-.f64 (*.f64 im (neg.f64 im)) (*.f64 re (+.f64 re re))) 2))
(-.f64 (*.f64 re re) (*.f64 im (neg.f64 im)))
(+.f64 (*.f64 re re) (*.f64 im im))
(-.f64 (-.f64 (*.f64 im im) (*.f64 re re)) (*.f64 re (*.f64 re -2)))
(-.f64 (*.f64 re re) (*.f64 im (neg.f64 im)))
(+.f64 (*.f64 re re) (*.f64 im im))
(-.f64 (+.f64 (*.f64 re re) (/.f64 (*.f64 im im) 2)) (/.f64 (*.f64 im im) -2))
(-.f64 (+.f64 (*.f64 re re) (/.f64 (*.f64 im im) 2)) (*.f64 (*.f64 im im) -1/2))
(-.f64 (+.f64 (*.f64 re re) (/.f64 (*.f64 im im) 2)) (*.f64 -1/2 (*.f64 im im)))
(-.f64 (/.f64 (+.f64 (*.f64 re re) (*.f64 im im)) 4) (/.f64 (*.f64 -3 (/.f64 (+.f64 (*.f64 re re) (*.f64 im im)) 2)) 2))
(-.f64 (/.f64 (+.f64 (*.f64 re re) (*.f64 im im)) 4) (/.f64 (*.f64 (+.f64 (*.f64 re re) (*.f64 im im)) -3/2) 2))
(/.f64 (-.f64 (+.f64 (*.f64 re re) (*.f64 im im)) (*.f64 -3 (+.f64 (*.f64 re re) (*.f64 im im)))) 4)
(/.f64 (-.f64 (+.f64 (*.f64 re re) (*.f64 im im)) (*.f64 (+.f64 (*.f64 re re) (*.f64 im im)) -3)) 4)
(-.f64 (+.f64 (*.f64 im im) (/.f64 (*.f64 re re) 2)) (/.f64 (*.f64 re re) -2))
(-.f64 (*.f64 re re) (*.f64 im (neg.f64 im)))
(+.f64 (*.f64 re re) (*.f64 im im))
(-.f64 (-.f64 (*.f64 re re) (*.f64 im im)) (*.f64 im (/.f64 im -1/2)))
(-.f64 (*.f64 re re) (+.f64 (*.f64 im (/.f64 im -1/2)) (*.f64 im im)))
(-.f64 (*.f64 re re) (*.f64 im (+.f64 (/.f64 im -1/2) im)))
(-.f64 (*.f64 re re) (*.f64 im (+.f64 im (*.f64 im -2))))
(-.f64 (/.f64 (/.f64 (*.f64 (+.f64 (*.f64 re re) (*.f64 im im)) 3) 2) 2) (/.f64 (/.f64 (+.f64 (*.f64 re re) (*.f64 im im)) -2) 2))
(-.f64 (/.f64 (*.f64 3 (+.f64 (*.f64 re re) (*.f64 im im))) 4) (/.f64 (+.f64 (*.f64 re re) (*.f64 im im)) -4))
(-.f64 (/.f64 (*.f64 (+.f64 (*.f64 re re) (*.f64 im im)) 6) 8) (/.f64 (+.f64 (*.f64 re re) (*.f64 im im)) -4))
(/.f64 (-.f64 (*.f64 im im) (-.f64 (*.f64 re (neg.f64 re)) (*.f64 3 (+.f64 (*.f64 re re) (*.f64 im im))))) 4)
(-.f64 (/.f64 (*.f64 (+.f64 (*.f64 re re) (*.f64 im im)) 3) 4) (/.f64 (-.f64 (*.f64 re (neg.f64 re)) (*.f64 im im)) 4))
(-.f64 (/.f64 (*.f64 3 (+.f64 (*.f64 re re) (*.f64 im im))) 4) (/.f64 (+.f64 (*.f64 re re) (*.f64 im im)) -4))
(-.f64 (/.f64 (*.f64 (+.f64 (*.f64 re re) (*.f64 im im)) 6) 8) (/.f64 (+.f64 (*.f64 re re) (*.f64 im im)) -4))
(/.f64 (-.f64 (*.f64 im im) (-.f64 (*.f64 re (neg.f64 re)) (*.f64 3 (+.f64 (*.f64 re re) (*.f64 im im))))) 4)
(-.f64 (/.f64 (+.f64 (*.f64 re re) (/.f64 (+.f64 (*.f64 re re) (*.f64 im im)) 2)) 2) (/.f64 (+.f64 (*.f64 -3 (/.f64 (*.f64 im im) 2)) (/.f64 (*.f64 re re) -2)) 2))
(/.f64 (-.f64 (+.f64 (*.f64 re re) (/.f64 (+.f64 (*.f64 re re) (*.f64 im im)) 2)) (+.f64 (/.f64 (*.f64 re re) -2) (*.f64 (*.f64 im im) -3/2))) 2)
(/.f64 (-.f64 (+.f64 (*.f64 re re) (/.f64 (+.f64 (*.f64 re re) (*.f64 im im)) 2)) (+.f64 (*.f64 (*.f64 re re) -1/2) (*.f64 (*.f64 im im) -3/2))) 2)
(/.f64 (+.f64 (/.f64 (*.f64 re re) 2) (-.f64 (+.f64 (*.f64 re re) (/.f64 (+.f64 (*.f64 re re) (*.f64 im im)) 2)) (*.f64 im (*.f64 im -3/2)))) 2)
(-.f64 (/.f64 (+.f64 (*.f64 im im) (/.f64 (+.f64 (*.f64 re re) (*.f64 im im)) 2)) 2) (/.f64 (-.f64 (/.f64 (*.f64 im im) -2) (/.f64 (*.f64 re (*.f64 re 3)) 2)) 2))
(/.f64 (-.f64 (+.f64 (*.f64 im im) (/.f64 (+.f64 (*.f64 re re) (*.f64 im im)) 2)) (-.f64 (/.f64 (*.f64 im im) -2) (/.f64 (*.f64 re (*.f64 re 3)) 2))) 2)
(-.f64 (+.f64 (/.f64 (*.f64 im im) 2) (/.f64 (+.f64 (*.f64 re re) (*.f64 im im)) 4)) (-.f64 (/.f64 (*.f64 im im) -4) (/.f64 (*.f64 re (*.f64 re 3)) 4)))
(-.f64 (/.f64 (*.f64 re (*.f64 re 3)) 4) (-.f64 (/.f64 (*.f64 im im) -4) (/.f64 (+.f64 (*.f64 re re) (*.f64 im (+.f64 im (+.f64 im im)))) 4)))
(-.f64 (/.f64 (+.f64 (*.f64 im (+.f64 im im)) (+.f64 (*.f64 re re) (*.f64 im im))) 2) (/.f64 (-.f64 (*.f64 im im) (*.f64 re re)) 2))
(-.f64 (*.f64 re re) (*.f64 im (neg.f64 im)))
(+.f64 (*.f64 re re) (*.f64 im im))
(-.f64 (/.f64 (+.f64 (*.f64 im (+.f64 im im)) (/.f64 (+.f64 (*.f64 re re) (*.f64 im im)) 2)) 2) (/.f64 (-.f64 (/.f64 (-.f64 (*.f64 im im) (*.f64 re re)) 2) (*.f64 re re)) 2))
(/.f64 (-.f64 (+.f64 (*.f64 im (+.f64 im im)) (/.f64 (+.f64 (*.f64 re re) (*.f64 im im)) 2)) (-.f64 (/.f64 (-.f64 (*.f64 im im) (*.f64 re re)) 2) (*.f64 re re))) 2)
(-.f64 (/.f64 (*.f64 re re) 2) (-.f64 (/.f64 (*.f64 (+.f64 im re) (-.f64 im re)) 4) (+.f64 (*.f64 im im) (/.f64 (+.f64 (*.f64 re re) (*.f64 im im)) 4))))
(-.f64 (/.f64 (*.f64 re re) 2) (-.f64 (/.f64 (-.f64 (*.f64 im im) (*.f64 re re)) 4) (+.f64 (*.f64 im im) (/.f64 (+.f64 (*.f64 re re) (*.f64 im im)) 4))))
(*.f64 (+.f64 (*.f64 re re) (*.f64 im im)) 1)
(-.f64 (*.f64 re re) (*.f64 im (neg.f64 im)))
(+.f64 (*.f64 re re) (*.f64 im im))
(*.f64 1 (+.f64 (*.f64 re re) (*.f64 im im)))
(-.f64 (*.f64 re re) (*.f64 im (neg.f64 im)))
(+.f64 (*.f64 re re) (*.f64 im im))
(*.f64 -1 (-.f64 (*.f64 re (neg.f64 re)) (*.f64 im im)))
(-.f64 (*.f64 re re) (*.f64 im (neg.f64 im)))
(+.f64 (*.f64 re re) (*.f64 im im))
(*.f64 2 (*.f64 (+.f64 (*.f64 re re) (*.f64 im im)) 1/2))
(-.f64 (*.f64 re re) (*.f64 im (neg.f64 im)))
(+.f64 (*.f64 re re) (*.f64 im im))
(*.f64 (*.f64 (+.f64 (*.f64 re re) (*.f64 im im)) 2) 1/2)
(-.f64 (*.f64 re re) (*.f64 im (neg.f64 im)))
(+.f64 (*.f64 re re) (*.f64 im im))
(*.f64 (-.f64 (*.f64 re (neg.f64 re)) (*.f64 im im)) -1)
(-.f64 (*.f64 re re) (*.f64 im (neg.f64 im)))
(+.f64 (*.f64 re re) (*.f64 im im))
(*.f64 1/2 (*.f64 (+.f64 (*.f64 re re) (*.f64 im im)) 2))
(-.f64 (*.f64 re re) (*.f64 im (neg.f64 im)))
(+.f64 (*.f64 re re) (*.f64 im im))
(*.f64 (*.f64 (+.f64 (*.f64 re re) (*.f64 im im)) 4) 1/4)
(-.f64 (*.f64 re re) (*.f64 im (neg.f64 im)))
(+.f64 (*.f64 re re) (*.f64 im im))
(*.f64 1/4 (*.f64 (+.f64 (*.f64 re re) (*.f64 im im)) 4))
(-.f64 (*.f64 re re) (*.f64 im (neg.f64 im)))
(+.f64 (*.f64 re re) (*.f64 im im))
(*.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 re re) (*.f64 im im)) 4)) 1/8)
(-.f64 (*.f64 re re) (*.f64 im (neg.f64 im)))
(+.f64 (*.f64 re re) (*.f64 im im))
(/.f64 (+.f64 (*.f64 re re) (*.f64 im im)) 1)
(-.f64 (*.f64 re re) (*.f64 im (neg.f64 im)))
(+.f64 (*.f64 re re) (*.f64 im im))
(/.f64 (*.f64 (+.f64 (*.f64 re re) (*.f64 im im)) 2) 2)
(-.f64 (*.f64 re re) (*.f64 im (neg.f64 im)))
(+.f64 (*.f64 re re) (*.f64 im im))
(/.f64 (-.f64 (*.f64 re (neg.f64 re)) (*.f64 im im)) -1)
(-.f64 (*.f64 re re) (*.f64 im (neg.f64 im)))
(+.f64 (*.f64 re re) (*.f64 im im))
(/.f64 (*.f64 (+.f64 (*.f64 re re) (*.f64 im im)) 4) 4)
(-.f64 (*.f64 re re) (*.f64 im (neg.f64 im)))
(+.f64 (*.f64 re re) (*.f64 im im))
(/.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 re re) (*.f64 im im)) 4)) 8)
(-.f64 (*.f64 re re) (*.f64 im (neg.f64 im)))
(+.f64 (*.f64 re re) (*.f64 im im))
(/.f64 (+.f64 (*.f64 re (*.f64 (+.f64 re re) 4)) (*.f64 im (*.f64 2 (*.f64 im 4)))) 8)
(/.f64 (+.f64 (*.f64 4 (*.f64 re (+.f64 re re))) (*.f64 (*.f64 im 4) (*.f64 2 im))) 8)
(/.f64 (+.f64 (*.f64 re (*.f64 4 (+.f64 re re))) (*.f64 im (*.f64 im 8))) 8)
(/.f64 (-.f64 (*.f64 4 (*.f64 im im)) (*.f64 re (*.f64 re -4))) 4)
(/.f64 (+.f64 (*.f64 (*.f64 re 4) (*.f64 re 4)) (*.f64 (*.f64 im 4) (*.f64 im 4))) 16)
(/.f64 (+.f64 (*.f64 4 (*.f64 re (*.f64 re 4))) (*.f64 4 (*.f64 im (*.f64 im 4)))) 16)
(/.f64 (+.f64 (*.f64 (*.f64 re re) 16) (*.f64 (*.f64 im im) 16)) 16)
(/.f64 (*.f64 16 (+.f64 (*.f64 re re) (*.f64 im im))) 16)
(/.f64 (+.f64 (*.f64 im (*.f64 2 (*.f64 im 4))) (*.f64 re (*.f64 (+.f64 re re) 4))) 8)
(/.f64 (+.f64 (*.f64 4 (*.f64 re (+.f64 re re))) (*.f64 (*.f64 im 4) (*.f64 2 im))) 8)
(/.f64 (+.f64 (*.f64 re (*.f64 4 (+.f64 re re))) (*.f64 im (*.f64 im 8))) 8)
(/.f64 (-.f64 (*.f64 4 (*.f64 im im)) (*.f64 re (*.f64 re -4))) 4)
(/.f64 (+.f64 (*.f64 (*.f64 im 4) (*.f64 im 4)) (*.f64 (*.f64 re 4) (*.f64 re 4))) 16)
(/.f64 (+.f64 (*.f64 4 (*.f64 re (*.f64 re 4))) (*.f64 4 (*.f64 im (*.f64 im 4)))) 16)
(/.f64 (+.f64 (*.f64 (*.f64 re re) 16) (*.f64 (*.f64 im im) 16)) 16)
(/.f64 (*.f64 16 (+.f64 (*.f64 re re) (*.f64 im im))) 16)
(/.f64 (-.f64 (*.f64 re (*.f64 re 4)) (neg.f64 (*.f64 im (*.f64 im 4)))) 4)
(/.f64 (+.f64 (*.f64 4 (*.f64 re (+.f64 re re))) (*.f64 (*.f64 im 4) (*.f64 2 im))) 8)
(/.f64 (+.f64 (*.f64 re (*.f64 4 (+.f64 re re))) (*.f64 im (*.f64 im 8))) 8)
(/.f64 (-.f64 (*.f64 4 (*.f64 im im)) (*.f64 re (*.f64 re -4))) 4)
(/.f64 (-.f64 (*.f64 im (*.f64 im 4)) (neg.f64 (*.f64 re (*.f64 re 4)))) 4)
(/.f64 (+.f64 (*.f64 4 (*.f64 re (+.f64 re re))) (*.f64 (*.f64 im 4) (*.f64 2 im))) 8)
(/.f64 (+.f64 (*.f64 re (*.f64 4 (+.f64 re re))) (*.f64 im (*.f64 im 8))) 8)
(/.f64 (-.f64 (*.f64 4 (*.f64 im im)) (*.f64 re (*.f64 re -4))) 4)
(/.f64 (-.f64 (*.f64 im (*.f64 im 4)) (*.f64 2 (-.f64 (*.f64 im im) (*.f64 re re)))) 2)
(/.f64 (-.f64 (*.f64 im (*.f64 im 4)) (*.f64 2 (*.f64 (+.f64 im re) (-.f64 im re)))) 2)
(/.f64 (-.f64 (*.f64 4 (*.f64 im im)) (*.f64 (+.f64 im re) (*.f64 (-.f64 im re) 2))) 2)
(pow.f64 (+.f64 (*.f64 re re) (*.f64 im im)) 1)
(-.f64 (*.f64 re re) (*.f64 im (neg.f64 im)))
(+.f64 (*.f64 re re) (*.f64 im im))
(neg.f64 (-.f64 (*.f64 re (neg.f64 re)) (*.f64 im im)))
(-.f64 (*.f64 re re) (*.f64 im (neg.f64 im)))
(+.f64 (*.f64 re re) (*.f64 im im))
(fabs.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
(-.f64 (*.f64 re re) (*.f64 im (neg.f64 im)))
(+.f64 (*.f64 re re) (*.f64 im im))
(fabs.f64 (-.f64 (*.f64 re (neg.f64 re)) (*.f64 im im)))
(-.f64 (*.f64 re re) (*.f64 im (neg.f64 im)))
(+.f64 (*.f64 re re) (*.f64 im im))

eval364.0ms (1%)

Compiler

Compiled 7014 to 4170 computations (40.5% saved)

prune338.0ms (1%)

Pruning

9 alts after pruning (8 fresh and 1 done)

PrunedKeptTotal
New2828290
Fresh000
Picked011
Done000
Total2829291
Error
8.7b
Counts
291 → 9
Alt Table
Click to see full alt table
StatusErrorProgram
40.3b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (-.f64 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re 1/2)) (+.f64 (/.f64 re -2) re)) re))))
34.3b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) im) re))))
39.8b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
58.5b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 re re))))
30.0b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 im re))))
40.4b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 (-.f64 (+.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) (+.f64 re (*.f64 re 1/2))) (/.f64 re -2)))))
54.6b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 (pow.f64 im 2) (/.f64 1/2 re)))))
47.1b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 re -2))))
54.6b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)))))
Compiler

Compiled 277 to 214 computations (22.7% saved)

localize34.0ms (0.1%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.0b
(sqrt.f64 (*.f64 2 (-.f64 im re)))
Compiler

Compiled 28 to 15 computations (46.4% saved)

series7.0ms (0%)

Counts
1 → 8
Calls

6 calls:

TimeVariablePointExpression
2.0ms
im
@0
(sqrt.f64 (*.f64 2 (-.f64 im re)))
1.0ms
re
@0
(sqrt.f64 (*.f64 2 (-.f64 im re)))
1.0ms
im
@inf
(sqrt.f64 (*.f64 2 (-.f64 im re)))
1.0ms
im
@-inf
(sqrt.f64 (*.f64 2 (-.f64 im re)))
1.0ms
re
@inf
(sqrt.f64 (*.f64 2 (-.f64 im re)))

rewrite462.0ms (1.3%)

Algorithm
batch-egg-rewrite
Rules
1088×rational_best-simplify-108
658×rational_best-simplify-83
576×rational_best-simplify-47
536×rational_best-simplify-1
534×rational_best-simplify-51
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0917
16017
212017
328617
4100217
5656117
Stop Event
node limit
Counts
1 → 80
Calls
Call 1
Inputs
(sqrt.f64 (*.f64 2 (-.f64 im re)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (sqrt.f64 (*.f64 2 (-.f64 im re))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 2) (/.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 4) (+.f64 (/.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 4) (/.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 4) (/.f64 (*.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 3) 4))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 2) (/.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) -2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (/.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 4) (/.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 2)) (neg.f64 (/.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 3) 4) (/.f64 (neg.f64 (sqrt.f64 (*.f64 2 (-.f64 im re)))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (/.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (*.f64 2 (sqrt.f64 (-.f64 im re))) (/.f64 (sqrt.f64 2) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (*.f64 2 (sqrt.f64 2)) (/.f64 (sqrt.f64 (-.f64 im re)) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (sqrt.f64 (*.f64 2 (-.f64 im re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 2) (sqrt.f64 (-.f64 im re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (-.f64 im re)) (sqrt.f64 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (sqrt.f64 (*.f64 2 (-.f64 im re)))) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (sqrt.f64 (*.f64 2 (-.f64 im re)))) (*.f64 (/.f64 (sqrt.f64 2) 2) (sqrt.f64 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (sqrt.f64 (*.f64 2 (-.f64 im re)))) (*.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 2) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 2 (sqrt.f64 (*.f64 2 (-.f64 im re)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (sqrt.f64 (*.f64 (-.f64 im re) 8)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (sqrt.f64 2)) (/.f64 (sqrt.f64 (-.f64 im re)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (sqrt.f64 2)) (*.f64 (sqrt.f64 (-.f64 im re)) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (sqrt.f64 2)) (*.f64 2 (/.f64 (sqrt.f64 (-.f64 im re)) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (sqrt.f64 2)) (*.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) (/.f64 (sqrt.f64 2) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (sqrt.f64 (-.f64 im re))) (/.f64 (sqrt.f64 2) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (sqrt.f64 (-.f64 im re))) (sqrt.f64 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (sqrt.f64 (-.f64 im re))) (*.f64 (sqrt.f64 2) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (sqrt.f64 (-.f64 im re))) (*.f64 2 (/.f64 (sqrt.f64 2) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (*.f64 (sqrt.f64 (-.f64 im re)) (/.f64 (sqrt.f64 2) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (*.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 (-.f64 im re)) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -2 (/.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) -2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 2) 2) (*.f64 2 (sqrt.f64 (-.f64 im re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (-.f64 im re)) 2) (*.f64 2 (sqrt.f64 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (*.f64 2 (sqrt.f64 2))) (/.f64 (sqrt.f64 (-.f64 im re)) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (*.f64 2 (sqrt.f64 2))) (*.f64 1/2 (/.f64 (sqrt.f64 (-.f64 im re)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (*.f64 2 (sqrt.f64 2))) (*.f64 1 (/.f64 (sqrt.f64 (-.f64 im re)) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (*.f64 2 (sqrt.f64 (-.f64 im re)))) (/.f64 (sqrt.f64 2) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (*.f64 2 (sqrt.f64 (-.f64 im re)))) (*.f64 1/2 (/.f64 (sqrt.f64 2) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (*.f64 2 (sqrt.f64 (-.f64 im re)))) (*.f64 1 (/.f64 (sqrt.f64 2) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (*.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 4)) 1/8)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 1/2) (*.f64 2 (sqrt.f64 (-.f64 im re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 1/2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 2) 1/2) (*.f64 2 (sqrt.f64 (-.f64 im re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/8 (*.f64 2 (*.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (*.f64 2 (*.f64 2 (sqrt.f64 2))) (*.f64 2 (*.f64 2 (sqrt.f64 2)))) (*.f64 1/4 (/.f64 (sqrt.f64 (-.f64 im re)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (*.f64 2 (*.f64 2 (sqrt.f64 2))) (*.f64 2 (*.f64 2 (sqrt.f64 2)))) (*.f64 1/2 (/.f64 (sqrt.f64 (-.f64 im re)) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (*.f64 2 (*.f64 2 (sqrt.f64 (-.f64 im re)))) (*.f64 2 (*.f64 2 (sqrt.f64 (-.f64 im re))))) (*.f64 1/4 (/.f64 (sqrt.f64 2) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (*.f64 2 (*.f64 2 (sqrt.f64 (-.f64 im re)))) (*.f64 2 (*.f64 2 (sqrt.f64 (-.f64 im re))))) (*.f64 1/2 (/.f64 (sqrt.f64 2) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 2) 4) (*.f64 2 (*.f64 2 (sqrt.f64 (-.f64 im re)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (-.f64 im re)) 4) (*.f64 2 (*.f64 2 (sqrt.f64 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (-.f64 im re)) 1/2) (*.f64 2 (sqrt.f64 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 (sqrt.f64 2) 2) (sqrt.f64 1/2)) (*.f64 2 (sqrt.f64 (*.f64 2 (-.f64 im re)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 1/2 (/.f64 (sqrt.f64 2) 2)) (*.f64 2 (*.f64 2 (sqrt.f64 (-.f64 im re)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 1/2 (/.f64 (sqrt.f64 (-.f64 im re)) 2)) (*.f64 2 (*.f64 2 (sqrt.f64 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (-.f64 im re) 8)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (sqrt.f64 1/2) (sqrt.f64 1/2)) (sqrt.f64 (-.f64 im re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (sqrt.f64 1/2) (sqrt.f64 1/2)) (*.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) (/.f64 (sqrt.f64 2) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (sqrt.f64 1/2) (sqrt.f64 1/2)) (*.f64 (/.f64 (sqrt.f64 2) 2) (sqrt.f64 (*.f64 2 (-.f64 im re)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (sqrt.f64 1/2) (sqrt.f64 1/2)) (*.f64 (*.f64 2 (sqrt.f64 (*.f64 2 (-.f64 im re)))) (/.f64 (sqrt.f64 2) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (sqrt.f64 1/2) (sqrt.f64 1/2)) (*.f64 (sqrt.f64 (*.f64 (-.f64 im re) 8)) (/.f64 (sqrt.f64 2) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (sqrt.f64 (*.f64 (-.f64 im re) 8)) (sqrt.f64 (*.f64 (-.f64 im re) 8))) (*.f64 (sqrt.f64 1/2) (/.f64 (sqrt.f64 2) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (sqrt.f64 (-.f64 re im)) (sqrt.f64 (-.f64 re im))) (*.f64 (sqrt.f64 -1) (/.f64 (sqrt.f64 2) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (sqrt.f64 (*.f64 2 (-.f64 im re)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 4)) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 4)) (*.f64 2 (*.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 4))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 4 (*.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 4)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 2 (sqrt.f64 2)) (+.f64 (*.f64 2 (*.f64 2 (sqrt.f64 (-.f64 im re)))) (*.f64 2 (*.f64 2 (sqrt.f64 (-.f64 im re)))))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 2 (sqrt.f64 (-.f64 im re))) (+.f64 (*.f64 2 (*.f64 2 (sqrt.f64 2))) (*.f64 2 (*.f64 2 (sqrt.f64 2))))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (*.f64 2 (*.f64 2 (sqrt.f64 2))) (*.f64 2 (*.f64 2 (sqrt.f64 2)))) (+.f64 (*.f64 2 (*.f64 2 (sqrt.f64 (-.f64 im re)))) (*.f64 2 (*.f64 2 (sqrt.f64 (-.f64 im re)))))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (*.f64 2 (*.f64 2 (sqrt.f64 (-.f64 im re)))) (*.f64 2 (*.f64 2 (sqrt.f64 (-.f64 im re))))) (+.f64 (*.f64 2 (*.f64 2 (sqrt.f64 2))) (*.f64 2 (*.f64 2 (sqrt.f64 2))))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (+.f64 (*.f64 2 (*.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 4)) (*.f64 2 (*.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 4))) (+.f64 (*.f64 2 (*.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 4)) (*.f64 2 (*.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 4)))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 4 (*.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 4)) (*.f64 4 (*.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 4))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 1)))))

simplify620.0ms (1.7%)

Algorithm
egg-herbie
Rules
1424×rational_best-simplify-51
1210×rational_best-simplify-80
1202×rational_best-simplify-1
998×rational_best-simplify-57
758×rational_best-simplify-55
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
02292424
15662346
215762244
354512242
Stop Event
node limit
Counts
88 → 130
Calls
Call 1
Inputs
(*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 -1)) (sqrt.f64 re))
(+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) im) (sqrt.f64 -1)) (sqrt.f64 (/.f64 1 re)))) (*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 -1)) (sqrt.f64 re)))
(+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) im) (sqrt.f64 -1)) (sqrt.f64 (/.f64 1 re)))) (+.f64 (*.f64 -1/8 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 2)) (pow.f64 (sqrt.f64 -1) 3)) (sqrt.f64 (/.f64 1 (pow.f64 re 3))))) (*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 -1)) (sqrt.f64 re))))
(+.f64 (*.f64 1/16 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 3)) (pow.f64 (sqrt.f64 -1) 5)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) (+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) im) (sqrt.f64 -1)) (sqrt.f64 (/.f64 1 re)))) (+.f64 (*.f64 -1/8 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 2)) (pow.f64 (sqrt.f64 -1) 3)) (sqrt.f64 (/.f64 1 (pow.f64 re 3))))) (*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 -1)) (sqrt.f64 re)))))
(*.f64 (sqrt.f64 2) (sqrt.f64 im))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (+.f64 (*.f64 -1/8 (*.f64 (*.f64 (sqrt.f64 2) (pow.f64 re 2)) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (*.f64 (sqrt.f64 2) (sqrt.f64 im))))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (+.f64 (*.f64 -1/16 (*.f64 (*.f64 (sqrt.f64 2) (pow.f64 re 3)) (sqrt.f64 (/.f64 1 (pow.f64 im 5))))) (+.f64 (*.f64 -1/8 (*.f64 (*.f64 (sqrt.f64 2) (pow.f64 re 2)) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))))
(+.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 0)
(+.f64 0 (sqrt.f64 (*.f64 2 (-.f64 im re))))
(+.f64 (/.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 2) (/.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 2))
(+.f64 (/.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 4) (+.f64 (/.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 4) (/.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 2)))
(+.f64 (/.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 4) (/.f64 (*.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 3) 4))
(-.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 0)
(-.f64 (/.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 2) (/.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) -2))
(-.f64 (+.f64 (/.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 4) (/.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 2)) (neg.f64 (/.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 4)))
(-.f64 (/.f64 (*.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 3) 4) (/.f64 (neg.f64 (sqrt.f64 (*.f64 2 (-.f64 im re)))) 4))
(*.f64 2 (/.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 2))
(*.f64 2 (*.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 1/2))
(*.f64 2 (*.f64 (*.f64 2 (sqrt.f64 (-.f64 im re))) (/.f64 (sqrt.f64 2) 4)))
(*.f64 2 (*.f64 (*.f64 2 (sqrt.f64 2)) (/.f64 (sqrt.f64 (-.f64 im re)) 4)))
(*.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 1)
(*.f64 1 (sqrt.f64 (*.f64 2 (-.f64 im re))))
(*.f64 (sqrt.f64 2) (sqrt.f64 (-.f64 im re)))
(*.f64 (sqrt.f64 (-.f64 im re)) (sqrt.f64 2))
(*.f64 (*.f64 2 (sqrt.f64 (*.f64 2 (-.f64 im re)))) 1/2)
(*.f64 (*.f64 2 (sqrt.f64 (*.f64 2 (-.f64 im re)))) (*.f64 (/.f64 (sqrt.f64 2) 2) (sqrt.f64 1/2)))
(*.f64 (*.f64 2 (sqrt.f64 (*.f64 2 (-.f64 im re)))) (*.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 2) 4)))
(*.f64 1/2 (*.f64 2 (sqrt.f64 (*.f64 2 (-.f64 im re)))))
(*.f64 1/2 (sqrt.f64 (*.f64 (-.f64 im re) 8)))
(*.f64 (*.f64 2 (sqrt.f64 2)) (/.f64 (sqrt.f64 (-.f64 im re)) 2))
(*.f64 (*.f64 2 (sqrt.f64 2)) (*.f64 (sqrt.f64 (-.f64 im re)) 1/2))
(*.f64 (*.f64 2 (sqrt.f64 2)) (*.f64 2 (/.f64 (sqrt.f64 (-.f64 im re)) 4)))
(*.f64 (*.f64 2 (sqrt.f64 2)) (*.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) (/.f64 (sqrt.f64 2) 4)))
(*.f64 (*.f64 2 (sqrt.f64 (-.f64 im re))) (/.f64 (sqrt.f64 2) 2))
(*.f64 (*.f64 2 (sqrt.f64 (-.f64 im re))) (sqrt.f64 1/2))
(*.f64 (*.f64 2 (sqrt.f64 (-.f64 im re))) (*.f64 (sqrt.f64 2) 1/2))
(*.f64 (*.f64 2 (sqrt.f64 (-.f64 im re))) (*.f64 2 (/.f64 (sqrt.f64 2) 4)))
(*.f64 4 (*.f64 (sqrt.f64 (-.f64 im re)) (/.f64 (sqrt.f64 2) 4)))
(*.f64 4 (*.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 (-.f64 im re)) 4)))
(*.f64 (*.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 4) 1/4)
(*.f64 (/.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 2) 2)
(*.f64 -2 (/.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) -2))
(*.f64 1/4 (*.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 4))
(*.f64 (/.f64 (sqrt.f64 2) 2) (*.f64 2 (sqrt.f64 (-.f64 im re))))
(*.f64 (/.f64 (sqrt.f64 (-.f64 im re)) 2) (*.f64 2 (sqrt.f64 2)))
(*.f64 (*.f64 2 (*.f64 2 (sqrt.f64 2))) (/.f64 (sqrt.f64 (-.f64 im re)) 4))
(*.f64 (*.f64 2 (*.f64 2 (sqrt.f64 2))) (*.f64 1/2 (/.f64 (sqrt.f64 (-.f64 im re)) 2)))
(*.f64 (*.f64 2 (*.f64 2 (sqrt.f64 2))) (*.f64 1 (/.f64 (sqrt.f64 (-.f64 im re)) 4)))
(*.f64 (*.f64 2 (*.f64 2 (sqrt.f64 (-.f64 im re)))) (/.f64 (sqrt.f64 2) 4))
(*.f64 (*.f64 2 (*.f64 2 (sqrt.f64 (-.f64 im re)))) (*.f64 1/2 (/.f64 (sqrt.f64 2) 2)))
(*.f64 (*.f64 2 (*.f64 2 (sqrt.f64 (-.f64 im re)))) (*.f64 1 (/.f64 (sqrt.f64 2) 4)))
(*.f64 (*.f64 2 (*.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 4)) 1/8)
(*.f64 (sqrt.f64 1/2) (*.f64 2 (sqrt.f64 (-.f64 im re))))
(*.f64 (*.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 1/2) 2)
(*.f64 (*.f64 (sqrt.f64 2) 1/2) (*.f64 2 (sqrt.f64 (-.f64 im re))))
(*.f64 1/8 (*.f64 2 (*.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 4)))
(*.f64 (+.f64 (*.f64 2 (*.f64 2 (sqrt.f64 2))) (*.f64 2 (*.f64 2 (sqrt.f64 2)))) (*.f64 1/4 (/.f64 (sqrt.f64 (-.f64 im re)) 2)))
(*.f64 (+.f64 (*.f64 2 (*.f64 2 (sqrt.f64 2))) (*.f64 2 (*.f64 2 (sqrt.f64 2)))) (*.f64 1/2 (/.f64 (sqrt.f64 (-.f64 im re)) 4)))
(*.f64 (+.f64 (*.f64 2 (*.f64 2 (sqrt.f64 (-.f64 im re)))) (*.f64 2 (*.f64 2 (sqrt.f64 (-.f64 im re))))) (*.f64 1/4 (/.f64 (sqrt.f64 2) 2)))
(*.f64 (+.f64 (*.f64 2 (*.f64 2 (sqrt.f64 (-.f64 im re)))) (*.f64 2 (*.f64 2 (sqrt.f64 (-.f64 im re))))) (*.f64 1/2 (/.f64 (sqrt.f64 2) 4)))
(*.f64 (/.f64 (sqrt.f64 2) 4) (*.f64 2 (*.f64 2 (sqrt.f64 (-.f64 im re)))))
(*.f64 (/.f64 (sqrt.f64 (-.f64 im re)) 4) (*.f64 2 (*.f64 2 (sqrt.f64 2))))
(*.f64 (*.f64 (sqrt.f64 (-.f64 im re)) 1/2) (*.f64 2 (sqrt.f64 2)))
(*.f64 (*.f64 (/.f64 (sqrt.f64 2) 2) (sqrt.f64 1/2)) (*.f64 2 (sqrt.f64 (*.f64 2 (-.f64 im re)))))
(*.f64 (*.f64 1/2 (/.f64 (sqrt.f64 2) 2)) (*.f64 2 (*.f64 2 (sqrt.f64 (-.f64 im re)))))
(*.f64 (*.f64 1/2 (/.f64 (sqrt.f64 (-.f64 im re)) 2)) (*.f64 2 (*.f64 2 (sqrt.f64 2))))
(*.f64 (sqrt.f64 (*.f64 (-.f64 im re) 8)) 1/2)
(*.f64 (+.f64 (sqrt.f64 1/2) (sqrt.f64 1/2)) (sqrt.f64 (-.f64 im re)))
(*.f64 (+.f64 (sqrt.f64 1/2) (sqrt.f64 1/2)) (*.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) (/.f64 (sqrt.f64 2) 2)))
(*.f64 (+.f64 (sqrt.f64 1/2) (sqrt.f64 1/2)) (*.f64 (/.f64 (sqrt.f64 2) 2) (sqrt.f64 (*.f64 2 (-.f64 im re)))))
(*.f64 (+.f64 (sqrt.f64 1/2) (sqrt.f64 1/2)) (*.f64 (*.f64 2 (sqrt.f64 (*.f64 2 (-.f64 im re)))) (/.f64 (sqrt.f64 2) 4)))
(*.f64 (+.f64 (sqrt.f64 1/2) (sqrt.f64 1/2)) (*.f64 (sqrt.f64 (*.f64 (-.f64 im re) 8)) (/.f64 (sqrt.f64 2) 4)))
(*.f64 (+.f64 (sqrt.f64 (*.f64 (-.f64 im re) 8)) (sqrt.f64 (*.f64 (-.f64 im re) 8))) (*.f64 (sqrt.f64 1/2) (/.f64 (sqrt.f64 2) 4)))
(*.f64 (+.f64 (sqrt.f64 (-.f64 re im)) (sqrt.f64 (-.f64 re im))) (*.f64 (sqrt.f64 -1) (/.f64 (sqrt.f64 2) 2)))
(/.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 1)
(/.f64 (*.f64 2 (sqrt.f64 (*.f64 2 (-.f64 im re)))) 2)
(/.f64 (*.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 4) 4)
(/.f64 (*.f64 2 (*.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 4)) 8)
(/.f64 (+.f64 (*.f64 2 (*.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 4)) (*.f64 2 (*.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 4))) 16)
(/.f64 (*.f64 4 (*.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 4)) 16)
(/.f64 (*.f64 (*.f64 2 (sqrt.f64 2)) (+.f64 (*.f64 2 (*.f64 2 (sqrt.f64 (-.f64 im re)))) (*.f64 2 (*.f64 2 (sqrt.f64 (-.f64 im re)))))) 16)
(/.f64 (*.f64 (*.f64 2 (sqrt.f64 (-.f64 im re))) (+.f64 (*.f64 2 (*.f64 2 (sqrt.f64 2))) (*.f64 2 (*.f64 2 (sqrt.f64 2))))) 16)
(/.f64 (*.f64 (+.f64 (*.f64 2 (*.f64 2 (sqrt.f64 2))) (*.f64 2 (*.f64 2 (sqrt.f64 2)))) (+.f64 (*.f64 2 (*.f64 2 (sqrt.f64 (-.f64 im re)))) (*.f64 2 (*.f64 2 (sqrt.f64 (-.f64 im re)))))) 64)
(/.f64 (*.f64 (+.f64 (*.f64 2 (*.f64 2 (sqrt.f64 (-.f64 im re)))) (*.f64 2 (*.f64 2 (sqrt.f64 (-.f64 im re))))) (+.f64 (*.f64 2 (*.f64 2 (sqrt.f64 2))) (*.f64 2 (*.f64 2 (sqrt.f64 2))))) 64)
(/.f64 (+.f64 (+.f64 (*.f64 2 (*.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 4)) (*.f64 2 (*.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 4))) (+.f64 (*.f64 2 (*.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 4)) (*.f64 2 (*.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 4)))) 32)
(/.f64 (+.f64 (*.f64 4 (*.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 4)) (*.f64 4 (*.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 4))) 32)
(pow.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 1)
Outputs
(*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 -1)) (sqrt.f64 re))
(*.f64 (sqrt.f64 -2) (sqrt.f64 re))
(sqrt.f64 (*.f64 -2 re))
(sqrt.f64 (*.f64 re -2))
(+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) im) (sqrt.f64 -1)) (sqrt.f64 (/.f64 1 re)))) (*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 -1)) (sqrt.f64 re)))
(+.f64 (*.f64 (sqrt.f64 -2) (sqrt.f64 re)) (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) im) (sqrt.f64 -1)) (sqrt.f64 (/.f64 1 re)))))
(+.f64 (sqrt.f64 (*.f64 -2 re)) (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) im) (/.f64 (sqrt.f64 (/.f64 1 re)) (sqrt.f64 -1)))))
(+.f64 (sqrt.f64 (*.f64 re -2)) (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) im) (/.f64 (sqrt.f64 (/.f64 1 re)) (sqrt.f64 -1)))))
(+.f64 (sqrt.f64 (*.f64 re -2)) (*.f64 (/.f64 (*.f64 (sqrt.f64 2) im) (sqrt.f64 -1)) (*.f64 1/2 (sqrt.f64 (/.f64 1 re)))))
(+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) im) (sqrt.f64 -1)) (sqrt.f64 (/.f64 1 re)))) (+.f64 (*.f64 -1/8 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 2)) (pow.f64 (sqrt.f64 -1) 3)) (sqrt.f64 (/.f64 1 (pow.f64 re 3))))) (*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 -1)) (sqrt.f64 re))))
(+.f64 (*.f64 (sqrt.f64 -2) (sqrt.f64 re)) (+.f64 (*.f64 -1/8 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 2)) (sqrt.f64 -1)) (sqrt.f64 (/.f64 1 (pow.f64 re 3))))) (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) im) (sqrt.f64 -1)) (sqrt.f64 (/.f64 1 re))))))
(+.f64 (*.f64 -1/8 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 2)) (sqrt.f64 -1)) (sqrt.f64 (/.f64 1 (pow.f64 re 3))))) (+.f64 (sqrt.f64 (*.f64 -2 re)) (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) im) (/.f64 (sqrt.f64 (/.f64 1 re)) (sqrt.f64 -1))))))
(+.f64 (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) im) (/.f64 (sqrt.f64 (/.f64 1 re)) (sqrt.f64 -1)))) (+.f64 (sqrt.f64 (*.f64 re -2)) (*.f64 -1/8 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 2)) (sqrt.f64 -1)) (sqrt.f64 (/.f64 1 (pow.f64 re 3)))))))
(+.f64 (sqrt.f64 (*.f64 re -2)) (+.f64 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) im) (sqrt.f64 -1)) (*.f64 1/2 (sqrt.f64 (/.f64 1 re)))) (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 2)) (sqrt.f64 -1)) (*.f64 -1/8 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))))))
(+.f64 (*.f64 1/16 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 3)) (pow.f64 (sqrt.f64 -1) 5)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) (+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) im) (sqrt.f64 -1)) (sqrt.f64 (/.f64 1 re)))) (+.f64 (*.f64 -1/8 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 2)) (pow.f64 (sqrt.f64 -1) 3)) (sqrt.f64 (/.f64 1 (pow.f64 re 3))))) (*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 -1)) (sqrt.f64 re)))))
(+.f64 (+.f64 (*.f64 (sqrt.f64 -2) (sqrt.f64 re)) (*.f64 -1/8 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 2)) (sqrt.f64 -1)) (sqrt.f64 (/.f64 1 (pow.f64 re 3)))))) (+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) im) (sqrt.f64 -1)) (sqrt.f64 (/.f64 1 re)))) (*.f64 1/16 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 3)) (sqrt.f64 -1)) (sqrt.f64 (/.f64 1 (pow.f64 re 5)))))))
(+.f64 (+.f64 (sqrt.f64 (*.f64 -2 re)) (*.f64 -1/8 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 2)) (sqrt.f64 -1)) (sqrt.f64 (/.f64 1 (pow.f64 re 3)))))) (+.f64 (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) im) (/.f64 (sqrt.f64 (/.f64 1 re)) (sqrt.f64 -1)))) (*.f64 1/16 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 3)) (sqrt.f64 -1)) (sqrt.f64 (/.f64 1 (pow.f64 re 5)))))))
(+.f64 (+.f64 (sqrt.f64 (*.f64 re -2)) (*.f64 -1/8 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 2)) (sqrt.f64 -1)) (sqrt.f64 (/.f64 1 (pow.f64 re 3)))))) (+.f64 (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) im) (/.f64 (sqrt.f64 (/.f64 1 re)) (sqrt.f64 -1)))) (*.f64 1/16 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 3)) (sqrt.f64 -1)) (sqrt.f64 (/.f64 1 (pow.f64 re 5)))))))
(+.f64 (sqrt.f64 (*.f64 re -2)) (+.f64 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 3)) (sqrt.f64 -1)) (*.f64 1/16 (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) (+.f64 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) im) (sqrt.f64 -1)) (*.f64 1/2 (sqrt.f64 (/.f64 1 re)))) (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 2)) (sqrt.f64 -1)) (*.f64 -1/8 (sqrt.f64 (/.f64 1 (pow.f64 re 3))))))))
(*.f64 (sqrt.f64 2) (sqrt.f64 im))
(sqrt.f64 (*.f64 2 im))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))
(+.f64 (sqrt.f64 (*.f64 2 im)) (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))))
(+.f64 (sqrt.f64 (*.f64 2 im)) (*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 -1/2 (*.f64 (sqrt.f64 2) re))))
(+.f64 (sqrt.f64 (*.f64 2 im)) (*.f64 -1/2 (*.f64 re (sqrt.f64 (*.f64 2 (/.f64 1 im))))))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (+.f64 (*.f64 -1/8 (*.f64 (*.f64 (sqrt.f64 2) (pow.f64 re 2)) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (*.f64 (sqrt.f64 2) (sqrt.f64 im))))
(+.f64 (sqrt.f64 (*.f64 2 im)) (+.f64 (*.f64 -1/8 (*.f64 (*.f64 (sqrt.f64 2) (pow.f64 re 2)) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im))))))
(+.f64 (sqrt.f64 (*.f64 2 im)) (+.f64 (*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 -1/2 (*.f64 (sqrt.f64 2) re))) (*.f64 -1/8 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 re 2) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))))))
(+.f64 (sqrt.f64 (*.f64 2 im)) (+.f64 (*.f64 -1/2 (*.f64 re (sqrt.f64 (*.f64 2 (/.f64 1 im))))) (*.f64 -1/8 (*.f64 (pow.f64 re 2) (sqrt.f64 (*.f64 2 (/.f64 1 (pow.f64 im 3))))))))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (+.f64 (*.f64 -1/16 (*.f64 (*.f64 (sqrt.f64 2) (pow.f64 re 3)) (sqrt.f64 (/.f64 1 (pow.f64 im 5))))) (+.f64 (*.f64 -1/8 (*.f64 (*.f64 (sqrt.f64 2) (pow.f64 re 2)) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (+.f64 (sqrt.f64 (*.f64 2 im)) (+.f64 (*.f64 -1/8 (*.f64 (*.f64 (sqrt.f64 2) (pow.f64 re 2)) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (*.f64 -1/16 (*.f64 (*.f64 (sqrt.f64 2) (pow.f64 re 3)) (sqrt.f64 (/.f64 1 (pow.f64 im 5))))))))
(+.f64 (*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 -1/2 (*.f64 (sqrt.f64 2) re))) (+.f64 (sqrt.f64 (*.f64 2 im)) (+.f64 (*.f64 -1/8 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 re 2) (sqrt.f64 (/.f64 1 (pow.f64 im 3)))))) (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 re 3) (sqrt.f64 (/.f64 1 (pow.f64 im 5)))))))))
(+.f64 (*.f64 -1/2 (*.f64 re (sqrt.f64 (*.f64 2 (/.f64 1 im))))) (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 re 2) (sqrt.f64 (*.f64 2 (/.f64 1 (pow.f64 im 3)))))) (+.f64 (sqrt.f64 (*.f64 2 im)) (*.f64 -1/16 (*.f64 (pow.f64 re 3) (sqrt.f64 (*.f64 2 (/.f64 1 (pow.f64 im 5)))))))))
(+.f64 (sqrt.f64 (*.f64 2 im)) (+.f64 (*.f64 -1/2 (*.f64 re (sqrt.f64 (*.f64 2 (/.f64 1 im))))) (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 re 2) (sqrt.f64 (*.f64 2 (/.f64 1 (pow.f64 im 3)))))) (*.f64 -1/16 (*.f64 (pow.f64 re 3) (sqrt.f64 (*.f64 2 (/.f64 1 (pow.f64 im 5)))))))))
(+.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 0)
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(+.f64 0 (sqrt.f64 (*.f64 2 (-.f64 im re))))
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(+.f64 (/.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 2) (/.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 2))
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(+.f64 (/.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 4) (+.f64 (/.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 4) (/.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 2)))
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(+.f64 (/.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 4) (/.f64 (*.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 3) 4))
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(-.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 0)
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(-.f64 (/.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 2) (/.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) -2))
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(-.f64 (+.f64 (/.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 4) (/.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 2)) (neg.f64 (/.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 4)))
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(-.f64 (/.f64 (*.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 3) 4) (/.f64 (neg.f64 (sqrt.f64 (*.f64 2 (-.f64 im re)))) 4))
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(*.f64 2 (/.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 2))
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(*.f64 2 (*.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 1/2))
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(*.f64 2 (*.f64 (*.f64 2 (sqrt.f64 (-.f64 im re))) (/.f64 (sqrt.f64 2) 4)))
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(*.f64 2 (*.f64 (*.f64 2 (sqrt.f64 2)) (/.f64 (sqrt.f64 (-.f64 im re)) 4)))
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(*.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 1)
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(*.f64 1 (sqrt.f64 (*.f64 2 (-.f64 im re))))
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(*.f64 (sqrt.f64 2) (sqrt.f64 (-.f64 im re)))
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(*.f64 (sqrt.f64 (-.f64 im re)) (sqrt.f64 2))
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(*.f64 (*.f64 2 (sqrt.f64 (*.f64 2 (-.f64 im re)))) 1/2)
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(*.f64 (*.f64 2 (sqrt.f64 (*.f64 2 (-.f64 im re)))) (*.f64 (/.f64 (sqrt.f64 2) 2) (sqrt.f64 1/2)))
(*.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) (*.f64 (sqrt.f64 1/2) (*.f64 (sqrt.f64 2) 1)))
(*.f64 (sqrt.f64 1/2) (sqrt.f64 (*.f64 (*.f64 2 (-.f64 im re)) 2)))
(*.f64 (*.f64 2 (sqrt.f64 (*.f64 2 (-.f64 im re)))) (*.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 2) 4)))
(*.f64 (/.f64 (sqrt.f64 2) 4) (*.f64 (sqrt.f64 2) (*.f64 2 (sqrt.f64 (*.f64 2 (-.f64 im re))))))
(*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) (/.f64 (sqrt.f64 2) 2)))
(*.f64 (*.f64 (sqrt.f64 2) 1/2) (sqrt.f64 (*.f64 (*.f64 2 (-.f64 im re)) 2)))
(*.f64 1/2 (*.f64 2 (sqrt.f64 (*.f64 2 (-.f64 im re)))))
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(*.f64 1/2 (sqrt.f64 (*.f64 (-.f64 im re) 8)))
(*.f64 (*.f64 2 (sqrt.f64 2)) (/.f64 (sqrt.f64 (-.f64 im re)) 2))
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(*.f64 (*.f64 2 (sqrt.f64 2)) (*.f64 (sqrt.f64 (-.f64 im re)) 1/2))
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(*.f64 (*.f64 2 (sqrt.f64 2)) (*.f64 2 (/.f64 (sqrt.f64 (-.f64 im re)) 4)))
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(*.f64 (*.f64 2 (sqrt.f64 2)) (*.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) (/.f64 (sqrt.f64 2) 4)))
(*.f64 (/.f64 (sqrt.f64 2) 4) (*.f64 (sqrt.f64 2) (*.f64 2 (sqrt.f64 (*.f64 2 (-.f64 im re))))))
(*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) (/.f64 (sqrt.f64 2) 2)))
(*.f64 (*.f64 (sqrt.f64 2) 1/2) (sqrt.f64 (*.f64 (*.f64 2 (-.f64 im re)) 2)))
(*.f64 (*.f64 2 (sqrt.f64 (-.f64 im re))) (/.f64 (sqrt.f64 2) 2))
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(*.f64 (*.f64 2 (sqrt.f64 (-.f64 im re))) (sqrt.f64 1/2))
(*.f64 (sqrt.f64 (-.f64 im re)) (*.f64 2 (sqrt.f64 1/2)))
(*.f64 2 (sqrt.f64 (*.f64 (-.f64 im re) 1/2)))
(*.f64 (*.f64 2 (sqrt.f64 (-.f64 im re))) (*.f64 (sqrt.f64 2) 1/2))
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(*.f64 (*.f64 2 (sqrt.f64 (-.f64 im re))) (*.f64 2 (/.f64 (sqrt.f64 2) 4)))
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(*.f64 4 (*.f64 (sqrt.f64 (-.f64 im re)) (/.f64 (sqrt.f64 2) 4)))
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(*.f64 4 (*.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 (-.f64 im re)) 4)))
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(*.f64 (*.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 4) 1/4)
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(*.f64 (/.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 2) 2)
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(*.f64 -2 (/.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) -2))
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(*.f64 1/4 (*.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 4))
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(*.f64 (/.f64 (sqrt.f64 2) 2) (*.f64 2 (sqrt.f64 (-.f64 im re))))
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(*.f64 (/.f64 (sqrt.f64 (-.f64 im re)) 2) (*.f64 2 (sqrt.f64 2)))
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(*.f64 (*.f64 2 (*.f64 2 (sqrt.f64 2))) (/.f64 (sqrt.f64 (-.f64 im re)) 4))
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(*.f64 (*.f64 2 (*.f64 2 (sqrt.f64 2))) (*.f64 1/2 (/.f64 (sqrt.f64 (-.f64 im re)) 2)))
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(*.f64 (*.f64 2 (*.f64 2 (sqrt.f64 2))) (*.f64 1 (/.f64 (sqrt.f64 (-.f64 im re)) 4)))
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(*.f64 (*.f64 2 (*.f64 2 (sqrt.f64 (-.f64 im re)))) (/.f64 (sqrt.f64 2) 4))
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(*.f64 (*.f64 2 (*.f64 2 (sqrt.f64 (-.f64 im re)))) (*.f64 1/2 (/.f64 (sqrt.f64 2) 2)))
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(*.f64 (*.f64 2 (*.f64 2 (sqrt.f64 (-.f64 im re)))) (*.f64 1 (/.f64 (sqrt.f64 2) 4)))
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(*.f64 (*.f64 2 (*.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 4)) 1/8)
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(*.f64 (sqrt.f64 1/2) (*.f64 2 (sqrt.f64 (-.f64 im re))))
(*.f64 (sqrt.f64 (-.f64 im re)) (*.f64 2 (sqrt.f64 1/2)))
(*.f64 2 (sqrt.f64 (*.f64 (-.f64 im re) 1/2)))
(*.f64 (*.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 1/2) 2)
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(*.f64 (*.f64 (sqrt.f64 2) 1/2) (*.f64 2 (sqrt.f64 (-.f64 im re))))
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(*.f64 1/8 (*.f64 2 (*.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 4)))
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(*.f64 (+.f64 (*.f64 2 (*.f64 2 (sqrt.f64 2))) (*.f64 2 (*.f64 2 (sqrt.f64 2)))) (*.f64 1/4 (/.f64 (sqrt.f64 (-.f64 im re)) 2)))
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(*.f64 (+.f64 (*.f64 2 (*.f64 2 (sqrt.f64 2))) (*.f64 2 (*.f64 2 (sqrt.f64 2)))) (*.f64 1/2 (/.f64 (sqrt.f64 (-.f64 im re)) 4)))
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(*.f64 (+.f64 (*.f64 2 (*.f64 2 (sqrt.f64 (-.f64 im re)))) (*.f64 2 (*.f64 2 (sqrt.f64 (-.f64 im re))))) (*.f64 1/4 (/.f64 (sqrt.f64 2) 2)))
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(*.f64 (+.f64 (*.f64 2 (*.f64 2 (sqrt.f64 (-.f64 im re)))) (*.f64 2 (*.f64 2 (sqrt.f64 (-.f64 im re))))) (*.f64 1/2 (/.f64 (sqrt.f64 2) 4)))
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(*.f64 (/.f64 (sqrt.f64 2) 4) (*.f64 2 (*.f64 2 (sqrt.f64 (-.f64 im re)))))
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(*.f64 (/.f64 (sqrt.f64 (-.f64 im re)) 4) (*.f64 2 (*.f64 2 (sqrt.f64 2))))
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(*.f64 (*.f64 (sqrt.f64 (-.f64 im re)) 1/2) (*.f64 2 (sqrt.f64 2)))
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(*.f64 (*.f64 (/.f64 (sqrt.f64 2) 2) (sqrt.f64 1/2)) (*.f64 2 (sqrt.f64 (*.f64 2 (-.f64 im re)))))
(*.f64 (*.f64 2 (sqrt.f64 (*.f64 2 (-.f64 im re)))) (*.f64 (/.f64 (sqrt.f64 2) 2) (sqrt.f64 1/2)))
(*.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) (*.f64 (sqrt.f64 1/2) (*.f64 (sqrt.f64 2) 1)))
(*.f64 (sqrt.f64 1/2) (sqrt.f64 (*.f64 (*.f64 2 (-.f64 im re)) 2)))
(*.f64 (*.f64 1/2 (/.f64 (sqrt.f64 2) 2)) (*.f64 2 (*.f64 2 (sqrt.f64 (-.f64 im re)))))
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(*.f64 (*.f64 1/2 (/.f64 (sqrt.f64 (-.f64 im re)) 2)) (*.f64 2 (*.f64 2 (sqrt.f64 2))))
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(*.f64 (sqrt.f64 (*.f64 (-.f64 im re) 8)) 1/2)
(*.f64 1/2 (sqrt.f64 (*.f64 (-.f64 im re) 8)))
(*.f64 (+.f64 (sqrt.f64 1/2) (sqrt.f64 1/2)) (sqrt.f64 (-.f64 im re)))
(*.f64 (sqrt.f64 (-.f64 im re)) (+.f64 (sqrt.f64 1/2) (sqrt.f64 1/2)))
(*.f64 (+.f64 (sqrt.f64 1/2) (sqrt.f64 1/2)) (*.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) (/.f64 (sqrt.f64 2) 2)))
(*.f64 (*.f64 2 (sqrt.f64 (*.f64 2 (-.f64 im re)))) (*.f64 (/.f64 (sqrt.f64 2) 2) (sqrt.f64 1/2)))
(*.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) (*.f64 (sqrt.f64 1/2) (*.f64 (sqrt.f64 2) 1)))
(*.f64 (sqrt.f64 1/2) (sqrt.f64 (*.f64 (*.f64 2 (-.f64 im re)) 2)))
(*.f64 (+.f64 (sqrt.f64 1/2) (sqrt.f64 1/2)) (*.f64 (/.f64 (sqrt.f64 2) 2) (sqrt.f64 (*.f64 2 (-.f64 im re)))))
(*.f64 (*.f64 2 (sqrt.f64 (*.f64 2 (-.f64 im re)))) (*.f64 (/.f64 (sqrt.f64 2) 2) (sqrt.f64 1/2)))
(*.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) (*.f64 (sqrt.f64 1/2) (*.f64 (sqrt.f64 2) 1)))
(*.f64 (sqrt.f64 1/2) (sqrt.f64 (*.f64 (*.f64 2 (-.f64 im re)) 2)))
(*.f64 (+.f64 (sqrt.f64 1/2) (sqrt.f64 1/2)) (*.f64 (*.f64 2 (sqrt.f64 (*.f64 2 (-.f64 im re)))) (/.f64 (sqrt.f64 2) 4)))
(*.f64 (*.f64 2 (sqrt.f64 (*.f64 2 (-.f64 im re)))) (*.f64 (/.f64 (sqrt.f64 2) 2) (sqrt.f64 1/2)))
(*.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) (*.f64 (sqrt.f64 1/2) (*.f64 (sqrt.f64 2) 1)))
(*.f64 (sqrt.f64 1/2) (sqrt.f64 (*.f64 (*.f64 2 (-.f64 im re)) 2)))
(*.f64 (+.f64 (sqrt.f64 1/2) (sqrt.f64 1/2)) (*.f64 (sqrt.f64 (*.f64 (-.f64 im re) 8)) (/.f64 (sqrt.f64 2) 4)))
(*.f64 (/.f64 (sqrt.f64 2) 4) (*.f64 (sqrt.f64 (*.f64 (-.f64 im re) 8)) (+.f64 (sqrt.f64 1/2) (sqrt.f64 1/2))))
(*.f64 (/.f64 (sqrt.f64 2) 2) (*.f64 (sqrt.f64 (*.f64 (-.f64 im re) 8)) (sqrt.f64 1/2)))
(*.f64 (*.f64 (sqrt.f64 2) 1/2) (sqrt.f64 (*.f64 1/2 (*.f64 (-.f64 im re) 8))))
(*.f64 (+.f64 (sqrt.f64 (*.f64 (-.f64 im re) 8)) (sqrt.f64 (*.f64 (-.f64 im re) 8))) (*.f64 (sqrt.f64 1/2) (/.f64 (sqrt.f64 2) 4)))
(*.f64 (/.f64 (sqrt.f64 2) 4) (*.f64 (sqrt.f64 (*.f64 (-.f64 im re) 8)) (+.f64 (sqrt.f64 1/2) (sqrt.f64 1/2))))
(*.f64 (/.f64 (sqrt.f64 2) 2) (*.f64 (sqrt.f64 (*.f64 (-.f64 im re) 8)) (sqrt.f64 1/2)))
(*.f64 (*.f64 (sqrt.f64 2) 1/2) (sqrt.f64 (*.f64 1/2 (*.f64 (-.f64 im re) 8))))
(*.f64 (+.f64 (sqrt.f64 (-.f64 re im)) (sqrt.f64 (-.f64 re im))) (*.f64 (sqrt.f64 -1) (/.f64 (sqrt.f64 2) 2)))
(*.f64 (+.f64 (sqrt.f64 -1) (sqrt.f64 -1)) (*.f64 (/.f64 (sqrt.f64 2) 2) (sqrt.f64 (-.f64 re im))))
(*.f64 (sqrt.f64 (-.f64 re im)) (*.f64 (/.f64 (sqrt.f64 2) 2) (+.f64 (sqrt.f64 -1) (sqrt.f64 -1))))
(*.f64 (/.f64 (+.f64 (sqrt.f64 2) (sqrt.f64 2)) 2) (sqrt.f64 (*.f64 -1 (-.f64 re im))))
(*.f64 (/.f64 (+.f64 (sqrt.f64 2) (sqrt.f64 2)) 2) (sqrt.f64 (neg.f64 (-.f64 re im))))
(/.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 1)
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(/.f64 (*.f64 2 (sqrt.f64 (*.f64 2 (-.f64 im re)))) 2)
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(/.f64 (*.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 4) 4)
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(/.f64 (*.f64 2 (*.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 4)) 8)
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(/.f64 (+.f64 (*.f64 2 (*.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 4)) (*.f64 2 (*.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 4))) 16)
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(/.f64 (*.f64 4 (*.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 4)) 16)
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(/.f64 (*.f64 (*.f64 2 (sqrt.f64 2)) (+.f64 (*.f64 2 (*.f64 2 (sqrt.f64 (-.f64 im re)))) (*.f64 2 (*.f64 2 (sqrt.f64 (-.f64 im re)))))) 16)
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(/.f64 (*.f64 (*.f64 2 (sqrt.f64 (-.f64 im re))) (+.f64 (*.f64 2 (*.f64 2 (sqrt.f64 2))) (*.f64 2 (*.f64 2 (sqrt.f64 2))))) 16)
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(/.f64 (*.f64 (+.f64 (*.f64 2 (*.f64 2 (sqrt.f64 2))) (*.f64 2 (*.f64 2 (sqrt.f64 2)))) (+.f64 (*.f64 2 (*.f64 2 (sqrt.f64 (-.f64 im re)))) (*.f64 2 (*.f64 2 (sqrt.f64 (-.f64 im re)))))) 64)
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(/.f64 (*.f64 (+.f64 (*.f64 2 (*.f64 2 (sqrt.f64 (-.f64 im re)))) (*.f64 2 (*.f64 2 (sqrt.f64 (-.f64 im re))))) (+.f64 (*.f64 2 (*.f64 2 (sqrt.f64 2))) (*.f64 2 (*.f64 2 (sqrt.f64 2))))) 64)
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(/.f64 (+.f64 (+.f64 (*.f64 2 (*.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 4)) (*.f64 2 (*.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 4))) (+.f64 (*.f64 2 (*.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 4)) (*.f64 2 (*.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 4)))) 32)
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(/.f64 (+.f64 (*.f64 4 (*.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 4)) (*.f64 4 (*.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 4))) 32)
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(pow.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 1)
(sqrt.f64 (*.f64 2 (-.f64 im re)))

localize27.0ms (0.1%)

Compiler

Compiled 28 to 23 computations (17.9% saved)

localize256.0ms (0.7%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(*.f64 2 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)))
0.0b
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
8.3b
(/.f64 (pow.f64 im 2) re)
18.2b
(sqrt.f64 (*.f64 2 (*.f64 1/2 (/.f64 (pow.f64 im 2) re))))
Compiler

Compiled 52 to 39 computations (25% saved)

series35.0ms (0.1%)

Counts
4 → 36
Calls

24 calls:

TimeVariablePointExpression
25.0ms
re
@0
(/.f64 (pow.f64 im 2) re)
2.0ms
re
@0
(sqrt.f64 (*.f64 2 (*.f64 1/2 (/.f64 (pow.f64 im 2) re))))
1.0ms
im
@0
(sqrt.f64 (*.f64 2 (*.f64 1/2 (/.f64 (pow.f64 im 2) re))))
1.0ms
re
@-inf
(sqrt.f64 (*.f64 2 (*.f64 1/2 (/.f64 (pow.f64 im 2) re))))
1.0ms
im
@inf
(sqrt.f64 (*.f64 2 (*.f64 1/2 (/.f64 (pow.f64 im 2) re))))

rewrite373.0ms (1%)

Algorithm
batch-egg-rewrite
Rules
924×rational_best-simplify-63
918×rational_best-simplify-64
870×rational_best-4
870×rational_best-2
870×rational_best-3
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01262
18662
219362
354762
4223162
Stop Event
node limit
Counts
4 → 326
Calls
Call 1
Inputs
(sqrt.f64 (*.f64 2 (*.f64 1/2 (/.f64 (pow.f64 im 2) re))))
(/.f64 (pow.f64 im 2) re)
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 2 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (sqrt.f64 (/.f64 (pow.f64 im 2) re)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 2) (/.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (/.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 2) 2) (+.f64 (/.f64 (/.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 2) 2) (/.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 2) (/.f64 (neg.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (sqrt.f64 (*.f64 (pow.f64 im 2) (/.f64 1/4 re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 2 (sqrt.f64 (/.f64 (pow.f64 im 2) re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (sqrt.f64 (/.f64 (pow.f64 im 2) re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 2) (sqrt.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re))) (sqrt.f64 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (sqrt.f64 (/.f64 (pow.f64 im 2) re))) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 1/2) (sqrt.f64 (*.f64 2 (/.f64 (pow.f64 im 2) re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 im) 2) (*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 1/2 re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 im) 2) (sqrt.f64 (/.f64 1 re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 1/2 re)) (sqrt.f64 (*.f64 2 (pow.f64 im 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 1/2) 2) (*.f64 2 (sqrt.f64 (*.f64 2 (/.f64 (pow.f64 im 2) re)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (sqrt.f64 2)) (/.f64 (sqrt.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (pow.f64 im 2) (/.f64 1/4 re))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (pow.f64 im 2) (/.f64 1/4 re))) (*.f64 (sqrt.f64 2) (sqrt.f64 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 2 (pow.f64 im 2))) (sqrt.f64 (/.f64 1/2 re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 1/4 re)) (*.f64 (sqrt.f64 2) (sqrt.f64 (*.f64 2 (pow.f64 im 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 1/4 re)) (sqrt.f64 (*.f64 (pow.f64 im 2) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 2 (/.f64 (pow.f64 im 2) re))) (sqrt.f64 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 2 (/.f64 (pow.f64 im 2) re))) (/.f64 (sqrt.f64 2) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 2)) (sqrt.f64 (*.f64 (pow.f64 im 2) (/.f64 1/4 re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 1/2 re))) (pow.f64 (sqrt.f64 im) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 (*.f64 2 (pow.f64 im 2)))) (sqrt.f64 (/.f64 1/4 re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 2) 2) (sqrt.f64 (*.f64 2 (/.f64 (pow.f64 im 2) re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re))) 2) (*.f64 2 (sqrt.f64 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 1/2) 2) (*.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (sqrt.f64 (*.f64 2 (/.f64 (pow.f64 im 2) re)))) (/.f64 (sqrt.f64 1/2) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 2)) (*.f64 (sqrt.f64 1/2) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 1 re)) (pow.f64 (sqrt.f64 im) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (pow.f64 im 2) 4)) (sqrt.f64 (/.f64 1/4 re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (sqrt.f64 (/.f64 (pow.f64 im 2) re))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 4)) 8)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 1)))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (pow.f64 im 2) re) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 1/2 (/.f64 (pow.f64 im 2) re)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 (pow.f64 im 2) re))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 2 (/.f64 (pow.f64 im 2) re)) (neg.f64 (/.f64 (pow.f64 im 2) re)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (pow.f64 im 2) (/.f64 1/4 re)) (*.f64 (pow.f64 im 2) (/.f64 3/4 re)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (pow.f64 im 2) (/.f64 3/4 re)) (*.f64 (pow.f64 im 2) (/.f64 1/4 re)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (*.f64 (/.f64 (pow.f64 im 2) re) 3/2) 4) (+.f64 (/.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) 4) (*.f64 1/2 (/.f64 (pow.f64 im 2) re))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) -1) (neg.f64 (+.f64 1 (/.f64 (pow.f64 im 2) (*.f64 re -2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 -1 (/.f64 (pow.f64 im 2) (*.f64 re -2)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 2 (/.f64 (pow.f64 im 2) re)) (*.f64 1/2 (/.f64 (pow.f64 im 2) re))) (/.f64 (pow.f64 im 2) (*.f64 re -2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 2 (/.f64 (pow.f64 im 2) re)) (*.f64 (pow.f64 im 2) (/.f64 1/4 re))) (neg.f64 (*.f64 (pow.f64 im 2) (/.f64 3/4 re))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (/.f64 (neg.f64 (pow.f64 im 2)) (*.f64 re 4))) (neg.f64 (/.f64 (neg.f64 (pow.f64 im 2)) (*.f64 re 4))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 im 2) re) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 im 2) re) (-.f64 (*.f64 2 (/.f64 (pow.f64 im 2) re)) (*.f64 2 (/.f64 (pow.f64 im 2) re))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (/.f64 (pow.f64 im 2) (*.f64 re -2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (neg.f64 (/.f64 (pow.f64 im 2) re)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 2 (/.f64 (pow.f64 im 2) re)) (/.f64 (pow.f64 im 2) re))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (neg.f64 (/.f64 (pow.f64 im 2) re)) (*.f64 -2 (/.f64 (pow.f64 im 2) re)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 im 2) (*.f64 re -2)) (-.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 2 (/.f64 (pow.f64 im 2) re))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (pow.f64 im 2) (/.f64 1/4 re)) (-.f64 0 (*.f64 (pow.f64 im 2) (/.f64 3/4 re))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (pow.f64 im 2) (/.f64 3/4 re)) (/.f64 (neg.f64 (pow.f64 im 2)) (*.f64 re 4)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (neg.f64 (pow.f64 im 2)) (*.f64 re 4)) (-.f64 (*.f64 (pow.f64 im 2) (/.f64 3/4 re)) (*.f64 2 (/.f64 (pow.f64 im 2) re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 2 (/.f64 (pow.f64 im 2) re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (-.f64 (*.f64 (/.f64 (pow.f64 im 2) re) 4) (*.f64 2 (/.f64 (pow.f64 im 2) re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 im 2) (/.f64 1 re))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 re (/.f64 (pow.f64 im 2) (*.f64 re re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 im 2) re) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (pow.f64 im 2) re))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1/2 re) (*.f64 2 (pow.f64 im 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1/2 re) (*.f64 re (*.f64 2 (/.f64 (pow.f64 im 2) re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1/2 re) (-.f64 (*.f64 (pow.f64 im 2) 4) (*.f64 2 (pow.f64 im 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (pow.f64 im 2)) (/.f64 1/2 re))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (pow.f64 im 2)) (-.f64 (/.f64 1 re) (/.f64 1/2 re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (pow.f64 im 2)) (+.f64 (/.f64 1/4 re) (*.f64 1/2 (/.f64 1/2 re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (pow.f64 im 2)) (+.f64 (*.f64 1/2 (/.f64 1/2 re)) (/.f64 1/4 re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (pow.f64 im 2)) (+.f64 (*.f64 1/2 (/.f64 1/2 re)) (*.f64 1/2 (/.f64 1/2 re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 re re) (/.f64 (/.f64 (pow.f64 im 2) re) (+.f64 re re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1/4 re) (*.f64 (pow.f64 im 2) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1/4 re) (-.f64 (*.f64 2 (*.f64 (pow.f64 im 2) 4)) (*.f64 (pow.f64 im 2) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (/.f64 (pow.f64 im 2) re)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 im 2) 4) (/.f64 1/4 re))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 im 2) 4) (*.f64 1/2 (/.f64 1/2 re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 im 2) 4) (-.f64 (/.f64 1/2 re) (/.f64 1/4 re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 im 2) 4) (+.f64 (/.f64 1/2 (*.f64 re 4)) (/.f64 1/2 (*.f64 re 4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (*.f64 (pow.f64 im 2) (/.f64 1/4 re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (-.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 (pow.f64 im 2) (/.f64 1/4 re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 (/.f64 (pow.f64 im 2) re) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 1/2 (/.f64 1/2 re)) (*.f64 (pow.f64 im 2) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1/2 (*.f64 re 4)) (*.f64 2 (*.f64 (pow.f64 im 2) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 re) (pow.f64 im 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 re) (*.f64 re (/.f64 (pow.f64 im 2) re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 re) (*.f64 2 (/.f64 (pow.f64 im 2) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 re) (-.f64 (*.f64 2 (pow.f64 im 2)) (pow.f64 im 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 re) (-.f64 (*.f64 2 (pow.f64 im 2)) (*.f64 2 (/.f64 (pow.f64 im 2) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 (pow.f64 im 2) re) 4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 (pow.f64 im 2) re) 4) (*.f64 re (/.f64 1/4 re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (*.f64 (pow.f64 im 2) 4)) (/.f64 1/2 (*.f64 re 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (*.f64 (pow.f64 im 2) 4)) (-.f64 (/.f64 1/4 re) (/.f64 1/2 (*.f64 re 4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 im 2) (/.f64 1/4 re)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 im 2) 2) (/.f64 2 re))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 im 2) (*.f64 re re)) re)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 im 2) (*.f64 re re)) (/.f64 1/2 (/.f64 1/2 re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 (pow.f64 im 2) re) (/.f64 re 2)) (/.f64 1 (/.f64 2 re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 (pow.f64 im 2) re) (/.f64 re 2)) (*.f64 1/2 re))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 2 re) (/.f64 (*.f64 re (/.f64 (pow.f64 im 2) 2)) re))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -2 (/.f64 (pow.f64 im 2) (*.f64 re -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 re (/.f64 (pow.f64 im 2) re)) (/.f64 1 re))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 1/2 (pow.f64 im 2)) (/.f64 2 re))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 1/2 (*.f64 (pow.f64 im 2) (/.f64 1/4 re))) 8)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 1/2 (/.f64 1/4 re)) (*.f64 2 (*.f64 (pow.f64 im 2) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1/2 (/.f64 1/2 re)) (/.f64 (pow.f64 im 2) (*.f64 re re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (/.f64 2 re)) (/.f64 (/.f64 (pow.f64 im 2) re) (/.f64 re 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/8 (*.f64 (/.f64 (pow.f64 im 2) re) 8))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1/4 (*.f64 re 4)) (*.f64 (*.f64 (pow.f64 im 2) 4) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1/2 (/.f64 1 re)) (/.f64 (/.f64 (pow.f64 im 2) re) (/.f64 re 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1/2 (/.f64 2 re)) (/.f64 (*.f64 (pow.f64 im 2) 4) (*.f64 re re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 (pow.f64 im 2) re) (+.f64 re re)) (+.f64 re re))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 im 2) re) (/.f64 (/.f64 1 re) re))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 re (*.f64 2 (pow.f64 im 2))) (/.f64 (/.f64 1/2 re) re))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 re (*.f64 2 (/.f64 (pow.f64 im 2) re))) (/.f64 1/2 re))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 re (*.f64 (pow.f64 im 2) 4)) (/.f64 (/.f64 1/4 re) re))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (/.f64 (pow.f64 im 2) 2)) (/.f64 1 re))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 1/2 re) (/.f64 (/.f64 (pow.f64 im 2) re) (/.f64 re 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 1 re) re) (*.f64 (pow.f64 im 2) re))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 re (/.f64 (pow.f64 im 2) 2)) re) (/.f64 2 re))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 1/2 re) re) (*.f64 re (*.f64 2 (pow.f64 im 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 re (*.f64 (pow.f64 im 2) (/.f64 1/4 re))) (/.f64 4 re))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 4 re) (*.f64 re (*.f64 (pow.f64 im 2) (/.f64 1/4 re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 re (/.f64 1/4 re)) (*.f64 (/.f64 (pow.f64 im 2) re) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 1/4 re) re) (*.f64 re (*.f64 (pow.f64 im 2) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 im 2) re) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (neg.f64 (/.f64 (pow.f64 im 2) re)))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (pow.f64 im 2) re) (/.f64 (pow.f64 im 2) (*.f64 re -2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 1 (neg.f64 (+.f64 1 (/.f64 (pow.f64 im 2) (*.f64 re -2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (pow.f64 im 2) (/.f64 1/4 re)) (*.f64 (pow.f64 im 2) (/.f64 1/4 re)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (pow.f64 im 2) (/.f64 1/4 re)) (neg.f64 (/.f64 (neg.f64 (pow.f64 im 2)) (*.f64 re 4))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (*.f64 (pow.f64 im 2) (/.f64 1/4 re)) 2) (+.f64 (/.f64 (*.f64 (pow.f64 im 2) (/.f64 1/4 re)) 2) (*.f64 (pow.f64 im 2) (/.f64 1/4 re))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) 4) (/.f64 (*.f64 (/.f64 (pow.f64 im 2) re) 3/2) 4))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (*.f64 (/.f64 (pow.f64 im 2) re) 3/2) 4) (/.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) 4))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (*.f64 (/.f64 (pow.f64 im 2) re) 3/2) 4) (+.f64 (/.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) 4) 0))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (/.f64 (pow.f64 im 2) re) (*.f64 (pow.f64 im 2) (/.f64 1/4 re))) (/.f64 (neg.f64 (pow.f64 im 2)) (*.f64 re 4)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (/.f64 (pow.f64 im 2) re) (/.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) 4)) (neg.f64 (/.f64 (*.f64 (/.f64 (pow.f64 im 2) re) 3/2) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 0 (+.f64 -1 (/.f64 (pow.f64 im 2) (*.f64 re -2)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 im 2) re) (*.f64 1/2 (/.f64 (pow.f64 im 2) re)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (-.f64 (/.f64 (pow.f64 im 2) re) (/.f64 (pow.f64 im 2) re)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (/.f64 (pow.f64 im 2) (*.f64 re -2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 im 2) (*.f64 re -2)) (neg.f64 (/.f64 (pow.f64 im 2) re)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (pow.f64 im 2) (/.f64 1/4 re)) (/.f64 (neg.f64 (pow.f64 im 2)) (*.f64 re 4)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 (/.f64 (pow.f64 im 2) re) 3/2) 4) (/.f64 (/.f64 (pow.f64 im 2) (*.f64 re -2)) 4))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 (/.f64 (pow.f64 im 2) re) 3/2) 4) (+.f64 (/.f64 (/.f64 (pow.f64 im 2) (*.f64 re -2)) 4) 0))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (neg.f64 (pow.f64 im 2)) (*.f64 re 4)) (-.f64 (*.f64 (pow.f64 im 2) (/.f64 1/4 re)) (/.f64 (pow.f64 im 2) re)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (/.f64 (pow.f64 im 2) (*.f64 re -2)) 4) (-.f64 (/.f64 (*.f64 (/.f64 (pow.f64 im 2) re) 3/2) 4) (/.f64 (pow.f64 im 2) re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 im 2) (+.f64 re re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (pow.f64 im 2) re) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (pow.f64 im 2)) (*.f64 re 4))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (/.f64 (pow.f64 im 2) re)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 im 2) 4) (*.f64 2 (*.f64 re 4)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (pow.f64 im 2) (*.f64 re -2)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 (pow.f64 im 2) re) 4) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (pow.f64 im 2) 4)) (*.f64 (*.f64 re 4) 4))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 im 2) (/.f64 1/4 re)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (pow.f64 im 2) 2) re)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (pow.f64 im 2) -2) (neg.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (pow.f64 im 2) (*.f64 re re)) (/.f64 2 re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (/.f64 (pow.f64 im 2) re) (/.f64 re 2)) (*.f64 2 (/.f64 2 re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (/.f64 (pow.f64 im 2) re) (/.f64 re 2)) (/.f64 4 re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 re (/.f64 (pow.f64 im 2) re)) (+.f64 re re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 (pow.f64 im 2) re) 8) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (pow.f64 im 2) 4) 4) (*.f64 (*.f64 2 (*.f64 re 4)) 4))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (/.f64 (pow.f64 im 2) re) (+.f64 re re)) (/.f64 1 re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 im 2) re) (*.f64 re (+.f64 re re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 re (*.f64 2 (pow.f64 im 2))) (*.f64 re (*.f64 re 4)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 re (*.f64 2 (/.f64 (pow.f64 im 2) re))) (*.f64 re 4))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 re (/.f64 (pow.f64 im 2) 2)) re) re)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (/.f64 (pow.f64 im 2) re) (*.f64 re 4)) (/.f64 1/2 re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (/.f64 (pow.f64 im 2) 2) 1/2) (+.f64 re re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (/.f64 (pow.f64 im 2) 2) (*.f64 re 4)) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (/.f64 (/.f64 (pow.f64 im 2) re) (*.f64 re 4)) 2) (/.f64 1/4 re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (/.f64 (/.f64 (pow.f64 im 2) re) (*.f64 re 4)) (/.f64 1 re)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 im 2) (/.f64 (pow.f64 im 2) 2)) re)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 2 (pow.f64 im 2)) (pow.f64 im 2)) (+.f64 re re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (pow.f64 im 2) 4) (*.f64 2 (pow.f64 im 2))) (*.f64 re 4))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (/.f64 (pow.f64 im 2) re) 4) (*.f64 2 (/.f64 (pow.f64 im 2) re))) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 2 (*.f64 (pow.f64 im 2) 4)) (*.f64 (pow.f64 im 2) 4)) (*.f64 2 (*.f64 re 4)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 re (/.f64 (pow.f64 im 2) re)) (/.f64 (pow.f64 im 2) 2)) re)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 re (*.f64 2 (/.f64 (pow.f64 im 2) re))) (pow.f64 im 2)) (+.f64 re re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (/.f64 (pow.f64 im 2) (*.f64 re re)) (/.f64 (/.f64 (pow.f64 im 2) re) (+.f64 re re))) (/.f64 1 re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (/.f64 (/.f64 (pow.f64 im 2) re) (/.f64 re 2)) (/.f64 (pow.f64 im 2) (*.f64 re re))) (/.f64 2 re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (/.f64 (*.f64 (pow.f64 im 2) 4) (*.f64 re re)) (/.f64 (/.f64 (pow.f64 im 2) re) (/.f64 re 2))) (/.f64 4 re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (/.f64 (/.f64 (pow.f64 im 2) re) (+.f64 re re)) (/.f64 (/.f64 (pow.f64 im 2) re) (*.f64 re 4))) (/.f64 1/2 re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (/.f64 (pow.f64 im 2) re) 8) (*.f64 (/.f64 (pow.f64 im 2) re) 4)) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (*.f64 (pow.f64 im 2) 4) 4) (*.f64 2 (*.f64 (pow.f64 im 2) 4))) (*.f64 (*.f64 re 4) 4))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 0 (/.f64 (pow.f64 im 2) -2)) re)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 re (*.f64 re (/.f64 (pow.f64 im 2) re))) (*.f64 re (+.f64 re re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 re re) (*.f64 2 (pow.f64 im 2))) (*.f64 (*.f64 re 4) (+.f64 re re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 re re) (*.f64 re (*.f64 2 (/.f64 (pow.f64 im 2) re)))) (*.f64 (*.f64 re 4) (+.f64 re re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 re 4) (*.f64 (pow.f64 im 2) 4)) (*.f64 (*.f64 2 (*.f64 re 4)) (*.f64 re 4)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 re re) (*.f64 (pow.f64 im 2) 4)) (*.f64 (*.f64 2 (*.f64 re 4)) (+.f64 re re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 re (/.f64 (pow.f64 im 2) 2)) (*.f64 re re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 re re) (pow.f64 im 2)) (*.f64 (+.f64 re re) (+.f64 re re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 re 4) (*.f64 2 (pow.f64 im 2))) (*.f64 (*.f64 re 4) (*.f64 re 4)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 re re) (*.f64 2 (/.f64 (pow.f64 im 2) re))) (*.f64 2 (*.f64 re 4)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 re 2) (pow.f64 im 2)) (*.f64 (+.f64 re re) (/.f64 re 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 re 2) (/.f64 (pow.f64 im 2) 2)) (*.f64 re (/.f64 re 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 1 re) (/.f64 (pow.f64 im 2) (*.f64 re re))) (*.f64 (/.f64 2 re) (/.f64 1 re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (*.f64 re 4) 4) (*.f64 2 (*.f64 (pow.f64 im 2) 4))) (*.f64 (*.f64 (*.f64 re 4) 4) (*.f64 (*.f64 re 4) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 1 re) (/.f64 (/.f64 (pow.f64 im 2) re) (+.f64 re re))) (*.f64 (/.f64 1 re) (/.f64 1 re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 8 (*.f64 (pow.f64 im 2) 4)) (*.f64 (*.f64 2 (*.f64 re 4)) 8))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1/2 (/.f64 (/.f64 (pow.f64 im 2) re) (+.f64 re re))) (/.f64 1/2 re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (/.f64 (pow.f64 im 2) (*.f64 re re))) (*.f64 2 (/.f64 2 re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 re re) (/.f64 (pow.f64 im 2) re)) (*.f64 re 4))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 re re) (*.f64 1/2 (/.f64 (pow.f64 im 2) re))) (+.f64 re re))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (pow.f64 im 2) (*.f64 re -2)))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (pow.f64 im 2) re) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 1/2 (/.f64 (pow.f64 im 2) re)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 (pow.f64 im 2) re))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 2 (/.f64 (pow.f64 im 2) re)) (neg.f64 (/.f64 (pow.f64 im 2) re)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (pow.f64 im 2) (/.f64 1/4 re)) (*.f64 (pow.f64 im 2) (/.f64 3/4 re)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (pow.f64 im 2) (/.f64 3/4 re)) (*.f64 (pow.f64 im 2) (/.f64 1/4 re)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (*.f64 (/.f64 (pow.f64 im 2) re) 3/2) 4) (+.f64 (/.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) 4) (*.f64 1/2 (/.f64 (pow.f64 im 2) re))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) -1) (neg.f64 (+.f64 1 (/.f64 (pow.f64 im 2) (*.f64 re -2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 -1 (/.f64 (pow.f64 im 2) (*.f64 re -2)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 2 (/.f64 (pow.f64 im 2) re)) (*.f64 1/2 (/.f64 (pow.f64 im 2) re))) (/.f64 (pow.f64 im 2) (*.f64 re -2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 2 (/.f64 (pow.f64 im 2) re)) (*.f64 (pow.f64 im 2) (/.f64 1/4 re))) (neg.f64 (*.f64 (pow.f64 im 2) (/.f64 3/4 re))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (/.f64 (neg.f64 (pow.f64 im 2)) (*.f64 re 4))) (neg.f64 (/.f64 (neg.f64 (pow.f64 im 2)) (*.f64 re 4))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 im 2) re) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 im 2) re) (-.f64 (*.f64 2 (/.f64 (pow.f64 im 2) re)) (*.f64 2 (/.f64 (pow.f64 im 2) re))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (/.f64 (pow.f64 im 2) (*.f64 re -2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (neg.f64 (/.f64 (pow.f64 im 2) re)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 2 (/.f64 (pow.f64 im 2) re)) (/.f64 (pow.f64 im 2) re))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (neg.f64 (/.f64 (pow.f64 im 2) re)) (*.f64 -2 (/.f64 (pow.f64 im 2) re)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 im 2) (*.f64 re -2)) (-.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 2 (/.f64 (pow.f64 im 2) re))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (pow.f64 im 2) (/.f64 1/4 re)) (-.f64 0 (*.f64 (pow.f64 im 2) (/.f64 3/4 re))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (pow.f64 im 2) (/.f64 3/4 re)) (/.f64 (neg.f64 (pow.f64 im 2)) (*.f64 re 4)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (neg.f64 (pow.f64 im 2)) (*.f64 re 4)) (-.f64 (*.f64 (pow.f64 im 2) (/.f64 3/4 re)) (*.f64 2 (/.f64 (pow.f64 im 2) re))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 im 2) re)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (pow.f64 im 2) re) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (pow.f64 im 2)) (+.f64 re re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (pow.f64 im 2)) (neg.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (/.f64 (pow.f64 im 2) re)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 im 2) 4) (*.f64 re 4))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 (pow.f64 im 2) re) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (pow.f64 im 2) 4)) (*.f64 2 (*.f64 re 4)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 im 2) (/.f64 1/4 re)) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (pow.f64 im 2) 2) (/.f64 re 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (pow.f64 im 2) (*.f64 re re)) (/.f64 1 re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (/.f64 (pow.f64 im 2) re) (/.f64 re 2)) (/.f64 2 re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (/.f64 (pow.f64 im 2) (*.f64 re re)) re) (/.f64 (/.f64 1 re) re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (/.f64 (/.f64 (pow.f64 im 2) re) (/.f64 re 2)) re) (/.f64 (/.f64 2 re) re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 re (/.f64 (pow.f64 im 2) re)) re)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 (pow.f64 im 2) re) 8) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (pow.f64 im 2) 4) 4) (*.f64 (*.f64 re 4) 4))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (pow.f64 im 2) 4) (*.f64 re re)) (*.f64 2 (/.f64 2 re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (pow.f64 im 2) 4) (*.f64 re re)) (/.f64 4 re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (/.f64 (pow.f64 im 2) re) (+.f64 re re)) (/.f64 1/2 re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 4 (*.f64 (/.f64 (pow.f64 im 2) re) 4)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 im 2) re) (*.f64 re re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 re (*.f64 2 (pow.f64 im 2))) (*.f64 re (+.f64 re re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 re (*.f64 2 (/.f64 (pow.f64 im 2) re))) (+.f64 re re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 re (*.f64 (pow.f64 im 2) 4)) (*.f64 re (*.f64 re 4)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (/.f64 (pow.f64 im 2) (*.f64 re re)) (+.f64 re re)) (/.f64 (/.f64 1/2 re) re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (/.f64 (pow.f64 im 2) re) (*.f64 re 4)) (/.f64 1/4 re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 2 (pow.f64 im 2)) 1/2) (*.f64 re 4))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 re (/.f64 (pow.f64 im 2) re)) 1/2) (+.f64 re re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 re (/.f64 (pow.f64 im 2) re)) (*.f64 re 4)) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 re (*.f64 2 (/.f64 (pow.f64 im 2) re))) 2) re)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 re (*.f64 2 (/.f64 (pow.f64 im 2) re))) 1/2) (*.f64 re 4))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 re (*.f64 2 (/.f64 (pow.f64 im 2) re))) -2) (neg.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 re (*.f64 (pow.f64 im 2) 4)) (*.f64 re 4)) re)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 im 2) (/.f64 (pow.f64 im 2) 2)) (/.f64 re 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 2 (pow.f64 im 2)) (pow.f64 im 2)) re)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (pow.f64 im 2) 4) (*.f64 2 (pow.f64 im 2))) (+.f64 re re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (/.f64 (pow.f64 im 2) re) 4) (*.f64 2 (/.f64 (pow.f64 im 2) re))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 2 (*.f64 (pow.f64 im 2) 4)) (*.f64 (pow.f64 im 2) 4)) (*.f64 re 4))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 re (/.f64 (pow.f64 im 2) re)) 0) re)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 re (*.f64 2 (/.f64 (pow.f64 im 2) re))) 0) (+.f64 re re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (/.f64 (/.f64 (pow.f64 im 2) re) (*.f64 re 4)) (/.f64 (/.f64 (pow.f64 im 2) re) (*.f64 re 4))) (/.f64 1/2 re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (/.f64 (/.f64 (pow.f64 im 2) re) (/.f64 re 2)) (/.f64 (pow.f64 im 2) (*.f64 re re))) (/.f64 1 re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (/.f64 (*.f64 (pow.f64 im 2) 4) (*.f64 re re)) (/.f64 (/.f64 (pow.f64 im 2) re) (/.f64 re 2))) (/.f64 2 re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (/.f64 (pow.f64 im 2) re) 8) (*.f64 (/.f64 (pow.f64 im 2) re) 4)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (*.f64 (pow.f64 im 2) 4) 4) (*.f64 2 (*.f64 (pow.f64 im 2) 4))) (*.f64 2 (*.f64 re 4)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 2 (pow.f64 im 2)) (*.f64 re (/.f64 (pow.f64 im 2) re))) re)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (pow.f64 im 2) 4) (*.f64 re (*.f64 2 (/.f64 (pow.f64 im 2) re)))) (+.f64 re re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 re (*.f64 re (/.f64 (pow.f64 im 2) re))) (*.f64 re re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 re re) (*.f64 2 (pow.f64 im 2))) (*.f64 (+.f64 re re) (+.f64 re re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 re re) (*.f64 re (*.f64 2 (/.f64 (pow.f64 im 2) re)))) (*.f64 (+.f64 re re) (+.f64 re re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 re 4) (*.f64 (pow.f64 im 2) 4)) (*.f64 (*.f64 re 4) (*.f64 re 4)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 4 (*.f64 2 (*.f64 (pow.f64 im 2) 4))) (*.f64 (*.f64 2 (*.f64 re 4)) 4))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 re re) (*.f64 (pow.f64 im 2) 4)) (*.f64 (*.f64 re 4) (+.f64 re re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 re 4) (*.f64 2 (*.f64 (pow.f64 im 2) 4))) (*.f64 (*.f64 2 (*.f64 re 4)) (*.f64 re 4)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 re re) (pow.f64 im 2)) (*.f64 re (+.f64 re re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 re re) (*.f64 2 (/.f64 (pow.f64 im 2) re))) (*.f64 re 4))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 re 4) (*.f64 (/.f64 (pow.f64 im 2) re) 4)) (*.f64 (*.f64 re 4) 4))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 2 (*.f64 re 4)) (*.f64 (/.f64 (pow.f64 im 2) re) 8)) (*.f64 8 (*.f64 2 (*.f64 re 4))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (/.f64 (/.f64 (pow.f64 im 2) re) (/.f64 re 2))) (*.f64 2 (/.f64 2 re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 re re) (*.f64 (/.f64 (pow.f64 im 2) re) 4)) (*.f64 2 (*.f64 re 4)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) (*.f64 re re))) (/.f64 1/2 re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 8 (*.f64 2 (*.f64 (pow.f64 im 2) 4))) (*.f64 (*.f64 2 (*.f64 re 4)) 8))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 re 2) (pow.f64 im 2)) (*.f64 re (/.f64 re 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 1 re) (/.f64 (/.f64 (pow.f64 im 2) re) (/.f64 re 2))) (*.f64 (/.f64 2 re) (/.f64 1 re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 re 2) (*.f64 2 (pow.f64 im 2))) (*.f64 (+.f64 re re) (/.f64 re 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 re re) (*.f64 2 (*.f64 (pow.f64 im 2) 4))) (*.f64 (*.f64 2 (*.f64 re 4)) (+.f64 re re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 re 2) (/.f64 (pow.f64 im 2) 2)) (*.f64 (/.f64 re 2) (/.f64 re 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 1 re) (/.f64 (pow.f64 im 2) (*.f64 re re))) (*.f64 (/.f64 1 re) (/.f64 1 re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 8 (*.f64 (pow.f64 im 2) 4)) (*.f64 (*.f64 re 4) 8))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1/2 (/.f64 (/.f64 (pow.f64 im 2) re) (+.f64 re re))) (*.f64 1/2 (/.f64 1/2 re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 re re) (/.f64 (pow.f64 im 2) re)) (+.f64 re re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 re (*.f64 (/.f64 (pow.f64 im 2) re) 4)) (*.f64 re 4))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 re (/.f64 (/.f64 (pow.f64 im 2) re) (/.f64 re 2))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (*.f64 re 4) 4) (*.f64 (*.f64 (pow.f64 im 2) 4) 4)) (*.f64 (*.f64 (*.f64 re 4) 4) (*.f64 (*.f64 re 4) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 re (*.f64 2 (*.f64 (pow.f64 im 2) 4))) (*.f64 re (*.f64 2 (*.f64 re 4))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 re re) (/.f64 (pow.f64 im 2) (*.f64 re re))) (*.f64 (/.f64 1 re) (+.f64 re re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 re re) (/.f64 (/.f64 (pow.f64 im 2) re) (/.f64 re 2))) (*.f64 (/.f64 2 re) (+.f64 re re)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 im 2) re) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (neg.f64 (/.f64 (pow.f64 im 2) re)))))))

simplify793.0ms (2.2%)

Algorithm
egg-herbie
Rules
1324×rational_best-simplify-49
1234×rational_best-simplify-108
1196×rational_best-simplify-53
900×rational_best-simplify-50
794×rational_best-simplify-55
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
05447710
117476134
Stop Event
node limit
Counts
362 → 331
Calls
Call 1
Inputs
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(+.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 0)
(+.f64 0 (sqrt.f64 (/.f64 (pow.f64 im 2) re)))
(+.f64 (/.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 2) (/.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 2))
(+.f64 (/.f64 (/.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 2) 2) (+.f64 (/.f64 (/.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 2) 2) (/.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 2)))
(-.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 0)
(-.f64 (/.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 2) (/.f64 (neg.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re))) 2))
(*.f64 2 (sqrt.f64 (*.f64 (pow.f64 im 2) (/.f64 1/4 re))))
(*.f64 1/2 (*.f64 2 (sqrt.f64 (/.f64 (pow.f64 im 2) re))))
(*.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 1)
(*.f64 1 (sqrt.f64 (/.f64 (pow.f64 im 2) re)))
(*.f64 (sqrt.f64 2) (sqrt.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re))))
(*.f64 (sqrt.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re))) (sqrt.f64 2))
(*.f64 (*.f64 2 (sqrt.f64 (/.f64 (pow.f64 im 2) re))) 1/2)
(*.f64 (sqrt.f64 1/2) (sqrt.f64 (*.f64 2 (/.f64 (pow.f64 im 2) re))))
(*.f64 (pow.f64 (sqrt.f64 im) 2) (*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 1/2 re))))
(*.f64 (pow.f64 (sqrt.f64 im) 2) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 (/.f64 1/2 re)) (sqrt.f64 (*.f64 2 (pow.f64 im 2))))
(*.f64 1/4 (*.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 4))
(*.f64 (/.f64 (sqrt.f64 1/2) 2) (*.f64 2 (sqrt.f64 (*.f64 2 (/.f64 (pow.f64 im 2) re)))))
(*.f64 (*.f64 2 (sqrt.f64 2)) (/.f64 (sqrt.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re))) 2))
(*.f64 (*.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 4) 1/4)
(*.f64 (sqrt.f64 (*.f64 (pow.f64 im 2) (/.f64 1/4 re))) 2)
(*.f64 (sqrt.f64 (*.f64 (pow.f64 im 2) (/.f64 1/4 re))) (*.f64 (sqrt.f64 2) (sqrt.f64 2)))
(*.f64 (sqrt.f64 (*.f64 2 (pow.f64 im 2))) (sqrt.f64 (/.f64 1/2 re)))
(*.f64 (sqrt.f64 (/.f64 1/4 re)) (*.f64 (sqrt.f64 2) (sqrt.f64 (*.f64 2 (pow.f64 im 2)))))
(*.f64 (sqrt.f64 (/.f64 1/4 re)) (sqrt.f64 (*.f64 (pow.f64 im 2) 4)))
(*.f64 (sqrt.f64 (*.f64 2 (/.f64 (pow.f64 im 2) re))) (sqrt.f64 1/2))
(*.f64 (sqrt.f64 (*.f64 2 (/.f64 (pow.f64 im 2) re))) (/.f64 (sqrt.f64 2) 2))
(*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 2)) (sqrt.f64 (*.f64 (pow.f64 im 2) (/.f64 1/4 re))))
(*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 1/2 re))) (pow.f64 (sqrt.f64 im) 2))
(*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 (*.f64 2 (pow.f64 im 2)))) (sqrt.f64 (/.f64 1/4 re)))
(*.f64 (/.f64 (sqrt.f64 2) 2) (sqrt.f64 (*.f64 2 (/.f64 (pow.f64 im 2) re))))
(*.f64 (/.f64 (sqrt.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re))) 2) (*.f64 2 (sqrt.f64 2)))
(*.f64 (*.f64 (sqrt.f64 1/2) 2) (*.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 2)))
(*.f64 (*.f64 2 (sqrt.f64 (*.f64 2 (/.f64 (pow.f64 im 2) re)))) (/.f64 (sqrt.f64 1/2) 2))
(*.f64 (*.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 2)) (*.f64 (sqrt.f64 1/2) 2))
(*.f64 (sqrt.f64 (/.f64 1 re)) (pow.f64 (sqrt.f64 im) 2))
(*.f64 (sqrt.f64 (*.f64 (pow.f64 im 2) 4)) (sqrt.f64 (/.f64 1/4 re)))
(/.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 1)
(/.f64 (*.f64 2 (sqrt.f64 (/.f64 (pow.f64 im 2) re))) 2)
(/.f64 (*.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 4) 4)
(/.f64 (*.f64 2 (*.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 4)) 8)
(pow.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 1)
(+.f64 (/.f64 (pow.f64 im 2) re) 0)
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 1/2 (/.f64 (pow.f64 im 2) re)))
(+.f64 0 (/.f64 (pow.f64 im 2) re))
(+.f64 (*.f64 2 (/.f64 (pow.f64 im 2) re)) (neg.f64 (/.f64 (pow.f64 im 2) re)))
(+.f64 (*.f64 (pow.f64 im 2) (/.f64 1/4 re)) (*.f64 (pow.f64 im 2) (/.f64 3/4 re)))
(+.f64 (*.f64 (pow.f64 im 2) (/.f64 3/4 re)) (*.f64 (pow.f64 im 2) (/.f64 1/4 re)))
(+.f64 (/.f64 (*.f64 (/.f64 (pow.f64 im 2) re) 3/2) 4) (+.f64 (/.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) 4) (*.f64 1/2 (/.f64 (pow.f64 im 2) re))))
(+.f64 (-.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) -1) (neg.f64 (+.f64 1 (/.f64 (pow.f64 im 2) (*.f64 re -2)))))
(+.f64 (-.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 -1 (/.f64 (pow.f64 im 2) (*.f64 re -2)))) -1)
(+.f64 (-.f64 (*.f64 2 (/.f64 (pow.f64 im 2) re)) (*.f64 1/2 (/.f64 (pow.f64 im 2) re))) (/.f64 (pow.f64 im 2) (*.f64 re -2)))
(+.f64 (-.f64 (*.f64 2 (/.f64 (pow.f64 im 2) re)) (*.f64 (pow.f64 im 2) (/.f64 1/4 re))) (neg.f64 (*.f64 (pow.f64 im 2) (/.f64 3/4 re))))
(+.f64 (-.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (/.f64 (neg.f64 (pow.f64 im 2)) (*.f64 re 4))) (neg.f64 (/.f64 (neg.f64 (pow.f64 im 2)) (*.f64 re 4))))
(-.f64 (/.f64 (pow.f64 im 2) re) 0)
(-.f64 (/.f64 (pow.f64 im 2) re) (-.f64 (*.f64 2 (/.f64 (pow.f64 im 2) re)) (*.f64 2 (/.f64 (pow.f64 im 2) re))))
(-.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (/.f64 (pow.f64 im 2) (*.f64 re -2)))
(-.f64 0 (neg.f64 (/.f64 (pow.f64 im 2) re)))
(-.f64 (*.f64 2 (/.f64 (pow.f64 im 2) re)) (/.f64 (pow.f64 im 2) re))
(-.f64 (neg.f64 (/.f64 (pow.f64 im 2) re)) (*.f64 -2 (/.f64 (pow.f64 im 2) re)))
(-.f64 (/.f64 (pow.f64 im 2) (*.f64 re -2)) (-.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 2 (/.f64 (pow.f64 im 2) re))))
(-.f64 (*.f64 (pow.f64 im 2) (/.f64 1/4 re)) (-.f64 0 (*.f64 (pow.f64 im 2) (/.f64 3/4 re))))
(-.f64 (*.f64 (pow.f64 im 2) (/.f64 3/4 re)) (/.f64 (neg.f64 (pow.f64 im 2)) (*.f64 re 4)))
(-.f64 (/.f64 (neg.f64 (pow.f64 im 2)) (*.f64 re 4)) (-.f64 (*.f64 (pow.f64 im 2) (/.f64 3/4 re)) (*.f64 2 (/.f64 (pow.f64 im 2) re))))
(*.f64 2 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)))
(*.f64 1/2 (*.f64 2 (/.f64 (pow.f64 im 2) re)))
(*.f64 1/2 (-.f64 (*.f64 (/.f64 (pow.f64 im 2) re) 4) (*.f64 2 (/.f64 (pow.f64 im 2) re))))
(*.f64 (pow.f64 im 2) (/.f64 1 re))
(*.f64 re (/.f64 (pow.f64 im 2) (*.f64 re re)))
(*.f64 (/.f64 (pow.f64 im 2) re) 1)
(*.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) 2)
(*.f64 1 (/.f64 (pow.f64 im 2) re))
(*.f64 (/.f64 1/2 re) (*.f64 2 (pow.f64 im 2)))
(*.f64 (/.f64 1/2 re) (*.f64 re (*.f64 2 (/.f64 (pow.f64 im 2) re))))
(*.f64 (/.f64 1/2 re) (-.f64 (*.f64 (pow.f64 im 2) 4) (*.f64 2 (pow.f64 im 2))))
(*.f64 (*.f64 2 (pow.f64 im 2)) (/.f64 1/2 re))
(*.f64 (*.f64 2 (pow.f64 im 2)) (-.f64 (/.f64 1 re) (/.f64 1/2 re)))
(*.f64 (*.f64 2 (pow.f64 im 2)) (+.f64 (/.f64 1/4 re) (*.f64 1/2 (/.f64 1/2 re))))
(*.f64 (*.f64 2 (pow.f64 im 2)) (+.f64 (*.f64 1/2 (/.f64 1/2 re)) (/.f64 1/4 re)))
(*.f64 (*.f64 2 (pow.f64 im 2)) (+.f64 (*.f64 1/2 (/.f64 1/2 re)) (*.f64 1/2 (/.f64 1/2 re))))
(*.f64 (+.f64 re re) (/.f64 (/.f64 (pow.f64 im 2) re) (+.f64 re re)))
(*.f64 (/.f64 1/4 re) (*.f64 (pow.f64 im 2) 4))
(*.f64 (/.f64 1/4 re) (-.f64 (*.f64 2 (*.f64 (pow.f64 im 2) 4)) (*.f64 (pow.f64 im 2) 4)))
(*.f64 (*.f64 2 (/.f64 (pow.f64 im 2) re)) 1/2)
(*.f64 (*.f64 (pow.f64 im 2) 4) (/.f64 1/4 re))
(*.f64 (*.f64 (pow.f64 im 2) 4) (*.f64 1/2 (/.f64 1/2 re)))
(*.f64 (*.f64 (pow.f64 im 2) 4) (-.f64 (/.f64 1/2 re) (/.f64 1/4 re)))
(*.f64 (*.f64 (pow.f64 im 2) 4) (+.f64 (/.f64 1/2 (*.f64 re 4)) (/.f64 1/2 (*.f64 re 4))))
(*.f64 4 (*.f64 (pow.f64 im 2) (/.f64 1/4 re)))
(*.f64 4 (-.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 (pow.f64 im 2) (/.f64 1/4 re))))
(*.f64 1/4 (*.f64 (/.f64 (pow.f64 im 2) re) 4))
(*.f64 (*.f64 1/2 (/.f64 1/2 re)) (*.f64 (pow.f64 im 2) 4))
(*.f64 (/.f64 1/2 (*.f64 re 4)) (*.f64 2 (*.f64 (pow.f64 im 2) 4)))
(*.f64 (/.f64 1 re) (pow.f64 im 2))
(*.f64 (/.f64 1 re) (*.f64 re (/.f64 (pow.f64 im 2) re)))
(*.f64 (/.f64 1 re) (*.f64 2 (/.f64 (pow.f64 im 2) 2)))
(*.f64 (/.f64 1 re) (-.f64 (*.f64 2 (pow.f64 im 2)) (pow.f64 im 2)))
(*.f64 (/.f64 1 re) (-.f64 (*.f64 2 (pow.f64 im 2)) (*.f64 2 (/.f64 (pow.f64 im 2) 2))))
(*.f64 (*.f64 (/.f64 (pow.f64 im 2) re) 4) 1/4)
(*.f64 (*.f64 (/.f64 (pow.f64 im 2) re) 4) (*.f64 re (/.f64 1/4 re)))
(*.f64 (*.f64 2 (*.f64 (pow.f64 im 2) 4)) (/.f64 1/2 (*.f64 re 4)))
(*.f64 (*.f64 2 (*.f64 (pow.f64 im 2) 4)) (-.f64 (/.f64 1/4 re) (/.f64 1/2 (*.f64 re 4))))
(*.f64 (*.f64 (pow.f64 im 2) (/.f64 1/4 re)) 4)
(*.f64 (/.f64 (pow.f64 im 2) 2) (/.f64 2 re))
(*.f64 (/.f64 (pow.f64 im 2) (*.f64 re re)) re)
(*.f64 (/.f64 (pow.f64 im 2) (*.f64 re re)) (/.f64 1/2 (/.f64 1/2 re)))
(*.f64 (/.f64 (/.f64 (pow.f64 im 2) re) (/.f64 re 2)) (/.f64 1 (/.f64 2 re)))
(*.f64 (/.f64 (/.f64 (pow.f64 im 2) re) (/.f64 re 2)) (*.f64 1/2 re))
(*.f64 (/.f64 2 re) (/.f64 (*.f64 re (/.f64 (pow.f64 im 2) 2)) re))
(*.f64 -2 (/.f64 (pow.f64 im 2) (*.f64 re -2)))
(*.f64 (*.f64 re (/.f64 (pow.f64 im 2) re)) (/.f64 1 re))
(*.f64 (*.f64 1/2 (pow.f64 im 2)) (/.f64 2 re))
(*.f64 (*.f64 1/2 (*.f64 (pow.f64 im 2) (/.f64 1/4 re))) 8)
(*.f64 (*.f64 1/2 (/.f64 1/4 re)) (*.f64 2 (*.f64 (pow.f64 im 2) 4)))
(*.f64 (/.f64 1/2 (/.f64 1/2 re)) (/.f64 (pow.f64 im 2) (*.f64 re re)))
(*.f64 (/.f64 1 (/.f64 2 re)) (/.f64 (/.f64 (pow.f64 im 2) re) (/.f64 re 2)))
(*.f64 1/8 (*.f64 (/.f64 (pow.f64 im 2) re) 8))
(*.f64 (/.f64 1/4 (*.f64 re 4)) (*.f64 (*.f64 (pow.f64 im 2) 4) 4))
(*.f64 (/.f64 1/2 (/.f64 1 re)) (/.f64 (/.f64 (pow.f64 im 2) re) (/.f64 re 2)))
(*.f64 (/.f64 1/2 (/.f64 2 re)) (/.f64 (*.f64 (pow.f64 im 2) 4) (*.f64 re re)))
(*.f64 (/.f64 (/.f64 (pow.f64 im 2) re) (+.f64 re re)) (+.f64 re re))
(*.f64 (*.f64 (pow.f64 im 2) re) (/.f64 (/.f64 1 re) re))
(*.f64 (*.f64 re (*.f64 2 (pow.f64 im 2))) (/.f64 (/.f64 1/2 re) re))
(*.f64 (*.f64 re (*.f64 2 (/.f64 (pow.f64 im 2) re))) (/.f64 1/2 re))
(*.f64 (*.f64 re (*.f64 (pow.f64 im 2) 4)) (/.f64 (/.f64 1/4 re) re))
(*.f64 (*.f64 2 (/.f64 (pow.f64 im 2) 2)) (/.f64 1 re))
(*.f64 (*.f64 1/2 re) (/.f64 (/.f64 (pow.f64 im 2) re) (/.f64 re 2)))
(*.f64 (/.f64 (/.f64 1 re) re) (*.f64 (pow.f64 im 2) re))
(*.f64 (/.f64 (*.f64 re (/.f64 (pow.f64 im 2) 2)) re) (/.f64 2 re))
(*.f64 (/.f64 (/.f64 1/2 re) re) (*.f64 re (*.f64 2 (pow.f64 im 2))))
(*.f64 (*.f64 re (*.f64 (pow.f64 im 2) (/.f64 1/4 re))) (/.f64 4 re))
(*.f64 (/.f64 4 re) (*.f64 re (*.f64 (pow.f64 im 2) (/.f64 1/4 re))))
(*.f64 (*.f64 re (/.f64 1/4 re)) (*.f64 (/.f64 (pow.f64 im 2) re) 4))
(*.f64 (/.f64 (/.f64 1/4 re) re) (*.f64 re (*.f64 (pow.f64 im 2) 4)))
(pow.f64 (/.f64 (pow.f64 im 2) re) 1)
(neg.f64 (neg.f64 (/.f64 (pow.f64 im 2) re)))
(+.f64 (/.f64 (pow.f64 im 2) re) (/.f64 (pow.f64 im 2) (*.f64 re -2)))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) 0)
(+.f64 0 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)))
(+.f64 1 (neg.f64 (+.f64 1 (/.f64 (pow.f64 im 2) (*.f64 re -2)))))
(+.f64 (*.f64 (pow.f64 im 2) (/.f64 1/4 re)) (*.f64 (pow.f64 im 2) (/.f64 1/4 re)))
(+.f64 (*.f64 (pow.f64 im 2) (/.f64 1/4 re)) (neg.f64 (/.f64 (neg.f64 (pow.f64 im 2)) (*.f64 re 4))))
(+.f64 (/.f64 (*.f64 (pow.f64 im 2) (/.f64 1/4 re)) 2) (+.f64 (/.f64 (*.f64 (pow.f64 im 2) (/.f64 1/4 re)) 2) (*.f64 (pow.f64 im 2) (/.f64 1/4 re))))
(+.f64 (/.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) 4) (/.f64 (*.f64 (/.f64 (pow.f64 im 2) re) 3/2) 4))
(+.f64 (/.f64 (*.f64 (/.f64 (pow.f64 im 2) re) 3/2) 4) (/.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) 4))
(+.f64 (/.f64 (*.f64 (/.f64 (pow.f64 im 2) re) 3/2) 4) (+.f64 (/.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) 4) 0))
(+.f64 (-.f64 (/.f64 (pow.f64 im 2) re) (*.f64 (pow.f64 im 2) (/.f64 1/4 re))) (/.f64 (neg.f64 (pow.f64 im 2)) (*.f64 re 4)))
(+.f64 (-.f64 (/.f64 (pow.f64 im 2) re) (/.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) 4)) (neg.f64 (/.f64 (*.f64 (/.f64 (pow.f64 im 2) re) 3/2) 4)))
(+.f64 (-.f64 0 (+.f64 -1 (/.f64 (pow.f64 im 2) (*.f64 re -2)))) -1)
(-.f64 (/.f64 (pow.f64 im 2) re) (*.f64 1/2 (/.f64 (pow.f64 im 2) re)))
(-.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) 0)
(-.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (-.f64 (/.f64 (pow.f64 im 2) re) (/.f64 (pow.f64 im 2) re)))
(-.f64 0 (/.f64 (pow.f64 im 2) (*.f64 re -2)))
(-.f64 (/.f64 (pow.f64 im 2) (*.f64 re -2)) (neg.f64 (/.f64 (pow.f64 im 2) re)))
(-.f64 (*.f64 (pow.f64 im 2) (/.f64 1/4 re)) (/.f64 (neg.f64 (pow.f64 im 2)) (*.f64 re 4)))
(-.f64 (/.f64 (*.f64 (/.f64 (pow.f64 im 2) re) 3/2) 4) (/.f64 (/.f64 (pow.f64 im 2) (*.f64 re -2)) 4))
(-.f64 (/.f64 (*.f64 (/.f64 (pow.f64 im 2) re) 3/2) 4) (+.f64 (/.f64 (/.f64 (pow.f64 im 2) (*.f64 re -2)) 4) 0))
(-.f64 (/.f64 (neg.f64 (pow.f64 im 2)) (*.f64 re 4)) (-.f64 (*.f64 (pow.f64 im 2) (/.f64 1/4 re)) (/.f64 (pow.f64 im 2) re)))
(-.f64 (/.f64 (/.f64 (pow.f64 im 2) (*.f64 re -2)) 4) (-.f64 (/.f64 (*.f64 (/.f64 (pow.f64 im 2) re) 3/2) 4) (/.f64 (pow.f64 im 2) re)))
(/.f64 (pow.f64 im 2) (+.f64 re re))
(/.f64 (/.f64 (pow.f64 im 2) re) 2)
(/.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) 1)
(/.f64 (*.f64 2 (pow.f64 im 2)) (*.f64 re 4))
(/.f64 (*.f64 2 (/.f64 (pow.f64 im 2) re)) 4)
(/.f64 (*.f64 (pow.f64 im 2) 4) (*.f64 2 (*.f64 re 4)))
(/.f64 (/.f64 (pow.f64 im 2) (*.f64 re -2)) -1)
(/.f64 (*.f64 (/.f64 (pow.f64 im 2) re) 4) 8)
(/.f64 (*.f64 2 (*.f64 (pow.f64 im 2) 4)) (*.f64 (*.f64 re 4) 4))
(/.f64 (*.f64 (pow.f64 im 2) (/.f64 1/4 re)) 1/2)
(/.f64 (/.f64 (pow.f64 im 2) 2) re)
(/.f64 (/.f64 (pow.f64 im 2) -2) (neg.f64 re))
(/.f64 (/.f64 (pow.f64 im 2) (*.f64 re re)) (/.f64 2 re))
(/.f64 (/.f64 (/.f64 (pow.f64 im 2) re) (/.f64 re 2)) (*.f64 2 (/.f64 2 re)))
(/.f64 (/.f64 (/.f64 (pow.f64 im 2) re) (/.f64 re 2)) (/.f64 4 re))
(/.f64 (*.f64 re (/.f64 (pow.f64 im 2) re)) (+.f64 re re))
(/.f64 (*.f64 (/.f64 (pow.f64 im 2) re) 8) 16)
(/.f64 (*.f64 (*.f64 (pow.f64 im 2) 4) 4) (*.f64 (*.f64 2 (*.f64 re 4)) 4))
(/.f64 (/.f64 (/.f64 (pow.f64 im 2) re) (+.f64 re re)) (/.f64 1 re))
(/.f64 (*.f64 (pow.f64 im 2) re) (*.f64 re (+.f64 re re)))
(/.f64 (*.f64 re (*.f64 2 (pow.f64 im 2))) (*.f64 re (*.f64 re 4)))
(/.f64 (*.f64 re (*.f64 2 (/.f64 (pow.f64 im 2) re))) (*.f64 re 4))
(/.f64 (/.f64 (*.f64 re (/.f64 (pow.f64 im 2) 2)) re) re)
(/.f64 (/.f64 (/.f64 (pow.f64 im 2) re) (*.f64 re 4)) (/.f64 1/2 re))
(/.f64 (/.f64 (/.f64 (pow.f64 im 2) 2) 1/2) (+.f64 re re))
(/.f64 (/.f64 (/.f64 (pow.f64 im 2) 2) (*.f64 re 4)) 1/4)
(/.f64 (/.f64 (/.f64 (/.f64 (pow.f64 im 2) re) (*.f64 re 4)) 2) (/.f64 1/4 re))
(/.f64 (/.f64 (/.f64 (/.f64 (pow.f64 im 2) re) (*.f64 re 4)) (/.f64 1 re)) 1/2)
(/.f64 (-.f64 (pow.f64 im 2) (/.f64 (pow.f64 im 2) 2)) re)
(/.f64 (-.f64 (*.f64 2 (pow.f64 im 2)) (pow.f64 im 2)) (+.f64 re re))
(/.f64 (-.f64 (*.f64 (pow.f64 im 2) 4) (*.f64 2 (pow.f64 im 2))) (*.f64 re 4))
(/.f64 (-.f64 (*.f64 (/.f64 (pow.f64 im 2) re) 4) (*.f64 2 (/.f64 (pow.f64 im 2) re))) 4)
(/.f64 (-.f64 (*.f64 2 (*.f64 (pow.f64 im 2) 4)) (*.f64 (pow.f64 im 2) 4)) (*.f64 2 (*.f64 re 4)))
(/.f64 (-.f64 (*.f64 re (/.f64 (pow.f64 im 2) re)) (/.f64 (pow.f64 im 2) 2)) re)
(/.f64 (-.f64 (*.f64 re (*.f64 2 (/.f64 (pow.f64 im 2) re))) (pow.f64 im 2)) (+.f64 re re))
(/.f64 (-.f64 (/.f64 (pow.f64 im 2) (*.f64 re re)) (/.f64 (/.f64 (pow.f64 im 2) re) (+.f64 re re))) (/.f64 1 re))
(/.f64 (-.f64 (/.f64 (/.f64 (pow.f64 im 2) re) (/.f64 re 2)) (/.f64 (pow.f64 im 2) (*.f64 re re))) (/.f64 2 re))
(/.f64 (-.f64 (/.f64 (*.f64 (pow.f64 im 2) 4) (*.f64 re re)) (/.f64 (/.f64 (pow.f64 im 2) re) (/.f64 re 2))) (/.f64 4 re))
(/.f64 (-.f64 (/.f64 (/.f64 (pow.f64 im 2) re) (+.f64 re re)) (/.f64 (/.f64 (pow.f64 im 2) re) (*.f64 re 4))) (/.f64 1/2 re))
(/.f64 (-.f64 (*.f64 (/.f64 (pow.f64 im 2) re) 8) (*.f64 (/.f64 (pow.f64 im 2) re) 4)) 8)
(/.f64 (-.f64 (*.f64 (*.f64 (pow.f64 im 2) 4) 4) (*.f64 2 (*.f64 (pow.f64 im 2) 4))) (*.f64 (*.f64 re 4) 4))
(/.f64 (-.f64 0 (/.f64 (pow.f64 im 2) -2)) re)
(/.f64 (*.f64 re (*.f64 re (/.f64 (pow.f64 im 2) re))) (*.f64 re (+.f64 re re)))
(/.f64 (*.f64 (+.f64 re re) (*.f64 2 (pow.f64 im 2))) (*.f64 (*.f64 re 4) (+.f64 re re)))
(/.f64 (*.f64 (+.f64 re re) (*.f64 re (*.f64 2 (/.f64 (pow.f64 im 2) re)))) (*.f64 (*.f64 re 4) (+.f64 re re)))
(/.f64 (*.f64 (*.f64 re 4) (*.f64 (pow.f64 im 2) 4)) (*.f64 (*.f64 2 (*.f64 re 4)) (*.f64 re 4)))
(/.f64 (*.f64 (+.f64 re re) (*.f64 (pow.f64 im 2) 4)) (*.f64 (*.f64 2 (*.f64 re 4)) (+.f64 re re)))
(/.f64 (*.f64 re (/.f64 (pow.f64 im 2) 2)) (*.f64 re re))
(/.f64 (*.f64 (+.f64 re re) (pow.f64 im 2)) (*.f64 (+.f64 re re) (+.f64 re re)))
(/.f64 (*.f64 (*.f64 re 4) (*.f64 2 (pow.f64 im 2))) (*.f64 (*.f64 re 4) (*.f64 re 4)))
(/.f64 (*.f64 (+.f64 re re) (*.f64 2 (/.f64 (pow.f64 im 2) re))) (*.f64 2 (*.f64 re 4)))
(/.f64 (*.f64 (/.f64 re 2) (pow.f64 im 2)) (*.f64 (+.f64 re re) (/.f64 re 2)))
(/.f64 (*.f64 (/.f64 re 2) (/.f64 (pow.f64 im 2) 2)) (*.f64 re (/.f64 re 2)))
(/.f64 (*.f64 (/.f64 1 re) (/.f64 (pow.f64 im 2) (*.f64 re re))) (*.f64 (/.f64 2 re) (/.f64 1 re)))
(/.f64 (*.f64 (*.f64 (*.f64 re 4) 4) (*.f64 2 (*.f64 (pow.f64 im 2) 4))) (*.f64 (*.f64 (*.f64 re 4) 4) (*.f64 (*.f64 re 4) 4)))
(/.f64 (*.f64 (/.f64 1 re) (/.f64 (/.f64 (pow.f64 im 2) re) (+.f64 re re))) (*.f64 (/.f64 1 re) (/.f64 1 re)))
(/.f64 (*.f64 8 (*.f64 (pow.f64 im 2) 4)) (*.f64 (*.f64 2 (*.f64 re 4)) 8))
(/.f64 (*.f64 1/2 (/.f64 (/.f64 (pow.f64 im 2) re) (+.f64 re re))) (/.f64 1/2 re))
(/.f64 (*.f64 2 (/.f64 (pow.f64 im 2) (*.f64 re re))) (*.f64 2 (/.f64 2 re)))
(/.f64 (*.f64 (+.f64 re re) (/.f64 (pow.f64 im 2) re)) (*.f64 re 4))
(/.f64 (*.f64 (+.f64 re re) (*.f64 1/2 (/.f64 (pow.f64 im 2) re))) (+.f64 re re))
(pow.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) 1)
(neg.f64 (/.f64 (pow.f64 im 2) (*.f64 re -2)))
(+.f64 (/.f64 (pow.f64 im 2) re) 0)
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 1/2 (/.f64 (pow.f64 im 2) re)))
(+.f64 0 (/.f64 (pow.f64 im 2) re))
(+.f64 (*.f64 2 (/.f64 (pow.f64 im 2) re)) (neg.f64 (/.f64 (pow.f64 im 2) re)))
(+.f64 (*.f64 (pow.f64 im 2) (/.f64 1/4 re)) (*.f64 (pow.f64 im 2) (/.f64 3/4 re)))
(+.f64 (*.f64 (pow.f64 im 2) (/.f64 3/4 re)) (*.f64 (pow.f64 im 2) (/.f64 1/4 re)))
(+.f64 (/.f64 (*.f64 (/.f64 (pow.f64 im 2) re) 3/2) 4) (+.f64 (/.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) 4) (*.f64 1/2 (/.f64 (pow.f64 im 2) re))))
(+.f64 (-.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) -1) (neg.f64 (+.f64 1 (/.f64 (pow.f64 im 2) (*.f64 re -2)))))
(+.f64 (-.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 -1 (/.f64 (pow.f64 im 2) (*.f64 re -2)))) -1)
(+.f64 (-.f64 (*.f64 2 (/.f64 (pow.f64 im 2) re)) (*.f64 1/2 (/.f64 (pow.f64 im 2) re))) (/.f64 (pow.f64 im 2) (*.f64 re -2)))
(+.f64 (-.f64 (*.f64 2 (/.f64 (pow.f64 im 2) re)) (*.f64 (pow.f64 im 2) (/.f64 1/4 re))) (neg.f64 (*.f64 (pow.f64 im 2) (/.f64 3/4 re))))
(+.f64 (-.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (/.f64 (neg.f64 (pow.f64 im 2)) (*.f64 re 4))) (neg.f64 (/.f64 (neg.f64 (pow.f64 im 2)) (*.f64 re 4))))
(-.f64 (/.f64 (pow.f64 im 2) re) 0)
(-.f64 (/.f64 (pow.f64 im 2) re) (-.f64 (*.f64 2 (/.f64 (pow.f64 im 2) re)) (*.f64 2 (/.f64 (pow.f64 im 2) re))))
(-.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (/.f64 (pow.f64 im 2) (*.f64 re -2)))
(-.f64 0 (neg.f64 (/.f64 (pow.f64 im 2) re)))
(-.f64 (*.f64 2 (/.f64 (pow.f64 im 2) re)) (/.f64 (pow.f64 im 2) re))
(-.f64 (neg.f64 (/.f64 (pow.f64 im 2) re)) (*.f64 -2 (/.f64 (pow.f64 im 2) re)))
(-.f64 (/.f64 (pow.f64 im 2) (*.f64 re -2)) (-.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 2 (/.f64 (pow.f64 im 2) re))))
(-.f64 (*.f64 (pow.f64 im 2) (/.f64 1/4 re)) (-.f64 0 (*.f64 (pow.f64 im 2) (/.f64 3/4 re))))
(-.f64 (*.f64 (pow.f64 im 2) (/.f64 3/4 re)) (/.f64 (neg.f64 (pow.f64 im 2)) (*.f64 re 4)))
(-.f64 (/.f64 (neg.f64 (pow.f64 im 2)) (*.f64 re 4)) (-.f64 (*.f64 (pow.f64 im 2) (/.f64 3/4 re)) (*.f64 2 (/.f64 (pow.f64 im 2) re))))
(/.f64 (pow.f64 im 2) re)
(/.f64 (/.f64 (pow.f64 im 2) re) 1)
(/.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) 1/2)
(/.f64 (*.f64 2 (pow.f64 im 2)) (+.f64 re re))
(/.f64 (neg.f64 (pow.f64 im 2)) (neg.f64 re))
(/.f64 (*.f64 2 (/.f64 (pow.f64 im 2) re)) 2)
(/.f64 (*.f64 (pow.f64 im 2) 4) (*.f64 re 4))
(/.f64 (*.f64 (/.f64 (pow.f64 im 2) re) 4) 4)
(/.f64 (*.f64 2 (*.f64 (pow.f64 im 2) 4)) (*.f64 2 (*.f64 re 4)))
(/.f64 (*.f64 (pow.f64 im 2) (/.f64 1/4 re)) 1/4)
(/.f64 (/.f64 (pow.f64 im 2) 2) (/.f64 re 2))
(/.f64 (/.f64 (pow.f64 im 2) (*.f64 re re)) (/.f64 1 re))
(/.f64 (/.f64 (/.f64 (pow.f64 im 2) re) (/.f64 re 2)) (/.f64 2 re))
(/.f64 (/.f64 (/.f64 (pow.f64 im 2) (*.f64 re re)) re) (/.f64 (/.f64 1 re) re))
(/.f64 (/.f64 (/.f64 (/.f64 (pow.f64 im 2) re) (/.f64 re 2)) re) (/.f64 (/.f64 2 re) re))
(/.f64 (*.f64 re (/.f64 (pow.f64 im 2) re)) re)
(/.f64 (*.f64 (/.f64 (pow.f64 im 2) re) 8) 8)
(/.f64 (*.f64 (*.f64 (pow.f64 im 2) 4) 4) (*.f64 (*.f64 re 4) 4))
(/.f64 (/.f64 (*.f64 (pow.f64 im 2) 4) (*.f64 re re)) (*.f64 2 (/.f64 2 re)))
(/.f64 (/.f64 (*.f64 (pow.f64 im 2) 4) (*.f64 re re)) (/.f64 4 re))
(/.f64 (/.f64 (/.f64 (pow.f64 im 2) re) (+.f64 re re)) (/.f64 1/2 re))
(/.f64 (*.f64 4 (*.f64 (/.f64 (pow.f64 im 2) re) 4)) 16)
(/.f64 (*.f64 (pow.f64 im 2) re) (*.f64 re re))
(/.f64 (*.f64 re (*.f64 2 (pow.f64 im 2))) (*.f64 re (+.f64 re re)))
(/.f64 (*.f64 re (*.f64 2 (/.f64 (pow.f64 im 2) re))) (+.f64 re re))
(/.f64 (*.f64 re (*.f64 (pow.f64 im 2) 4)) (*.f64 re (*.f64 re 4)))
(/.f64 (/.f64 (/.f64 (pow.f64 im 2) (*.f64 re re)) (+.f64 re re)) (/.f64 (/.f64 1/2 re) re))
(/.f64 (/.f64 (/.f64 (pow.f64 im 2) re) (*.f64 re 4)) (/.f64 1/4 re))
(/.f64 (/.f64 (*.f64 2 (pow.f64 im 2)) 1/2) (*.f64 re 4))
(/.f64 (/.f64 (*.f64 re (/.f64 (pow.f64 im 2) re)) 1/2) (+.f64 re re))
(/.f64 (/.f64 (*.f64 re (/.f64 (pow.f64 im 2) re)) (*.f64 re 4)) 1/4)
(/.f64 (/.f64 (*.f64 re (*.f64 2 (/.f64 (pow.f64 im 2) re))) 2) re)
(/.f64 (/.f64 (*.f64 re (*.f64 2 (/.f64 (pow.f64 im 2) re))) 1/2) (*.f64 re 4))
(/.f64 (/.f64 (*.f64 re (*.f64 2 (/.f64 (pow.f64 im 2) re))) -2) (neg.f64 re))
(/.f64 (/.f64 (*.f64 re (*.f64 (pow.f64 im 2) 4)) (*.f64 re 4)) re)
(/.f64 (-.f64 (pow.f64 im 2) (/.f64 (pow.f64 im 2) 2)) (/.f64 re 2))
(/.f64 (-.f64 (*.f64 2 (pow.f64 im 2)) (pow.f64 im 2)) re)
(/.f64 (-.f64 (*.f64 (pow.f64 im 2) 4) (*.f64 2 (pow.f64 im 2))) (+.f64 re re))
(/.f64 (-.f64 (*.f64 (/.f64 (pow.f64 im 2) re) 4) (*.f64 2 (/.f64 (pow.f64 im 2) re))) 2)
(/.f64 (-.f64 (*.f64 2 (*.f64 (pow.f64 im 2) 4)) (*.f64 (pow.f64 im 2) 4)) (*.f64 re 4))
(/.f64 (+.f64 (*.f64 re (/.f64 (pow.f64 im 2) re)) 0) re)
(/.f64 (+.f64 (*.f64 re (*.f64 2 (/.f64 (pow.f64 im 2) re))) 0) (+.f64 re re))
(/.f64 (+.f64 (/.f64 (/.f64 (pow.f64 im 2) re) (*.f64 re 4)) (/.f64 (/.f64 (pow.f64 im 2) re) (*.f64 re 4))) (/.f64 1/2 re))
(/.f64 (-.f64 (/.f64 (/.f64 (pow.f64 im 2) re) (/.f64 re 2)) (/.f64 (pow.f64 im 2) (*.f64 re re))) (/.f64 1 re))
(/.f64 (-.f64 (/.f64 (*.f64 (pow.f64 im 2) 4) (*.f64 re re)) (/.f64 (/.f64 (pow.f64 im 2) re) (/.f64 re 2))) (/.f64 2 re))
(/.f64 (-.f64 (*.f64 (/.f64 (pow.f64 im 2) re) 8) (*.f64 (/.f64 (pow.f64 im 2) re) 4)) 4)
(/.f64 (-.f64 (*.f64 (*.f64 (pow.f64 im 2) 4) 4) (*.f64 2 (*.f64 (pow.f64 im 2) 4))) (*.f64 2 (*.f64 re 4)))
(/.f64 (-.f64 (*.f64 2 (pow.f64 im 2)) (*.f64 re (/.f64 (pow.f64 im 2) re))) re)
(/.f64 (-.f64 (*.f64 (pow.f64 im 2) 4) (*.f64 re (*.f64 2 (/.f64 (pow.f64 im 2) re)))) (+.f64 re re))
(/.f64 (*.f64 re (*.f64 re (/.f64 (pow.f64 im 2) re))) (*.f64 re re))
(/.f64 (*.f64 (+.f64 re re) (*.f64 2 (pow.f64 im 2))) (*.f64 (+.f64 re re) (+.f64 re re)))
(/.f64 (*.f64 (+.f64 re re) (*.f64 re (*.f64 2 (/.f64 (pow.f64 im 2) re)))) (*.f64 (+.f64 re re) (+.f64 re re)))
(/.f64 (*.f64 (*.f64 re 4) (*.f64 (pow.f64 im 2) 4)) (*.f64 (*.f64 re 4) (*.f64 re 4)))
(/.f64 (*.f64 4 (*.f64 2 (*.f64 (pow.f64 im 2) 4))) (*.f64 (*.f64 2 (*.f64 re 4)) 4))
(/.f64 (*.f64 (+.f64 re re) (*.f64 (pow.f64 im 2) 4)) (*.f64 (*.f64 re 4) (+.f64 re re)))
(/.f64 (*.f64 (*.f64 re 4) (*.f64 2 (*.f64 (pow.f64 im 2) 4))) (*.f64 (*.f64 2 (*.f64 re 4)) (*.f64 re 4)))
(/.f64 (*.f64 (+.f64 re re) (pow.f64 im 2)) (*.f64 re (+.f64 re re)))
(/.f64 (*.f64 (+.f64 re re) (*.f64 2 (/.f64 (pow.f64 im 2) re))) (*.f64 re 4))
(/.f64 (*.f64 (*.f64 re 4) (*.f64 (/.f64 (pow.f64 im 2) re) 4)) (*.f64 (*.f64 re 4) 4))
(/.f64 (*.f64 (*.f64 2 (*.f64 re 4)) (*.f64 (/.f64 (pow.f64 im 2) re) 8)) (*.f64 8 (*.f64 2 (*.f64 re 4))))
(/.f64 (*.f64 2 (/.f64 (/.f64 (pow.f64 im 2) re) (/.f64 re 2))) (*.f64 2 (/.f64 2 re)))
(/.f64 (*.f64 (+.f64 re re) (*.f64 (/.f64 (pow.f64 im 2) re) 4)) (*.f64 2 (*.f64 re 4)))
(/.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) (*.f64 re re))) (/.f64 1/2 re))
(/.f64 (*.f64 8 (*.f64 2 (*.f64 (pow.f64 im 2) 4))) (*.f64 (*.f64 2 (*.f64 re 4)) 8))
(/.f64 (*.f64 (/.f64 re 2) (pow.f64 im 2)) (*.f64 re (/.f64 re 2)))
(/.f64 (*.f64 (/.f64 1 re) (/.f64 (/.f64 (pow.f64 im 2) re) (/.f64 re 2))) (*.f64 (/.f64 2 re) (/.f64 1 re)))
(/.f64 (*.f64 (/.f64 re 2) (*.f64 2 (pow.f64 im 2))) (*.f64 (+.f64 re re) (/.f64 re 2)))
(/.f64 (*.f64 (+.f64 re re) (*.f64 2 (*.f64 (pow.f64 im 2) 4))) (*.f64 (*.f64 2 (*.f64 re 4)) (+.f64 re re)))
(/.f64 (*.f64 (/.f64 re 2) (/.f64 (pow.f64 im 2) 2)) (*.f64 (/.f64 re 2) (/.f64 re 2)))
(/.f64 (*.f64 (/.f64 1 re) (/.f64 (pow.f64 im 2) (*.f64 re re))) (*.f64 (/.f64 1 re) (/.f64 1 re)))
(/.f64 (*.f64 8 (*.f64 (pow.f64 im 2) 4)) (*.f64 (*.f64 re 4) 8))
(/.f64 (*.f64 1/2 (/.f64 (/.f64 (pow.f64 im 2) re) (+.f64 re re))) (*.f64 1/2 (/.f64 1/2 re)))
(/.f64 (*.f64 (+.f64 re re) (/.f64 (pow.f64 im 2) re)) (+.f64 re re))
(/.f64 (*.f64 re (*.f64 (/.f64 (pow.f64 im 2) re) 4)) (*.f64 re 4))
(/.f64 (*.f64 re (/.f64 (/.f64 (pow.f64 im 2) re) (/.f64 re 2))) 2)
(/.f64 (*.f64 (*.f64 (*.f64 re 4) 4) (*.f64 (*.f64 (pow.f64 im 2) 4) 4)) (*.f64 (*.f64 (*.f64 re 4) 4) (*.f64 (*.f64 re 4) 4)))
(/.f64 (*.f64 re (*.f64 2 (*.f64 (pow.f64 im 2) 4))) (*.f64 re (*.f64 2 (*.f64 re 4))))
(/.f64 (*.f64 (+.f64 re re) (/.f64 (pow.f64 im 2) (*.f64 re re))) (*.f64 (/.f64 1 re) (+.f64 re re)))
(/.f64 (*.f64 (+.f64 re re) (/.f64 (/.f64 (pow.f64 im 2) re) (/.f64 re 2))) (*.f64 (/.f64 2 re) (+.f64 re re)))
(pow.f64 (/.f64 (pow.f64 im 2) re) 1)
(neg.f64 (neg.f64 (/.f64 (pow.f64 im 2) re)))
Outputs
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) -1)
(*.f64 im (neg.f64 (sqrt.f64 (/.f64 1 re))))
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) -1)
(*.f64 im (neg.f64 (sqrt.f64 (/.f64 1 re))))
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) -1)
(*.f64 im (neg.f64 (sqrt.f64 (/.f64 1 re))))
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) -1)
(*.f64 im (neg.f64 (sqrt.f64 (/.f64 1 re))))
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(+.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 0)
(sqrt.f64 (/.f64 (pow.f64 im 2) re))
(+.f64 0 (sqrt.f64 (/.f64 (pow.f64 im 2) re)))
(sqrt.f64 (/.f64 (pow.f64 im 2) re))
(+.f64 (/.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 2) (/.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 2))
(sqrt.f64 (/.f64 (pow.f64 im 2) re))
(+.f64 (/.f64 (/.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 2) 2) (+.f64 (/.f64 (/.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 2) 2) (/.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 2)))
(sqrt.f64 (/.f64 (pow.f64 im 2) re))
(-.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 0)
(sqrt.f64 (/.f64 (pow.f64 im 2) re))
(-.f64 (/.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 2) (/.f64 (neg.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re))) 2))
(sqrt.f64 (/.f64 (pow.f64 im 2) re))
(*.f64 2 (sqrt.f64 (*.f64 (pow.f64 im 2) (/.f64 1/4 re))))
(sqrt.f64 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 2 (sqrt.f64 (/.f64 (pow.f64 im 2) re))))
(sqrt.f64 (/.f64 (pow.f64 im 2) re))
(*.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 1)
(sqrt.f64 (/.f64 (pow.f64 im 2) re))
(*.f64 1 (sqrt.f64 (/.f64 (pow.f64 im 2) re)))
(sqrt.f64 (/.f64 (pow.f64 im 2) re))
(*.f64 (sqrt.f64 2) (sqrt.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re))))
(sqrt.f64 (/.f64 (pow.f64 im 2) re))
(*.f64 (sqrt.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re))) (sqrt.f64 2))
(sqrt.f64 (/.f64 (pow.f64 im 2) re))
(*.f64 (*.f64 2 (sqrt.f64 (/.f64 (pow.f64 im 2) re))) 1/2)
(sqrt.f64 (/.f64 (pow.f64 im 2) re))
(*.f64 (sqrt.f64 1/2) (sqrt.f64 (*.f64 2 (/.f64 (pow.f64 im 2) re))))
(sqrt.f64 (/.f64 (pow.f64 im 2) re))
(*.f64 (pow.f64 (sqrt.f64 im) 2) (*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 1/2 re))))
(sqrt.f64 (/.f64 (pow.f64 im 2) re))
(*.f64 (pow.f64 (sqrt.f64 im) 2) (sqrt.f64 (/.f64 1 re)))
(sqrt.f64 (/.f64 (pow.f64 im 2) re))
(*.f64 (sqrt.f64 (/.f64 1/2 re)) (sqrt.f64 (*.f64 2 (pow.f64 im 2))))
(sqrt.f64 (/.f64 (pow.f64 im 2) re))
(*.f64 1/4 (*.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 4))
(sqrt.f64 (/.f64 (pow.f64 im 2) re))
(*.f64 (/.f64 (sqrt.f64 1/2) 2) (*.f64 2 (sqrt.f64 (*.f64 2 (/.f64 (pow.f64 im 2) re)))))
(sqrt.f64 (/.f64 (pow.f64 im 2) re))
(*.f64 (*.f64 2 (sqrt.f64 2)) (/.f64 (sqrt.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re))) 2))
(sqrt.f64 (/.f64 (pow.f64 im 2) re))
(*.f64 (*.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 4) 1/4)
(sqrt.f64 (/.f64 (pow.f64 im 2) re))
(*.f64 (sqrt.f64 (*.f64 (pow.f64 im 2) (/.f64 1/4 re))) 2)
(sqrt.f64 (/.f64 (pow.f64 im 2) re))
(*.f64 (sqrt.f64 (*.f64 (pow.f64 im 2) (/.f64 1/4 re))) (*.f64 (sqrt.f64 2) (sqrt.f64 2)))
(sqrt.f64 (/.f64 (pow.f64 im 2) re))
(*.f64 (sqrt.f64 (*.f64 2 (pow.f64 im 2))) (sqrt.f64 (/.f64 1/2 re)))
(sqrt.f64 (/.f64 (pow.f64 im 2) re))
(*.f64 (sqrt.f64 (/.f64 1/4 re)) (*.f64 (sqrt.f64 2) (sqrt.f64 (*.f64 2 (pow.f64 im 2)))))
(sqrt.f64 (/.f64 (pow.f64 im 2) re))
(*.f64 (sqrt.f64 (/.f64 1/4 re)) (sqrt.f64 (*.f64 (pow.f64 im 2) 4)))
(sqrt.f64 (/.f64 (pow.f64 im 2) re))
(*.f64 (sqrt.f64 (*.f64 2 (/.f64 (pow.f64 im 2) re))) (sqrt.f64 1/2))
(sqrt.f64 (/.f64 (pow.f64 im 2) re))
(*.f64 (sqrt.f64 (*.f64 2 (/.f64 (pow.f64 im 2) re))) (/.f64 (sqrt.f64 2) 2))
(*.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 (*.f64 2 (/.f64 (pow.f64 im 2) re))) 2))
(*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 2)) (sqrt.f64 (*.f64 (pow.f64 im 2) (/.f64 1/4 re))))
(sqrt.f64 (/.f64 (pow.f64 im 2) re))
(*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 1/2 re))) (pow.f64 (sqrt.f64 im) 2))
(sqrt.f64 (/.f64 (pow.f64 im 2) re))
(*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 (*.f64 2 (pow.f64 im 2)))) (sqrt.f64 (/.f64 1/4 re)))
(sqrt.f64 (/.f64 (pow.f64 im 2) re))
(*.f64 (/.f64 (sqrt.f64 2) 2) (sqrt.f64 (*.f64 2 (/.f64 (pow.f64 im 2) re))))
(*.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 (*.f64 2 (/.f64 (pow.f64 im 2) re))) 2))
(*.f64 (sqrt.f64 (*.f64 2 (/.f64 (pow.f64 im 2) re))) (/.f64 (sqrt.f64 2) 2))
(*.f64 (/.f64 (sqrt.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re))) 2) (*.f64 2 (sqrt.f64 2)))
(sqrt.f64 (/.f64 (pow.f64 im 2) re))
(*.f64 (*.f64 (sqrt.f64 1/2) 2) (*.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 2)))
(*.f64 2 (*.f64 (sqrt.f64 1/2) (*.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) (/.f64 (sqrt.f64 2) 2))))
(*.f64 2 (*.f64 (/.f64 (sqrt.f64 2) 2) (sqrt.f64 (/.f64 (pow.f64 im 2) (+.f64 re re)))))
(*.f64 (*.f64 2 (sqrt.f64 (*.f64 2 (/.f64 (pow.f64 im 2) re)))) (/.f64 (sqrt.f64 1/2) 2))
(sqrt.f64 (/.f64 (pow.f64 im 2) re))
(*.f64 (*.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 2)) (*.f64 (sqrt.f64 1/2) 2))
(*.f64 2 (*.f64 (sqrt.f64 1/2) (*.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) (/.f64 (sqrt.f64 2) 2))))
(*.f64 2 (*.f64 (/.f64 (sqrt.f64 2) 2) (sqrt.f64 (/.f64 (pow.f64 im 2) (+.f64 re re)))))
(*.f64 (sqrt.f64 (/.f64 1 re)) (pow.f64 (sqrt.f64 im) 2))
(sqrt.f64 (/.f64 (pow.f64 im 2) re))
(*.f64 (sqrt.f64 (*.f64 (pow.f64 im 2) 4)) (sqrt.f64 (/.f64 1/4 re)))
(sqrt.f64 (/.f64 (pow.f64 im 2) re))
(/.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 1)
(sqrt.f64 (/.f64 (pow.f64 im 2) re))
(/.f64 (*.f64 2 (sqrt.f64 (/.f64 (pow.f64 im 2) re))) 2)
(sqrt.f64 (/.f64 (pow.f64 im 2) re))
(/.f64 (*.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 4) 4)
(sqrt.f64 (/.f64 (pow.f64 im 2) re))
(/.f64 (*.f64 2 (*.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 4)) 8)
(sqrt.f64 (/.f64 (pow.f64 im 2) re))
(pow.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 1)
(sqrt.f64 (/.f64 (pow.f64 im 2) re))
(+.f64 (/.f64 (pow.f64 im 2) re) 0)
(/.f64 (pow.f64 im 2) re)
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 1/2 (/.f64 (pow.f64 im 2) re)))
(/.f64 (pow.f64 im 2) re)
(+.f64 0 (/.f64 (pow.f64 im 2) re))
(/.f64 (pow.f64 im 2) re)
(+.f64 (*.f64 2 (/.f64 (pow.f64 im 2) re)) (neg.f64 (/.f64 (pow.f64 im 2) re)))
(/.f64 (pow.f64 im 2) re)
(+.f64 (*.f64 (pow.f64 im 2) (/.f64 1/4 re)) (*.f64 (pow.f64 im 2) (/.f64 3/4 re)))
(/.f64 (pow.f64 im 2) re)
(+.f64 (*.f64 (pow.f64 im 2) (/.f64 3/4 re)) (*.f64 (pow.f64 im 2) (/.f64 1/4 re)))
(/.f64 (pow.f64 im 2) re)
(+.f64 (/.f64 (*.f64 (/.f64 (pow.f64 im 2) re) 3/2) 4) (+.f64 (/.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) 4) (*.f64 1/2 (/.f64 (pow.f64 im 2) re))))
(/.f64 (pow.f64 im 2) re)
(+.f64 (-.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) -1) (neg.f64 (+.f64 1 (/.f64 (pow.f64 im 2) (*.f64 re -2)))))
(/.f64 (pow.f64 im 2) re)
(+.f64 (-.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 -1 (/.f64 (pow.f64 im 2) (*.f64 re -2)))) -1)
(/.f64 (pow.f64 im 2) re)
(+.f64 (-.f64 (*.f64 2 (/.f64 (pow.f64 im 2) re)) (*.f64 1/2 (/.f64 (pow.f64 im 2) re))) (/.f64 (pow.f64 im 2) (*.f64 re -2)))
(/.f64 (pow.f64 im 2) re)
(+.f64 (-.f64 (*.f64 2 (/.f64 (pow.f64 im 2) re)) (*.f64 (pow.f64 im 2) (/.f64 1/4 re))) (neg.f64 (*.f64 (pow.f64 im 2) (/.f64 3/4 re))))
(/.f64 (pow.f64 im 2) re)
(+.f64 (-.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (/.f64 (neg.f64 (pow.f64 im 2)) (*.f64 re 4))) (neg.f64 (/.f64 (neg.f64 (pow.f64 im 2)) (*.f64 re 4))))
(-.f64 (*.f64 (/.f64 (pow.f64 im 2) re) 1/2) (+.f64 (/.f64 (neg.f64 (pow.f64 im 2)) (*.f64 re 4)) (/.f64 (neg.f64 (pow.f64 im 2)) (*.f64 re 4))))
(-.f64 (/.f64 (pow.f64 im 2) (+.f64 re re)) (/.f64 (/.f64 (*.f64 (pow.f64 im 2) 4) -2) (*.f64 re 4)))
(-.f64 (/.f64 (pow.f64 im 2) re) 0)
(/.f64 (pow.f64 im 2) re)
(-.f64 (/.f64 (pow.f64 im 2) re) (-.f64 (*.f64 2 (/.f64 (pow.f64 im 2) re)) (*.f64 2 (/.f64 (pow.f64 im 2) re))))
(/.f64 (pow.f64 im 2) re)
(-.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (/.f64 (pow.f64 im 2) (*.f64 re -2)))
(/.f64 (pow.f64 im 2) re)
(-.f64 0 (neg.f64 (/.f64 (pow.f64 im 2) re)))
(/.f64 (pow.f64 im 2) re)
(-.f64 (*.f64 2 (/.f64 (pow.f64 im 2) re)) (/.f64 (pow.f64 im 2) re))
(/.f64 (pow.f64 im 2) re)
(-.f64 (neg.f64 (/.f64 (pow.f64 im 2) re)) (*.f64 -2 (/.f64 (pow.f64 im 2) re)))
(-.f64 (neg.f64 (/.f64 (pow.f64 im 2) re)) (*.f64 (pow.f64 im 2) (/.f64 -2 re)))
(-.f64 (/.f64 (pow.f64 im 2) (neg.f64 re)) (*.f64 (pow.f64 im 2) (/.f64 -2 re)))
(-.f64 (/.f64 (pow.f64 im 2) (*.f64 re -2)) (-.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 2 (/.f64 (pow.f64 im 2) re))))
(/.f64 (pow.f64 im 2) re)
(-.f64 (*.f64 (pow.f64 im 2) (/.f64 1/4 re)) (-.f64 0 (*.f64 (pow.f64 im 2) (/.f64 3/4 re))))
(/.f64 (pow.f64 im 2) re)
(-.f64 (*.f64 (pow.f64 im 2) (/.f64 3/4 re)) (/.f64 (neg.f64 (pow.f64 im 2)) (*.f64 re 4)))
(-.f64 (*.f64 (pow.f64 im 2) (/.f64 3/4 re)) (/.f64 (/.f64 (pow.f64 im 2) (neg.f64 re)) 4))
(-.f64 (/.f64 (neg.f64 (pow.f64 im 2)) (*.f64 re 4)) (-.f64 (*.f64 (pow.f64 im 2) (/.f64 3/4 re)) (*.f64 2 (/.f64 (pow.f64 im 2) re))))
(-.f64 (*.f64 2 (/.f64 (pow.f64 im 2) re)) (-.f64 (*.f64 (pow.f64 im 2) (/.f64 3/4 re)) (/.f64 (neg.f64 (pow.f64 im 2)) (*.f64 re 4))))
(-.f64 (/.f64 (/.f64 (pow.f64 im 2) (neg.f64 re)) 4) (*.f64 (/.f64 (pow.f64 im 2) re) -5/4))
(*.f64 2 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)))
(/.f64 (pow.f64 im 2) re)
(*.f64 1/2 (*.f64 2 (/.f64 (pow.f64 im 2) re)))
(/.f64 (pow.f64 im 2) re)
(*.f64 1/2 (-.f64 (*.f64 (/.f64 (pow.f64 im 2) re) 4) (*.f64 2 (/.f64 (pow.f64 im 2) re))))
(/.f64 (pow.f64 im 2) re)
(*.f64 (pow.f64 im 2) (/.f64 1 re))
(/.f64 (pow.f64 im 2) re)
(*.f64 re (/.f64 (pow.f64 im 2) (*.f64 re re)))
(/.f64 (pow.f64 im 2) re)
(*.f64 (/.f64 (pow.f64 im 2) re) 1)
(/.f64 (pow.f64 im 2) re)
(*.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) 2)
(/.f64 (pow.f64 im 2) re)
(*.f64 1 (/.f64 (pow.f64 im 2) re))
(/.f64 (pow.f64 im 2) re)
(*.f64 (/.f64 1/2 re) (*.f64 2 (pow.f64 im 2)))
(/.f64 (pow.f64 im 2) re)
(*.f64 (/.f64 1/2 re) (*.f64 re (*.f64 2 (/.f64 (pow.f64 im 2) re))))
(/.f64 (pow.f64 im 2) re)
(*.f64 (/.f64 1/2 re) (-.f64 (*.f64 (pow.f64 im 2) 4) (*.f64 2 (pow.f64 im 2))))
(/.f64 (pow.f64 im 2) re)
(*.f64 (*.f64 2 (pow.f64 im 2)) (/.f64 1/2 re))
(/.f64 (pow.f64 im 2) re)
(*.f64 (*.f64 2 (pow.f64 im 2)) (-.f64 (/.f64 1 re) (/.f64 1/2 re)))
(/.f64 (pow.f64 im 2) re)
(*.f64 (*.f64 2 (pow.f64 im 2)) (+.f64 (/.f64 1/4 re) (*.f64 1/2 (/.f64 1/2 re))))
(*.f64 2 (*.f64 (pow.f64 im 2) (+.f64 (/.f64 1/4 re) (*.f64 1 (/.f64 1/4 re)))))
(*.f64 (*.f64 2 (pow.f64 im 2)) (+.f64 (*.f64 1/2 (/.f64 1/2 re)) (/.f64 1/4 re)))
(*.f64 (*.f64 2 (pow.f64 im 2)) (+.f64 (/.f64 1/4 re) (*.f64 1/2 (/.f64 1/2 re))))
(*.f64 2 (*.f64 (pow.f64 im 2) (+.f64 (/.f64 1/4 re) (*.f64 1 (/.f64 1/4 re)))))
(*.f64 (*.f64 2 (pow.f64 im 2)) (+.f64 (*.f64 1/2 (/.f64 1/2 re)) (*.f64 1/2 (/.f64 1/2 re))))
(/.f64 (pow.f64 im 2) re)
(*.f64 (+.f64 re re) (/.f64 (/.f64 (pow.f64 im 2) re) (+.f64 re re)))
(/.f64 (pow.f64 im 2) re)
(*.f64 (/.f64 1/4 re) (*.f64 (pow.f64 im 2) 4))
(/.f64 (pow.f64 im 2) re)
(*.f64 (/.f64 1/4 re) (-.f64 (*.f64 2 (*.f64 (pow.f64 im 2) 4)) (*.f64 (pow.f64 im 2) 4)))
(*.f64 (/.f64 1/4 re) (-.f64 (*.f64 4 (*.f64 2 (pow.f64 im 2))) (*.f64 (pow.f64 im 2) 4)))
(*.f64 1/4 (/.f64 (-.f64 (*.f64 (pow.f64 im 2) 8) (*.f64 (pow.f64 im 2) 4)) re))
(*.f64 (*.f64 2 (/.f64 (pow.f64 im 2) re)) 1/2)
(/.f64 (pow.f64 im 2) re)
(*.f64 (*.f64 (pow.f64 im 2) 4) (/.f64 1/4 re))
(/.f64 (pow.f64 im 2) re)
(*.f64 (*.f64 (pow.f64 im 2) 4) (*.f64 1/2 (/.f64 1/2 re)))
(/.f64 (pow.f64 im 2) re)
(*.f64 (*.f64 (pow.f64 im 2) 4) (-.f64 (/.f64 1/2 re) (/.f64 1/4 re)))
(/.f64 (pow.f64 im 2) re)
(*.f64 (*.f64 (pow.f64 im 2) 4) (+.f64 (/.f64 1/2 (*.f64 re 4)) (/.f64 1/2 (*.f64 re 4))))
(/.f64 (pow.f64 im 2) re)
(*.f64 4 (*.f64 (pow.f64 im 2) (/.f64 1/4 re)))
(/.f64 (pow.f64 im 2) re)
(*.f64 4 (-.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 (pow.f64 im 2) (/.f64 1/4 re))))
(*.f64 4 (-.f64 (*.f64 (/.f64 (pow.f64 im 2) re) 1/2) (*.f64 (pow.f64 im 2) (/.f64 1/4 re))))
(*.f64 4 (-.f64 (/.f64 (pow.f64 im 2) (+.f64 re re)) (*.f64 (pow.f64 im 2) (/.f64 1/4 re))))
(*.f64 1/4 (*.f64 (/.f64 (pow.f64 im 2) re) 4))
(/.f64 (pow.f64 im 2) re)
(*.f64 (*.f64 1/2 (/.f64 1/2 re)) (*.f64 (pow.f64 im 2) 4))
(/.f64 (pow.f64 im 2) re)
(*.f64 (/.f64 1/2 (*.f64 re 4)) (*.f64 2 (*.f64 (pow.f64 im 2) 4)))
(/.f64 (pow.f64 im 2) re)
(*.f64 (/.f64 1 re) (pow.f64 im 2))
(/.f64 (pow.f64 im 2) re)
(*.f64 (/.f64 1 re) (*.f64 re (/.f64 (pow.f64 im 2) re)))
(/.f64 (pow.f64 im 2) re)
(*.f64 (/.f64 1 re) (*.f64 2 (/.f64 (pow.f64 im 2) 2)))
(/.f64 (pow.f64 im 2) re)
(*.f64 (/.f64 1 re) (-.f64 (*.f64 2 (pow.f64 im 2)) (pow.f64 im 2)))
(/.f64 (pow.f64 im 2) re)
(*.f64 (/.f64 1 re) (-.f64 (*.f64 2 (pow.f64 im 2)) (*.f64 2 (/.f64 (pow.f64 im 2) 2))))
(/.f64 (pow.f64 im 2) re)
(*.f64 (*.f64 (/.f64 (pow.f64 im 2) re) 4) 1/4)
(/.f64 (pow.f64 im 2) re)
(*.f64 (*.f64 (/.f64 (pow.f64 im 2) re) 4) (*.f64 re (/.f64 1/4 re)))
(/.f64 (pow.f64 im 2) re)
(*.f64 (*.f64 2 (*.f64 (pow.f64 im 2) 4)) (/.f64 1/2 (*.f64 re 4)))
(/.f64 (pow.f64 im 2) re)
(*.f64 (*.f64 2 (*.f64 (pow.f64 im 2) 4)) (-.f64 (/.f64 1/4 re) (/.f64 1/2 (*.f64 re 4))))
(/.f64 (pow.f64 im 2) re)
(*.f64 (*.f64 (pow.f64 im 2) (/.f64 1/4 re)) 4)
(/.f64 (pow.f64 im 2) re)
(*.f64 (/.f64 (pow.f64 im 2) 2) (/.f64 2 re))
(/.f64 (pow.f64 im 2) re)
(*.f64 (/.f64 (pow.f64 im 2) (*.f64 re re)) re)
(/.f64 (pow.f64 im 2) re)
(*.f64 (/.f64 (pow.f64 im 2) (*.f64 re re)) (/.f64 1/2 (/.f64 1/2 re)))
(/.f64 (pow.f64 im 2) re)
(*.f64 (/.f64 (/.f64 (pow.f64 im 2) re) (/.f64 re 2)) (/.f64 1 (/.f64 2 re)))
(/.f64 (pow.f64 im 2) re)
(*.f64 (/.f64 (/.f64 (pow.f64 im 2) re) (/.f64 re 2)) (*.f64 1/2 re))
(/.f64 (pow.f64 im 2) re)
(*.f64 (/.f64 2 re) (/.f64 (*.f64 re (/.f64 (pow.f64 im 2) 2)) re))
(/.f64 (pow.f64 im 2) re)
(*.f64 -2 (/.f64 (pow.f64 im 2) (*.f64 re -2)))
(/.f64 (pow.f64 im 2) re)
(*.f64 (*.f64 re (/.f64 (pow.f64 im 2) re)) (/.f64 1 re))
(/.f64 (pow.f64 im 2) re)
(*.f64 (*.f64 1/2 (pow.f64 im 2)) (/.f64 2 re))
(/.f64 (pow.f64 im 2) re)
(*.f64 (*.f64 1/2 (*.f64 (pow.f64 im 2) (/.f64 1/4 re))) 8)
(/.f64 (pow.f64 im 2) re)
(*.f64 (*.f64 1/2 (/.f64 1/4 re)) (*.f64 2 (*.f64 (pow.f64 im 2) 4)))
(/.f64 (pow.f64 im 2) re)
(*.f64 (/.f64 1/2 (/.f64 1/2 re)) (/.f64 (pow.f64 im 2) (*.f64 re re)))
(/.f64 (pow.f64 im 2) re)
(*.f64 (/.f64 1 (/.f64 2 re)) (/.f64 (/.f64 (pow.f64 im 2) re) (/.f64 re 2)))
(/.f64 (pow.f64 im 2) re)
(*.f64 1/8 (*.f64 (/.f64 (pow.f64 im 2) re) 8))
(/.f64 (pow.f64 im 2) re)
(*.f64 (/.f64 1/4 (*.f64 re 4)) (*.f64 (*.f64 (pow.f64 im 2) 4) 4))
(/.f64 (pow.f64 im 2) re)
(*.f64 (/.f64 1/2 (/.f64 1 re)) (/.f64 (/.f64 (pow.f64 im 2) re) (/.f64 re 2)))
(/.f64 (pow.f64 im 2) re)
(*.f64 (/.f64 1/2 (/.f64 2 re)) (/.f64 (*.f64 (pow.f64 im 2) 4) (*.f64 re re)))
(/.f64 (pow.f64 im 2) re)
(*.f64 (/.f64 (/.f64 (pow.f64 im 2) re) (+.f64 re re)) (+.f64 re re))
(/.f64 (pow.f64 im 2) re)
(*.f64 (*.f64 (pow.f64 im 2) re) (/.f64 (/.f64 1 re) re))
(/.f64 (pow.f64 im 2) re)
(*.f64 (*.f64 re (*.f64 2 (pow.f64 im 2))) (/.f64 (/.f64 1/2 re) re))
(/.f64 (pow.f64 im 2) re)
(*.f64 (*.f64 re (*.f64 2 (/.f64 (pow.f64 im 2) re))) (/.f64 1/2 re))
(/.f64 (pow.f64 im 2) re)
(*.f64 (*.f64 re (*.f64 (pow.f64 im 2) 4)) (/.f64 (/.f64 1/4 re) re))
(/.f64 (pow.f64 im 2) re)
(*.f64 (*.f64 2 (/.f64 (pow.f64 im 2) 2)) (/.f64 1 re))
(/.f64 (pow.f64 im 2) re)
(*.f64 (*.f64 1/2 re) (/.f64 (/.f64 (pow.f64 im 2) re) (/.f64 re 2)))
(/.f64 (pow.f64 im 2) re)
(*.f64 (/.f64 (/.f64 1 re) re) (*.f64 (pow.f64 im 2) re))
(/.f64 (pow.f64 im 2) re)
(*.f64 (/.f64 (*.f64 re (/.f64 (pow.f64 im 2) 2)) re) (/.f64 2 re))
(/.f64 (pow.f64 im 2) re)
(*.f64 (/.f64 (/.f64 1/2 re) re) (*.f64 re (*.f64 2 (pow.f64 im 2))))
(/.f64 (pow.f64 im 2) re)
(*.f64 (*.f64 re (*.f64 (pow.f64 im 2) (/.f64 1/4 re))) (/.f64 4 re))
(/.f64 (pow.f64 im 2) re)
(*.f64 (/.f64 4 re) (*.f64 re (*.f64 (pow.f64 im 2) (/.f64 1/4 re))))
(/.f64 (pow.f64 im 2) re)
(*.f64 (*.f64 re (/.f64 1/4 re)) (*.f64 (/.f64 (pow.f64 im 2) re) 4))
(/.f64 (pow.f64 im 2) re)
(*.f64 (/.f64 (/.f64 1/4 re) re) (*.f64 re (*.f64 (pow.f64 im 2) 4)))
(/.f64 (pow.f64 im 2) re)
(pow.f64 (/.f64 (pow.f64 im 2) re) 1)
(/.f64 (pow.f64 im 2) re)
(neg.f64 (neg.f64 (/.f64 (pow.f64 im 2) re)))
(/.f64 (pow.f64 im 2) re)
(+.f64 (/.f64 (pow.f64 im 2) re) (/.f64 (pow.f64 im 2) (*.f64 re -2)))
(/.f64 (pow.f64 im 2) (+.f64 re re))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) 0)
(+.f64 (/.f64 (pow.f64 im 2) re) (/.f64 (pow.f64 im 2) (*.f64 re -2)))
(/.f64 (pow.f64 im 2) (+.f64 re re))
(+.f64 0 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)))
(+.f64 (/.f64 (pow.f64 im 2) re) (/.f64 (pow.f64 im 2) (*.f64 re -2)))
(/.f64 (pow.f64 im 2) (+.f64 re re))
(+.f64 1 (neg.f64 (+.f64 1 (/.f64 (pow.f64 im 2) (*.f64 re -2)))))
(+.f64 1 (+.f64 -1 (/.f64 (pow.f64 im 2) (+.f64 re re))))
(+.f64 (*.f64 (pow.f64 im 2) (/.f64 1/4 re)) (*.f64 (pow.f64 im 2) (/.f64 1/4 re)))
(+.f64 (/.f64 (pow.f64 im 2) re) (/.f64 (pow.f64 im 2) (*.f64 re -2)))
(/.f64 (pow.f64 im 2) (+.f64 re re))
(+.f64 (*.f64 (pow.f64 im 2) (/.f64 1/4 re)) (neg.f64 (/.f64 (neg.f64 (pow.f64 im 2)) (*.f64 re 4))))
(+.f64 (*.f64 (pow.f64 im 2) (/.f64 1/4 re)) (/.f64 (pow.f64 im 2) (*.f64 re 4)))
(+.f64 (/.f64 (*.f64 (pow.f64 im 2) (/.f64 1/4 re)) 2) (+.f64 (/.f64 (*.f64 (pow.f64 im 2) (/.f64 1/4 re)) 2) (*.f64 (pow.f64 im 2) (/.f64 1/4 re))))
(+.f64 (*.f64 (pow.f64 im 2) (/.f64 1/4 re)) (neg.f64 (/.f64 (neg.f64 (pow.f64 im 2)) (*.f64 re 4))))
(+.f64 (*.f64 (pow.f64 im 2) (/.f64 1/4 re)) (/.f64 (pow.f64 im 2) (*.f64 re 4)))
(+.f64 (/.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) 4) (/.f64 (*.f64 (/.f64 (pow.f64 im 2) re) 3/2) 4))
(+.f64 (/.f64 (pow.f64 im 2) re) (/.f64 (pow.f64 im 2) (*.f64 re -2)))
(/.f64 (pow.f64 im 2) (+.f64 re re))
(+.f64 (/.f64 (*.f64 (/.f64 (pow.f64 im 2) re) 3/2) 4) (/.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) 4))
(+.f64 (/.f64 (pow.f64 im 2) re) (/.f64 (pow.f64 im 2) (*.f64 re -2)))
(/.f64 (pow.f64 im 2) (+.f64 re re))
(+.f64 (/.f64 (*.f64 (/.f64 (pow.f64 im 2) re) 3/2) 4) (+.f64 (/.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) 4) 0))
(+.f64 (/.f64 (pow.f64 im 2) re) (/.f64 (pow.f64 im 2) (*.f64 re -2)))
(/.f64 (pow.f64 im 2) (+.f64 re re))
(+.f64 (-.f64 (/.f64 (pow.f64 im 2) re) (*.f64 (pow.f64 im 2) (/.f64 1/4 re))) (/.f64 (neg.f64 (pow.f64 im 2)) (*.f64 re 4)))
(+.f64 (/.f64 (neg.f64 (pow.f64 im 2)) (*.f64 re 4)) (-.f64 (/.f64 (pow.f64 im 2) re) (*.f64 (pow.f64 im 2) (/.f64 1/4 re))))
(+.f64 (/.f64 (/.f64 (pow.f64 im 2) (neg.f64 re)) 4) (*.f64 (pow.f64 im 2) (-.f64 (/.f64 1 re) (/.f64 1/4 re))))
(+.f64 (-.f64 (/.f64 (pow.f64 im 2) re) (/.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) 4)) (neg.f64 (/.f64 (*.f64 (/.f64 (pow.f64 im 2) re) 3/2) 4)))
(+.f64 (/.f64 (pow.f64 im 2) re) (/.f64 (pow.f64 im 2) (*.f64 re -2)))
(/.f64 (pow.f64 im 2) (+.f64 re re))
(+.f64 (-.f64 0 (+.f64 -1 (/.f64 (pow.f64 im 2) (*.f64 re -2)))) -1)
(+.f64 (/.f64 (pow.f64 im 2) re) (/.f64 (pow.f64 im 2) (*.f64 re -2)))
(/.f64 (pow.f64 im 2) (+.f64 re re))
(-.f64 (/.f64 (pow.f64 im 2) re) (*.f64 1/2 (/.f64 (pow.f64 im 2) re)))
(+.f64 (/.f64 (pow.f64 im 2) re) (/.f64 (pow.f64 im 2) (*.f64 re -2)))
(/.f64 (pow.f64 im 2) (+.f64 re re))
(-.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) 0)
(+.f64 (/.f64 (pow.f64 im 2) re) (/.f64 (pow.f64 im 2) (*.f64 re -2)))
(/.f64 (pow.f64 im 2) (+.f64 re re))
(-.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (-.f64 (/.f64 (pow.f64 im 2) re) (/.f64 (pow.f64 im 2) re)))
(+.f64 (/.f64 (pow.f64 im 2) re) (/.f64 (pow.f64 im 2) (*.f64 re -2)))
(/.f64 (pow.f64 im 2) (+.f64 re re))
(-.f64 0 (/.f64 (pow.f64 im 2) (*.f64 re -2)))
(+.f64 (/.f64 (pow.f64 im 2) re) (/.f64 (pow.f64 im 2) (*.f64 re -2)))
(/.f64 (pow.f64 im 2) (+.f64 re re))
(-.f64 (/.f64 (pow.f64 im 2) (*.f64 re -2)) (neg.f64 (/.f64 (pow.f64 im 2) re)))
(+.f64 (/.f64 (pow.f64 im 2) re) (/.f64 (pow.f64 im 2) (*.f64 re -2)))
(/.f64 (pow.f64 im 2) (+.f64 re re))
(-.f64 (*.f64 (pow.f64 im 2) (/.f64 1/4 re)) (/.f64 (neg.f64 (pow.f64 im 2)) (*.f64 re 4)))
(-.f64 (*.f64 (pow.f64 im 2) (/.f64 1/4 re)) (/.f64 (/.f64 (pow.f64 im 2) (neg.f64 re)) 4))
(-.f64 (/.f64 (*.f64 (/.f64 (pow.f64 im 2) re) 3/2) 4) (/.f64 (/.f64 (pow.f64 im 2) (*.f64 re -2)) 4))
(+.f64 (/.f64 (pow.f64 im 2) re) (/.f64 (pow.f64 im 2) (*.f64 re -2)))
(/.f64 (pow.f64 im 2) (+.f64 re re))
(-.f64 (/.f64 (*.f64 (/.f64 (pow.f64 im 2) re) 3/2) 4) (+.f64 (/.f64 (/.f64 (pow.f64 im 2) (*.f64 re -2)) 4) 0))
(+.f64 (/.f64 (pow.f64 im 2) re) (/.f64 (pow.f64 im 2) (*.f64 re -2)))
(/.f64 (pow.f64 im 2) (+.f64 re re))
(-.f64 (/.f64 (neg.f64 (pow.f64 im 2)) (*.f64 re 4)) (-.f64 (*.f64 (pow.f64 im 2) (/.f64 1/4 re)) (/.f64 (pow.f64 im 2) re)))
(-.f64 (/.f64 (pow.f64 im 2) re) (-.f64 (*.f64 (pow.f64 im 2) (/.f64 1/4 re)) (/.f64 (neg.f64 (pow.f64 im 2)) (*.f64 re 4))))
(-.f64 (/.f64 (/.f64 (pow.f64 im 2) (neg.f64 re)) 4) (*.f64 (/.f64 (pow.f64 im 2) re) -3/4))
(-.f64 (/.f64 (/.f64 (pow.f64 im 2) (*.f64 re -2)) 4) (-.f64 (/.f64 (*.f64 (/.f64 (pow.f64 im 2) re) 3/2) 4) (/.f64 (pow.f64 im 2) re)))
(+.f64 (/.f64 (pow.f64 im 2) re) (/.f64 (pow.f64 im 2) (*.f64 re -2)))
(/.f64 (pow.f64 im 2) (+.f64 re re))
(/.f64 (pow.f64 im 2) (+.f64 re re))
(+.f64 (/.f64 (pow.f64 im 2) re) (/.f64 (pow.f64 im 2) (*.f64 re -2)))
(/.f64 (/.f64 (pow.f64 im 2) re) 2)
(+.f64 (/.f64 (pow.f64 im 2) re) (/.f64 (pow.f64 im 2) (*.f64 re -2)))
(/.f64 (pow.f64 im 2) (+.f64 re re))
(/.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) 1)
(+.f64 (/.f64 (pow.f64 im 2) re) (/.f64 (pow.f64 im 2) (*.f64 re -2)))
(/.f64 (pow.f64 im 2) (+.f64 re re))
(/.f64 (*.f64 2 (pow.f64 im 2)) (*.f64 re 4))
(+.f64 (/.f64 (pow.f64 im 2) re) (/.f64 (pow.f64 im 2) (*.f64 re -2)))
(/.f64 (pow.f64 im 2) (+.f64 re re))
(/.f64 (*.f64 2 (/.f64 (pow.f64 im 2) re)) 4)
(+.f64 (/.f64 (pow.f64 im 2) re) (/.f64 (pow.f64 im 2) (*.f64 re -2)))
(/.f64 (pow.f64 im 2) (+.f64 re re))
(/.f64 (*.f64 (pow.f64 im 2) 4) (*.f64 2 (*.f64 re 4)))
(+.f64 (/.f64 (pow.f64 im 2) re) (/.f64 (pow.f64 im 2) (*.f64 re -2)))
(/.f64 (pow.f64 im 2) (+.f64 re re))
(/.f64 (/.f64 (pow.f64 im 2) (*.f64 re -2)) -1)
(+.f64 (/.f64 (pow.f64 im 2) re) (/.f64 (pow.f64 im 2) (*.f64 re -2)))
(/.f64 (pow.f64 im 2) (+.f64 re re))
(/.f64 (*.f64 (/.f64 (pow.f64 im 2) re) 4) 8)
(+.f64 (/.f64 (pow.f64 im 2) re) (/.f64 (pow.f64 im 2) (*.f64 re -2)))
(/.f64 (pow.f64 im 2) (+.f64 re re))
(/.f64 (*.f64 2 (*.f64 (pow.f64 im 2) 4)) (*.f64 (*.f64 re 4) 4))
(+.f64 (/.f64 (pow.f64 im 2) re) (/.f64 (pow.f64 im 2) (*.f64 re -2)))
(/.f64 (pow.f64 im 2) (+.f64 re re))
(/.f64 (*.f64 (pow.f64 im 2) (/.f64 1/4 re)) 1/2)
(+.f64 (/.f64 (pow.f64 im 2) re) (/.f64 (pow.f64 im 2) (*.f64 re -2)))
(/.f64 (pow.f64 im 2) (+.f64 re re))
(/.f64 (/.f64 (pow.f64 im 2) 2) re)
(+.f64 (/.f64 (pow.f64 im 2) re) (/.f64 (pow.f64 im 2) (*.f64 re -2)))
(/.f64 (pow.f64 im 2) (+.f64 re re))
(/.f64 (/.f64 (pow.f64 im 2) -2) (neg.f64 re))
(+.f64 (/.f64 (pow.f64 im 2) re) (/.f64 (pow.f64 im 2) (*.f64 re -2)))
(/.f64 (pow.f64 im 2) (+.f64 re re))
(/.f64 (/.f64 (pow.f64 im 2) (*.f64 re re)) (/.f64 2 re))
(+.f64 (/.f64 (pow.f64 im 2) re) (/.f64 (pow.f64 im 2) (*.f64 re -2)))
(/.f64 (pow.f64 im 2) (+.f64 re re))
(/.f64 (/.f64 (/.f64 (pow.f64 im 2) re) (/.f64 re 2)) (*.f64 2 (/.f64 2 re)))
(+.f64 (/.f64 (pow.f64 im 2) re) (/.f64 (pow.f64 im 2) (*.f64 re -2)))
(/.f64 (pow.f64 im 2) (+.f64 re re))
(/.f64 (/.f64 (/.f64 (pow.f64 im 2) re) (/.f64 re 2)) (/.f64 4 re))
(+.f64 (/.f64 (pow.f64 im 2) re) (/.f64 (pow.f64 im 2) (*.f64 re -2)))
(/.f64 (pow.f64 im 2) (+.f64 re re))
(/.f64 (*.f64 re (/.f64 (pow.f64 im 2) re)) (+.f64 re re))
(+.f64 (/.f64 (pow.f64 im 2) re) (/.f64 (pow.f64 im 2) (*.f64 re -2)))
(/.f64 (pow.f64 im 2) (+.f64 re re))
(/.f64 (*.f64 (/.f64 (pow.f64 im 2) re) 8) 16)
(+.f64 (/.f64 (pow.f64 im 2) re) (/.f64 (pow.f64 im 2) (*.f64 re -2)))
(/.f64 (pow.f64 im 2) (+.f64 re re))
(/.f64 (*.f64 (*.f64 (pow.f64 im 2) 4) 4) (*.f64 (*.f64 2 (*.f64 re 4)) 4))
(+.f64 (/.f64 (pow.f64 im 2) re) (/.f64 (pow.f64 im 2) (*.f64 re -2)))
(/.f64 (pow.f64 im 2) (+.f64 re re))
(/.f64 (/.f64 (/.f64 (pow.f64 im 2) re) (+.f64 re re)) (/.f64 1 re))
(+.f64 (/.f64 (pow.f64 im 2) re) (/.f64 (pow.f64 im 2) (*.f64 re -2)))
(/.f64 (pow.f64 im 2) (+.f64 re re))
(/.f64 (*.f64 (pow.f64 im 2) re) (*.f64 re (+.f64 re re)))
(+.f64 (/.f64 (pow.f64 im 2) re) (/.f64 (pow.f64 im 2) (*.f64 re -2)))
(/.f64 (pow.f64 im 2) (+.f64 re re))
(/.f64 (*.f64 re (*.f64 2 (pow.f64 im 2))) (*.f64 re (*.f64 re 4)))
(+.f64 (/.f64 (pow.f64 im 2) re) (/.f64 (pow.f64 im 2) (*.f64 re -2)))
(/.f64 (pow.f64 im 2) (+.f64 re re))
(/.f64 (*.f64 re (*.f64 2 (/.f64 (pow.f64 im 2) re))) (*.f64 re 4))
(+.f64 (/.f64 (pow.f64 im 2) re) (/.f64 (pow.f64 im 2) (*.f64 re -2)))
(/.f64 (pow.f64 im 2) (+.f64 re re))
(/.f64 (/.f64 (*.f64 re (/.f64 (pow.f64 im 2) 2)) re) re)
(+.f64 (/.f64 (pow.f64 im 2) re) (/.f64 (pow.f64 im 2) (*.f64 re -2)))
(/.f64 (pow.f64 im 2) (+.f64 re re))
(/.f64 (/.f64 (/.f64 (pow.f64 im 2) re) (*.f64 re 4)) (/.f64 1/2 re))
(+.f64 (/.f64 (pow.f64 im 2) re) (/.f64 (pow.f64 im 2) (*.f64 re -2)))
(/.f64 (pow.f64 im 2) (+.f64 re re))
(/.f64 (/.f64 (/.f64 (pow.f64 im 2) 2) 1/2) (+.f64 re re))
(+.f64 (/.f64 (pow.f64 im 2) re) (/.f64 (pow.f64 im 2) (*.f64 re -2)))
(/.f64 (pow.f64 im 2) (+.f64 re re))
(/.f64 (/.f64 (/.f64 (pow.f64 im 2) 2) (*.f64 re 4)) 1/4)
(+.f64 (/.f64 (pow.f64 im 2) re) (/.f64 (pow.f64 im 2) (*.f64 re -2)))
(/.f64 (pow.f64 im 2) (+.f64 re re))
(/.f64 (/.f64 (/.f64 (/.f64 (pow.f64 im 2) re) (*.f64 re 4)) 2) (/.f64 1/4 re))
(+.f64 (/.f64 (pow.f64 im 2) re) (/.f64 (pow.f64 im 2) (*.f64 re -2)))
(/.f64 (pow.f64 im 2) (+.f64 re re))
(/.f64 (/.f64 (/.f64 (/.f64 (pow.f64 im 2) re) (*.f64 re 4)) (/.f64 1 re)) 1/2)
(+.f64 (/.f64 (pow.f64 im 2) re) (/.f64 (pow.f64 im 2) (*.f64 re -2)))
(/.f64 (pow.f64 im 2) (+.f64 re re))
(/.f64 (-.f64 (pow.f64 im 2) (/.f64 (pow.f64 im 2) 2)) re)
(+.f64 (/.f64 (pow.f64 im 2) re) (/.f64 (pow.f64 im 2) (*.f64 re -2)))
(/.f64 (pow.f64 im 2) (+.f64 re re))
(/.f64 (-.f64 (*.f64 2 (pow.f64 im 2)) (pow.f64 im 2)) (+.f64 re re))
(+.f64 (/.f64 (pow.f64 im 2) re) (/.f64 (pow.f64 im 2) (*.f64 re -2)))
(/.f64 (pow.f64 im 2) (+.f64 re re))
(/.f64 (-.f64 (*.f64 (pow.f64 im 2) 4) (*.f64 2 (pow.f64 im 2))) (*.f64 re 4))
(+.f64 (/.f64 (pow.f64 im 2) re) (/.f64 (pow.f64 im 2) (*.f64 re -2)))
(/.f64 (pow.f64 im 2) (+.f64 re re))
(/.f64 (-.f64 (*.f64 (/.f64 (pow.f64 im 2) re) 4) (*.f64 2 (/.f64 (pow.f64 im 2) re))) 4)
(+.f64 (/.f64 (pow.f64 im 2) re) (/.f64 (pow.f64 im 2) (*.f64 re -2)))
(/.f64 (pow.f64 im 2) (+.f64 re re))
(/.f64 (-.f64 (*.f64 2 (*.f64 (pow.f64 im 2) 4)) (*.f64 (pow.f64 im 2) 4)) (*.f64 2 (*.f64 re 4)))
(+.f64 (/.f64 (pow.f64 im 2) re) (/.f64 (pow.f64 im 2) (*.f64 re -2)))
(/.f64 (pow.f64 im 2) (+.f64 re re))
(/.f64 (-.f64 (*.f64 re (/.f64 (pow.f64 im 2) re)) (/.f64 (pow.f64 im 2) 2)) re)
(+.f64 (/.f64 (pow.f64 im 2) re) (/.f64 (pow.f64 im 2) (*.f64 re -2)))
(/.f64 (pow.f64 im 2) (+.f64 re re))
(/.f64 (-.f64 (*.f64 re (*.f64 2 (/.f64 (pow.f64 im 2) re))) (pow.f64 im 2)) (+.f64 re re))
(+.f64 (/.f64 (pow.f64 im 2) re) (/.f64 (pow.f64 im 2) (*.f64 re -2)))
(/.f64 (pow.f64 im 2) (+.f64 re re))
(/.f64 (-.f64 (/.f64 (pow.f64 im 2) (*.f64 re re)) (/.f64 (/.f64 (pow.f64 im 2) re) (+.f64 re re))) (/.f64 1 re))
(+.f64 (/.f64 (pow.f64 im 2) re) (/.f64 (pow.f64 im 2) (*.f64 re -2)))
(/.f64 (pow.f64 im 2) (+.f64 re re))
(/.f64 (-.f64 (/.f64 (/.f64 (pow.f64 im 2) re) (/.f64 re 2)) (/.f64 (pow.f64 im 2) (*.f64 re re))) (/.f64 2 re))
(+.f64 (/.f64 (pow.f64 im 2) re) (/.f64 (pow.f64 im 2) (*.f64 re -2)))
(/.f64 (pow.f64 im 2) (+.f64 re re))
(/.f64 (-.f64 (/.f64 (*.f64 (pow.f64 im 2) 4) (*.f64 re re)) (/.f64 (/.f64 (pow.f64 im 2) re) (/.f64 re 2))) (/.f64 4 re))
(+.f64 (/.f64 (pow.f64 im 2) re) (/.f64 (pow.f64 im 2) (*.f64 re -2)))
(/.f64 (pow.f64 im 2) (+.f64 re re))
(/.f64 (-.f64 (/.f64 (/.f64 (pow.f64 im 2) re) (+.f64 re re)) (/.f64 (/.f64 (pow.f64 im 2) re) (*.f64 re 4))) (/.f64 1/2 re))
(+.f64 (/.f64 (pow.f64 im 2) re) (/.f64 (pow.f64 im 2) (*.f64 re -2)))
(/.f64 (pow.f64 im 2) (+.f64 re re))
(/.f64 (-.f64 (*.f64 (/.f64 (pow.f64 im 2) re) 8) (*.f64 (/.f64 (pow.f64 im 2) re) 4)) 8)
(+.f64 (/.f64 (pow.f64 im 2) re) (/.f64 (pow.f64 im 2) (*.f64 re -2)))
(/.f64 (pow.f64 im 2) (+.f64 re re))
(/.f64 (-.f64 (*.f64 (*.f64 (pow.f64 im 2) 4) 4) (*.f64 2 (*.f64 (pow.f64 im 2) 4))) (*.f64 (*.f64 re 4) 4))
(+.f64 (/.f64 (pow.f64 im 2) re) (/.f64 (pow.f64 im 2) (*.f64 re -2)))
(/.f64 (pow.f64 im 2) (+.f64 re re))
(/.f64 (-.f64 0 (/.f64 (pow.f64 im 2) -2)) re)
(+.f64 (/.f64 (pow.f64 im 2) re) (/.f64 (pow.f64 im 2) (*.f64 re -2)))
(/.f64 (pow.f64 im 2) (+.f64 re re))
(/.f64 (*.f64 re (*.f64 re (/.f64 (pow.f64 im 2) re))) (*.f64 re (+.f64 re re)))
(+.f64 (/.f64 (pow.f64 im 2) re) (/.f64 (pow.f64 im 2) (*.f64 re -2)))
(/.f64 (pow.f64 im 2) (+.f64 re re))
(/.f64 (*.f64 (+.f64 re re) (*.f64 2 (pow.f64 im 2))) (*.f64 (*.f64 re 4) (+.f64 re re)))
(+.f64 (/.f64 (pow.f64 im 2) re) (/.f64 (pow.f64 im 2) (*.f64 re -2)))
(/.f64 (pow.f64 im 2) (+.f64 re re))
(/.f64 (*.f64 (+.f64 re re) (*.f64 re (*.f64 2 (/.f64 (pow.f64 im 2) re)))) (*.f64 (*.f64 re 4) (+.f64 re re)))
(+.f64 (/.f64 (pow.f64 im 2) re) (/.f64 (pow.f64 im 2) (*.f64 re -2)))
(/.f64 (pow.f64 im 2) (+.f64 re re))
(/.f64 (*.f64 (*.f64 re 4) (*.f64 (pow.f64 im 2) 4)) (*.f64 (*.f64 2 (*.f64 re 4)) (*.f64 re 4)))
(+.f64 (/.f64 (pow.f64 im 2) re) (/.f64 (pow.f64 im 2) (*.f64 re -2)))
(/.f64 (pow.f64 im 2) (+.f64 re re))
(/.f64 (*.f64 (+.f64 re re) (*.f64 (pow.f64 im 2) 4)) (*.f64 (*.f64 2 (*.f64 re 4)) (+.f64 re re)))
(+.f64 (/.f64 (pow.f64 im 2) re) (/.f64 (pow.f64 im 2) (*.f64 re -2)))
(/.f64 (pow.f64 im 2) (+.f64 re re))
(/.f64 (*.f64 re (/.f64 (pow.f64 im 2) 2)) (*.f64 re re))
(+.f64 (/.f64 (pow.f64 im 2) re) (/.f64 (pow.f64 im 2) (*.f64 re -2)))
(/.f64 (pow.f64 im 2) (+.f64 re re))
(/.f64 (*.f64 (+.f64 re re) (pow.f64 im 2)) (*.f64 (+.f64 re re) (+.f64 re re)))
(+.f64 (/.f64 (pow.f64 im 2) re) (/.f64 (pow.f64 im 2) (*.f64 re -2)))
(/.f64 (pow.f64 im 2) (+.f64 re re))
(/.f64 (*.f64 (*.f64 re 4) (*.f64 2 (pow.f64 im 2))) (*.f64 (*.f64 re 4) (*.f64 re 4)))
(+.f64 (/.f64 (pow.f64 im 2) re) (/.f64 (pow.f64 im 2) (*.f64 re -2)))
(/.f64 (pow.f64 im 2) (+.f64 re re))
(/.f64 (*.f64 (+.f64 re re) (*.f64 2 (/.f64 (pow.f64 im 2) re))) (*.f64 2 (*.f64 re 4)))
(+.f64 (/.f64 (pow.f64 im 2) re) (/.f64 (pow.f64 im 2) (*.f64 re -2)))
(/.f64 (pow.f64 im 2) (+.f64 re re))
(/.f64 (*.f64 (/.f64 re 2) (pow.f64 im 2)) (*.f64 (+.f64 re re) (/.f64 re 2)))
(+.f64 (/.f64 (pow.f64 im 2) re) (/.f64 (pow.f64 im 2) (*.f64 re -2)))
(/.f64 (pow.f64 im 2) (+.f64 re re))
(/.f64 (*.f64 (/.f64 re 2) (/.f64 (pow.f64 im 2) 2)) (*.f64 re (/.f64 re 2)))
(+.f64 (/.f64 (pow.f64 im 2) re) (/.f64 (pow.f64 im 2) (*.f64 re -2)))
(/.f64 (pow.f64 im 2) (+.f64 re re))
(/.f64 (*.f64 (/.f64 1 re) (/.f64 (pow.f64 im 2) (*.f64 re re))) (*.f64 (/.f64 2 re) (/.f64 1 re)))
(+.f64 (/.f64 (pow.f64 im 2) re) (/.f64 (pow.f64 im 2) (*.f64 re -2)))
(/.f64 (pow.f64 im 2) (+.f64 re re))
(/.f64 (*.f64 (*.f64 (*.f64 re 4) 4) (*.f64 2 (*.f64 (pow.f64 im 2) 4))) (*.f64 (*.f64 (*.f64 re 4) 4) (*.f64 (*.f64 re 4) 4)))
(+.f64 (/.f64 (pow.f64 im 2) re) (/.f64 (pow.f64 im 2) (*.f64 re -2)))
(/.f64 (pow.f64 im 2) (+.f64 re re))
(/.f64 (*.f64 (/.f64 1 re) (/.f64 (/.f64 (pow.f64 im 2) re) (+.f64 re re))) (*.f64 (/.f64 1 re) (/.f64 1 re)))
(+.f64 (/.f64 (pow.f64 im 2) re) (/.f64 (pow.f64 im 2) (*.f64 re -2)))
(/.f64 (pow.f64 im 2) (+.f64 re re))
(/.f64 (*.f64 8 (*.f64 (pow.f64 im 2) 4)) (*.f64 (*.f64 2 (*.f64 re 4)) 8))
(+.f64 (/.f64 (pow.f64 im 2) re) (/.f64 (pow.f64 im 2) (*.f64 re -2)))
(/.f64 (pow.f64 im 2) (+.f64 re re))
(/.f64 (*.f64 1/2 (/.f64 (/.f64 (pow.f64 im 2) re) (+.f64 re re))) (/.f64 1/2 re))
(/.f64 (*.f64 (/.f64 (pow.f64 im 2) re) (/.f64 1/4 re)) (/.f64 1/2 re))
(/.f64 (*.f64 (pow.f64 im 2) (/.f64 1/4 (*.f64 re re))) (/.f64 1/2 re))
(/.f64 (*.f64 2 (/.f64 (pow.f64 im 2) (*.f64 re re))) (*.f64 2 (/.f64 2 re)))
(+.f64 (/.f64 (pow.f64 im 2) re) (/.f64 (pow.f64 im 2) (*.f64 re -2)))
(/.f64 (pow.f64 im 2) (+.f64 re re))
(/.f64 (*.f64 (+.f64 re re) (/.f64 (pow.f64 im 2) re)) (*.f64 re 4))
(+.f64 (/.f64 (pow.f64 im 2) re) (/.f64 (pow.f64 im 2) (*.f64 re -2)))
(/.f64 (pow.f64 im 2) (+.f64 re re))
(/.f64 (*.f64 (+.f64 re re) (*.f64 1/2 (/.f64 (pow.f64 im 2) re))) (+.f64 re re))
(+.f64 (/.f64 (pow.f64 im 2) re) (/.f64 (pow.f64 im 2) (*.f64 re -2)))
(/.f64 (pow.f64 im 2) (+.f64 re re))
(pow.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) 1)
(+.f64 (/.f64 (pow.f64 im 2) re) (/.f64 (pow.f64 im 2) (*.f64 re -2)))
(/.f64 (pow.f64 im 2) (+.f64 re re))
(neg.f64 (/.f64 (pow.f64 im 2) (*.f64 re -2)))
(+.f64 (/.f64 (pow.f64 im 2) re) (/.f64 (pow.f64 im 2) (*.f64 re -2)))
(/.f64 (pow.f64 im 2) (+.f64 re re))
(+.f64 (/.f64 (pow.f64 im 2) re) 0)
(/.f64 (pow.f64 im 2) re)
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 1/2 (/.f64 (pow.f64 im 2) re)))
(/.f64 (pow.f64 im 2) re)
(+.f64 0 (/.f64 (pow.f64 im 2) re))
(/.f64 (pow.f64 im 2) re)
(+.f64 (*.f64 2 (/.f64 (pow.f64 im 2) re)) (neg.f64 (/.f64 (pow.f64 im 2) re)))
(/.f64 (pow.f64 im 2) re)
(+.f64 (*.f64 (pow.f64 im 2) (/.f64 1/4 re)) (*.f64 (pow.f64 im 2) (/.f64 3/4 re)))
(/.f64 (pow.f64 im 2) re)
(+.f64 (*.f64 (pow.f64 im 2) (/.f64 3/4 re)) (*.f64 (pow.f64 im 2) (/.f64 1/4 re)))
(/.f64 (pow.f64 im 2) re)
(+.f64 (/.f64 (*.f64 (/.f64 (pow.f64 im 2) re) 3/2) 4) (+.f64 (/.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) 4) (*.f64 1/2 (/.f64 (pow.f64 im 2) re))))
(/.f64 (pow.f64 im 2) re)
(+.f64 (-.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) -1) (neg.f64 (+.f64 1 (/.f64 (pow.f64 im 2) (*.f64 re -2)))))
(/.f64 (pow.f64 im 2) re)
(+.f64 (-.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 -1 (/.f64 (pow.f64 im 2) (*.f64 re -2)))) -1)
(/.f64 (pow.f64 im 2) re)
(+.f64 (-.f64 (*.f64 2 (/.f64 (pow.f64 im 2) re)) (*.f64 1/2 (/.f64 (pow.f64 im 2) re))) (/.f64 (pow.f64 im 2) (*.f64 re -2)))
(/.f64 (pow.f64 im 2) re)
(+.f64 (-.f64 (*.f64 2 (/.f64 (pow.f64 im 2) re)) (*.f64 (pow.f64 im 2) (/.f64 1/4 re))) (neg.f64 (*.f64 (pow.f64 im 2) (/.f64 3/4 re))))
(/.f64 (pow.f64 im 2) re)
(+.f64 (-.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (/.f64 (neg.f64 (pow.f64 im 2)) (*.f64 re 4))) (neg.f64 (/.f64 (neg.f64 (pow.f64 im 2)) (*.f64 re 4))))
(-.f64 (*.f64 (/.f64 (pow.f64 im 2) re) 1/2) (+.f64 (/.f64 (neg.f64 (pow.f64 im 2)) (*.f64 re 4)) (/.f64 (neg.f64 (pow.f64 im 2)) (*.f64 re 4))))
(-.f64 (/.f64 (pow.f64 im 2) (+.f64 re re)) (/.f64 (/.f64 (*.f64 (pow.f64 im 2) 4) -2) (*.f64 re 4)))
(-.f64 (/.f64 (pow.f64 im 2) re) 0)
(/.f64 (pow.f64 im 2) re)
(-.f64 (/.f64 (pow.f64 im 2) re) (-.f64 (*.f64 2 (/.f64 (pow.f64 im 2) re)) (*.f64 2 (/.f64 (pow.f64 im 2) re))))
(/.f64 (pow.f64 im 2) re)
(-.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (/.f64 (pow.f64 im 2) (*.f64 re -2)))
(/.f64 (pow.f64 im 2) re)
(-.f64 0 (neg.f64 (/.f64 (pow.f64 im 2) re)))
(/.f64 (pow.f64 im 2) re)
(-.f64 (*.f64 2 (/.f64 (pow.f64 im 2) re)) (/.f64 (pow.f64 im 2) re))
(/.f64 (pow.f64 im 2) re)
(-.f64 (neg.f64 (/.f64 (pow.f64 im 2) re)) (*.f64 -2 (/.f64 (pow.f64 im 2) re)))
(-.f64 (neg.f64 (/.f64 (pow.f64 im 2) re)) (*.f64 (pow.f64 im 2) (/.f64 -2 re)))
(-.f64 (/.f64 (pow.f64 im 2) (neg.f64 re)) (*.f64 (pow.f64 im 2) (/.f64 -2 re)))
(-.f64 (/.f64 (pow.f64 im 2) (*.f64 re -2)) (-.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 2 (/.f64 (pow.f64 im 2) re))))
(/.f64 (pow.f64 im 2) re)
(-.f64 (*.f64 (pow.f64 im 2) (/.f64 1/4 re)) (-.f64 0 (*.f64 (pow.f64 im 2) (/.f64 3/4 re))))
(/.f64 (pow.f64 im 2) re)
(-.f64 (*.f64 (pow.f64 im 2) (/.f64 3/4 re)) (/.f64 (neg.f64 (pow.f64 im 2)) (*.f64 re 4)))
(-.f64 (*.f64 (pow.f64 im 2) (/.f64 3/4 re)) (/.f64 (/.f64 (pow.f64 im 2) (neg.f64 re)) 4))
(-.f64 (/.f64 (neg.f64 (pow.f64 im 2)) (*.f64 re 4)) (-.f64 (*.f64 (pow.f64 im 2) (/.f64 3/4 re)) (*.f64 2 (/.f64 (pow.f64 im 2) re))))
(-.f64 (*.f64 2 (/.f64 (pow.f64 im 2) re)) (-.f64 (*.f64 (pow.f64 im 2) (/.f64 3/4 re)) (/.f64 (neg.f64 (pow.f64 im 2)) (*.f64 re 4))))
(-.f64 (/.f64 (/.f64 (pow.f64 im 2) (neg.f64 re)) 4) (*.f64 (/.f64 (pow.f64 im 2) re) -5/4))
(/.f64 (pow.f64 im 2) re)
(/.f64 (/.f64 (pow.f64 im 2) re) 1)
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) 1/2)
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 2 (pow.f64 im 2)) (+.f64 re re))
(/.f64 (pow.f64 im 2) re)
(/.f64 (neg.f64 (pow.f64 im 2)) (neg.f64 re))
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 2 (/.f64 (pow.f64 im 2) re)) 2)
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 (pow.f64 im 2) 4) (*.f64 re 4))
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 (/.f64 (pow.f64 im 2) re) 4) 4)
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 2 (*.f64 (pow.f64 im 2) 4)) (*.f64 2 (*.f64 re 4)))
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 (pow.f64 im 2) (/.f64 1/4 re)) 1/4)
(/.f64 (pow.f64 im 2) re)
(/.f64 (/.f64 (pow.f64 im 2) 2) (/.f64 re 2))
(/.f64 (pow.f64 im 2) re)
(/.f64 (/.f64 (pow.f64 im 2) (*.f64 re re)) (/.f64 1 re))
(/.f64 (pow.f64 im 2) re)
(/.f64 (/.f64 (/.f64 (pow.f64 im 2) re) (/.f64 re 2)) (/.f64 2 re))
(/.f64 (pow.f64 im 2) re)
(/.f64 (/.f64 (/.f64 (pow.f64 im 2) (*.f64 re re)) re) (/.f64 (/.f64 1 re) re))
(/.f64 (pow.f64 im 2) re)
(/.f64 (/.f64 (/.f64 (/.f64 (pow.f64 im 2) re) (/.f64 re 2)) re) (/.f64 (/.f64 2 re) re))
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 re (/.f64 (pow.f64 im 2) re)) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 (/.f64 (pow.f64 im 2) re) 8) 8)
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 (*.f64 (pow.f64 im 2) 4) 4) (*.f64 (*.f64 re 4) 4))
(/.f64 (pow.f64 im 2) re)
(/.f64 (/.f64 (*.f64 (pow.f64 im 2) 4) (*.f64 re re)) (*.f64 2 (/.f64 2 re)))
(/.f64 (pow.f64 im 2) re)
(/.f64 (/.f64 (*.f64 (pow.f64 im 2) 4) (*.f64 re re)) (/.f64 4 re))
(/.f64 (pow.f64 im 2) re)
(/.f64 (/.f64 (/.f64 (pow.f64 im 2) re) (+.f64 re re)) (/.f64 1/2 re))
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 4 (*.f64 (/.f64 (pow.f64 im 2) re) 4)) 16)
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 (pow.f64 im 2) re) (*.f64 re re))
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 re (*.f64 2 (pow.f64 im 2))) (*.f64 re (+.f64 re re)))
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 re (*.f64 2 (/.f64 (pow.f64 im 2) re))) (+.f64 re re))
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 re (*.f64 (pow.f64 im 2) 4)) (*.f64 re (*.f64 re 4)))
(/.f64 (pow.f64 im 2) re)
(/.f64 (/.f64 (/.f64 (pow.f64 im 2) (*.f64 re re)) (+.f64 re re)) (/.f64 (/.f64 1/2 re) re))
(/.f64 (pow.f64 im 2) re)
(/.f64 (/.f64 (/.f64 (pow.f64 im 2) re) (*.f64 re 4)) (/.f64 1/4 re))
(/.f64 (pow.f64 im 2) re)
(/.f64 (/.f64 (*.f64 2 (pow.f64 im 2)) 1/2) (*.f64 re 4))
(/.f64 (pow.f64 im 2) re)
(/.f64 (/.f64 (*.f64 re (/.f64 (pow.f64 im 2) re)) 1/2) (+.f64 re re))
(/.f64 (pow.f64 im 2) re)
(/.f64 (/.f64 (*.f64 re (/.f64 (pow.f64 im 2) re)) (*.f64 re 4)) 1/4)
(/.f64 (pow.f64 im 2) re)
(/.f64 (/.f64 (*.f64 re (*.f64 2 (/.f64 (pow.f64 im 2) re))) 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (/.f64 (*.f64 re (*.f64 2 (/.f64 (pow.f64 im 2) re))) 1/2) (*.f64 re 4))
(/.f64 (pow.f64 im 2) re)
(/.f64 (/.f64 (*.f64 re (*.f64 2 (/.f64 (pow.f64 im 2) re))) -2) (neg.f64 re))
(/.f64 (pow.f64 im 2) re)
(/.f64 (/.f64 (*.f64 re (*.f64 (pow.f64 im 2) 4)) (*.f64 re 4)) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (-.f64 (pow.f64 im 2) (/.f64 (pow.f64 im 2) 2)) (/.f64 re 2))
(/.f64 (pow.f64 im 2) re)
(/.f64 (-.f64 (*.f64 2 (pow.f64 im 2)) (pow.f64 im 2)) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (-.f64 (*.f64 (pow.f64 im 2) 4) (*.f64 2 (pow.f64 im 2))) (+.f64 re re))
(/.f64 (pow.f64 im 2) re)
(/.f64 (-.f64 (*.f64 (/.f64 (pow.f64 im 2) re) 4) (*.f64 2 (/.f64 (pow.f64 im 2) re))) 2)
(/.f64 (pow.f64 im 2) re)
(/.f64 (-.f64 (*.f64 2 (*.f64 (pow.f64 im 2) 4)) (*.f64 (pow.f64 im 2) 4)) (*.f64 re 4))
(/.f64 (pow.f64 im 2) re)
(/.f64 (+.f64 (*.f64 re (/.f64 (pow.f64 im 2) re)) 0) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (+.f64 (*.f64 re (*.f64 2 (/.f64 (pow.f64 im 2) re))) 0) (+.f64 re re))
(/.f64 (pow.f64 im 2) re)
(/.f64 (+.f64 (/.f64 (/.f64 (pow.f64 im 2) re) (*.f64 re 4)) (/.f64 (/.f64 (pow.f64 im 2) re) (*.f64 re 4))) (/.f64 1/2 re))
(/.f64 (pow.f64 im 2) re)
(/.f64 (-.f64 (/.f64 (/.f64 (pow.f64 im 2) re) (/.f64 re 2)) (/.f64 (pow.f64 im 2) (*.f64 re re))) (/.f64 1 re))
(/.f64 (pow.f64 im 2) re)
(/.f64 (-.f64 (/.f64 (*.f64 (pow.f64 im 2) 4) (*.f64 re re)) (/.f64 (/.f64 (pow.f64 im 2) re) (/.f64 re 2))) (/.f64 2 re))
(/.f64 (pow.f64 im 2) re)
(/.f64 (-.f64 (*.f64 (/.f64 (pow.f64 im 2) re) 8) (*.f64 (/.f64 (pow.f64 im 2) re) 4)) 4)
(/.f64 (pow.f64 im 2) re)
(/.f64 (-.f64 (*.f64 (*.f64 (pow.f64 im 2) 4) 4) (*.f64 2 (*.f64 (pow.f64 im 2) 4))) (*.f64 2 (*.f64 re 4)))
(/.f64 (pow.f64 im 2) re)
(/.f64 (-.f64 (*.f64 2 (pow.f64 im 2)) (*.f64 re (/.f64 (pow.f64 im 2) re))) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (-.f64 (*.f64 (pow.f64 im 2) 4) (*.f64 re (*.f64 2 (/.f64 (pow.f64 im 2) re)))) (+.f64 re re))
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 re (*.f64 re (/.f64 (pow.f64 im 2) re))) (*.f64 re re))
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 (+.f64 re re) (*.f64 2 (pow.f64 im 2))) (*.f64 (+.f64 re re) (+.f64 re re)))
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 (+.f64 re re) (*.f64 re (*.f64 2 (/.f64 (pow.f64 im 2) re)))) (*.f64 (+.f64 re re) (+.f64 re re)))
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 (*.f64 re 4) (*.f64 (pow.f64 im 2) 4)) (*.f64 (*.f64 re 4) (*.f64 re 4)))
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 4 (*.f64 2 (*.f64 (pow.f64 im 2) 4))) (*.f64 (*.f64 2 (*.f64 re 4)) 4))
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 (+.f64 re re) (*.f64 (pow.f64 im 2) 4)) (*.f64 (*.f64 re 4) (+.f64 re re)))
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 (*.f64 re 4) (*.f64 2 (*.f64 (pow.f64 im 2) 4))) (*.f64 (*.f64 2 (*.f64 re 4)) (*.f64 re 4)))
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 (+.f64 re re) (pow.f64 im 2)) (*.f64 re (+.f64 re re)))
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 (+.f64 re re) (*.f64 2 (/.f64 (pow.f64 im 2) re))) (*.f64 re 4))
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 (*.f64 re 4) (*.f64 (/.f64 (pow.f64 im 2) re) 4)) (*.f64 (*.f64 re 4) 4))
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 (*.f64 2 (*.f64 re 4)) (*.f64 (/.f64 (pow.f64 im 2) re) 8)) (*.f64 8 (*.f64 2 (*.f64 re 4))))
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 2 (/.f64 (/.f64 (pow.f64 im 2) re) (/.f64 re 2))) (*.f64 2 (/.f64 2 re)))
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 (+.f64 re re) (*.f64 (/.f64 (pow.f64 im 2) re) 4)) (*.f64 2 (*.f64 re 4)))
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) (*.f64 re re))) (/.f64 1/2 re))
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 8 (*.f64 2 (*.f64 (pow.f64 im 2) 4))) (*.f64 (*.f64 2 (*.f64 re 4)) 8))
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 (/.f64 re 2) (pow.f64 im 2)) (*.f64 re (/.f64 re 2)))
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 (/.f64 1 re) (/.f64 (/.f64 (pow.f64 im 2) re) (/.f64 re 2))) (*.f64 (/.f64 2 re) (/.f64 1 re)))
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 (/.f64 re 2) (*.f64 2 (pow.f64 im 2))) (*.f64 (+.f64 re re) (/.f64 re 2)))
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 (+.f64 re re) (*.f64 2 (*.f64 (pow.f64 im 2) 4))) (*.f64 (*.f64 2 (*.f64 re 4)) (+.f64 re re)))
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 (/.f64 re 2) (/.f64 (pow.f64 im 2) 2)) (*.f64 (/.f64 re 2) (/.f64 re 2)))
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 (/.f64 1 re) (/.f64 (pow.f64 im 2) (*.f64 re re))) (*.f64 (/.f64 1 re) (/.f64 1 re)))
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 8 (*.f64 (pow.f64 im 2) 4)) (*.f64 (*.f64 re 4) 8))
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 1/2 (/.f64 (/.f64 (pow.f64 im 2) re) (+.f64 re re))) (*.f64 1/2 (/.f64 1/2 re)))
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 (+.f64 re re) (/.f64 (pow.f64 im 2) re)) (+.f64 re re))
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 re (*.f64 (/.f64 (pow.f64 im 2) re) 4)) (*.f64 re 4))
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 re (/.f64 (/.f64 (pow.f64 im 2) re) (/.f64 re 2))) 2)
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 (*.f64 (*.f64 re 4) 4) (*.f64 (*.f64 (pow.f64 im 2) 4) 4)) (*.f64 (*.f64 (*.f64 re 4) 4) (*.f64 (*.f64 re 4) 4)))
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 re (*.f64 2 (*.f64 (pow.f64 im 2) 4))) (*.f64 re (*.f64 2 (*.f64 re 4))))
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 (+.f64 re re) (/.f64 (pow.f64 im 2) (*.f64 re re))) (*.f64 (/.f64 1 re) (+.f64 re re)))
(/.f64 (pow.f64 im 2) re)
(/.f64 (*.f64 (+.f64 re re) (/.f64 (/.f64 (pow.f64 im 2) re) (/.f64 re 2))) (*.f64 (/.f64 2 re) (+.f64 re re)))
(/.f64 (pow.f64 im 2) re)
(pow.f64 (/.f64 (pow.f64 im 2) re) 1)
(/.f64 (pow.f64 im 2) re)
(neg.f64 (neg.f64 (/.f64 (pow.f64 im 2) re)))
(/.f64 (pow.f64 im 2) re)

localize124.0ms (0.3%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(-.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) im) re)
8.3b
(/.f64 (pow.f64 re 2) im)
10.6b
(sqrt.f64 (*.f64 2 (-.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) im) re)))
Compiler

Compiled 84 to 58 computations (31% saved)

series25.0ms (0.1%)

Counts
3 → 36
Calls

18 calls:

TimeVariablePointExpression
13.0ms
re
@inf
(/.f64 (pow.f64 re 2) im)
2.0ms
im
@inf
(sqrt.f64 (*.f64 2 (-.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) im) re)))
2.0ms
re
@inf
(sqrt.f64 (*.f64 2 (-.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) im) re)))
1.0ms
im
@0
(sqrt.f64 (*.f64 2 (-.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) im) re)))
1.0ms
re
@-inf
(sqrt.f64 (*.f64 2 (-.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) im) re)))

rewrite504.0ms (1.4%)

Algorithm
batch-egg-rewrite
Rules
1250×rational_best-4
1250×rational_best-2
1250×rational_best-3
1250×rational_best-1
1250×exponential-1
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01485
19785
221085
360785
4286885
Stop Event
node limit
Counts
3 → 160
Calls
Call 1
Inputs
(sqrt.f64 (*.f64 2 (-.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) im) re)))
(/.f64 (pow.f64 re 2) im)
(-.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) im) re)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (sqrt.f64 (-.f64 (/.f64 (pow.f64 re 2) im) (+.f64 (*.f64 im -2) (+.f64 re re)))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (sqrt.f64 (-.f64 (/.f64 (pow.f64 re 2) im) (+.f64 (*.f64 im -2) (+.f64 re re)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (sqrt.f64 (-.f64 (/.f64 (pow.f64 re 2) im) (+.f64 (*.f64 im -2) (+.f64 re re)))) 2) (/.f64 (sqrt.f64 (-.f64 (/.f64 (pow.f64 re 2) im) (+.f64 (*.f64 im -2) (+.f64 re re)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (sqrt.f64 (-.f64 (/.f64 (pow.f64 re 2) im) (+.f64 (*.f64 im -2) (+.f64 re re)))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (sqrt.f64 (-.f64 (/.f64 (pow.f64 re 2) im) (+.f64 (*.f64 im -2) (+.f64 re re)))) 2) (/.f64 (neg.f64 (sqrt.f64 (-.f64 (/.f64 (pow.f64 re 2) im) (+.f64 (*.f64 im -2) (+.f64 re re))))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 2 (sqrt.f64 (-.f64 (/.f64 (pow.f64 re 2) im) (+.f64 (*.f64 im -2) (+.f64 re re))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (-.f64 (/.f64 (pow.f64 re 2) im) (+.f64 (*.f64 im -2) (+.f64 re re)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (sqrt.f64 (-.f64 (/.f64 (pow.f64 re 2) im) (+.f64 (*.f64 im -2) (+.f64 re re)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 2) (sqrt.f64 (-.f64 im (+.f64 re (/.f64 (pow.f64 re 2) (*.f64 im -2))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (-.f64 im (+.f64 re (/.f64 (pow.f64 re 2) (*.f64 im -2))))) (sqrt.f64 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (sqrt.f64 (-.f64 (/.f64 (pow.f64 re 2) im) (+.f64 (*.f64 im -2) (+.f64 re re))))) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 (sqrt.f64 (-.f64 (/.f64 (pow.f64 re 2) im) (+.f64 (*.f64 im -2) (+.f64 re re)))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (sqrt.f64 2)) (/.f64 (sqrt.f64 (-.f64 im (+.f64 re (/.f64 (pow.f64 re 2) (*.f64 im -2))))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (sqrt.f64 (-.f64 im (+.f64 re (/.f64 (pow.f64 re 2) (*.f64 im -2)))))) (/.f64 (sqrt.f64 2) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (-.f64 (/.f64 (pow.f64 re 2) im) (+.f64 (*.f64 im -2) (+.f64 re re)))) 4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 2) 2) (*.f64 2 (sqrt.f64 (-.f64 im (+.f64 re (/.f64 (pow.f64 re 2) (*.f64 im -2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (-.f64 im (+.f64 re (/.f64 (pow.f64 re 2) (*.f64 im -2))))) 2) (*.f64 2 (sqrt.f64 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (-.f64 im (+.f64 re (/.f64 (pow.f64 re 2) (*.f64 im -2)))) 4)) (sqrt.f64 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 1/2) (sqrt.f64 (*.f64 (-.f64 im (+.f64 re (/.f64 (pow.f64 re 2) (*.f64 im -2)))) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (-.f64 (/.f64 (pow.f64 re 2) im) (+.f64 (*.f64 im -2) (+.f64 re re)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (sqrt.f64 (-.f64 (/.f64 (pow.f64 re 2) im) (+.f64 (*.f64 im -2) (+.f64 re re))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 (-.f64 (/.f64 (pow.f64 re 2) im) (+.f64 (*.f64 im -2) (+.f64 re re)))) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (sqrt.f64 (-.f64 (/.f64 (pow.f64 re 2) im) (+.f64 (*.f64 im -2) (+.f64 re re)))) 4)) 8)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (-.f64 (/.f64 (pow.f64 re 2) im) (+.f64 (*.f64 im -2) (+.f64 re re)))) 1)))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (pow.f64 re 2) im) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) (*.f64 1/2 (/.f64 (pow.f64 re 2) im)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 (pow.f64 re 2) im))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (pow.f64 re 2) (*.f64 im 4)) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) (/.f64 (pow.f64 re 2) (*.f64 im 4))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (pow.f64 re 2) (*.f64 im 4)) (/.f64 (*.f64 (pow.f64 re 2) 3) (*.f64 im 4)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) (/.f64 (pow.f64 re 2) (*.f64 im 4))) (/.f64 (pow.f64 re 2) (*.f64 im 4)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (*.f64 (pow.f64 re 2) 3) (*.f64 im 4)) (/.f64 (pow.f64 re 2) (*.f64 im 4)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 re 2) im) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 re 2) im) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) (/.f64 (pow.f64 re 2) (*.f64 im -2))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) (/.f64 (pow.f64 re 2) (*.f64 im -2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (/.f64 (neg.f64 (pow.f64 re 2)) im))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 re 2) (/.f64 im 2)) (/.f64 (pow.f64 re 2) im))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 re 2) (*.f64 im 4)) (+.f64 (/.f64 (neg.f64 (pow.f64 re 2)) (*.f64 im 4)) (/.f64 (pow.f64 re 2) (*.f64 im -2))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) (/.f64 (pow.f64 re 2) (*.f64 im 4))) (/.f64 (neg.f64 (pow.f64 re 2)) (*.f64 im 4)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) (/.f64 (pow.f64 re 2) (*.f64 im 4))) (+.f64 (/.f64 (neg.f64 (pow.f64 re 2)) (*.f64 im 4)) 0))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 (pow.f64 re 2) 3) (*.f64 im 4)) (/.f64 (neg.f64 (pow.f64 re 2)) (*.f64 im 4)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 (pow.f64 re 2) 3) (*.f64 im 4)) (+.f64 (/.f64 (neg.f64 (pow.f64 re 2)) (*.f64 im 4)) 0))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 (/.f64 (pow.f64 re 2) im) 3/2) 4) (+.f64 (/.f64 (/.f64 (pow.f64 re 2) (*.f64 im -2)) 4) (/.f64 (pow.f64 re 2) (*.f64 im -2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (/.f64 (pow.f64 re 2) (/.f64 im 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (-.f64 (*.f64 (/.f64 (pow.f64 re 2) im) 4) (/.f64 (pow.f64 re 2) (/.f64 im 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 re 2) (/.f64 1 im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 im (/.f64 (pow.f64 re 2) (*.f64 im im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 re 2) im) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (pow.f64 re 2) im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1/2 im) (*.f64 2 (pow.f64 re 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1/2 im) (*.f64 im (/.f64 (pow.f64 re 2) (/.f64 im 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1/2 im) (-.f64 (*.f64 (pow.f64 re 2) 4) (*.f64 2 (pow.f64 re 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (pow.f64 re 2)) (/.f64 1/2 im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (pow.f64 re 2)) (-.f64 (/.f64 1 im) (/.f64 1/2 im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1/4 im) (*.f64 (pow.f64 re 2) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1/4 im) (-.f64 (*.f64 2 (*.f64 (pow.f64 re 2) 4)) (*.f64 (pow.f64 re 2) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 re 2) (*.f64 im -2)) -2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 re 2) (/.f64 im 2)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 re 2) (/.f64 im 2)) (*.f64 im (/.f64 1/2 im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 re 2) 4) (/.f64 1/4 im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 re 2) 4) (-.f64 (/.f64 1/2 im) (/.f64 1/4 im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 re 2) 4) (+.f64 (/.f64 1/2 (*.f64 im 4)) (/.f64 1/2 (*.f64 im 4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 im) (pow.f64 re 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 im) (*.f64 im (/.f64 (pow.f64 re 2) im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 im) (-.f64 (*.f64 2 (pow.f64 re 2)) (pow.f64 re 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 (/.f64 (pow.f64 re 2) im) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1/2 (*.f64 im 4)) (*.f64 2 (*.f64 (pow.f64 re 2) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 (pow.f64 re 2) im) 4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 (pow.f64 re 2) im) 4) (*.f64 im (/.f64 1/4 im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (*.f64 (pow.f64 re 2) 4)) (/.f64 1/2 (*.f64 im 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (*.f64 (pow.f64 re 2) 4)) (-.f64 (/.f64 1/4 im) (/.f64 1/2 (*.f64 im 4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 re 2) (*.f64 im 4)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 re 2) 2) (*.f64 2 (/.f64 1 im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 re 2) (*.f64 im im)) im)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 re 2) (*.f64 im im)) (/.f64 1 (/.f64 1 im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 2 (pow.f64 re 2)) (*.f64 im im)) (/.f64 1 (/.f64 2 im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 2 (pow.f64 re 2)) (*.f64 im im)) (*.f64 1/2 im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 2 im) (*.f64 im (*.f64 1/2 (/.f64 (pow.f64 re 2) im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -2 (/.f64 (pow.f64 re 2) (*.f64 im -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 1/2 (pow.f64 re 2)) (*.f64 2 (/.f64 1 im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 1/2 (*.f64 1/2 (/.f64 (pow.f64 re 2) im))) 4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 1/2 (/.f64 1/2 im)) (*.f64 (pow.f64 re 2) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 1/2 (/.f64 1/4 im)) (*.f64 2 (*.f64 (pow.f64 re 2) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 re 2) (/.f64 1/4 im)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (/.f64 1 im)) (/.f64 (pow.f64 re 2) (*.f64 im im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (/.f64 2 im)) (/.f64 (*.f64 2 (pow.f64 re 2)) (*.f64 im im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/8 (*.f64 (/.f64 (pow.f64 re 2) (/.f64 im 2)) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1/4 (*.f64 im 4)) (*.f64 (*.f64 (pow.f64 re 2) 4) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1/2 (/.f64 1 im)) (/.f64 (*.f64 2 (pow.f64 re 2)) (*.f64 im im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1/2 (/.f64 2 im)) (+.f64 (/.f64 (*.f64 2 (pow.f64 re 2)) (*.f64 im im)) (/.f64 (*.f64 2 (pow.f64 re 2)) (*.f64 im im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 re 2) im) (/.f64 (/.f64 1 im) im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 im (*.f64 2 (pow.f64 re 2))) (/.f64 (/.f64 1/2 im) im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 im (/.f64 (pow.f64 re 2) im)) (/.f64 1 im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 im (/.f64 (pow.f64 re 2) (/.f64 im 2))) (/.f64 1/2 im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 im (*.f64 (pow.f64 re 2) 4)) (/.f64 (/.f64 1/4 im) im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 1/2 im) (/.f64 (pow.f64 re 2) 2)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 1/2 im) (/.f64 (*.f64 2 (pow.f64 re 2)) (*.f64 im im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 1 im) im) (*.f64 (pow.f64 re 2) im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 im (*.f64 1/2 (/.f64 (pow.f64 re 2) im))) (/.f64 2 im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 im (/.f64 1/2 im)) (/.f64 (pow.f64 re 2) (/.f64 im 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 im (/.f64 1/4 im)) (*.f64 (/.f64 (pow.f64 re 2) im) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 1/4 im) im) (*.f64 im (*.f64 (pow.f64 re 2) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 1/2 im) im) (*.f64 im (*.f64 2 (pow.f64 re 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (*.f64 im (/.f64 2 im)) -1) (/.f64 (pow.f64 re 2) im))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 re 2) im) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (neg.f64 (pow.f64 re 2)) im))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 im (-.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) re))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) (-.f64 im re))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 im (/.f64 (pow.f64 re 2) (*.f64 im -2))) (neg.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 im (+.f64 re (/.f64 (pow.f64 re 2) (*.f64 im -2)))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (-.f64 im (+.f64 re (/.f64 (pow.f64 re 2) (*.f64 im -2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 re) (-.f64 im (/.f64 (pow.f64 re 2) (*.f64 im -2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 re) (neg.f64 (neg.f64 (-.f64 im (/.f64 (pow.f64 re 2) (*.f64 im -2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 im (-.f64 re (+.f64 im (/.f64 (pow.f64 re 2) im)))) (neg.f64 (-.f64 im (/.f64 (pow.f64 re 2) (*.f64 im -2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 im re) (*.f64 1/2 (/.f64 (pow.f64 re 2) im)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) re) im)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) re) (neg.f64 (neg.f64 im)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 (-.f64 im (/.f64 (pow.f64 re 2) (*.f64 im -2)))) (-.f64 im (-.f64 re (+.f64 im (/.f64 (pow.f64 re 2) im)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (/.f64 (pow.f64 re 2) (*.f64 im 4)) (/.f64 (-.f64 re im) 2)) (-.f64 (/.f64 (pow.f64 re 2) (*.f64 im 4)) (/.f64 (-.f64 re im) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (/.f64 im 2) (/.f64 (pow.f64 re 2) (*.f64 im 4))) (-.f64 (+.f64 (/.f64 im 2) (/.f64 (pow.f64 re 2) (*.f64 im 4))) re))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (+.f64 (/.f64 im 2) (/.f64 (pow.f64 re 2) (*.f64 im 4))) re) (+.f64 (/.f64 im 2) (/.f64 (pow.f64 re 2) (*.f64 im 4))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (/.f64 im 2) re) (/.f64 (-.f64 im (/.f64 (neg.f64 (pow.f64 re 2)) im)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (-.f64 im (/.f64 (neg.f64 (pow.f64 re 2)) im)) 2) (-.f64 (/.f64 im 2) re))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (neg.f64 re) 2) (-.f64 (-.f64 im (/.f64 (pow.f64 re 2) (*.f64 im -2))) (/.f64 re 2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 (neg.f64 im)) (-.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) re))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (-.f64 im (/.f64 (pow.f64 re 2) (*.f64 im -2))) (/.f64 re 2)) (/.f64 (neg.f64 re) 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 (neg.f64 (-.f64 im (/.f64 (pow.f64 re 2) (*.f64 im -2))))) (neg.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (/.f64 (pow.f64 re 2) (*.f64 im 4)) re) (-.f64 (/.f64 (pow.f64 re 2) (*.f64 im 4)) (neg.f64 im)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (/.f64 (pow.f64 re 2) (*.f64 im 4)) (neg.f64 im)) (-.f64 (/.f64 (pow.f64 re 2) (*.f64 im 4)) re))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (-.f64 (/.f64 (pow.f64 re 2) im) (+.f64 (*.f64 im -2) (+.f64 re re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (-.f64 (+.f64 im im) (-.f64 (+.f64 re re) (/.f64 (pow.f64 re 2) im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (-.f64 (+.f64 (/.f64 (pow.f64 re 2) (/.f64 im 2)) (*.f64 im 4)) (+.f64 (+.f64 (/.f64 (pow.f64 re 2) im) (+.f64 im im)) (+.f64 re re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 im (+.f64 re (/.f64 (pow.f64 re 2) (*.f64 im -2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (/.f64 (pow.f64 re 2) im) (+.f64 (*.f64 im -2) (+.f64 re re))) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 im (+.f64 re (/.f64 (pow.f64 re 2) (*.f64 im -2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (/.f64 (pow.f64 re 2) (*.f64 im -2)) (-.f64 re im)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 im (+.f64 re (/.f64 (pow.f64 re 2) (*.f64 im -2)))) 4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (+.f64 (/.f64 (pow.f64 re 2) (*.f64 im -2)) (-.f64 re im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 (-.f64 im (+.f64 re (/.f64 (pow.f64 re 2) (*.f64 im -2)))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 im (+.f64 re (/.f64 (pow.f64 re 2) (*.f64 im -2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (/.f64 (pow.f64 re 2) im) (+.f64 (*.f64 im -2) (+.f64 re re))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (/.f64 (pow.f64 re 2) (*.f64 im -2)) (-.f64 re im)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 im (+.f64 re (/.f64 (pow.f64 re 2) (*.f64 im -2)))) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 im (+.f64 re (/.f64 (pow.f64 re 2) (*.f64 im -2)))) 8) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (+.f64 im im) (-.f64 (+.f64 re re) (/.f64 (pow.f64 re 2) im))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (+.f64 (/.f64 (pow.f64 re 2) (/.f64 im 2)) (*.f64 im 4)) (+.f64 (+.f64 (/.f64 (pow.f64 re 2) im) (+.f64 im im)) (+.f64 re re))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (+.f64 (/.f64 (pow.f64 re 2) im) (+.f64 im im)) 4) (*.f64 2 (*.f64 re 4))) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 im 4) (-.f64 (*.f64 re 4) (/.f64 (pow.f64 re 2) (/.f64 im 2)))) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (/.f64 (pow.f64 re 2) im) (*.f64 2 (-.f64 re im))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (/.f64 (pow.f64 re 2) (/.f64 im 2)) (-.f64 (*.f64 re 4) (*.f64 im 4))) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (+.f64 (/.f64 (pow.f64 re 2) im) (+.f64 im im)) 4) (+.f64 (*.f64 re 4) (+.f64 (/.f64 (pow.f64 re 2) (/.f64 im 2)) (*.f64 im 4)))) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 2 (-.f64 im re)) (/.f64 (neg.f64 (pow.f64 re 2)) im)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (-.f64 (*.f64 im 4) (*.f64 re 4)) (neg.f64 (/.f64 (pow.f64 re 2) (/.f64 im 2)))) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (-.f64 (/.f64 (pow.f64 re 2) im) (+.f64 re re)) (*.f64 im -2)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (-.f64 (/.f64 (pow.f64 re 2) (/.f64 im 2)) (*.f64 re 4)) (neg.f64 (*.f64 im 4))) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (+.f64 (+.f64 (/.f64 (pow.f64 re 2) im) (+.f64 im im)) (+.f64 re re)) (*.f64 re 4)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (+.f64 (*.f64 re 4) (+.f64 (/.f64 (pow.f64 re 2) (/.f64 im 2)) (*.f64 im 4))) (*.f64 2 (*.f64 re 4))) 4)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 im (+.f64 re (/.f64 (pow.f64 re 2) (*.f64 im -2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (+.f64 (/.f64 (pow.f64 re 2) (*.f64 im -2)) (-.f64 re im)))))))

simplify554.0ms (1.6%)

Algorithm
egg-herbie
Rules
1272×rational_best-simplify-1
860×rational_best-simplify-49
834×rational_best-simplify-53
796×rational_best-simplify-47
728×rational_best-simplify-52
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
04067178
110396946
229646576
Stop Event
node limit
Counts
196 → 269
Calls
Call 1
Inputs
(*.f64 (sqrt.f64 2) (sqrt.f64 im))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (+.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 im)) (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 im)) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 im))) 2)) (pow.f64 re 2))) (sqrt.f64 (/.f64 1 im))))))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (+.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 im)) (+.f64 (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 im)) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 im))) 2)) (pow.f64 re 2))) (sqrt.f64 (/.f64 1 im)))) (*.f64 1/4 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 im)) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 im))) 2)) (pow.f64 re 3))) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))))))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) re)) (sqrt.f64 (/.f64 1 im)))
(+.f64 (*.f64 -1/2 (*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 1/2)) (sqrt.f64 im))) (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) re)) (sqrt.f64 (/.f64 1 im))))
(+.f64 (*.f64 -1/2 (*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 1/2)) (sqrt.f64 im))) (+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (-.f64 im (pow.f64 (*.f64 -1/2 (*.f64 (/.f64 1 (sqrt.f64 1/2)) (sqrt.f64 im))) 2))) (*.f64 (sqrt.f64 1/2) re)) (sqrt.f64 im))) (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) re)) (sqrt.f64 (/.f64 1 im)))))
(+.f64 (*.f64 -1/2 (*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 1/2)) (sqrt.f64 im))) (+.f64 (*.f64 1/4 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (-.f64 im (pow.f64 (*.f64 -1/2 (*.f64 (/.f64 1 (sqrt.f64 1/2)) (sqrt.f64 im))) 2))) (*.f64 (pow.f64 (sqrt.f64 1/2) 3) (pow.f64 re 2))) (sqrt.f64 (pow.f64 im 3)))) (+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (-.f64 im (pow.f64 (*.f64 -1/2 (*.f64 (/.f64 1 (sqrt.f64 1/2)) (sqrt.f64 im))) 2))) (*.f64 (sqrt.f64 1/2) re)) (sqrt.f64 im))) (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) re)) (sqrt.f64 (/.f64 1 im))))))
(*.f64 -1 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) re)) (sqrt.f64 (/.f64 1 im))))
(+.f64 (*.f64 -1 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) re)) (sqrt.f64 (/.f64 1 im)))) (*.f64 1/2 (*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 1/2)) (sqrt.f64 im))))
(+.f64 (*.f64 -1 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) re)) (sqrt.f64 (/.f64 1 im)))) (+.f64 (*.f64 -1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (-.f64 im (pow.f64 (*.f64 1/2 (*.f64 (/.f64 1 (sqrt.f64 1/2)) (sqrt.f64 im))) 2))) (*.f64 (sqrt.f64 1/2) re)) (sqrt.f64 im))) (*.f64 1/2 (*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 1/2)) (sqrt.f64 im)))))
(+.f64 (*.f64 -1 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) re)) (sqrt.f64 (/.f64 1 im)))) (+.f64 (*.f64 -1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (-.f64 im (pow.f64 (*.f64 1/2 (*.f64 (/.f64 1 (sqrt.f64 1/2)) (sqrt.f64 im))) 2))) (*.f64 (sqrt.f64 1/2) re)) (sqrt.f64 im))) (+.f64 (*.f64 1/2 (*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 1/2)) (sqrt.f64 im))) (*.f64 -1/4 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (-.f64 im (pow.f64 (*.f64 1/2 (*.f64 (/.f64 1 (sqrt.f64 1/2)) (sqrt.f64 im))) 2))) (*.f64 (pow.f64 (sqrt.f64 1/2) 3) (pow.f64 re 2))) (sqrt.f64 (pow.f64 im 3)))))))
im
(+.f64 (*.f64 -1 re) im)
(+.f64 (*.f64 -1 re) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) im))
(+.f64 (*.f64 -1 re) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) im))
(*.f64 1/2 (/.f64 (pow.f64 re 2) im))
(+.f64 (*.f64 -1 re) (*.f64 1/2 (/.f64 (pow.f64 re 2) im)))
(+.f64 (*.f64 -1 re) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) im))
(+.f64 (*.f64 -1 re) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) im))
(*.f64 1/2 (/.f64 (pow.f64 re 2) im))
(+.f64 (*.f64 -1 re) (*.f64 1/2 (/.f64 (pow.f64 re 2) im)))
(+.f64 (*.f64 -1 re) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) im))
(+.f64 (*.f64 -1 re) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) im))
(*.f64 1/2 (/.f64 (pow.f64 re 2) im))
(+.f64 (*.f64 -1 re) (*.f64 1/2 (/.f64 (pow.f64 re 2) im)))
(+.f64 (*.f64 -1 re) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) im))
(+.f64 (*.f64 -1 re) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) im))
im
(+.f64 (*.f64 -1 re) im)
(+.f64 (*.f64 -1 re) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) im))
(+.f64 (*.f64 -1 re) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) im))
im
(+.f64 (*.f64 -1 re) im)
(+.f64 (*.f64 -1 re) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) im))
(+.f64 (*.f64 -1 re) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) im))
(+.f64 (sqrt.f64 (-.f64 (/.f64 (pow.f64 re 2) im) (+.f64 (*.f64 im -2) (+.f64 re re)))) 0)
(+.f64 0 (sqrt.f64 (-.f64 (/.f64 (pow.f64 re 2) im) (+.f64 (*.f64 im -2) (+.f64 re re)))))
(+.f64 (/.f64 (sqrt.f64 (-.f64 (/.f64 (pow.f64 re 2) im) (+.f64 (*.f64 im -2) (+.f64 re re)))) 2) (/.f64 (sqrt.f64 (-.f64 (/.f64 (pow.f64 re 2) im) (+.f64 (*.f64 im -2) (+.f64 re re)))) 2))
(-.f64 (sqrt.f64 (-.f64 (/.f64 (pow.f64 re 2) im) (+.f64 (*.f64 im -2) (+.f64 re re)))) 0)
(-.f64 (/.f64 (sqrt.f64 (-.f64 (/.f64 (pow.f64 re 2) im) (+.f64 (*.f64 im -2) (+.f64 re re)))) 2) (/.f64 (neg.f64 (sqrt.f64 (-.f64 (/.f64 (pow.f64 re 2) im) (+.f64 (*.f64 im -2) (+.f64 re re))))) 2))
(*.f64 1/2 (*.f64 2 (sqrt.f64 (-.f64 (/.f64 (pow.f64 re 2) im) (+.f64 (*.f64 im -2) (+.f64 re re))))))
(*.f64 (sqrt.f64 (-.f64 (/.f64 (pow.f64 re 2) im) (+.f64 (*.f64 im -2) (+.f64 re re)))) 1)
(*.f64 1 (sqrt.f64 (-.f64 (/.f64 (pow.f64 re 2) im) (+.f64 (*.f64 im -2) (+.f64 re re)))))
(*.f64 (sqrt.f64 2) (sqrt.f64 (-.f64 im (+.f64 re (/.f64 (pow.f64 re 2) (*.f64 im -2))))))
(*.f64 (sqrt.f64 (-.f64 im (+.f64 re (/.f64 (pow.f64 re 2) (*.f64 im -2))))) (sqrt.f64 2))
(*.f64 (*.f64 2 (sqrt.f64 (-.f64 (/.f64 (pow.f64 re 2) im) (+.f64 (*.f64 im -2) (+.f64 re re))))) 1/2)
(*.f64 1/4 (*.f64 (sqrt.f64 (-.f64 (/.f64 (pow.f64 re 2) im) (+.f64 (*.f64 im -2) (+.f64 re re)))) 4))
(*.f64 (*.f64 2 (sqrt.f64 2)) (/.f64 (sqrt.f64 (-.f64 im (+.f64 re (/.f64 (pow.f64 re 2) (*.f64 im -2))))) 2))
(*.f64 (*.f64 2 (sqrt.f64 (-.f64 im (+.f64 re (/.f64 (pow.f64 re 2) (*.f64 im -2)))))) (/.f64 (sqrt.f64 2) 2))
(*.f64 (*.f64 (sqrt.f64 (-.f64 (/.f64 (pow.f64 re 2) im) (+.f64 (*.f64 im -2) (+.f64 re re)))) 4) 1/4)
(*.f64 (/.f64 (sqrt.f64 2) 2) (*.f64 2 (sqrt.f64 (-.f64 im (+.f64 re (/.f64 (pow.f64 re 2) (*.f64 im -2)))))))
(*.f64 (/.f64 (sqrt.f64 (-.f64 im (+.f64 re (/.f64 (pow.f64 re 2) (*.f64 im -2))))) 2) (*.f64 2 (sqrt.f64 2)))
(*.f64 (sqrt.f64 (*.f64 (-.f64 im (+.f64 re (/.f64 (pow.f64 re 2) (*.f64 im -2)))) 4)) (sqrt.f64 1/2))
(*.f64 (sqrt.f64 1/2) (sqrt.f64 (*.f64 (-.f64 im (+.f64 re (/.f64 (pow.f64 re 2) (*.f64 im -2)))) 4)))
(/.f64 (sqrt.f64 (-.f64 (/.f64 (pow.f64 re 2) im) (+.f64 (*.f64 im -2) (+.f64 re re)))) 1)
(/.f64 (*.f64 2 (sqrt.f64 (-.f64 (/.f64 (pow.f64 re 2) im) (+.f64 (*.f64 im -2) (+.f64 re re))))) 2)
(/.f64 (*.f64 (sqrt.f64 (-.f64 (/.f64 (pow.f64 re 2) im) (+.f64 (*.f64 im -2) (+.f64 re re)))) 4) 4)
(/.f64 (*.f64 2 (*.f64 (sqrt.f64 (-.f64 (/.f64 (pow.f64 re 2) im) (+.f64 (*.f64 im -2) (+.f64 re re)))) 4)) 8)
(pow.f64 (sqrt.f64 (-.f64 (/.f64 (pow.f64 re 2) im) (+.f64 (*.f64 im -2) (+.f64 re re)))) 1)
(+.f64 (/.f64 (pow.f64 re 2) im) 0)
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) (*.f64 1/2 (/.f64 (pow.f64 re 2) im)))
(+.f64 0 (/.f64 (pow.f64 re 2) im))
(+.f64 (/.f64 (pow.f64 re 2) (*.f64 im 4)) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) (/.f64 (pow.f64 re 2) (*.f64 im 4))))
(+.f64 (/.f64 (pow.f64 re 2) (*.f64 im 4)) (/.f64 (*.f64 (pow.f64 re 2) 3) (*.f64 im 4)))
(+.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) (/.f64 (pow.f64 re 2) (*.f64 im 4))) (/.f64 (pow.f64 re 2) (*.f64 im 4)))
(+.f64 (/.f64 (*.f64 (pow.f64 re 2) 3) (*.f64 im 4)) (/.f64 (pow.f64 re 2) (*.f64 im 4)))
(-.f64 (/.f64 (pow.f64 re 2) im) 0)
(-.f64 (/.f64 (pow.f64 re 2) im) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) (/.f64 (pow.f64 re 2) (*.f64 im -2))))
(-.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) (/.f64 (pow.f64 re 2) (*.f64 im -2)))
(-.f64 0 (/.f64 (neg.f64 (pow.f64 re 2)) im))
(-.f64 (/.f64 (pow.f64 re 2) (/.f64 im 2)) (/.f64 (pow.f64 re 2) im))
(-.f64 (/.f64 (pow.f64 re 2) (*.f64 im 4)) (+.f64 (/.f64 (neg.f64 (pow.f64 re 2)) (*.f64 im 4)) (/.f64 (pow.f64 re 2) (*.f64 im -2))))
(-.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) (/.f64 (pow.f64 re 2) (*.f64 im 4))) (/.f64 (neg.f64 (pow.f64 re 2)) (*.f64 im 4)))
(-.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) (/.f64 (pow.f64 re 2) (*.f64 im 4))) (+.f64 (/.f64 (neg.f64 (pow.f64 re 2)) (*.f64 im 4)) 0))
(-.f64 (/.f64 (*.f64 (pow.f64 re 2) 3) (*.f64 im 4)) (/.f64 (neg.f64 (pow.f64 re 2)) (*.f64 im 4)))
(-.f64 (/.f64 (*.f64 (pow.f64 re 2) 3) (*.f64 im 4)) (+.f64 (/.f64 (neg.f64 (pow.f64 re 2)) (*.f64 im 4)) 0))
(-.f64 (/.f64 (*.f64 (/.f64 (pow.f64 re 2) im) 3/2) 4) (+.f64 (/.f64 (/.f64 (pow.f64 re 2) (*.f64 im -2)) 4) (/.f64 (pow.f64 re 2) (*.f64 im -2))))
(*.f64 2 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)))
(*.f64 1/2 (/.f64 (pow.f64 re 2) (/.f64 im 2)))
(*.f64 1/2 (-.f64 (*.f64 (/.f64 (pow.f64 re 2) im) 4) (/.f64 (pow.f64 re 2) (/.f64 im 2))))
(*.f64 (pow.f64 re 2) (/.f64 1 im))
(*.f64 im (/.f64 (pow.f64 re 2) (*.f64 im im)))
(*.f64 (/.f64 (pow.f64 re 2) im) 1)
(*.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) 2)
(*.f64 1 (/.f64 (pow.f64 re 2) im))
(*.f64 (/.f64 1/2 im) (*.f64 2 (pow.f64 re 2)))
(*.f64 (/.f64 1/2 im) (*.f64 im (/.f64 (pow.f64 re 2) (/.f64 im 2))))
(*.f64 (/.f64 1/2 im) (-.f64 (*.f64 (pow.f64 re 2) 4) (*.f64 2 (pow.f64 re 2))))
(*.f64 (*.f64 2 (pow.f64 re 2)) (/.f64 1/2 im))
(*.f64 (*.f64 2 (pow.f64 re 2)) (-.f64 (/.f64 1 im) (/.f64 1/2 im)))
(*.f64 (/.f64 1/4 im) (*.f64 (pow.f64 re 2) 4))
(*.f64 (/.f64 1/4 im) (-.f64 (*.f64 2 (*.f64 (pow.f64 re 2) 4)) (*.f64 (pow.f64 re 2) 4)))
(*.f64 (/.f64 (pow.f64 re 2) (*.f64 im -2)) -2)
(*.f64 (/.f64 (pow.f64 re 2) (/.f64 im 2)) 1/2)
(*.f64 (/.f64 (pow.f64 re 2) (/.f64 im 2)) (*.f64 im (/.f64 1/2 im)))
(*.f64 (*.f64 (pow.f64 re 2) 4) (/.f64 1/4 im))
(*.f64 (*.f64 (pow.f64 re 2) 4) (-.f64 (/.f64 1/2 im) (/.f64 1/4 im)))
(*.f64 (*.f64 (pow.f64 re 2) 4) (+.f64 (/.f64 1/2 (*.f64 im 4)) (/.f64 1/2 (*.f64 im 4))))
(*.f64 (/.f64 1 im) (pow.f64 re 2))
(*.f64 (/.f64 1 im) (*.f64 im (/.f64 (pow.f64 re 2) im)))
(*.f64 (/.f64 1 im) (-.f64 (*.f64 2 (pow.f64 re 2)) (pow.f64 re 2)))
(*.f64 1/4 (*.f64 (/.f64 (pow.f64 re 2) im) 4))
(*.f64 (/.f64 1/2 (*.f64 im 4)) (*.f64 2 (*.f64 (pow.f64 re 2) 4)))
(*.f64 (*.f64 (/.f64 (pow.f64 re 2) im) 4) 1/4)
(*.f64 (*.f64 (/.f64 (pow.f64 re 2) im) 4) (*.f64 im (/.f64 1/4 im)))
(*.f64 (*.f64 2 (*.f64 (pow.f64 re 2) 4)) (/.f64 1/2 (*.f64 im 4)))
(*.f64 (*.f64 2 (*.f64 (pow.f64 re 2) 4)) (-.f64 (/.f64 1/4 im) (/.f64 1/2 (*.f64 im 4))))
(*.f64 (/.f64 (pow.f64 re 2) (*.f64 im 4)) 4)
(*.f64 (/.f64 (pow.f64 re 2) 2) (*.f64 2 (/.f64 1 im)))
(*.f64 (/.f64 (pow.f64 re 2) (*.f64 im im)) im)
(*.f64 (/.f64 (pow.f64 re 2) (*.f64 im im)) (/.f64 1 (/.f64 1 im)))
(*.f64 (/.f64 (*.f64 2 (pow.f64 re 2)) (*.f64 im im)) (/.f64 1 (/.f64 2 im)))
(*.f64 (/.f64 (*.f64 2 (pow.f64 re 2)) (*.f64 im im)) (*.f64 1/2 im))
(*.f64 (/.f64 2 im) (*.f64 im (*.f64 1/2 (/.f64 (pow.f64 re 2) im))))
(*.f64 -2 (/.f64 (pow.f64 re 2) (*.f64 im -2)))
(*.f64 (*.f64 1/2 (pow.f64 re 2)) (*.f64 2 (/.f64 1 im)))
(*.f64 (*.f64 1/2 (*.f64 1/2 (/.f64 (pow.f64 re 2) im))) 4)
(*.f64 (*.f64 1/2 (/.f64 1/2 im)) (*.f64 (pow.f64 re 2) 4))
(*.f64 (*.f64 1/2 (/.f64 1/4 im)) (*.f64 2 (*.f64 (pow.f64 re 2) 4)))
(*.f64 (*.f64 (pow.f64 re 2) (/.f64 1/4 im)) 4)
(*.f64 (/.f64 1 (/.f64 1 im)) (/.f64 (pow.f64 re 2) (*.f64 im im)))
(*.f64 (/.f64 1 (/.f64 2 im)) (/.f64 (*.f64 2 (pow.f64 re 2)) (*.f64 im im)))
(*.f64 1/8 (*.f64 (/.f64 (pow.f64 re 2) (/.f64 im 2)) 4))
(*.f64 (/.f64 1/4 (*.f64 im 4)) (*.f64 (*.f64 (pow.f64 re 2) 4) 4))
(*.f64 (/.f64 1/2 (/.f64 1 im)) (/.f64 (*.f64 2 (pow.f64 re 2)) (*.f64 im im)))
(*.f64 (/.f64 1/2 (/.f64 2 im)) (+.f64 (/.f64 (*.f64 2 (pow.f64 re 2)) (*.f64 im im)) (/.f64 (*.f64 2 (pow.f64 re 2)) (*.f64 im im))))
(*.f64 (*.f64 (pow.f64 re 2) im) (/.f64 (/.f64 1 im) im))
(*.f64 (*.f64 im (*.f64 2 (pow.f64 re 2))) (/.f64 (/.f64 1/2 im) im))
(*.f64 (*.f64 im (/.f64 (pow.f64 re 2) im)) (/.f64 1 im))
(*.f64 (*.f64 im (/.f64 (pow.f64 re 2) (/.f64 im 2))) (/.f64 1/2 im))
(*.f64 (*.f64 im (*.f64 (pow.f64 re 2) 4)) (/.f64 (/.f64 1/4 im) im))
(*.f64 (*.f64 (/.f64 1/2 im) (/.f64 (pow.f64 re 2) 2)) 4)
(*.f64 (*.f64 1/2 im) (/.f64 (*.f64 2 (pow.f64 re 2)) (*.f64 im im)))
(*.f64 (/.f64 (/.f64 1 im) im) (*.f64 (pow.f64 re 2) im))
(*.f64 (*.f64 im (*.f64 1/2 (/.f64 (pow.f64 re 2) im))) (/.f64 2 im))
(*.f64 (*.f64 im (/.f64 1/2 im)) (/.f64 (pow.f64 re 2) (/.f64 im 2)))
(*.f64 (*.f64 im (/.f64 1/4 im)) (*.f64 (/.f64 (pow.f64 re 2) im) 4))
(*.f64 (/.f64 (/.f64 1/4 im) im) (*.f64 im (*.f64 (pow.f64 re 2) 4)))
(*.f64 (/.f64 (/.f64 1/2 im) im) (*.f64 im (*.f64 2 (pow.f64 re 2))))
(*.f64 (+.f64 (*.f64 im (/.f64 2 im)) -1) (/.f64 (pow.f64 re 2) im))
(pow.f64 (/.f64 (pow.f64 re 2) im) 1)
(neg.f64 (/.f64 (neg.f64 (pow.f64 re 2)) im))
(+.f64 im (-.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) re))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) (-.f64 im re))
(+.f64 (-.f64 im (/.f64 (pow.f64 re 2) (*.f64 im -2))) (neg.f64 re))
(+.f64 (-.f64 im (+.f64 re (/.f64 (pow.f64 re 2) (*.f64 im -2)))) 0)
(+.f64 0 (-.f64 im (+.f64 re (/.f64 (pow.f64 re 2) (*.f64 im -2)))))
(+.f64 (neg.f64 re) (-.f64 im (/.f64 (pow.f64 re 2) (*.f64 im -2))))
(+.f64 (neg.f64 re) (neg.f64 (neg.f64 (-.f64 im (/.f64 (pow.f64 re 2) (*.f64 im -2))))))
(+.f64 (-.f64 im (-.f64 re (+.f64 im (/.f64 (pow.f64 re 2) im)))) (neg.f64 (-.f64 im (/.f64 (pow.f64 re 2) (*.f64 im -2)))))
(+.f64 (-.f64 im re) (*.f64 1/2 (/.f64 (pow.f64 re 2) im)))
(+.f64 (-.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) re) im)
(+.f64 (-.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) re) (neg.f64 (neg.f64 im)))
(+.f64 (neg.f64 (-.f64 im (/.f64 (pow.f64 re 2) (*.f64 im -2)))) (-.f64 im (-.f64 re (+.f64 im (/.f64 (pow.f64 re 2) im)))))
(+.f64 (-.f64 (/.f64 (pow.f64 re 2) (*.f64 im 4)) (/.f64 (-.f64 re im) 2)) (-.f64 (/.f64 (pow.f64 re 2) (*.f64 im 4)) (/.f64 (-.f64 re im) 2)))
(+.f64 (+.f64 (/.f64 im 2) (/.f64 (pow.f64 re 2) (*.f64 im 4))) (-.f64 (+.f64 (/.f64 im 2) (/.f64 (pow.f64 re 2) (*.f64 im 4))) re))
(+.f64 (-.f64 (+.f64 (/.f64 im 2) (/.f64 (pow.f64 re 2) (*.f64 im 4))) re) (+.f64 (/.f64 im 2) (/.f64 (pow.f64 re 2) (*.f64 im 4))))
(+.f64 (-.f64 (/.f64 im 2) re) (/.f64 (-.f64 im (/.f64 (neg.f64 (pow.f64 re 2)) im)) 2))
(+.f64 (/.f64 (-.f64 im (/.f64 (neg.f64 (pow.f64 re 2)) im)) 2) (-.f64 (/.f64 im 2) re))
(+.f64 (/.f64 (neg.f64 re) 2) (-.f64 (-.f64 im (/.f64 (pow.f64 re 2) (*.f64 im -2))) (/.f64 re 2)))
(+.f64 (neg.f64 (neg.f64 im)) (-.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) re))
(+.f64 (-.f64 (-.f64 im (/.f64 (pow.f64 re 2) (*.f64 im -2))) (/.f64 re 2)) (/.f64 (neg.f64 re) 2))
(+.f64 (neg.f64 (neg.f64 (-.f64 im (/.f64 (pow.f64 re 2) (*.f64 im -2))))) (neg.f64 re))
(+.f64 (-.f64 (/.f64 (pow.f64 re 2) (*.f64 im 4)) re) (-.f64 (/.f64 (pow.f64 re 2) (*.f64 im 4)) (neg.f64 im)))
(+.f64 (-.f64 (/.f64 (pow.f64 re 2) (*.f64 im 4)) (neg.f64 im)) (-.f64 (/.f64 (pow.f64 re 2) (*.f64 im 4)) re))
(*.f64 1/2 (-.f64 (/.f64 (pow.f64 re 2) im) (+.f64 (*.f64 im -2) (+.f64 re re))))
(*.f64 1/2 (-.f64 (+.f64 im im) (-.f64 (+.f64 re re) (/.f64 (pow.f64 re 2) im))))
(*.f64 1/2 (-.f64 (+.f64 (/.f64 (pow.f64 re 2) (/.f64 im 2)) (*.f64 im 4)) (+.f64 (+.f64 (/.f64 (pow.f64 re 2) im) (+.f64 im im)) (+.f64 re re))))
(*.f64 (-.f64 im (+.f64 re (/.f64 (pow.f64 re 2) (*.f64 im -2)))) 1)
(*.f64 (-.f64 (/.f64 (pow.f64 re 2) im) (+.f64 (*.f64 im -2) (+.f64 re re))) 1/2)
(*.f64 1 (-.f64 im (+.f64 re (/.f64 (pow.f64 re 2) (*.f64 im -2)))))
(*.f64 (+.f64 (/.f64 (pow.f64 re 2) (*.f64 im -2)) (-.f64 re im)) -1)
(*.f64 (*.f64 (-.f64 im (+.f64 re (/.f64 (pow.f64 re 2) (*.f64 im -2)))) 4) 1/4)
(*.f64 -1 (+.f64 (/.f64 (pow.f64 re 2) (*.f64 im -2)) (-.f64 re im)))
(*.f64 1/4 (*.f64 (-.f64 im (+.f64 re (/.f64 (pow.f64 re 2) (*.f64 im -2)))) 4))
(/.f64 (-.f64 im (+.f64 re (/.f64 (pow.f64 re 2) (*.f64 im -2)))) 1)
(/.f64 (-.f64 (/.f64 (pow.f64 re 2) im) (+.f64 (*.f64 im -2) (+.f64 re re))) 2)
(/.f64 (+.f64 (/.f64 (pow.f64 re 2) (*.f64 im -2)) (-.f64 re im)) -1)
(/.f64 (*.f64 (-.f64 im (+.f64 re (/.f64 (pow.f64 re 2) (*.f64 im -2)))) 4) 4)
(/.f64 (*.f64 (-.f64 im (+.f64 re (/.f64 (pow.f64 re 2) (*.f64 im -2)))) 8) 8)
(/.f64 (-.f64 (+.f64 im im) (-.f64 (+.f64 re re) (/.f64 (pow.f64 re 2) im))) 2)
(/.f64 (-.f64 (+.f64 (/.f64 (pow.f64 re 2) (/.f64 im 2)) (*.f64 im 4)) (+.f64 (+.f64 (/.f64 (pow.f64 re 2) im) (+.f64 im im)) (+.f64 re re))) 2)
(/.f64 (-.f64 (*.f64 (+.f64 (/.f64 (pow.f64 re 2) im) (+.f64 im im)) 4) (*.f64 2 (*.f64 re 4))) 8)
(/.f64 (-.f64 (*.f64 im 4) (-.f64 (*.f64 re 4) (/.f64 (pow.f64 re 2) (/.f64 im 2)))) 4)
(/.f64 (-.f64 (/.f64 (pow.f64 re 2) im) (*.f64 2 (-.f64 re im))) 2)
(/.f64 (-.f64 (/.f64 (pow.f64 re 2) (/.f64 im 2)) (-.f64 (*.f64 re 4) (*.f64 im 4))) 4)
(/.f64 (-.f64 (*.f64 (+.f64 (/.f64 (pow.f64 re 2) im) (+.f64 im im)) 4) (+.f64 (*.f64 re 4) (+.f64 (/.f64 (pow.f64 re 2) (/.f64 im 2)) (*.f64 im 4)))) 4)
(/.f64 (-.f64 (*.f64 2 (-.f64 im re)) (/.f64 (neg.f64 (pow.f64 re 2)) im)) 2)
(/.f64 (-.f64 (-.f64 (*.f64 im 4) (*.f64 re 4)) (neg.f64 (/.f64 (pow.f64 re 2) (/.f64 im 2)))) 4)
(/.f64 (-.f64 (-.f64 (/.f64 (pow.f64 re 2) im) (+.f64 re re)) (*.f64 im -2)) 2)
(/.f64 (-.f64 (-.f64 (/.f64 (pow.f64 re 2) (/.f64 im 2)) (*.f64 re 4)) (neg.f64 (*.f64 im 4))) 4)
(/.f64 (-.f64 (+.f64 (+.f64 (/.f64 (pow.f64 re 2) im) (+.f64 im im)) (+.f64 re re)) (*.f64 re 4)) 2)
(/.f64 (-.f64 (+.f64 (*.f64 re 4) (+.f64 (/.f64 (pow.f64 re 2) (/.f64 im 2)) (*.f64 im 4))) (*.f64 2 (*.f64 re 4))) 4)
(pow.f64 (-.f64 im (+.f64 re (/.f64 (pow.f64 re 2) (*.f64 im -2)))) 1)
(neg.f64 (+.f64 (/.f64 (pow.f64 re 2) (*.f64 im -2)) (-.f64 re im)))
Outputs
(*.f64 (sqrt.f64 2) (sqrt.f64 im))
(sqrt.f64 (*.f64 2 im))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))
(+.f64 (sqrt.f64 (*.f64 2 im)) (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))))
(+.f64 (sqrt.f64 (*.f64 2 im)) (*.f64 -1/2 (*.f64 (sqrt.f64 2) (*.f64 re (sqrt.f64 (/.f64 1 im))))))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (+.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 im)) (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 im)) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 im))) 2)) (pow.f64 re 2))) (sqrt.f64 (/.f64 1 im))))))
(+.f64 (*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (*.f64 1 (/.f64 1/2 im)) (*.f64 1/4 (pow.f64 (sqrt.f64 (/.f64 1 im)) 2))) (pow.f64 re 2))) 1/2)) (+.f64 (sqrt.f64 (*.f64 2 im)) (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im))))))
(+.f64 (sqrt.f64 (*.f64 2 im)) (+.f64 (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) (-.f64 (*.f64 2 (/.f64 1/4 im)) (*.f64 1/4 (pow.f64 (sqrt.f64 (/.f64 1 im)) 2)))) (*.f64 (pow.f64 re 2) (sqrt.f64 (/.f64 1 im))))) (*.f64 -1/2 (*.f64 (sqrt.f64 2) (*.f64 re (sqrt.f64 (/.f64 1 im)))))))
(+.f64 (sqrt.f64 (*.f64 2 im)) (+.f64 (*.f64 -1/2 (*.f64 (sqrt.f64 2) (*.f64 re (sqrt.f64 (/.f64 1 im))))) (*.f64 1/2 (*.f64 (*.f64 (-.f64 (/.f64 1/2 im) (*.f64 1/4 (pow.f64 (sqrt.f64 (/.f64 1 im)) 2))) (pow.f64 re 2)) (*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 1 im)))))))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (+.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 im)) (+.f64 (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 im)) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 im))) 2)) (pow.f64 re 2))) (sqrt.f64 (/.f64 1 im)))) (*.f64 1/4 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 im)) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 im))) 2)) (pow.f64 re 3))) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))))))
(+.f64 (+.f64 (*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (*.f64 1 (/.f64 1/2 im)) (*.f64 1/4 (pow.f64 (sqrt.f64 (/.f64 1 im)) 2))) (pow.f64 re 2))) 1/2)) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 im 3))) (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (-.f64 (*.f64 1 (/.f64 1/2 im)) (*.f64 1/4 (pow.f64 (sqrt.f64 (/.f64 1 im)) 2))) (pow.f64 re 3))) 1/4))) (+.f64 (sqrt.f64 (*.f64 2 im)) (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im))))))
(+.f64 (sqrt.f64 (*.f64 2 im)) (+.f64 (+.f64 (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) (-.f64 (*.f64 2 (/.f64 1/4 im)) (*.f64 1/4 (pow.f64 (sqrt.f64 (/.f64 1 im)) 2)))) (*.f64 (pow.f64 re 2) (sqrt.f64 (/.f64 1 im))))) (*.f64 1/4 (*.f64 (*.f64 (sqrt.f64 2) (-.f64 (*.f64 2 (/.f64 1/4 im)) (*.f64 1/4 (pow.f64 (sqrt.f64 (/.f64 1 im)) 2)))) (*.f64 (pow.f64 re 3) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))))) (*.f64 -1/2 (*.f64 (sqrt.f64 2) (*.f64 re (sqrt.f64 (/.f64 1 im)))))))
(+.f64 (sqrt.f64 (*.f64 2 im)) (+.f64 (*.f64 -1/2 (*.f64 (sqrt.f64 2) (*.f64 re (sqrt.f64 (/.f64 1 im))))) (+.f64 (*.f64 1/2 (*.f64 (*.f64 (-.f64 (/.f64 1/2 im) (*.f64 1/4 (pow.f64 (sqrt.f64 (/.f64 1 im)) 2))) (pow.f64 re 2)) (*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 1 im))))) (*.f64 1/4 (*.f64 (*.f64 (-.f64 (/.f64 1/2 im) (*.f64 1/4 (pow.f64 (sqrt.f64 (/.f64 1 im)) 2))) (pow.f64 re 3)) (*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 1 (pow.f64 im 3)))))))))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) re)) (sqrt.f64 (/.f64 1 im)))
(*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 (sqrt.f64 2) (*.f64 re (sqrt.f64 1/2))))
(*.f64 1 (*.f64 re (sqrt.f64 (/.f64 1 im))))
(*.f64 re (sqrt.f64 (/.f64 1 im)))
(+.f64 (*.f64 -1/2 (*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 1/2)) (sqrt.f64 im))) (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) re)) (sqrt.f64 (/.f64 1 im))))
(+.f64 (*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 (sqrt.f64 2) (*.f64 re (sqrt.f64 1/2)))) (*.f64 (sqrt.f64 im) (*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 1/2)) -1/2)))
(+.f64 (*.f64 1 (*.f64 re (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 im) (*.f64 -1/2 (/.f64 (sqrt.f64 2) (sqrt.f64 1/2)))))
(+.f64 (*.f64 re (sqrt.f64 (/.f64 1 im))) (*.f64 -1/2 (*.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 im) (sqrt.f64 1/2)))))
(+.f64 (*.f64 -1/2 (*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 1/2)) (sqrt.f64 im))) (+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (-.f64 im (pow.f64 (*.f64 -1/2 (*.f64 (/.f64 1 (sqrt.f64 1/2)) (sqrt.f64 im))) 2))) (*.f64 (sqrt.f64 1/2) re)) (sqrt.f64 im))) (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) re)) (sqrt.f64 (/.f64 1 im)))))
(+.f64 (*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 (sqrt.f64 2) (*.f64 re (sqrt.f64 1/2)))) (+.f64 (*.f64 (sqrt.f64 im) (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (-.f64 im (*.f64 1/4 (pow.f64 (*.f64 (sqrt.f64 im) (/.f64 1 (sqrt.f64 1/2))) 2)))) (*.f64 re (sqrt.f64 1/2))) 1/2)) (*.f64 (sqrt.f64 im) (*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 1/2)) -1/2))))
(+.f64 (*.f64 1 (*.f64 re (sqrt.f64 (/.f64 1 im)))) (+.f64 (*.f64 (sqrt.f64 im) (*.f64 -1/2 (/.f64 (sqrt.f64 2) (sqrt.f64 1/2)))) (*.f64 (sqrt.f64 im) (*.f64 1/2 (/.f64 (*.f64 (sqrt.f64 2) (-.f64 im (*.f64 1/4 (pow.f64 (*.f64 (sqrt.f64 im) (/.f64 1 (sqrt.f64 1/2))) 2)))) (*.f64 re (sqrt.f64 1/2)))))))
(+.f64 (+.f64 (*.f64 re (sqrt.f64 (/.f64 1 im))) (*.f64 -1/2 (*.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 im) (sqrt.f64 1/2))))) (*.f64 (sqrt.f64 im) (*.f64 1/2 (/.f64 (*.f64 (sqrt.f64 2) (-.f64 im (pow.f64 (*.f64 (sqrt.f64 im) (*.f64 -1/2 (/.f64 1 (sqrt.f64 1/2)))) 2))) (*.f64 re (sqrt.f64 1/2))))))
(+.f64 (*.f64 -1/2 (*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 1/2)) (sqrt.f64 im))) (+.f64 (*.f64 1/4 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (-.f64 im (pow.f64 (*.f64 -1/2 (*.f64 (/.f64 1 (sqrt.f64 1/2)) (sqrt.f64 im))) 2))) (*.f64 (pow.f64 (sqrt.f64 1/2) 3) (pow.f64 re 2))) (sqrt.f64 (pow.f64 im 3)))) (+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (-.f64 im (pow.f64 (*.f64 -1/2 (*.f64 (/.f64 1 (sqrt.f64 1/2)) (sqrt.f64 im))) 2))) (*.f64 (sqrt.f64 1/2) re)) (sqrt.f64 im))) (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) re)) (sqrt.f64 (/.f64 1 im))))))
(+.f64 (*.f64 (sqrt.f64 im) (*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 1/2)) -1/2)) (+.f64 (*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 (sqrt.f64 2) (*.f64 re (sqrt.f64 1/2)))) (+.f64 (*.f64 (sqrt.f64 im) (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (-.f64 im (*.f64 1/4 (pow.f64 (*.f64 (sqrt.f64 im) (/.f64 1 (sqrt.f64 1/2))) 2)))) (*.f64 re (sqrt.f64 1/2))) 1/2)) (*.f64 1/4 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (-.f64 im (*.f64 1/4 (pow.f64 (*.f64 (sqrt.f64 im) (/.f64 1 (sqrt.f64 1/2))) 2)))) (*.f64 (pow.f64 re 2) (sqrt.f64 1/8))) (pow.f64 (sqrt.f64 im) 3))))))
(+.f64 (*.f64 (sqrt.f64 im) (*.f64 -1/2 (/.f64 (sqrt.f64 2) (sqrt.f64 1/2)))) (+.f64 (*.f64 1 (*.f64 re (sqrt.f64 (/.f64 1 im)))) (+.f64 (*.f64 (sqrt.f64 im) (*.f64 1/2 (/.f64 (*.f64 (sqrt.f64 2) (-.f64 im (*.f64 1/4 (pow.f64 (*.f64 (sqrt.f64 im) (/.f64 1 (sqrt.f64 1/2))) 2)))) (*.f64 re (sqrt.f64 1/2))))) (*.f64 1/4 (*.f64 (*.f64 (sqrt.f64 2) (-.f64 im (*.f64 1/4 (pow.f64 (*.f64 (sqrt.f64 im) (/.f64 1 (sqrt.f64 1/2))) 2)))) (/.f64 (pow.f64 (sqrt.f64 im) 3) (*.f64 (pow.f64 re 2) (sqrt.f64 1/8))))))))
(+.f64 (*.f64 re (sqrt.f64 (/.f64 1 im))) (+.f64 (+.f64 (*.f64 -1/2 (*.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 im) (sqrt.f64 1/2)))) (*.f64 (sqrt.f64 im) (*.f64 1/2 (/.f64 (*.f64 (sqrt.f64 2) (-.f64 im (pow.f64 (*.f64 (sqrt.f64 im) (*.f64 -1/2 (/.f64 1 (sqrt.f64 1/2)))) 2))) (*.f64 re (sqrt.f64 1/2)))))) (*.f64 1/4 (*.f64 (*.f64 (sqrt.f64 2) (-.f64 im (pow.f64 (*.f64 (sqrt.f64 im) (*.f64 -1/2 (/.f64 1 (sqrt.f64 1/2)))) 2))) (/.f64 (/.f64 (pow.f64 (sqrt.f64 im) 3) (pow.f64 re 2)) (sqrt.f64 1/8))))))
(*.f64 -1 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) re)) (sqrt.f64 (/.f64 1 im))))
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 (sqrt.f64 2) (*.f64 re (sqrt.f64 1/2)))) -1)
(neg.f64 (*.f64 1 (*.f64 re (sqrt.f64 (/.f64 1 im)))))
(*.f64 (sqrt.f64 (/.f64 1 im)) (neg.f64 re))
(+.f64 (*.f64 -1 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) re)) (sqrt.f64 (/.f64 1 im)))) (*.f64 1/2 (*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 1/2)) (sqrt.f64 im))))
(+.f64 (*.f64 (*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 (sqrt.f64 2) (*.f64 re (sqrt.f64 1/2)))) -1) (*.f64 (sqrt.f64 im) (*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 1/2)) 1/2)))
(+.f64 (neg.f64 (*.f64 1 (*.f64 re (sqrt.f64 (/.f64 1 im))))) (*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 1/2)) (*.f64 (sqrt.f64 im) 1/2)))
(+.f64 (*.f64 (sqrt.f64 (/.f64 1 im)) (neg.f64 re)) (*.f64 (sqrt.f64 im) (*.f64 1/2 (/.f64 (sqrt.f64 2) (sqrt.f64 1/2)))))
(+.f64 (*.f64 -1 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) re)) (sqrt.f64 (/.f64 1 im)))) (+.f64 (*.f64 -1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (-.f64 im (pow.f64 (*.f64 1/2 (*.f64 (/.f64 1 (sqrt.f64 1/2)) (sqrt.f64 im))) 2))) (*.f64 (sqrt.f64 1/2) re)) (sqrt.f64 im))) (*.f64 1/2 (*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 1/2)) (sqrt.f64 im)))))
(+.f64 (*.f64 (sqrt.f64 im) (*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 1/2)) 1/2)) (+.f64 (*.f64 (sqrt.f64 im) (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (-.f64 im (*.f64 1/4 (pow.f64 (*.f64 (sqrt.f64 im) (/.f64 1 (sqrt.f64 1/2))) 2)))) (*.f64 re (sqrt.f64 1/2))) -1/2)) (*.f64 (*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 (sqrt.f64 2) (*.f64 re (sqrt.f64 1/2)))) -1)))
(+.f64 (neg.f64 (*.f64 1 (*.f64 re (sqrt.f64 (/.f64 1 im))))) (+.f64 (*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 1/2)) (*.f64 (sqrt.f64 im) 1/2)) (*.f64 -1/2 (*.f64 (sqrt.f64 im) (/.f64 (*.f64 (sqrt.f64 2) (-.f64 im (*.f64 1/4 (pow.f64 (*.f64 (sqrt.f64 im) (/.f64 1 (sqrt.f64 1/2))) 2)))) (*.f64 re (sqrt.f64 1/2)))))))
(+.f64 (*.f64 (sqrt.f64 im) (*.f64 1/2 (/.f64 (sqrt.f64 2) (sqrt.f64 1/2)))) (+.f64 (*.f64 (sqrt.f64 (/.f64 1 im)) (neg.f64 re)) (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) (-.f64 im (pow.f64 (*.f64 (sqrt.f64 im) (*.f64 -1/2 (/.f64 1 (sqrt.f64 1/2)))) 2))) (/.f64 (sqrt.f64 im) (*.f64 re (sqrt.f64 1/2)))))))
(+.f64 (*.f64 -1 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) re)) (sqrt.f64 (/.f64 1 im)))) (+.f64 (*.f64 -1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (-.f64 im (pow.f64 (*.f64 1/2 (*.f64 (/.f64 1 (sqrt.f64 1/2)) (sqrt.f64 im))) 2))) (*.f64 (sqrt.f64 1/2) re)) (sqrt.f64 im))) (+.f64 (*.f64 1/2 (*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 1/2)) (sqrt.f64 im))) (*.f64 -1/4 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (-.f64 im (pow.f64 (*.f64 1/2 (*.f64 (/.f64 1 (sqrt.f64 1/2)) (sqrt.f64 im))) 2))) (*.f64 (pow.f64 (sqrt.f64 1/2) 3) (pow.f64 re 2))) (sqrt.f64 (pow.f64 im 3)))))))
(+.f64 (+.f64 (*.f64 (sqrt.f64 im) (*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 1/2)) 1/2)) (*.f64 (pow.f64 (sqrt.f64 im) 3) (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (-.f64 im (*.f64 1/4 (pow.f64 (*.f64 (sqrt.f64 im) (/.f64 1 (sqrt.f64 1/2))) 2)))) (*.f64 (pow.f64 re 2) (sqrt.f64 1/8))) -1/4))) (+.f64 (*.f64 (sqrt.f64 im) (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (-.f64 im (*.f64 1/4 (pow.f64 (*.f64 (sqrt.f64 im) (/.f64 1 (sqrt.f64 1/2))) 2)))) (*.f64 re (sqrt.f64 1/2))) -1/2)) (*.f64 (*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 (sqrt.f64 2) (*.f64 re (sqrt.f64 1/2)))) -1)))
(+.f64 (neg.f64 (*.f64 1 (*.f64 re (sqrt.f64 (/.f64 1 im))))) (+.f64 (*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 1/2)) (*.f64 (sqrt.f64 im) 1/2)) (+.f64 (*.f64 -1/2 (*.f64 (sqrt.f64 im) (/.f64 (*.f64 (sqrt.f64 2) (-.f64 im (*.f64 1/4 (pow.f64 (*.f64 (sqrt.f64 im) (/.f64 1 (sqrt.f64 1/2))) 2)))) (*.f64 re (sqrt.f64 1/2))))) (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (-.f64 im (*.f64 1/4 (pow.f64 (*.f64 (sqrt.f64 im) (/.f64 1 (sqrt.f64 1/2))) 2)))) (*.f64 (pow.f64 re 2) (sqrt.f64 1/8))) (*.f64 (pow.f64 (sqrt.f64 im) 3) -1/4)))))
(+.f64 (*.f64 (sqrt.f64 im) (*.f64 1/2 (/.f64 (sqrt.f64 2) (sqrt.f64 1/2)))) (+.f64 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (-.f64 im (pow.f64 (*.f64 (sqrt.f64 im) (*.f64 -1/2 (/.f64 1 (sqrt.f64 1/2)))) 2))) (*.f64 (pow.f64 re 2) (sqrt.f64 1/8))) (*.f64 (pow.f64 (sqrt.f64 im) 3) -1/4)) (+.f64 (*.f64 (sqrt.f64 (/.f64 1 im)) (neg.f64 re)) (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) (-.f64 im (pow.f64 (*.f64 (sqrt.f64 im) (*.f64 -1/2 (/.f64 1 (sqrt.f64 1/2)))) 2))) (/.f64 (sqrt.f64 im) (*.f64 re (sqrt.f64 1/2))))))))
im
(+.f64 (*.f64 -1 re) im)
(+.f64 im (neg.f64 re))
(neg.f64 (-.f64 re im))
(-.f64 im re)
(+.f64 (*.f64 -1 re) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) im))
(+.f64 im (+.f64 (neg.f64 re) (*.f64 1/2 (/.f64 (pow.f64 re 2) im))))
(+.f64 (neg.f64 re) (+.f64 im (*.f64 1/2 (/.f64 (pow.f64 re 2) im))))
(+.f64 (*.f64 (pow.f64 re 2) (/.f64 1/2 im)) (-.f64 im re))
(+.f64 (*.f64 -1 re) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) im))
(+.f64 im (+.f64 (neg.f64 re) (*.f64 1/2 (/.f64 (pow.f64 re 2) im))))
(+.f64 (neg.f64 re) (+.f64 im (*.f64 1/2 (/.f64 (pow.f64 re 2) im))))
(+.f64 (*.f64 (pow.f64 re 2) (/.f64 1/2 im)) (-.f64 im re))
(*.f64 1/2 (/.f64 (pow.f64 re 2) im))
(*.f64 (pow.f64 re 2) (/.f64 1/2 im))
(+.f64 (*.f64 -1 re) (*.f64 1/2 (/.f64 (pow.f64 re 2) im)))
(+.f64 (neg.f64 re) (*.f64 1/2 (/.f64 (pow.f64 re 2) im)))
(-.f64 (*.f64 (pow.f64 re 2) (/.f64 1/2 im)) re)
(+.f64 (*.f64 -1 re) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) im))
(+.f64 im (+.f64 (neg.f64 re) (*.f64 1/2 (/.f64 (pow.f64 re 2) im))))
(+.f64 (neg.f64 re) (+.f64 im (*.f64 1/2 (/.f64 (pow.f64 re 2) im))))
(+.f64 (*.f64 (pow.f64 re 2) (/.f64 1/2 im)) (-.f64 im re))
(+.f64 (*.f64 -1 re) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) im))
(+.f64 im (+.f64 (neg.f64 re) (*.f64 1/2 (/.f64 (pow.f64 re 2) im))))
(+.f64 (neg.f64 re) (+.f64 im (*.f64 1/2 (/.f64 (pow.f64 re 2) im))))
(+.f64 (*.f64 (pow.f64 re 2) (/.f64 1/2 im)) (-.f64 im re))
(*.f64 1/2 (/.f64 (pow.f64 re 2) im))
(*.f64 (pow.f64 re 2) (/.f64 1/2 im))
(+.f64 (*.f64 -1 re) (*.f64 1/2 (/.f64 (pow.f64 re 2) im)))
(+.f64 (neg.f64 re) (*.f64 1/2 (/.f64 (pow.f64 re 2) im)))
(-.f64 (*.f64 (pow.f64 re 2) (/.f64 1/2 im)) re)
(+.f64 (*.f64 -1 re) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) im))
(+.f64 im (+.f64 (neg.f64 re) (*.f64 1/2 (/.f64 (pow.f64 re 2) im))))
(+.f64 (neg.f64 re) (+.f64 im (*.f64 1/2 (/.f64 (pow.f64 re 2) im))))
(+.f64 (*.f64 (pow.f64 re 2) (/.f64 1/2 im)) (-.f64 im re))
(+.f64 (*.f64 -1 re) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) im))
(+.f64 im (+.f64 (neg.f64 re) (*.f64 1/2 (/.f64 (pow.f64 re 2) im))))
(+.f64 (neg.f64 re) (+.f64 im (*.f64 1/2 (/.f64 (pow.f64 re 2) im))))
(+.f64 (*.f64 (pow.f64 re 2) (/.f64 1/2 im)) (-.f64 im re))
(*.f64 1/2 (/.f64 (pow.f64 re 2) im))
(*.f64 (pow.f64 re 2) (/.f64 1/2 im))
(+.f64 (*.f64 -1 re) (*.f64 1/2 (/.f64 (pow.f64 re 2) im)))
(+.f64 (neg.f64 re) (*.f64 1/2 (/.f64 (pow.f64 re 2) im)))
(-.f64 (*.f64 (pow.f64 re 2) (/.f64 1/2 im)) re)
(+.f64 (*.f64 -1 re) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) im))
(+.f64 im (+.f64 (neg.f64 re) (*.f64 1/2 (/.f64 (pow.f64 re 2) im))))
(+.f64 (neg.f64 re) (+.f64 im (*.f64 1/2 (/.f64 (pow.f64 re 2) im))))
(+.f64 (*.f64 (pow.f64 re 2) (/.f64 1/2 im)) (-.f64 im re))
(+.f64 (*.f64 -1 re) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) im))
(+.f64 im (+.f64 (neg.f64 re) (*.f64 1/2 (/.f64 (pow.f64 re 2) im))))
(+.f64 (neg.f64 re) (+.f64 im (*.f64 1/2 (/.f64 (pow.f64 re 2) im))))
(+.f64 (*.f64 (pow.f64 re 2) (/.f64 1/2 im)) (-.f64 im re))
im
(+.f64 (*.f64 -1 re) im)
(+.f64 im (neg.f64 re))
(neg.f64 (-.f64 re im))
(-.f64 im re)
(+.f64 (*.f64 -1 re) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) im))
(+.f64 im (+.f64 (neg.f64 re) (*.f64 1/2 (/.f64 (pow.f64 re 2) im))))
(+.f64 (neg.f64 re) (+.f64 im (*.f64 1/2 (/.f64 (pow.f64 re 2) im))))
(+.f64 (*.f64 (pow.f64 re 2) (/.f64 1/2 im)) (-.f64 im re))
(+.f64 (*.f64 -1 re) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) im))
(+.f64 im (+.f64 (neg.f64 re) (*.f64 1/2 (/.f64 (pow.f64 re 2) im))))
(+.f64 (neg.f64 re) (+.f64 im (*.f64 1/2 (/.f64 (pow.f64 re 2) im))))
(+.f64 (*.f64 (pow.f64 re 2) (/.f64 1/2 im)) (-.f64 im re))
im
(+.f64 (*.f64 -1 re) im)
(+.f64 im (neg.f64 re))
(neg.f64 (-.f64 re im))
(-.f64 im re)
(+.f64 (*.f64 -1 re) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) im))
(+.f64 im (+.f64 (neg.f64 re) (*.f64 1/2 (/.f64 (pow.f64 re 2) im))))
(+.f64 (neg.f64 re) (+.f64 im (*.f64 1/2 (/.f64 (pow.f64 re 2) im))))
(+.f64 (*.f64 (pow.f64 re 2) (/.f64 1/2 im)) (-.f64 im re))
(+.f64 (*.f64 -1 re) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) im))
(+.f64 im (+.f64 (neg.f64 re) (*.f64 1/2 (/.f64 (pow.f64 re 2) im))))
(+.f64 (neg.f64 re) (+.f64 im (*.f64 1/2 (/.f64 (pow.f64 re 2) im))))
(+.f64 (*.f64 (pow.f64 re 2) (/.f64 1/2 im)) (-.f64 im re))
(+.f64 (sqrt.f64 (-.f64 (/.f64 (pow.f64 re 2) im) (+.f64 (*.f64 im -2) (+.f64 re re)))) 0)
(sqrt.f64 (-.f64 (/.f64 (pow.f64 re 2) im) (+.f64 (*.f64 im -2) (+.f64 re re))))
(sqrt.f64 (-.f64 (/.f64 (pow.f64 re 2) im) (-.f64 (*.f64 im -2) (*.f64 re -2))))
(+.f64 0 (sqrt.f64 (-.f64 (/.f64 (pow.f64 re 2) im) (+.f64 (*.f64 im -2) (+.f64 re re)))))
(sqrt.f64 (-.f64 (/.f64 (pow.f64 re 2) im) (+.f64 (*.f64 im -2) (+.f64 re re))))
(sqrt.f64 (-.f64 (/.f64 (pow.f64 re 2) im) (-.f64 (*.f64 im -2) (*.f64 re -2))))
(+.f64 (/.f64 (sqrt.f64 (-.f64 (/.f64 (pow.f64 re 2) im) (+.f64 (*.f64 im -2) (+.f64 re re)))) 2) (/.f64 (sqrt.f64 (-.f64 (/.f64 (pow.f64 re 2) im) (+.f64 (*.f64 im -2) (+.f64 re re)))) 2))
(sqrt.f64 (-.f64 (/.f64 (pow.f64 re 2) im) (+.f64 (*.f64 im -2) (+.f64 re re))))
(sqrt.f64 (-.f64 (/.f64 (pow.f64 re 2) im) (-.f64 (*.f64 im -2) (*.f64 re -2))))
(-.f64 (sqrt.f64 (-.f64 (/.f64 (pow.f64 re 2) im) (+.f64 (*.f64 im -2) (+.f64 re re)))) 0)
(sqrt.f64 (-.f64 (/.f64 (pow.f64 re 2) im) (+.f64 (*.f64 im -2) (+.f64 re re))))
(sqrt.f64 (-.f64 (/.f64 (pow.f64 re 2) im) (-.f64 (*.f64 im -2) (*.f64 re -2))))
(-.f64 (/.f64 (sqrt.f64 (-.f64 (/.f64 (pow.f64 re 2) im) (+.f64 (*.f64 im -2) (+.f64 re re)))) 2) (/.f64 (neg.f64 (sqrt.f64 (-.f64 (/.f64 (pow.f64 re 2) im) (+.f64 (*.f64 im -2) (+.f64 re re))))) 2))
(sqrt.f64 (-.f64 (/.f64 (pow.f64 re 2) im) (+.f64 (*.f64 im -2) (+.f64 re re))))
(sqrt.f64 (-.f64 (/.f64 (pow.f64 re 2) im) (-.f64 (*.f64 im -2) (*.f64 re -2))))
(*.f64 1/2 (*.f64 2 (sqrt.f64 (-.f64 (/.f64 (pow.f64 re 2) im) (+.f64 (*.f64 im -2) (+.f64 re re))))))
(sqrt.f64 (-.f64 (/.f64 (pow.f64 re 2) im) (+.f64 (*.f64 im -2) (+.f64 re re))))
(sqrt.f64 (-.f64 (/.f64 (pow.f64 re 2) im) (-.f64 (*.f64 im -2) (*.f64 re -2))))
(*.f64 (sqrt.f64 (-.f64 (/.f64 (pow.f64 re 2) im) (+.f64 (*.f64 im -2) (+.f64 re re)))) 1)
(sqrt.f64 (-.f64 (/.f64 (pow.f64 re 2) im) (+.f64 (*.f64 im -2) (+.f64 re re))))
(sqrt.f64 (-.f64 (/.f64 (pow.f64 re 2) im) (-.f64 (*.f64 im -2) (*.f64 re -2))))
(*.f64 1 (sqrt.f64 (-.f64 (/.f64 (pow.f64 re 2) im) (+.f64 (*.f64 im -2) (+.f64 re re)))))
(sqrt.f64 (-.f64 (/.f64 (pow.f64 re 2) im) (+.f64 (*.f64 im -2) (+.f64 re re))))
(sqrt.f64 (-.f64 (/.f64 (pow.f64 re 2) im) (-.f64 (*.f64 im -2) (*.f64 re -2))))
(*.f64 (sqrt.f64 2) (sqrt.f64 (-.f64 im (+.f64 re (/.f64 (pow.f64 re 2) (*.f64 im -2))))))
(sqrt.f64 (*.f64 2 (-.f64 im (+.f64 re (/.f64 (pow.f64 re 2) (*.f64 im -2))))))
(sqrt.f64 (*.f64 2 (+.f64 (-.f64 im re) (/.f64 (pow.f64 re 2) (*.f64 2 im)))))
(sqrt.f64 (-.f64 (/.f64 (pow.f64 re 2) im) (*.f64 2 (-.f64 re im))))
(*.f64 (sqrt.f64 (-.f64 im (+.f64 re (/.f64 (pow.f64 re 2) (*.f64 im -2))))) (sqrt.f64 2))
(sqrt.f64 (*.f64 2 (-.f64 im (+.f64 re (/.f64 (pow.f64 re 2) (*.f64 im -2))))))
(sqrt.f64 (*.f64 2 (+.f64 (-.f64 im re) (/.f64 (pow.f64 re 2) (*.f64 2 im)))))
(sqrt.f64 (-.f64 (/.f64 (pow.f64 re 2) im) (*.f64 2 (-.f64 re im))))
(*.f64 (*.f64 2 (sqrt.f64 (-.f64 (/.f64 (pow.f64 re 2) im) (+.f64 (*.f64 im -2) (+.f64 re re))))) 1/2)
(sqrt.f64 (-.f64 (/.f64 (pow.f64 re 2) im) (+.f64 (*.f64 im -2) (+.f64 re re))))
(sqrt.f64 (-.f64 (/.f64 (pow.f64 re 2) im) (-.f64 (*.f64 im -2) (*.f64 re -2))))
(*.f64 1/4 (*.f64 (sqrt.f64 (-.f64 (/.f64 (pow.f64 re 2) im) (+.f64 (*.f64 im -2) (+.f64 re re)))) 4))
(sqrt.f64 (-.f64 (/.f64 (pow.f64 re 2) im) (+.f64 (*.f64 im -2) (+.f64 re re))))
(sqrt.f64 (-.f64 (/.f64 (pow.f64 re 2) im) (-.f64 (*.f64 im -2) (*.f64 re -2))))
(*.f64 (*.f64 2 (sqrt.f64 2)) (/.f64 (sqrt.f64 (-.f64 im (+.f64 re (/.f64 (pow.f64 re 2) (*.f64 im -2))))) 2))
(sqrt.f64 (*.f64 2 (-.f64 im (+.f64 re (/.f64 (pow.f64 re 2) (*.f64 im -2))))))
(sqrt.f64 (*.f64 2 (+.f64 (-.f64 im re) (/.f64 (pow.f64 re 2) (*.f64 2 im)))))
(sqrt.f64 (-.f64 (/.f64 (pow.f64 re 2) im) (*.f64 2 (-.f64 re im))))
(*.f64 (*.f64 2 (sqrt.f64 (-.f64 im (+.f64 re (/.f64 (pow.f64 re 2) (*.f64 im -2)))))) (/.f64 (sqrt.f64 2) 2))
(sqrt.f64 (*.f64 2 (-.f64 im (+.f64 re (/.f64 (pow.f64 re 2) (*.f64 im -2))))))
(sqrt.f64 (*.f64 2 (+.f64 (-.f64 im re) (/.f64 (pow.f64 re 2) (*.f64 2 im)))))
(sqrt.f64 (-.f64 (/.f64 (pow.f64 re 2) im) (*.f64 2 (-.f64 re im))))
(*.f64 (*.f64 (sqrt.f64 (-.f64 (/.f64 (pow.f64 re 2) im) (+.f64 (*.f64 im -2) (+.f64 re re)))) 4) 1/4)
(sqrt.f64 (-.f64 (/.f64 (pow.f64 re 2) im) (+.f64 (*.f64 im -2) (+.f64 re re))))
(sqrt.f64 (-.f64 (/.f64 (pow.f64 re 2) im) (-.f64 (*.f64 im -2) (*.f64 re -2))))
(*.f64 (/.f64 (sqrt.f64 2) 2) (*.f64 2 (sqrt.f64 (-.f64 im (+.f64 re (/.f64 (pow.f64 re 2) (*.f64 im -2)))))))
(sqrt.f64 (*.f64 2 (-.f64 im (+.f64 re (/.f64 (pow.f64 re 2) (*.f64 im -2))))))
(sqrt.f64 (*.f64 2 (+.f64 (-.f64 im re) (/.f64 (pow.f64 re 2) (*.f64 2 im)))))
(sqrt.f64 (-.f64 (/.f64 (pow.f64 re 2) im) (*.f64 2 (-.f64 re im))))
(*.f64 (/.f64 (sqrt.f64 (-.f64 im (+.f64 re (/.f64 (pow.f64 re 2) (*.f64 im -2))))) 2) (*.f64 2 (sqrt.f64 2)))
(sqrt.f64 (*.f64 2 (-.f64 im (+.f64 re (/.f64 (pow.f64 re 2) (*.f64 im -2))))))
(sqrt.f64 (*.f64 2 (+.f64 (-.f64 im re) (/.f64 (pow.f64 re 2) (*.f64 2 im)))))
(sqrt.f64 (-.f64 (/.f64 (pow.f64 re 2) im) (*.f64 2 (-.f64 re im))))
(*.f64 (sqrt.f64 (*.f64 (-.f64 im (+.f64 re (/.f64 (pow.f64 re 2) (*.f64 im -2)))) 4)) (sqrt.f64 1/2))
(sqrt.f64 (*.f64 2 (-.f64 im (+.f64 re (/.f64 (pow.f64 re 2) (*.f64 im -2))))))
(sqrt.f64 (*.f64 2 (+.f64 (-.f64 im re) (/.f64 (pow.f64 re 2) (*.f64 2 im)))))
(sqrt.f64 (-.f64 (/.f64 (pow.f64 re 2) im) (*.f64 2 (-.f64 re im))))
(*.f64 (sqrt.f64 1/2) (sqrt.f64 (*.f64 (-.f64 im (+.f64 re (/.f64 (pow.f64 re 2) (*.f64 im -2)))) 4)))
(sqrt.f64 (*.f64 2 (-.f64 im (+.f64 re (/.f64 (pow.f64 re 2) (*.f64 im -2))))))
(sqrt.f64 (*.f64 2 (+.f64 (-.f64 im re) (/.f64 (pow.f64 re 2) (*.f64 2 im)))))
(sqrt.f64 (-.f64 (/.f64 (pow.f64 re 2) im) (*.f64 2 (-.f64 re im))))
(/.f64 (sqrt.f64 (-.f64 (/.f64 (pow.f64 re 2) im) (+.f64 (*.f64 im -2) (+.f64 re re)))) 1)
(sqrt.f64 (-.f64 (/.f64 (pow.f64 re 2) im) (+.f64 (*.f64 im -2) (+.f64 re re))))
(sqrt.f64 (-.f64 (/.f64 (pow.f64 re 2) im) (-.f64 (*.f64 im -2) (*.f64 re -2))))
(/.f64 (*.f64 2 (sqrt.f64 (-.f64 (/.f64 (pow.f64 re 2) im) (+.f64 (*.f64 im -2) (+.f64 re re))))) 2)
(sqrt.f64 (-.f64 (/.f64 (pow.f64 re 2) im) (+.f64 (*.f64 im -2) (+.f64 re re))))
(sqrt.f64 (-.f64 (/.f64 (pow.f64 re 2) im) (-.f64 (*.f64 im -2) (*.f64 re -2))))
(/.f64 (*.f64 (sqrt.f64 (-.f64 (/.f64 (pow.f64 re 2) im) (+.f64 (*.f64 im -2) (+.f64 re re)))) 4) 4)
(sqrt.f64 (-.f64 (/.f64 (pow.f64 re 2) im) (+.f64 (*.f64 im -2) (+.f64 re re))))
(sqrt.f64 (-.f64 (/.f64 (pow.f64 re 2) im) (-.f64 (*.f64 im -2) (*.f64 re -2))))
(/.f64 (*.f64 2 (*.f64 (sqrt.f64 (-.f64 (/.f64 (pow.f64 re 2) im) (+.f64 (*.f64 im -2) (+.f64 re re)))) 4)) 8)
(sqrt.f64 (-.f64 (/.f64 (pow.f64 re 2) im) (+.f64 (*.f64 im -2) (+.f64 re re))))
(sqrt.f64 (-.f64 (/.f64 (pow.f64 re 2) im) (-.f64 (*.f64 im -2) (*.f64 re -2))))
(pow.f64 (sqrt.f64 (-.f64 (/.f64 (pow.f64 re 2) im) (+.f64 (*.f64 im -2) (+.f64 re re)))) 1)
(sqrt.f64 (-.f64 (/.f64 (pow.f64 re 2) im) (+.f64 (*.f64 im -2) (+.f64 re re))))
(sqrt.f64 (-.f64 (/.f64 (pow.f64 re 2) im) (-.f64 (*.f64 im -2) (*.f64 re -2))))
(+.f64 (/.f64 (pow.f64 re 2) im) 0)
(/.f64 (pow.f64 re 2) im)
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) (*.f64 1/2 (/.f64 (pow.f64 re 2) im)))
(/.f64 (pow.f64 re 2) im)
(+.f64 0 (/.f64 (pow.f64 re 2) im))
(/.f64 (pow.f64 re 2) im)
(+.f64 (/.f64 (pow.f64 re 2) (*.f64 im 4)) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) (/.f64 (pow.f64 re 2) (*.f64 im 4))))
(/.f64 (pow.f64 re 2) im)
(+.f64 (/.f64 (pow.f64 re 2) (*.f64 im 4)) (/.f64 (*.f64 (pow.f64 re 2) 3) (*.f64 im 4)))
(/.f64 (+.f64 (*.f64 (pow.f64 re 2) 3) (pow.f64 re 2)) (*.f64 im 4))
(/.f64 (*.f64 (pow.f64 re 2) 4) (*.f64 im 4))
(+.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) (/.f64 (pow.f64 re 2) (*.f64 im 4))) (/.f64 (pow.f64 re 2) (*.f64 im 4)))
(/.f64 (pow.f64 re 2) im)
(+.f64 (/.f64 (*.f64 (pow.f64 re 2) 3) (*.f64 im 4)) (/.f64 (pow.f64 re 2) (*.f64 im 4)))
(/.f64 (+.f64 (*.f64 (pow.f64 re 2) 3) (pow.f64 re 2)) (*.f64 im 4))
(/.f64 (*.f64 (pow.f64 re 2) 4) (*.f64 im 4))
(-.f64 (/.f64 (pow.f64 re 2) im) 0)
(/.f64 (pow.f64 re 2) im)
(-.f64 (/.f64 (pow.f64 re 2) im) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) (/.f64 (pow.f64 re 2) (*.f64 im -2))))
(/.f64 (pow.f64 re 2) im)
(-.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) (/.f64 (pow.f64 re 2) (*.f64 im -2)))
(/.f64 (pow.f64 re 2) im)
(-.f64 0 (/.f64 (neg.f64 (pow.f64 re 2)) im))
(/.f64 (pow.f64 re 2) im)
(-.f64 (/.f64 (pow.f64 re 2) (/.f64 im 2)) (/.f64 (pow.f64 re 2) im))
(/.f64 (pow.f64 re 2) im)
(-.f64 (/.f64 (pow.f64 re 2) (*.f64 im 4)) (+.f64 (/.f64 (neg.f64 (pow.f64 re 2)) (*.f64 im 4)) (/.f64 (pow.f64 re 2) (*.f64 im -2))))
(/.f64 (pow.f64 re 2) im)
(-.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) (/.f64 (pow.f64 re 2) (*.f64 im 4))) (/.f64 (neg.f64 (pow.f64 re 2)) (*.f64 im 4)))
(/.f64 (pow.f64 re 2) im)
(-.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) (/.f64 (pow.f64 re 2) (*.f64 im 4))) (+.f64 (/.f64 (neg.f64 (pow.f64 re 2)) (*.f64 im 4)) 0))
(/.f64 (pow.f64 re 2) im)
(-.f64 (/.f64 (*.f64 (pow.f64 re 2) 3) (*.f64 im 4)) (/.f64 (neg.f64 (pow.f64 re 2)) (*.f64 im 4)))
(/.f64 (+.f64 (*.f64 (pow.f64 re 2) 3) (pow.f64 re 2)) (*.f64 im 4))
(/.f64 (*.f64 (pow.f64 re 2) 4) (*.f64 im 4))
(-.f64 (/.f64 (*.f64 (pow.f64 re 2) 3) (*.f64 im 4)) (+.f64 (/.f64 (neg.f64 (pow.f64 re 2)) (*.f64 im 4)) 0))
(/.f64 (+.f64 (*.f64 (pow.f64 re 2) 3) (pow.f64 re 2)) (*.f64 im 4))
(/.f64 (*.f64 (pow.f64 re 2) 4) (*.f64 im 4))
(-.f64 (/.f64 (*.f64 (/.f64 (pow.f64 re 2) im) 3/2) 4) (+.f64 (/.f64 (/.f64 (pow.f64 re 2) (*.f64 im -2)) 4) (/.f64 (pow.f64 re 2) (*.f64 im -2))))
(-.f64 (/.f64 (*.f64 (/.f64 (pow.f64 re 2) im) 3/2) 4) (+.f64 (/.f64 (pow.f64 re 2) (*.f64 im -2)) (/.f64 (/.f64 (pow.f64 re 2) 4) (*.f64 im -2))))
(-.f64 (/.f64 (*.f64 (pow.f64 re 2) (/.f64 3/2 im)) 4) (/.f64 (+.f64 (pow.f64 re 2) (/.f64 (pow.f64 re 2) 4)) (*.f64 im -2)))
(*.f64 2 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)))
(/.f64 (pow.f64 re 2) im)
(*.f64 1/2 (/.f64 (pow.f64 re 2) (/.f64 im 2)))
(/.f64 (pow.f64 re 2) im)
(*.f64 1/2 (-.f64 (*.f64 (/.f64 (pow.f64 re 2) im) 4) (/.f64 (pow.f64 re 2) (/.f64 im 2))))
(*.f64 1/2 (-.f64 (*.f64 (pow.f64 re 2) (/.f64 4 im)) (/.f64 (pow.f64 re 2) (/.f64 im 2))))
(*.f64 (pow.f64 re 2) (/.f64 1 im))
(/.f64 (pow.f64 re 2) im)
(*.f64 im (/.f64 (pow.f64 re 2) (*.f64 im im)))
(-.f64 (/.f64 (pow.f64 re 2) im) (/.f64 0 im))
(*.f64 (/.f64 (pow.f64 re 2) im) 1)
(/.f64 (pow.f64 re 2) im)
(*.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) 2)
(/.f64 (pow.f64 re 2) im)
(*.f64 1 (/.f64 (pow.f64 re 2) im))
(/.f64 (pow.f64 re 2) im)
(*.f64 (/.f64 1/2 im) (*.f64 2 (pow.f64 re 2)))
(/.f64 (pow.f64 re 2) im)
(*.f64 (/.f64 1/2 im) (*.f64 im (/.f64 (pow.f64 re 2) (/.f64 im 2))))
(*.f64 im (/.f64 (pow.f64 re 2) (*.f64 im im)))
(-.f64 (/.f64 (pow.f64 re 2) im) (/.f64 0 im))
(*.f64 (/.f64 1/2 im) (-.f64 (*.f64 (pow.f64 re 2) 4) (*.f64 2 (pow.f64 re 2))))
(/.f64 (pow.f64 re 2) im)
(*.f64 (*.f64 2 (pow.f64 re 2)) (/.f64 1/2 im))
(/.f64 (pow.f64 re 2) im)
(*.f64 (*.f64 2 (pow.f64 re 2)) (-.f64 (/.f64 1 im) (/.f64 1/2 im)))
(/.f64 (pow.f64 re 2) im)
(*.f64 (/.f64 1/4 im) (*.f64 (pow.f64 re 2) 4))
(/.f64 (pow.f64 re 2) im)
(*.f64 (/.f64 1/4 im) (-.f64 (*.f64 2 (*.f64 (pow.f64 re 2) 4)) (*.f64 (pow.f64 re 2) 4)))
(*.f64 (/.f64 1/4 im) (-.f64 (*.f64 (pow.f64 re 2) 8) (*.f64 (pow.f64 re 2) 4)))
(*.f64 (/.f64 (pow.f64 re 2) (*.f64 im -2)) -2)
(/.f64 (pow.f64 re 2) im)
(*.f64 (/.f64 (pow.f64 re 2) (/.f64 im 2)) 1/2)
(/.f64 (pow.f64 re 2) im)
(*.f64 (/.f64 (pow.f64 re 2) (/.f64 im 2)) (*.f64 im (/.f64 1/2 im)))
(*.f64 im (/.f64 (pow.f64 re 2) (*.f64 im im)))
(-.f64 (/.f64 (pow.f64 re 2) im) (/.f64 0 im))
(*.f64 (*.f64 (pow.f64 re 2) 4) (/.f64 1/4 im))
(/.f64 (pow.f64 re 2) im)
(*.f64 (*.f64 (pow.f64 re 2) 4) (-.f64 (/.f64 1/2 im) (/.f64 1/4 im)))
(/.f64 (pow.f64 re 2) im)
(*.f64 (*.f64 (pow.f64 re 2) 4) (+.f64 (/.f64 1/2 (*.f64 im 4)) (/.f64 1/2 (*.f64 im 4))))
(/.f64 (pow.f64 re 2) im)
(*.f64 (/.f64 1 im) (pow.f64 re 2))
(/.f64 (pow.f64 re 2) im)
(*.f64 (/.f64 1 im) (*.f64 im (/.f64 (pow.f64 re 2) im)))
(*.f64 im (/.f64 (pow.f64 re 2) (*.f64 im im)))
(-.f64 (/.f64 (pow.f64 re 2) im) (/.f64 0 im))
(*.f64 (/.f64 1 im) (-.f64 (*.f64 2 (pow.f64 re 2)) (pow.f64 re 2)))
(*.f64 1 (/.f64 (-.f64 (*.f64 2 (pow.f64 re 2)) (pow.f64 re 2)) im))
(*.f64 1/4 (*.f64 (/.f64 (pow.f64 re 2) im) 4))
(/.f64 (pow.f64 re 2) im)
(*.f64 (/.f64 1/2 (*.f64 im 4)) (*.f64 2 (*.f64 (pow.f64 re 2) 4)))
(/.f64 (pow.f64 re 2) im)
(*.f64 (*.f64 (/.f64 (pow.f64 re 2) im) 4) 1/4)
(/.f64 (pow.f64 re 2) im)
(*.f64 (*.f64 (/.f64 (pow.f64 re 2) im) 4) (*.f64 im (/.f64 1/4 im)))
(*.f64 im (/.f64 (pow.f64 re 2) (*.f64 im im)))
(-.f64 (/.f64 (pow.f64 re 2) im) (/.f64 0 im))
(*.f64 (*.f64 2 (*.f64 (pow.f64 re 2) 4)) (/.f64 1/2 (*.f64 im 4)))
(/.f64 (pow.f64 re 2) im)
(*.f64 (*.f64 2 (*.f64 (pow.f64 re 2) 4)) (-.f64 (/.f64 1/4 im) (/.f64 1/2 (*.f64 im 4))))
(/.f64 (pow.f64 re 2) im)
(*.f64 (/.f64 (pow.f64 re 2) (*.f64 im 4)) 4)
(/.f64 (pow.f64 re 2) im)
(*.f64 (/.f64 (pow.f64 re 2) 2) (*.f64 2 (/.f64 1 im)))
(/.f64 (pow.f64 re 2) im)
(*.f64 (/.f64 (pow.f64 re 2) (*.f64 im im)) im)
(*.f64 im (/.f64 (pow.f64 re 2) (*.f64 im im)))
(-.f64 (/.f64 (pow.f64 re 2) im) (/.f64 0 im))
(*.f64 (/.f64 (pow.f64 re 2) (*.f64 im im)) (/.f64 1 (/.f64 1 im)))
(*.f64 im (/.f64 (pow.f64 re 2) (*.f64 im im)))
(-.f64 (/.f64 (pow.f64 re 2) im) (/.f64 0 im))
(*.f64 (/.f64 (*.f64 2 (pow.f64 re 2)) (*.f64 im im)) (/.f64 1 (/.f64 2 im)))
(*.f64 im (/.f64 (pow.f64 re 2) (*.f64 im im)))
(-.f64 (/.f64 (pow.f64 re 2) im) (/.f64 0 im))
(*.f64 (/.f64 (*.f64 2 (pow.f64 re 2)) (*.f64 im im)) (*.f64 1/2 im))
(*.f64 im (/.f64 (pow.f64 re 2) (*.f64 im im)))
(-.f64 (/.f64 (pow.f64 re 2) im) (/.f64 0 im))
(*.f64 (/.f64 2 im) (*.f64 im (*.f64 1/2 (/.f64 (pow.f64 re 2) im))))
(*.f64 im (/.f64 (pow.f64 re 2) (*.f64 im im)))
(-.f64 (/.f64 (pow.f64 re 2) im) (/.f64 0 im))
(*.f64 -2 (/.f64 (pow.f64 re 2) (*.f64 im -2)))
(/.f64 (pow.f64 re 2) im)
(*.f64 (*.f64 1/2 (pow.f64 re 2)) (*.f64 2 (/.f64 1 im)))
(/.f64 (pow.f64 re 2) im)
(*.f64 (*.f64 1/2 (*.f64 1/2 (/.f64 (pow.f64 re 2) im))) 4)
(/.f64 (pow.f64 re 2) im)
(*.f64 (*.f64 1/2 (/.f64 1/2 im)) (*.f64 (pow.f64 re 2) 4))
(/.f64 (pow.f64 re 2) im)
(*.f64 (*.f64 1/2 (/.f64 1/4 im)) (*.f64 2 (*.f64 (pow.f64 re 2) 4)))
(/.f64 (pow.f64 re 2) im)
(*.f64 (*.f64 (pow.f64 re 2) (/.f64 1/4 im)) 4)
(/.f64 (pow.f64 re 2) im)
(*.f64 (/.f64 1 (/.f64 1 im)) (/.f64 (pow.f64 re 2) (*.f64 im im)))
(*.f64 im (/.f64 (pow.f64 re 2) (*.f64 im im)))
(-.f64 (/.f64 (pow.f64 re 2) im) (/.f64 0 im))
(*.f64 (/.f64 1 (/.f64 2 im)) (/.f64 (*.f64 2 (pow.f64 re 2)) (*.f64 im im)))
(*.f64 im (/.f64 (pow.f64 re 2) (*.f64 im im)))
(-.f64 (/.f64 (pow.f64 re 2) im) (/.f64 0 im))
(*.f64 1/8 (*.f64 (/.f64 (pow.f64 re 2) (/.f64 im 2)) 4))
(/.f64 (pow.f64 re 2) im)
(*.f64 (/.f64 1/4 (*.f64 im 4)) (*.f64 (*.f64 (pow.f64 re 2) 4) 4))
(/.f64 (pow.f64 re 2) im)
(*.f64 (/.f64 1/2 (/.f64 1 im)) (/.f64 (*.f64 2 (pow.f64 re 2)) (*.f64 im im)))
(*.f64 im (/.f64 (pow.f64 re 2) (*.f64 im im)))
(-.f64 (/.f64 (pow.f64 re 2) im) (/.f64 0 im))
(*.f64 (/.f64 1/2 (/.f64 2 im)) (+.f64 (/.f64 (*.f64 2 (pow.f64 re 2)) (*.f64 im im)) (/.f64 (*.f64 2 (pow.f64 re 2)) (*.f64 im im))))
(*.f64 im (/.f64 (pow.f64 re 2) (*.f64 im im)))
(-.f64 (/.f64 (pow.f64 re 2) im) (/.f64 0 im))
(*.f64 (*.f64 (pow.f64 re 2) im) (/.f64 (/.f64 1 im) im))
(*.f64 im (/.f64 (pow.f64 re 2) (*.f64 im im)))
(-.f64 (/.f64 (pow.f64 re 2) im) (/.f64 0 im))
(*.f64 (*.f64 im (*.f64 2 (pow.f64 re 2))) (/.f64 (/.f64 1/2 im) im))
(*.f64 im (/.f64 (pow.f64 re 2) (*.f64 im im)))
(-.f64 (/.f64 (pow.f64 re 2) im) (/.f64 0 im))
(*.f64 (*.f64 im (/.f64 (pow.f64 re 2) im)) (/.f64 1 im))
(*.f64 im (/.f64 (pow.f64 re 2) (*.f64 im im)))
(-.f64 (/.f64 (pow.f64 re 2) im) (/.f64 0 im))
(*.f64 (*.f64 im (/.f64 (pow.f64 re 2) (/.f64 im 2))) (/.f64 1/2 im))
(*.f64 im (/.f64 (pow.f64 re 2) (*.f64 im im)))
(-.f64 (/.f64 (pow.f64 re 2) im) (/.f64 0 im))
(*.f64 (*.f64 im (*.f64 (pow.f64 re 2) 4)) (/.f64 (/.f64 1/4 im) im))
(*.f64 im (/.f64 (pow.f64 re 2) (*.f64 im im)))
(-.f64 (/.f64 (pow.f64 re 2) im) (/.f64 0 im))
(*.f64 (*.f64 (/.f64 1/2 im) (/.f64 (pow.f64 re 2) 2)) 4)
(/.f64 (pow.f64 re 2) im)
(*.f64 (*.f64 1/2 im) (/.f64 (*.f64 2 (pow.f64 re 2)) (*.f64 im im)))
(*.f64 im (/.f64 (pow.f64 re 2) (*.f64 im im)))
(-.f64 (/.f64 (pow.f64 re 2) im) (/.f64 0 im))
(*.f64 (/.f64 (/.f64 1 im) im) (*.f64 (pow.f64 re 2) im))
(*.f64 im (/.f64 (pow.f64 re 2) (*.f64 im im)))
(-.f64 (/.f64 (pow.f64 re 2) im) (/.f64 0 im))
(*.f64 (*.f64 im (*.f64 1/2 (/.f64 (pow.f64 re 2) im))) (/.f64 2 im))
(*.f64 im (/.f64 (pow.f64 re 2) (*.f64 im im)))
(-.f64 (/.f64 (pow.f64 re 2) im) (/.f64 0 im))
(*.f64 (*.f64 im (/.f64 1/2 im)) (/.f64 (pow.f64 re 2) (/.f64 im 2)))
(*.f64 im (/.f64 (pow.f64 re 2) (*.f64 im im)))
(-.f64 (/.f64 (pow.f64 re 2) im) (/.f64 0 im))
(*.f64 (*.f64 im (/.f64 1/4 im)) (*.f64 (/.f64 (pow.f64 re 2) im) 4))
(*.f64 im (/.f64 (pow.f64 re 2) (*.f64 im im)))
(-.f64 (/.f64 (pow.f64 re 2) im) (/.f64 0 im))
(*.f64 (/.f64 (/.f64 1/4 im) im) (*.f64 im (*.f64 (pow.f64 re 2) 4)))
(*.f64 im (/.f64 (pow.f64 re 2) (*.f64 im im)))
(-.f64 (/.f64 (pow.f64 re 2) im) (/.f64 0 im))
(*.f64 (/.f64 (/.f64 1/2 im) im) (*.f64 im (*.f64 2 (pow.f64 re 2))))
(*.f64 im (/.f64 (pow.f64 re 2) (*.f64 im im)))
(-.f64 (/.f64 (pow.f64 re 2) im) (/.f64 0 im))
(*.f64 (+.f64 (*.f64 im (/.f64 2 im)) -1) (/.f64 (pow.f64 re 2) im))
(*.f64 (pow.f64 re 2) (/.f64 (+.f64 -1 (*.f64 2 (/.f64 im im))) im))
(*.f64 (/.f64 (pow.f64 re 2) im) (+.f64 -1 (*.f64 2 (/.f64 im im))))
(pow.f64 (/.f64 (pow.f64 re 2) im) 1)
(/.f64 (pow.f64 re 2) im)
(neg.f64 (/.f64 (neg.f64 (pow.f64 re 2)) im))
(/.f64 (pow.f64 re 2) im)
(+.f64 im (-.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) re))
(+.f64 im (+.f64 (neg.f64 re) (*.f64 1/2 (/.f64 (pow.f64 re 2) im))))
(+.f64 (neg.f64 re) (+.f64 im (*.f64 1/2 (/.f64 (pow.f64 re 2) im))))
(+.f64 (*.f64 (pow.f64 re 2) (/.f64 1/2 im)) (-.f64 im re))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) (-.f64 im re))
(+.f64 im (+.f64 (neg.f64 re) (*.f64 1/2 (/.f64 (pow.f64 re 2) im))))
(+.f64 (neg.f64 re) (+.f64 im (*.f64 1/2 (/.f64 (pow.f64 re 2) im))))
(+.f64 (*.f64 (pow.f64 re 2) (/.f64 1/2 im)) (-.f64 im re))
(+.f64 (-.f64 im (/.f64 (pow.f64 re 2) (*.f64 im -2))) (neg.f64 re))
(+.f64 im (+.f64 (neg.f64 re) (*.f64 1/2 (/.f64 (pow.f64 re 2) im))))
(+.f64 (neg.f64 re) (+.f64 im (*.f64 1/2 (/.f64 (pow.f64 re 2) im))))
(+.f64 (*.f64 (pow.f64 re 2) (/.f64 1/2 im)) (-.f64 im re))
(+.f64 (-.f64 im (+.f64 re (/.f64 (pow.f64 re 2) (*.f64 im -2)))) 0)
(+.f64 im (+.f64 (neg.f64 re) (*.f64 1/2 (/.f64 (pow.f64 re 2) im))))
(+.f64 (neg.f64 re) (+.f64 im (*.f64 1/2 (/.f64 (pow.f64 re 2) im))))
(+.f64 (*.f64 (pow.f64 re 2) (/.f64 1/2 im)) (-.f64 im re))
(+.f64 0 (-.f64 im (+.f64 re (/.f64 (pow.f64 re 2) (*.f64 im -2)))))
(+.f64 im (+.f64 (neg.f64 re) (*.f64 1/2 (/.f64 (pow.f64 re 2) im))))
(+.f64 (neg.f64 re) (+.f64 im (*.f64 1/2 (/.f64 (pow.f64 re 2) im))))
(+.f64 (*.f64 (pow.f64 re 2) (/.f64 1/2 im)) (-.f64 im re))
(+.f64 (neg.f64 re) (-.f64 im (/.f64 (pow.f64 re 2) (*.f64 im -2))))
(+.f64 im (+.f64 (neg.f64 re) (*.f64 1/2 (/.f64 (pow.f64 re 2) im))))
(+.f64 (neg.f64 re) (+.f64 im (*.f64 1/2 (/.f64 (pow.f64 re 2) im))))
(+.f64 (*.f64 (pow.f64 re 2) (/.f64 1/2 im)) (-.f64 im re))
(+.f64 (neg.f64 re) (neg.f64 (neg.f64 (-.f64 im (/.f64 (pow.f64 re 2) (*.f64 im -2))))))
(+.f64 im (+.f64 (neg.f64 re) (*.f64 1/2 (/.f64 (pow.f64 re 2) im))))
(+.f64 (neg.f64 re) (+.f64 im (*.f64 1/2 (/.f64 (pow.f64 re 2) im))))
(+.f64 (*.f64 (pow.f64 re 2) (/.f64 1/2 im)) (-.f64 im re))
(+.f64 (-.f64 im (-.f64 re (+.f64 im (/.f64 (pow.f64 re 2) im)))) (neg.f64 (-.f64 im (/.f64 (pow.f64 re 2) (*.f64 im -2)))))
(-.f64 im (+.f64 (-.f64 re (+.f64 im (/.f64 (pow.f64 re 2) im))) (-.f64 im (/.f64 (pow.f64 re 2) (*.f64 im -2)))))
(+.f64 (-.f64 (/.f64 (pow.f64 re 2) (*.f64 im -2)) im) (-.f64 im (-.f64 re (+.f64 im (/.f64 (pow.f64 re 2) im)))))
(+.f64 (/.f64 (pow.f64 re 2) im) (+.f64 (-.f64 im (-.f64 re im)) (-.f64 (/.f64 (pow.f64 re 2) (*.f64 im -2)) im)))
(+.f64 (-.f64 im re) (*.f64 1/2 (/.f64 (pow.f64 re 2) im)))
(+.f64 im (+.f64 (neg.f64 re) (*.f64 1/2 (/.f64 (pow.f64 re 2) im))))
(+.f64 (neg.f64 re) (+.f64 im (*.f64 1/2 (/.f64 (pow.f64 re 2) im))))
(+.f64 (*.f64 (pow.f64 re 2) (/.f64 1/2 im)) (-.f64 im re))
(+.f64 (-.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) re) im)
(+.f64 im (+.f64 (neg.f64 re) (*.f64 1/2 (/.f64 (pow.f64 re 2) im))))
(+.f64 (neg.f64 re) (+.f64 im (*.f64 1/2 (/.f64 (pow.f64 re 2) im))))
(+.f64 (*.f64 (pow.f64 re 2) (/.f64 1/2 im)) (-.f64 im re))
(+.f64 (-.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) re) (neg.f64 (neg.f64 im)))
(+.f64 im (+.f64 (neg.f64 re) (*.f64 1/2 (/.f64 (pow.f64 re 2) im))))
(+.f64 (neg.f64 re) (+.f64 im (*.f64 1/2 (/.f64 (pow.f64 re 2) im))))
(+.f64 (*.f64 (pow.f64 re 2) (/.f64 1/2 im)) (-.f64 im re))
(+.f64 (neg.f64 (-.f64 im (/.f64 (pow.f64 re 2) (*.f64 im -2)))) (-.f64 im (-.f64 re (+.f64 im (/.f64 (pow.f64 re 2) im)))))
(-.f64 im (+.f64 (-.f64 re (+.f64 im (/.f64 (pow.f64 re 2) im))) (-.f64 im (/.f64 (pow.f64 re 2) (*.f64 im -2)))))
(+.f64 (-.f64 (/.f64 (pow.f64 re 2) (*.f64 im -2)) im) (-.f64 im (-.f64 re (+.f64 im (/.f64 (pow.f64 re 2) im)))))
(+.f64 (/.f64 (pow.f64 re 2) im) (+.f64 (-.f64 im (-.f64 re im)) (-.f64 (/.f64 (pow.f64 re 2) (*.f64 im -2)) im)))
(+.f64 (-.f64 (/.f64 (pow.f64 re 2) (*.f64 im 4)) (/.f64 (-.f64 re im) 2)) (-.f64 (/.f64 (pow.f64 re 2) (*.f64 im 4)) (/.f64 (-.f64 re im) 2)))
(+.f64 im (+.f64 (neg.f64 re) (*.f64 1/2 (/.f64 (pow.f64 re 2) im))))
(+.f64 (neg.f64 re) (+.f64 im (*.f64 1/2 (/.f64 (pow.f64 re 2) im))))
(+.f64 (*.f64 (pow.f64 re 2) (/.f64 1/2 im)) (-.f64 im re))
(+.f64 (+.f64 (/.f64 im 2) (/.f64 (pow.f64 re 2) (*.f64 im 4))) (-.f64 (+.f64 (/.f64 im 2) (/.f64 (pow.f64 re 2) (*.f64 im 4))) re))
(+.f64 (+.f64 (/.f64 (pow.f64 re 2) (*.f64 im 4)) (/.f64 im 2)) (-.f64 (+.f64 (/.f64 (pow.f64 re 2) (*.f64 im 4)) (/.f64 im 2)) re))
(+.f64 (/.f64 im 2) (+.f64 (/.f64 (pow.f64 re 2) (*.f64 im 4)) (-.f64 (+.f64 (/.f64 (pow.f64 re 2) (*.f64 im 4)) (/.f64 im 2)) re)))
(+.f64 (-.f64 (+.f64 (/.f64 im 2) (/.f64 (pow.f64 re 2) (*.f64 im 4))) re) (+.f64 (/.f64 im 2) (/.f64 (pow.f64 re 2) (*.f64 im 4))))
(+.f64 (+.f64 (/.f64 (pow.f64 re 2) (*.f64 im 4)) (/.f64 im 2)) (-.f64 (+.f64 (/.f64 (pow.f64 re 2) (*.f64 im 4)) (/.f64 im 2)) re))
(+.f64 (/.f64 im 2) (+.f64 (/.f64 (pow.f64 re 2) (*.f64 im 4)) (-.f64 (+.f64 (/.f64 (pow.f64 re 2) (*.f64 im 4)) (/.f64 im 2)) re)))
(+.f64 (-.f64 (/.f64 im 2) re) (/.f64 (-.f64 im (/.f64 (neg.f64 (pow.f64 re 2)) im)) 2))
(+.f64 (-.f64 (/.f64 im 2) re) (/.f64 (-.f64 im (/.f64 (pow.f64 re 2) (neg.f64 im))) 2))
(+.f64 (-.f64 (/.f64 im 2) re) (/.f64 (+.f64 im (/.f64 (pow.f64 re 2) im)) 2))
(+.f64 (/.f64 (-.f64 im (/.f64 (neg.f64 (pow.f64 re 2)) im)) 2) (-.f64 (/.f64 im 2) re))
(+.f64 (-.f64 (/.f64 im 2) re) (/.f64 (-.f64 im (/.f64 (neg.f64 (pow.f64 re 2)) im)) 2))
(+.f64 (-.f64 (/.f64 im 2) re) (/.f64 (-.f64 im (/.f64 (pow.f64 re 2) (neg.f64 im))) 2))
(+.f64 (-.f64 (/.f64 im 2) re) (/.f64 (+.f64 im (/.f64 (pow.f64 re 2) im)) 2))
(+.f64 (/.f64 (neg.f64 re) 2) (-.f64 (-.f64 im (/.f64 (pow.f64 re 2) (*.f64 im -2))) (/.f64 re 2)))
(+.f64 (/.f64 (neg.f64 re) 2) (-.f64 im (+.f64 (/.f64 re 2) (/.f64 (pow.f64 re 2) (*.f64 im -2)))))
(+.f64 (/.f64 re -2) (+.f64 (-.f64 im (/.f64 re 2)) (/.f64 (pow.f64 re 2) (*.f64 2 im))))
(+.f64 (*.f64 (pow.f64 re 2) (/.f64 1/2 im)) (+.f64 (-.f64 im (/.f64 re 2)) (/.f64 re -2)))
(+.f64 (neg.f64 (neg.f64 im)) (-.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) re))
(+.f64 im (+.f64 (neg.f64 re) (*.f64 1/2 (/.f64 (pow.f64 re 2) im))))
(+.f64 (neg.f64 re) (+.f64 im (*.f64 1/2 (/.f64 (pow.f64 re 2) im))))
(+.f64 (*.f64 (pow.f64 re 2) (/.f64 1/2 im)) (-.f64 im re))
(+.f64 (-.f64 (-.f64 im (/.f64 (pow.f64 re 2) (*.f64 im -2))) (/.f64 re 2)) (/.f64 (neg.f64 re) 2))
(+.f64 (/.f64 (neg.f64 re) 2) (-.f64 im (+.f64 (/.f64 re 2) (/.f64 (pow.f64 re 2) (*.f64 im -2)))))
(+.f64 (/.f64 re -2) (+.f64 (-.f64 im (/.f64 re 2)) (/.f64 (pow.f64 re 2) (*.f64 2 im))))
(+.f64 (*.f64 (pow.f64 re 2) (/.f64 1/2 im)) (+.f64 (-.f64 im (/.f64 re 2)) (/.f64 re -2)))
(+.f64 (neg.f64 (neg.f64 (-.f64 im (/.f64 (pow.f64 re 2) (*.f64 im -2))))) (neg.f64 re))
(+.f64 im (+.f64 (neg.f64 re) (*.f64 1/2 (/.f64 (pow.f64 re 2) im))))
(+.f64 (neg.f64 re) (+.f64 im (*.f64 1/2 (/.f64 (pow.f64 re 2) im))))
(+.f64 (*.f64 (pow.f64 re 2) (/.f64 1/2 im)) (-.f64 im re))
(+.f64 (-.f64 (/.f64 (pow.f64 re 2) (*.f64 im 4)) re) (-.f64 (/.f64 (pow.f64 re 2) (*.f64 im 4)) (neg.f64 im)))
(+.f64 (-.f64 (/.f64 (pow.f64 re 2) (*.f64 im 4)) re) (-.f64 im (/.f64 (pow.f64 re 2) (/.f64 im -1/4))))
(+.f64 (-.f64 (/.f64 (pow.f64 re 2) (*.f64 im 4)) (neg.f64 im)) (-.f64 (/.f64 (pow.f64 re 2) (*.f64 im 4)) re))
(+.f64 (-.f64 (/.f64 (pow.f64 re 2) (*.f64 im 4)) re) (-.f64 (/.f64 (pow.f64 re 2) (*.f64 im 4)) (neg.f64 im)))
(+.f64 (-.f64 (/.f64 (pow.f64 re 2) (*.f64 im 4)) re) (-.f64 im (/.f64 (pow.f64 re 2) (/.f64 im -1/4))))
(*.f64 1/2 (-.f64 (/.f64 (pow.f64 re 2) im) (+.f64 (*.f64 im -2) (+.f64 re re))))
(*.f64 1/2 (-.f64 (/.f64 (pow.f64 re 2) im) (-.f64 (*.f64 im -2) (*.f64 re -2))))
(*.f64 1/2 (-.f64 (+.f64 im im) (-.f64 (+.f64 re re) (/.f64 (pow.f64 re 2) im))))
(+.f64 im (+.f64 (neg.f64 re) (*.f64 1/2 (/.f64 (pow.f64 re 2) im))))
(+.f64 (neg.f64 re) (+.f64 im (*.f64 1/2 (/.f64 (pow.f64 re 2) im))))
(+.f64 (*.f64 (pow.f64 re 2) (/.f64 1/2 im)) (-.f64 im re))
(*.f64 1/2 (-.f64 (+.f64 (/.f64 (pow.f64 re 2) (/.f64 im 2)) (*.f64 im 4)) (+.f64 (+.f64 (/.f64 (pow.f64 re 2) im) (+.f64 im im)) (+.f64 re re))))
(*.f64 1/2 (-.f64 (+.f64 (*.f64 im 4) (/.f64 (pow.f64 re 2) (/.f64 im 2))) (+.f64 re (+.f64 re (+.f64 (/.f64 (pow.f64 re 2) im) (+.f64 im im))))))
(*.f64 1/2 (+.f64 (*.f64 re -2) (-.f64 (+.f64 (*.f64 im 4) (/.f64 (pow.f64 re 2) (/.f64 im 2))) (+.f64 (/.f64 (pow.f64 re 2) im) (+.f64 im im)))))
(*.f64 1/2 (+.f64 (*.f64 re -2) (+.f64 (-.f64 (/.f64 (pow.f64 re 2) im) (/.f64 im -1/4)) (neg.f64 (+.f64 im im)))))
(*.f64 (-.f64 im (+.f64 re (/.f64 (pow.f64 re 2) (*.f64 im -2)))) 1)
(+.f64 im (+.f64 (neg.f64 re) (*.f64 1/2 (/.f64 (pow.f64 re 2) im))))
(+.f64 (neg.f64 re) (+.f64 im (*.f64 1/2 (/.f64 (pow.f64 re 2) im))))
(+.f64 (*.f64 (pow.f64 re 2) (/.f64 1/2 im)) (-.f64 im re))
(*.f64 (-.f64 (/.f64 (pow.f64 re 2) im) (+.f64 (*.f64 im -2) (+.f64 re re))) 1/2)
(*.f64 1/2 (-.f64 (/.f64 (pow.f64 re 2) im) (+.f64 (*.f64 im -2) (+.f64 re re))))
(*.f64 1/2 (-.f64 (/.f64 (pow.f64 re 2) im) (-.f64 (*.f64 im -2) (*.f64 re -2))))
(*.f64 1 (-.f64 im (+.f64 re (/.f64 (pow.f64 re 2) (*.f64 im -2)))))
(+.f64 im (+.f64 (neg.f64 re) (*.f64 1/2 (/.f64 (pow.f64 re 2) im))))
(+.f64 (neg.f64 re) (+.f64 im (*.f64 1/2 (/.f64 (pow.f64 re 2) im))))
(+.f64 (*.f64 (pow.f64 re 2) (/.f64 1/2 im)) (-.f64 im re))
(*.f64 (+.f64 (/.f64 (pow.f64 re 2) (*.f64 im -2)) (-.f64 re im)) -1)
(+.f64 im (+.f64 (neg.f64 re) (*.f64 1/2 (/.f64 (pow.f64 re 2) im))))
(+.f64 (neg.f64 re) (+.f64 im (*.f64 1/2 (/.f64 (pow.f64 re 2) im))))
(+.f64 (*.f64 (pow.f64 re 2) (/.f64 1/2 im)) (-.f64 im re))
(*.f64 (*.f64 (-.f64 im (+.f64 re (/.f64 (pow.f64 re 2) (*.f64 im -2)))) 4) 1/4)
(+.f64 im (+.f64 (neg.f64 re) (*.f64 1/2 (/.f64 (pow.f64 re 2) im))))
(+.f64 (neg.f64 re) (+.f64 im (*.f64 1/2 (/.f64 (pow.f64 re 2) im))))
(+.f64 (*.f64 (pow.f64 re 2) (/.f64 1/2 im)) (-.f64 im re))
(*.f64 -1 (+.f64 (/.f64 (pow.f64 re 2) (*.f64 im -2)) (-.f64 re im)))
(+.f64 im (+.f64 (neg.f64 re) (*.f64 1/2 (/.f64 (pow.f64 re 2) im))))
(+.f64 (neg.f64 re) (+.f64 im (*.f64 1/2 (/.f64 (pow.f64 re 2) im))))
(+.f64 (*.f64 (pow.f64 re 2) (/.f64 1/2 im)) (-.f64 im re))
(*.f64 1/4 (*.f64 (-.f64 im (+.f64 re (/.f64 (pow.f64 re 2) (*.f64 im -2)))) 4))
(+.f64 im (+.f64 (neg.f64 re) (*.f64 1/2 (/.f64 (pow.f64 re 2) im))))
(+.f64 (neg.f64 re) (+.f64 im (*.f64 1/2 (/.f64 (pow.f64 re 2) im))))
(+.f64 (*.f64 (pow.f64 re 2) (/.f64 1/2 im)) (-.f64 im re))
(/.f64 (-.f64 im (+.f64 re (/.f64 (pow.f64 re 2) (*.f64 im -2)))) 1)
(+.f64 im (+.f64 (neg.f64 re) (*.f64 1/2 (/.f64 (pow.f64 re 2) im))))
(+.f64 (neg.f64 re) (+.f64 im (*.f64 1/2 (/.f64 (pow.f64 re 2) im))))
(+.f64 (*.f64 (pow.f64 re 2) (/.f64 1/2 im)) (-.f64 im re))
(/.f64 (-.f64 (/.f64 (pow.f64 re 2) im) (+.f64 (*.f64 im -2) (+.f64 re re))) 2)
(-.f64 (/.f64 (-.f64 (/.f64 (pow.f64 re 2) im) (*.f64 im -2)) 2) re)
(/.f64 (+.f64 (/.f64 (pow.f64 re 2) (*.f64 im -2)) (-.f64 re im)) -1)
(+.f64 im (+.f64 (neg.f64 re) (*.f64 1/2 (/.f64 (pow.f64 re 2) im))))
(+.f64 (neg.f64 re) (+.f64 im (*.f64 1/2 (/.f64 (pow.f64 re 2) im))))
(+.f64 (*.f64 (pow.f64 re 2) (/.f64 1/2 im)) (-.f64 im re))
(/.f64 (*.f64 (-.f64 im (+.f64 re (/.f64 (pow.f64 re 2) (*.f64 im -2)))) 4) 4)
(/.f64 (*.f64 (+.f64 (-.f64 im re) (/.f64 (pow.f64 re 2) (*.f64 2 im))) 8) 8)
(/.f64 (*.f64 2 (-.f64 (/.f64 (pow.f64 re 2) im) (*.f64 2 (-.f64 re im)))) 4)
(/.f64 (*.f64 (-.f64 im (+.f64 re (/.f64 (pow.f64 re 2) (*.f64 im -2)))) 8) 8)
(/.f64 (*.f64 (-.f64 im (+.f64 re (/.f64 (pow.f64 re 2) (*.f64 im -2)))) 4) 4)
(/.f64 (*.f64 (+.f64 (-.f64 im re) (/.f64 (pow.f64 re 2) (*.f64 2 im))) 8) 8)
(/.f64 (*.f64 2 (-.f64 (/.f64 (pow.f64 re 2) im) (*.f64 2 (-.f64 re im)))) 4)
(/.f64 (-.f64 (+.f64 im im) (-.f64 (+.f64 re re) (/.f64 (pow.f64 re 2) im))) 2)
(+.f64 im (+.f64 (neg.f64 re) (*.f64 1/2 (/.f64 (pow.f64 re 2) im))))
(+.f64 (neg.f64 re) (+.f64 im (*.f64 1/2 (/.f64 (pow.f64 re 2) im))))
(+.f64 (*.f64 (pow.f64 re 2) (/.f64 1/2 im)) (-.f64 im re))
(/.f64 (-.f64 (+.f64 (/.f64 (pow.f64 re 2) (/.f64 im 2)) (*.f64 im 4)) (+.f64 (+.f64 (/.f64 (pow.f64 re 2) im) (+.f64 im im)) (+.f64 re re))) 2)
(/.f64 (-.f64 (+.f64 (*.f64 im 4) (/.f64 (pow.f64 re 2) (/.f64 im 2))) (+.f64 re (+.f64 re (+.f64 (/.f64 (pow.f64 re 2) im) (+.f64 im im))))) 2)
(/.f64 (+.f64 (*.f64 re -2) (-.f64 (+.f64 (*.f64 im 4) (/.f64 (pow.f64 re 2) (/.f64 im 2))) (+.f64 (/.f64 (pow.f64 re 2) im) (+.f64 im im)))) 2)
(+.f64 (neg.f64 re) (/.f64 (+.f64 (-.f64 (/.f64 (pow.f64 re 2) im) (/.f64 im -1/4)) (neg.f64 (+.f64 im im))) 2))
(/.f64 (-.f64 (*.f64 (+.f64 (/.f64 (pow.f64 re 2) im) (+.f64 im im)) 4) (*.f64 2 (*.f64 re 4))) 8)
(/.f64 (-.f64 (*.f64 4 (+.f64 (/.f64 (pow.f64 re 2) im) (+.f64 im im))) (*.f64 2 (*.f64 re 4))) 8)
(/.f64 (-.f64 (*.f64 4 (+.f64 (/.f64 (pow.f64 re 2) im) (+.f64 im im))) (*.f64 re 8)) 8)
(/.f64 (-.f64 (*.f64 4 (+.f64 im (+.f64 im (/.f64 (pow.f64 re 2) im)))) (*.f64 re 8)) 8)
(/.f64 (-.f64 (*.f64 im 4) (-.f64 (*.f64 re 4) (/.f64 (pow.f64 re 2) (/.f64 im 2)))) 4)
(/.f64 (-.f64 (/.f64 (pow.f64 re 2) (/.f64 im 2)) (-.f64 (*.f64 re 4) (*.f64 im 4))) 4)
(-.f64 (/.f64 (pow.f64 re 2) (*.f64 2 im)) (/.f64 (*.f64 4 (-.f64 re im)) 4))
(-.f64 (*.f64 (pow.f64 re 2) (/.f64 1/2 im)) (/.f64 (*.f64 4 (-.f64 re im)) 4))
(/.f64 (-.f64 (/.f64 (pow.f64 re 2) im) (*.f64 2 (-.f64 re im))) 2)
(+.f64 im (+.f64 (neg.f64 re) (*.f64 1/2 (/.f64 (pow.f64 re 2) im))))
(+.f64 (neg.f64 re) (+.f64 im (*.f64 1/2 (/.f64 (pow.f64 re 2) im))))
(+.f64 (*.f64 (pow.f64 re 2) (/.f64 1/2 im)) (-.f64 im re))
(/.f64 (-.f64 (/.f64 (pow.f64 re 2) (/.f64 im 2)) (-.f64 (*.f64 re 4) (*.f64 im 4))) 4)
(-.f64 (/.f64 (pow.f64 re 2) (*.f64 2 im)) (/.f64 (*.f64 4 (-.f64 re im)) 4))
(-.f64 (*.f64 (pow.f64 re 2) (/.f64 1/2 im)) (/.f64 (*.f64 4 (-.f64 re im)) 4))
(/.f64 (-.f64 (*.f64 (+.f64 (/.f64 (pow.f64 re 2) im) (+.f64 im im)) 4) (+.f64 (*.f64 re 4) (+.f64 (/.f64 (pow.f64 re 2) (/.f64 im 2)) (*.f64 im 4)))) 4)
(/.f64 (-.f64 (*.f64 4 (+.f64 (/.f64 (pow.f64 re 2) im) (+.f64 im im))) (+.f64 (*.f64 im 4) (+.f64 (/.f64 (pow.f64 re 2) (/.f64 im 2)) (*.f64 re 4)))) 4)
(/.f64 (+.f64 (*.f64 4 (-.f64 (+.f64 (/.f64 (pow.f64 re 2) im) (+.f64 im im)) re)) (neg.f64 (+.f64 (*.f64 im 4) (/.f64 (pow.f64 re 2) (/.f64 im 2))))) 4)
(/.f64 (+.f64 (*.f64 4 (+.f64 (/.f64 (pow.f64 re 2) im) (-.f64 im (-.f64 re im)))) (-.f64 (/.f64 im -1/4) (/.f64 (pow.f64 re 2) (/.f64 im 2)))) 4)
(/.f64 (-.f64 (*.f64 2 (-.f64 im re)) (/.f64 (neg.f64 (pow.f64 re 2)) im)) 2)
(/.f64 (-.f64 (*.f64 2 (-.f64 im re)) (/.f64 (pow.f64 re 2) (neg.f64 im))) 2)
(/.f64 (-.f64 (-.f64 (*.f64 im 4) (*.f64 re 4)) (neg.f64 (/.f64 (pow.f64 re 2) (/.f64 im 2)))) 4)
(/.f64 (-.f64 (/.f64 (pow.f64 re 2) (/.f64 im 2)) (-.f64 (*.f64 re 4) (*.f64 im 4))) 4)
(-.f64 (/.f64 (pow.f64 re 2) (*.f64 2 im)) (/.f64 (*.f64 4 (-.f64 re im)) 4))
(-.f64 (*.f64 (pow.f64 re 2) (/.f64 1/2 im)) (/.f64 (*.f64 4 (-.f64 re im)) 4))
(/.f64 (-.f64 (-.f64 (/.f64 (pow.f64 re 2) im) (+.f64 re re)) (*.f64 im -2)) 2)
(/.f64 (-.f64 (/.f64 (pow.f64 re 2) im) (+.f64 (*.f64 im -2) (+.f64 re re))) 2)
(-.f64 (/.f64 (-.f64 (/.f64 (pow.f64 re 2) im) (*.f64 im -2)) 2) re)
(/.f64 (-.f64 (-.f64 (/.f64 (pow.f64 re 2) (/.f64 im 2)) (*.f64 re 4)) (neg.f64 (*.f64 im 4))) 4)
(/.f64 (-.f64 (/.f64 (pow.f64 re 2) (/.f64 im 2)) (-.f64 (*.f64 re 4) (*.f64 im 4))) 4)
(-.f64 (/.f64 (pow.f64 re 2) (*.f64 2 im)) (/.f64 (*.f64 4 (-.f64 re im)) 4))
(-.f64 (*.f64 (pow.f64 re 2) (/.f64 1/2 im)) (/.f64 (*.f64 4 (-.f64 re im)) 4))
(/.f64 (-.f64 (+.f64 (+.f64 (/.f64 (pow.f64 re 2) im) (+.f64 im im)) (+.f64 re re)) (*.f64 re 4)) 2)
(/.f64 (-.f64 (+.f64 re (+.f64 re (+.f64 (/.f64 (pow.f64 re 2) im) (+.f64 im im)))) (*.f64 re 4)) 2)
(-.f64 (+.f64 re (+.f64 im (*.f64 (pow.f64 re 2) (/.f64 1/2 im)))) (/.f64 (*.f64 re 4) 2))
(/.f64 (-.f64 (+.f64 (*.f64 re 4) (+.f64 (/.f64 (pow.f64 re 2) (/.f64 im 2)) (*.f64 im 4))) (*.f64 2 (*.f64 re 4))) 4)
(/.f64 (-.f64 (+.f64 (*.f64 im 4) (+.f64 (/.f64 (pow.f64 re 2) (/.f64 im 2)) (*.f64 re 4))) (*.f64 2 (*.f64 re 4))) 4)
(/.f64 (-.f64 (+.f64 (/.f64 (pow.f64 re 2) (/.f64 im 2)) (+.f64 (*.f64 im 4) (*.f64 re 4))) (*.f64 re 8)) 4)
(pow.f64 (-.f64 im (+.f64 re (/.f64 (pow.f64 re 2) (*.f64 im -2)))) 1)
(+.f64 im (+.f64 (neg.f64 re) (*.f64 1/2 (/.f64 (pow.f64 re 2) im))))
(+.f64 (neg.f64 re) (+.f64 im (*.f64 1/2 (/.f64 (pow.f64 re 2) im))))
(+.f64 (*.f64 (pow.f64 re 2) (/.f64 1/2 im)) (-.f64 im re))
(neg.f64 (+.f64 (/.f64 (pow.f64 re 2) (*.f64 im -2)) (-.f64 re im)))
(+.f64 im (+.f64 (neg.f64 re) (*.f64 1/2 (/.f64 (pow.f64 re 2) im))))
(+.f64 (neg.f64 re) (+.f64 im (*.f64 1/2 (/.f64 (pow.f64 re 2) im))))
(+.f64 (*.f64 (pow.f64 re 2) (/.f64 1/2 im)) (-.f64 im re))

localize453.0ms (1.3%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re 1/2))
0.2b
(-.f64 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re 1/2)) (+.f64 (/.f64 re -2) re))
0.2b
(-.f64 (-.f64 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re 1/2)) (+.f64 (/.f64 re -2) re)) re)
31.5b
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
Compiler

Compiled 159 to 68 computations (57.2% saved)

series8.0ms (0%)

Counts
3 → 72
Calls

18 calls:

TimeVariablePointExpression
3.0ms
re
@0
(-.f64 (-.f64 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re 1/2)) (+.f64 (/.f64 re -2) re)) re)
1.0ms
im
@0
(-.f64 (-.f64 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re 1/2)) (+.f64 (/.f64 re -2) re)) re)
0.0ms
im
@inf
(-.f64 (-.f64 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re 1/2)) (+.f64 (/.f64 re -2) re)) re)
0.0ms
im
@0
(-.f64 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re 1/2)) (+.f64 (/.f64 re -2) re))
0.0ms
re
@inf
(-.f64 (-.f64 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re 1/2)) (+.f64 (/.f64 re -2) re)) re)

rewrite312.0ms (0.9%)

Algorithm
batch-egg-rewrite
Rules
976×rational_best-simplify-51
898×rational_best-simplify-47
678×rational_best-simplify-56
676×rational_best-simplify-57
552×rational_best-simplify-83
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
017147
1125147
2328111
3131287
Stop Event
node limit
Counts
3 → 196
Calls
Call 1
Inputs
(-.f64 (-.f64 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re 1/2)) (+.f64 (/.f64 re -2) re)) re)
(-.f64 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re 1/2)) (+.f64 (/.f64 re -2) re))
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re 1/2))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (neg.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re 1/2)) (neg.f64 (*.f64 re 3/2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 re -1/2) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 re 1/2) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re 3/2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) (-.f64 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re 1/2)) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re -1/2)) (*.f64 re -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) (*.f64 re -2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 re) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 -1 (-.f64 1 (-.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re 3/2)) (*.f64 re 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 re -4) (-.f64 (/.f64 re -4) (-.f64 (*.f64 re 1/2) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 re -4) (/.f64 (+.f64 (neg.f64 (*.f64 re 3/2)) (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 re -4) (-.f64 (/.f64 re 4) (-.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 3 (/.f64 re -4)) (+.f64 (/.f64 re -4) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 3 (/.f64 re -4)) (-.f64 (/.f64 re -4) (neg.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re -1/2)) (/.f64 re 4)) (neg.f64 (/.f64 (*.f64 re 3/2) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 re 4) (+.f64 (+.f64 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re -1/2)) (/.f64 re 4)) (neg.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 re 4) (/.f64 (+.f64 (*.f64 re -1/2) (*.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) 2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 re 4) (-.f64 (/.f64 re 4) (-.f64 (*.f64 re 3/2) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 re -2) (+.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 (*.f64 re 3/2)) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2) (+.f64 (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2) (neg.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2) (-.f64 (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2) re))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (/.f64 re 4) (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) (-.f64 (+.f64 (/.f64 re 4) (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) (*.f64 re 3/2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) 2) (/.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 -1 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re -1/2))) (-.f64 1 (*.f64 re 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 1 (*.f64 re 1/2)) (+.f64 (+.f64 -1 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re -1/2))) (neg.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 1 re) (+.f64 -1 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 -1 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) (-.f64 1 re))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 1 (*.f64 re 1/2)) (+.f64 -1 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (-.f64 1 (*.f64 re 1/2)) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) (-.f64 -1 (*.f64 re 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 -1 re) (+.f64 1 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 1 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) (-.f64 -1 re))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 -1 (*.f64 re 1/2)) (+.f64 (-.f64 1 (*.f64 re 1/2)) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (/.f64 re -4) (neg.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))) (*.f64 3 (/.f64 re -4)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2) re) (neg.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (/.f64 (*.f64 re 3/2) 2)) (neg.f64 (/.f64 re 4)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re -1/2)) (/.f64 re 4)) (neg.f64 (/.f64 re 4)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (+.f64 re (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) (*.f64 re 3/2)) (-.f64 (*.f64 re -1/2) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 -1 (-.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2) re) (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (/.f64 re 4) (neg.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))) (-.f64 (/.f64 re 4) (*.f64 re 3/2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (/.f64 re 4) (-.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))) (/.f64 re -4))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (/.f64 re 4) re) (-.f64 (/.f64 re 4) (-.f64 (*.f64 re 1/2) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (+.f64 (/.f64 re 4) (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) (*.f64 re 1/2)) (-.f64 (+.f64 (/.f64 re 4) (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) re))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (+.f64 (/.f64 re 4) (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) re) (-.f64 (+.f64 (/.f64 re 4) (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) (*.f64 re 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (+.f64 (/.f64 re 4) (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) (+.f64 re re)) (-.f64 (+.f64 (/.f64 re 4) (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) (*.f64 re -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2) (/.f64 (*.f64 re 3/2) 2)) (-.f64 (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2) (/.f64 re 4)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (/.f64 re 4) (-.f64 (*.f64 re 1/2) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))) (-.f64 (/.f64 re 4) re))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (+.f64 (/.f64 re 4) (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) (*.f64 re -1/2)) (-.f64 (+.f64 (/.f64 re 4) (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) (+.f64 re re)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2) (*.f64 re 3/2)) (-.f64 (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2) (*.f64 re -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (/.f64 re 4) (*.f64 re 3/2)) (-.f64 (/.f64 re 4) (neg.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (/.f64 re 4) (-.f64 (*.f64 re 3/2) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))) (/.f64 re 4))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (+.f64 (/.f64 re 4) (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) (*.f64 re 3/2)) (+.f64 (/.f64 re 4) (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 -1 (-.f64 (*.f64 re -1/2) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))) (-.f64 1 (*.f64 re 3/2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 -1 (*.f64 re 3/2)) (-.f64 1 (-.f64 (*.f64 re -1/2) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (*.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) 2)) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) 2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) 2)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) 2)) (*.f64 2 (*.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) 2))) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 2 (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) (*.f64 re 4)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (+.f64 re (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) (*.f64 re 3)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (+.f64 (neg.f64 re) (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) re) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (-.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 re (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (-.f64 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re 1/2)) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (-.f64 (+.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) (+.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re 1/2)) (*.f64 re -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 re -1/2) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 re -1/2) (-.f64 (*.f64 re -1/2) (-.f64 (neg.f64 re) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 re 1/2) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) re)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re -1/2)) (*.f64 re 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) (neg.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 re) (+.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 -1 (+.f64 1 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 re -4) (+.f64 (/.f64 re -4) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 re -4) (/.f64 (+.f64 (*.f64 re 1/2) (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 re -4) (-.f64 (/.f64 re 4) (neg.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 re -4) (-.f64 (/.f64 re -4) (-.f64 (*.f64 re -1/2) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 3 (/.f64 re -4)) (+.f64 (/.f64 re -4) (+.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 3 (/.f64 re -4)) (neg.f64 (+.f64 (*.f64 3 (/.f64 re -4)) (neg.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (*.f64 re 3/2) 2) (-.f64 (/.f64 re 4) (-.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re -1/2)) (/.f64 re 4)) (/.f64 re 4))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 re 4) (+.f64 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re -1/2)) (/.f64 re 4)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 re 4) (+.f64 (+.f64 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re 1/2)) (/.f64 re 4)) (neg.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 re 4) (-.f64 (/.f64 re -4) (neg.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 re 4) (/.f64 (+.f64 (*.f64 re -1/2) (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 re 4) (-.f64 (/.f64 re 4) (-.f64 (*.f64 re 1/2) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re 1/2)) (/.f64 re 4)) (neg.f64 (/.f64 (*.f64 re 3/2) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2) (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (/.f64 re 4) (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) (+.f64 (+.f64 (/.f64 re 4) (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) (*.f64 re -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (/.f64 re 4) (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) (-.f64 (+.f64 (/.f64 re 4) (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) (*.f64 re 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) 2) (-.f64 (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2) (*.f64 re -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 -1 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re -1/2))) (+.f64 1 (*.f64 re 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 1 (*.f64 re 1/2)) (+.f64 -1 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 -1 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 -1 (*.f64 re 1/2)) (+.f64 (-.f64 1 (*.f64 re 1/2)) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (-.f64 1 (*.f64 re 1/2)) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) (+.f64 -1 (*.f64 re 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 -1 re) (-.f64 1 (-.f64 (neg.f64 re) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 -1 (*.f64 re 1/2)) (-.f64 1 (-.f64 (*.f64 re -1/2) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 re -1/2) (-.f64 (neg.f64 re) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))) (*.f64 re -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 (+.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) 2) re) (-.f64 (neg.f64 re) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (+.f64 re (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) (*.f64 re 1/2)) (-.f64 (*.f64 re -1/2) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (/.f64 re -4) (neg.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))) (/.f64 re 4))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 re -1/2) (/.f64 re -4)) (-.f64 (*.f64 re -1/2) (+.f64 (*.f64 3 (/.f64 re -4)) (neg.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re 1/2)) (/.f64 re 4)) (neg.f64 (/.f64 re 4)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (+.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) (*.f64 re 1/2)) (*.f64 re -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (+.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) (/.f64 (*.f64 re 3/2) 2)) (neg.f64 (/.f64 re 4)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (neg.f64 re) (*.f64 3 (/.f64 re -4))) (neg.f64 (-.f64 (/.f64 re -4) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (neg.f64 re) (-.f64 (/.f64 re -4) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))) (neg.f64 (*.f64 3 (/.f64 re -4))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (neg.f64 re) (+.f64 (*.f64 3 (/.f64 re -4)) (neg.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))) (/.f64 re 4))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 -1 (-.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))) (-.f64 1 (neg.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (+.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) 2) (/.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2) (*.f64 re -1/2)) (/.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (/.f64 re 4) (neg.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))) (/.f64 re -4))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (/.f64 re 4) (-.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))) (/.f64 (*.f64 re 3/2) 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (+.f64 (/.f64 re 4) (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) (*.f64 re 1/2)) (+.f64 (/.f64 re 4) (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (+.f64 (/.f64 re 4) (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) re) (-.f64 (+.f64 (/.f64 re 4) (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) (*.f64 re -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (+.f64 (/.f64 re 4) (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) (/.f64 re -4)) (/.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (/.f64 re 4) (-.f64 (*.f64 re 1/2) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))) (/.f64 re 4))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (+.f64 (/.f64 re 4) (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) (*.f64 re -1/2)) (-.f64 (+.f64 (/.f64 re 4) (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) re))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 re -1/2) (+.f64 (*.f64 3 (/.f64 re -4)) (neg.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))) (-.f64 (*.f64 re -1/2) (/.f64 re -4)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 re -1/2) (-.f64 (/.f64 re -4) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))) (-.f64 (*.f64 re -1/2) (*.f64 3 (/.f64 re -4))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 re -1/2) (*.f64 3 (/.f64 re -4))) (-.f64 (*.f64 re -1/2) (-.f64 (/.f64 re -4) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (/.f64 re 4) (-.f64 (*.f64 re -1/2) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))) (-.f64 (/.f64 re 4) re))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 -1 (-.f64 (*.f64 re -1/2) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))) (-.f64 1 (*.f64 re 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 -1 (neg.f64 re)) (-.f64 1 (-.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 -1 (-.f64 (neg.f64 re) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))) (-.f64 1 re))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (+.f64 (*.f64 re re) (*.f64 im im)) 2)) (sqrt.f64 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 re -2) (*.f64 2 (+.f64 re (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)))) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) (*.f64 2 (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2))) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 (+.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) 2) (*.f64 re -2)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (+.f64 re (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2))) (*.f64 re -2)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 2 (+.f64 re (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2))) (+.f64 re re)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (+.f64 (neg.f64 re) (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) (neg.f64 re)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (+.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) 2) (+.f64 re re)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 re -2) (-.f64 0 (*.f64 (+.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) 2))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (neg.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 re (-.f64 (*.f64 re 1/2) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re 1/2)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 re 1/2) (neg.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (-.f64 (*.f64 re -1/2) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 re 3/2) (-.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 re 4) (-.f64 (/.f64 re -4) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2) (-.f64 (*.f64 re -1/2) (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (/.f64 re 4) (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) (-.f64 (/.f64 re -4) (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (/.f64 re 4) (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) (/.f64 (-.f64 (*.f64 re -1/2) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) 2) (-.f64 (neg.f64 re) (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2) (*.f64 re 1/2)) (-.f64 0 (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (/.f64 re 4) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) (/.f64 re -4))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2) (*.f64 re -1/2)) (-.f64 0 (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (/.f64 re 4) (neg.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))) (/.f64 re -4))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2) (neg.f64 re)) (-.f64 (*.f64 re 1/2) (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2) re) (-.f64 (*.f64 re 1/2) (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2) (/.f64 (*.f64 re 3/2) 2)) (-.f64 (/.f64 re 4) (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (+.f64 re (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re 1/2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 re (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (+.f64 re (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2))) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re 1/2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 re (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (+.f64 re (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2))) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (+.f64 re (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2))) (*.f64 2 (+.f64 re (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)))) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) (+.f64 re re)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (+.f64 re re) (*.f64 2 (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2))) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 2 (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) (*.f64 re -2)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re 1/2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (-.f64 (*.f64 re -1/2) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))))))

simplify687.0ms (1.9%)

Algorithm
egg-herbie
Rules
1640×rational_best-simplify-48
1634×rational_best-simplify-52
1050×rational_best-simplify-51
630×rational_best-simplify-3
574×rational_best-simplify-47
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
050212106
1126511600
2303510262
Stop Event
node limit
Counts
268 → 459
Calls
Call 1
Inputs
im
(+.f64 (*.f64 -1 re) im)
(+.f64 (*.f64 -1 re) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) im))
(+.f64 (*.f64 -1 re) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) im)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (+.f64 (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (*.f64 -1/8 (pow.f64 im 4)) 2) (*.f64 1/16 (pow.f64 im 8))) (pow.f64 re 7))) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))))
(*.f64 -2 re)
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 -2 re))
(+.f64 (*.f64 1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 -2 re)))
(+.f64 (*.f64 1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))) (+.f64 (*.f64 -1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 -2 re))))
(-.f64 (+.f64 (*.f64 1/2 re) re) (+.f64 (*.f64 -1/2 re) (*.f64 2 re)))
(-.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 re (*.f64 1/2 re))) (+.f64 (*.f64 -1/2 re) (*.f64 2 re)))
(-.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 re (+.f64 (*.f64 1/2 re) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)))))) (+.f64 (*.f64 -1/2 re) (*.f64 2 re)))
(-.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (+.f64 re (+.f64 (*.f64 1/2 re) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))))) (+.f64 (*.f64 -1/2 re) (*.f64 2 re)))
im
(-.f64 (+.f64 (*.f64 1/2 re) im) (+.f64 (*.f64 -1/2 re) (*.f64 2 re)))
(-.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) (+.f64 (*.f64 1/2 re) im)) (+.f64 (*.f64 -1/2 re) (*.f64 2 re)))
(-.f64 (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) (+.f64 (*.f64 1/2 re) im))) (+.f64 (*.f64 -1/2 re) (*.f64 2 re)))
(*.f64 -1 im)
(-.f64 (+.f64 (*.f64 1/2 re) (*.f64 -1 im)) (+.f64 (*.f64 -1/2 re) (*.f64 2 re)))
(-.f64 (+.f64 (*.f64 1/2 re) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 re 2) im)) (*.f64 -1 im))) (+.f64 (*.f64 -1/2 re) (*.f64 2 re)))
(-.f64 (+.f64 (*.f64 1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3))) (+.f64 (*.f64 1/2 re) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 re 2) im)) (*.f64 -1 im)))) (+.f64 (*.f64 -1/2 re) (*.f64 2 re)))
im
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) im)
(+.f64 (*.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) im))
(+.f64 (*.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 re 6) (pow.f64 im 5))) im)))
re
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) re)
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 re (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (+.f64 re (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))))
(*.f64 -1 re)
(+.f64 (*.f64 -1 re) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)))
(+.f64 (*.f64 -1 re) (+.f64 (*.f64 1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re))))
(+.f64 (*.f64 -1 re) (+.f64 (*.f64 1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))) (+.f64 (*.f64 -1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)))))
(-.f64 (*.f64 1/2 re) (*.f64 -1/2 re))
(-.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 1/2 re)) (*.f64 -1/2 re))
(-.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 1/2 re) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))) (*.f64 -1/2 re))
(-.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (+.f64 (*.f64 1/2 re) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)))))) (*.f64 -1/2 re))
im
(-.f64 (+.f64 (*.f64 1/2 re) im) (+.f64 (*.f64 -1/2 re) re))
(-.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) (+.f64 (*.f64 1/2 re) im)) (+.f64 (*.f64 -1/2 re) re))
(-.f64 (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) (+.f64 (*.f64 1/2 re) im))) (+.f64 (*.f64 -1/2 re) re))
(*.f64 -1 im)
(-.f64 (+.f64 (*.f64 1/2 re) (*.f64 -1 im)) (+.f64 (*.f64 -1/2 re) re))
(-.f64 (+.f64 (*.f64 1/2 re) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 re 2) im)) (*.f64 -1 im))) (+.f64 (*.f64 -1/2 re) re))
(-.f64 (+.f64 (*.f64 1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3))) (+.f64 (*.f64 1/2 re) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 re 2) im)) (*.f64 -1 im)))) (+.f64 (*.f64 -1/2 re) re))
im
(+.f64 (*.f64 1/2 re) im)
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) (+.f64 (*.f64 1/2 re) im))
(+.f64 (*.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) (+.f64 (*.f64 1/2 re) im)))
(*.f64 3/2 re)
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 3/2 re))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 3/2 re) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (+.f64 (*.f64 3/2 re) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))))
(*.f64 -1/2 re)
(+.f64 (*.f64 -1/2 re) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)))
(+.f64 (*.f64 -1/2 re) (+.f64 (*.f64 1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re))))
(+.f64 (*.f64 -1/2 re) (+.f64 (*.f64 1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))) (+.f64 (*.f64 -1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)))))
(+.f64 re (*.f64 1/2 re))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 1/2 re) re))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 1/2 re) (+.f64 re (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (+.f64 (*.f64 1/2 re) (+.f64 re (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)))))))
im
(+.f64 (*.f64 1/2 re) im)
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) (+.f64 (*.f64 1/2 re) im))
(+.f64 (*.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) (+.f64 (*.f64 1/2 re) im)))
(*.f64 -1 im)
(+.f64 (*.f64 1/2 re) (*.f64 -1 im))
(+.f64 (*.f64 1/2 re) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 re 2) im)) (*.f64 -1 im)))
(+.f64 (*.f64 1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3))) (+.f64 (*.f64 1/2 re) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 re 2) im)) (*.f64 -1 im))))
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (neg.f64 re))
(+.f64 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re 1/2)) (neg.f64 (*.f64 re 3/2)))
(+.f64 (*.f64 re -1/2) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re -1/2)))
(+.f64 (*.f64 re 1/2) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re 3/2)))
(+.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) 0)
(+.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) (-.f64 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re 1/2)) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re 1/2))))
(+.f64 0 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
(+.f64 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re -1/2)) (*.f64 re -1/2))
(+.f64 (+.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) (*.f64 re -2))
(+.f64 (neg.f64 re) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))
(+.f64 -1 (-.f64 1 (-.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))))
(+.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re 3/2)) (*.f64 re 1/2))
(+.f64 (/.f64 re -4) (-.f64 (/.f64 re -4) (-.f64 (*.f64 re 1/2) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))))
(+.f64 (/.f64 re -4) (/.f64 (+.f64 (neg.f64 (*.f64 re 3/2)) (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) 2))
(+.f64 (/.f64 re -4) (-.f64 (/.f64 re 4) (-.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))))
(+.f64 (*.f64 3 (/.f64 re -4)) (+.f64 (/.f64 re -4) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))
(+.f64 (*.f64 3 (/.f64 re -4)) (-.f64 (/.f64 re -4) (neg.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))))
(+.f64 (+.f64 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re -1/2)) (/.f64 re 4)) (neg.f64 (/.f64 (*.f64 re 3/2) 2)))
(+.f64 (/.f64 re 4) (+.f64 (+.f64 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re -1/2)) (/.f64 re 4)) (neg.f64 re)))
(+.f64 (/.f64 re 4) (/.f64 (+.f64 (*.f64 re -1/2) (*.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) 2)) 2))
(+.f64 (/.f64 re 4) (-.f64 (/.f64 re 4) (-.f64 (*.f64 re 3/2) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))))
(+.f64 (*.f64 re -2) (+.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))
(+.f64 (neg.f64 (*.f64 re 3/2)) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re 1/2)))
(+.f64 (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2) (+.f64 (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2) (neg.f64 re)))
(+.f64 (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2) (-.f64 (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2) re))
(+.f64 (+.f64 (/.f64 re 4) (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) (-.f64 (+.f64 (/.f64 re 4) (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) (*.f64 re 3/2)))
(+.f64 (/.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) 2) (/.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) 2))
(+.f64 (+.f64 -1 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re -1/2))) (-.f64 1 (*.f64 re 1/2)))
(+.f64 (+.f64 1 (*.f64 re 1/2)) (+.f64 (+.f64 -1 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re -1/2))) (neg.f64 re)))
(+.f64 (-.f64 1 re) (+.f64 -1 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))
(+.f64 (+.f64 -1 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) (-.f64 1 re))
(+.f64 (-.f64 1 (*.f64 re 1/2)) (+.f64 -1 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re -1/2))))
(+.f64 (+.f64 (-.f64 1 (*.f64 re 1/2)) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) (-.f64 -1 (*.f64 re 1/2)))
(+.f64 (-.f64 -1 re) (+.f64 1 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))
(+.f64 (+.f64 1 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) (-.f64 -1 re))
(+.f64 (-.f64 -1 (*.f64 re 1/2)) (+.f64 (-.f64 1 (*.f64 re 1/2)) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))
(+.f64 (-.f64 (/.f64 re -4) (neg.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))) (*.f64 3 (/.f64 re -4)))
(+.f64 (-.f64 (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2) re) (neg.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))
(+.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (/.f64 (*.f64 re 3/2) 2)) (neg.f64 (/.f64 re 4)))
(+.f64 (-.f64 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re -1/2)) (/.f64 re 4)) (neg.f64 (/.f64 re 4)))
(+.f64 (-.f64 (+.f64 re (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) (*.f64 re 3/2)) (-.f64 (*.f64 re -1/2) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))
(+.f64 (-.f64 -1 (-.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))) 1)
(+.f64 (-.f64 (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2) re) (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2))
(+.f64 (-.f64 (/.f64 re 4) (neg.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))) (-.f64 (/.f64 re 4) (*.f64 re 3/2)))
(+.f64 (-.f64 (/.f64 re 4) (-.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))) (/.f64 re -4))
(+.f64 (-.f64 (/.f64 re 4) re) (-.f64 (/.f64 re 4) (-.f64 (*.f64 re 1/2) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))))
(+.f64 (-.f64 (+.f64 (/.f64 re 4) (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) (*.f64 re 1/2)) (-.f64 (+.f64 (/.f64 re 4) (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) re))
(+.f64 (-.f64 (+.f64 (/.f64 re 4) (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) re) (-.f64 (+.f64 (/.f64 re 4) (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) (*.f64 re 1/2)))
(+.f64 (-.f64 (+.f64 (/.f64 re 4) (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) (+.f64 re re)) (-.f64 (+.f64 (/.f64 re 4) (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) (*.f64 re -1/2)))
(+.f64 (-.f64 (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2) (/.f64 (*.f64 re 3/2) 2)) (-.f64 (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2) (/.f64 re 4)))
(+.f64 (-.f64 (/.f64 re 4) (-.f64 (*.f64 re 1/2) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))) (-.f64 (/.f64 re 4) re))
(+.f64 (-.f64 (+.f64 (/.f64 re 4) (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) (*.f64 re -1/2)) (-.f64 (+.f64 (/.f64 re 4) (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) (+.f64 re re)))
(+.f64 (-.f64 (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2) (*.f64 re 3/2)) (-.f64 (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2) (*.f64 re -1/2)))
(+.f64 (-.f64 (/.f64 re 4) (*.f64 re 3/2)) (-.f64 (/.f64 re 4) (neg.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))))
(+.f64 (-.f64 (/.f64 re 4) (-.f64 (*.f64 re 3/2) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))) (/.f64 re 4))
(+.f64 (-.f64 (+.f64 (/.f64 re 4) (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) (*.f64 re 3/2)) (+.f64 (/.f64 re 4) (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)))
(+.f64 (-.f64 -1 (-.f64 (*.f64 re -1/2) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))) (-.f64 1 (*.f64 re 3/2)))
(+.f64 (-.f64 -1 (*.f64 re 3/2)) (-.f64 1 (-.f64 (*.f64 re -1/2) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))))
(*.f64 1/2 (*.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) 2))
(*.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) 1)
(*.f64 1 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
(*.f64 (-.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) -1)
(*.f64 (*.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) 2) 1/2)
(*.f64 (*.f64 2 (*.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) 2)) 1/4)
(/.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) 1)
(/.f64 (-.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) -1)
(/.f64 (*.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) 2) 2)
(/.f64 (*.f64 2 (*.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) 2)) 4)
(/.f64 (+.f64 (*.f64 2 (*.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) 2)) (*.f64 2 (*.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) 2))) 8)
(/.f64 (-.f64 (*.f64 2 (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) (*.f64 re 4)) 4)
(/.f64 (-.f64 (+.f64 re (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) (*.f64 re 3)) 2)
(/.f64 (-.f64 (+.f64 (neg.f64 re) (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) re) 2)
(pow.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) 1)
(neg.f64 (-.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))
(+.f64 re (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 0)
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (-.f64 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re 1/2)) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re 1/2))))
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (-.f64 (+.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) (+.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))))
(+.f64 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re 1/2)) (*.f64 re -1/2))
(+.f64 (*.f64 re -1/2) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re 1/2)))
(+.f64 (*.f64 re -1/2) (-.f64 (*.f64 re -1/2) (-.f64 (neg.f64 re) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))))
(+.f64 (*.f64 re 1/2) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re -1/2)))
(+.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) re)
(+.f64 0 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))
(+.f64 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re -1/2)) (*.f64 re 1/2))
(+.f64 (+.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) (neg.f64 re))
(+.f64 (neg.f64 re) (+.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))
(+.f64 -1 (+.f64 1 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))
(+.f64 (/.f64 re -4) (+.f64 (/.f64 re -4) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re 1/2))))
(+.f64 (/.f64 re -4) (/.f64 (+.f64 (*.f64 re 1/2) (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) 2))
(+.f64 (/.f64 re -4) (-.f64 (/.f64 re 4) (neg.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))))
(+.f64 (/.f64 re -4) (-.f64 (/.f64 re -4) (-.f64 (*.f64 re -1/2) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))))
(+.f64 (*.f64 3 (/.f64 re -4)) (+.f64 (/.f64 re -4) (+.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))))
(+.f64 (*.f64 3 (/.f64 re -4)) (neg.f64 (+.f64 (*.f64 3 (/.f64 re -4)) (neg.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))))
(+.f64 (/.f64 (*.f64 re 3/2) 2) (-.f64 (/.f64 re 4) (-.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))))
(+.f64 (+.f64 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re -1/2)) (/.f64 re 4)) (/.f64 re 4))
(+.f64 (/.f64 re 4) (+.f64 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re -1/2)) (/.f64 re 4)))
(+.f64 (/.f64 re 4) (+.f64 (+.f64 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re 1/2)) (/.f64 re 4)) (neg.f64 re)))
(+.f64 (/.f64 re 4) (-.f64 (/.f64 re -4) (neg.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))))
(+.f64 (/.f64 re 4) (/.f64 (+.f64 (*.f64 re -1/2) (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) 2))
(+.f64 (/.f64 re 4) (-.f64 (/.f64 re 4) (-.f64 (*.f64 re 1/2) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))))
(+.f64 (+.f64 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re 1/2)) (/.f64 re 4)) (neg.f64 (/.f64 (*.f64 re 3/2) 2)))
(+.f64 (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2) (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2))
(+.f64 (+.f64 (/.f64 re 4) (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) (+.f64 (+.f64 (/.f64 re 4) (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) (*.f64 re -1/2)))
(+.f64 (+.f64 (/.f64 re 4) (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) (-.f64 (+.f64 (/.f64 re 4) (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) (*.f64 re 1/2)))
(+.f64 (/.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) 2) (-.f64 (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2) (*.f64 re -1/2)))
(+.f64 (+.f64 -1 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re -1/2))) (+.f64 1 (*.f64 re 1/2)))
(+.f64 (+.f64 1 (*.f64 re 1/2)) (+.f64 -1 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re -1/2))))
(+.f64 (+.f64 -1 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) 1)
(+.f64 (+.f64 -1 (*.f64 re 1/2)) (+.f64 (-.f64 1 (*.f64 re 1/2)) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))
(+.f64 (+.f64 (-.f64 1 (*.f64 re 1/2)) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) (+.f64 -1 (*.f64 re 1/2)))
(+.f64 (-.f64 -1 re) (-.f64 1 (-.f64 (neg.f64 re) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))))
(+.f64 (-.f64 -1 (*.f64 re 1/2)) (-.f64 1 (-.f64 (*.f64 re -1/2) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))))
(+.f64 (-.f64 (*.f64 re -1/2) (-.f64 (neg.f64 re) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))) (*.f64 re -1/2))
(+.f64 (-.f64 (*.f64 (+.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) 2) re) (-.f64 (neg.f64 re) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))
(+.f64 (-.f64 (+.f64 re (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) (*.f64 re 1/2)) (-.f64 (*.f64 re -1/2) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))
(+.f64 (-.f64 (/.f64 re -4) (neg.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))) (/.f64 re 4))
(+.f64 (-.f64 (*.f64 re -1/2) (/.f64 re -4)) (-.f64 (*.f64 re -1/2) (+.f64 (*.f64 3 (/.f64 re -4)) (neg.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))))
(+.f64 (-.f64 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re 1/2)) (/.f64 re 4)) (neg.f64 (/.f64 re 4)))
(+.f64 (-.f64 (+.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) (*.f64 re 1/2)) (*.f64 re -1/2))
(+.f64 (-.f64 (+.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) (/.f64 (*.f64 re 3/2) 2)) (neg.f64 (/.f64 re 4)))
(+.f64 (-.f64 (neg.f64 re) (*.f64 3 (/.f64 re -4))) (neg.f64 (-.f64 (/.f64 re -4) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))))
(+.f64 (-.f64 (neg.f64 re) (-.f64 (/.f64 re -4) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))) (neg.f64 (*.f64 3 (/.f64 re -4))))
(+.f64 (-.f64 (neg.f64 re) (+.f64 (*.f64 3 (/.f64 re -4)) (neg.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))) (/.f64 re 4))
(+.f64 (-.f64 -1 (-.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))) (-.f64 1 (neg.f64 re)))
(+.f64 (/.f64 (+.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) 2) (/.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) 2))
(+.f64 (-.f64 (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2) (*.f64 re -1/2)) (/.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) 2))
(+.f64 (-.f64 (/.f64 re 4) (neg.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))) (/.f64 re -4))
(+.f64 (-.f64 (/.f64 re 4) (-.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))) (/.f64 (*.f64 re 3/2) 2))
(+.f64 (-.f64 (+.f64 (/.f64 re 4) (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) (*.f64 re 1/2)) (+.f64 (/.f64 re 4) (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)))
(+.f64 (-.f64 (+.f64 (/.f64 re 4) (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) re) (-.f64 (+.f64 (/.f64 re 4) (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) (*.f64 re -1/2)))
(+.f64 (-.f64 (+.f64 (/.f64 re 4) (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) (/.f64 re -4)) (/.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) 2))
(+.f64 (-.f64 (/.f64 re 4) (-.f64 (*.f64 re 1/2) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))) (/.f64 re 4))
(+.f64 (-.f64 (+.f64 (/.f64 re 4) (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) (*.f64 re -1/2)) (-.f64 (+.f64 (/.f64 re 4) (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) re))
(+.f64 (-.f64 (*.f64 re -1/2) (+.f64 (*.f64 3 (/.f64 re -4)) (neg.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))) (-.f64 (*.f64 re -1/2) (/.f64 re -4)))
(+.f64 (-.f64 (*.f64 re -1/2) (-.f64 (/.f64 re -4) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))) (-.f64 (*.f64 re -1/2) (*.f64 3 (/.f64 re -4))))
(+.f64 (-.f64 (*.f64 re -1/2) (*.f64 3 (/.f64 re -4))) (-.f64 (*.f64 re -1/2) (-.f64 (/.f64 re -4) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))))
(+.f64 (-.f64 (/.f64 re 4) (-.f64 (*.f64 re -1/2) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))) (-.f64 (/.f64 re 4) re))
(+.f64 (-.f64 -1 (-.f64 (*.f64 re -1/2) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))) (-.f64 1 (*.f64 re 1/2)))
(+.f64 (-.f64 -1 (neg.f64 re)) (-.f64 1 (-.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))))
(+.f64 (-.f64 -1 (-.f64 (neg.f64 re) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))) (-.f64 1 re))
(*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 1)
(*.f64 1/2 (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2))
(*.f64 1 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))
(*.f64 (neg.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) -1)
(*.f64 (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2) 1/2)
(*.f64 (*.f64 2 (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) 1/4)
(*.f64 (sqrt.f64 (*.f64 (+.f64 (*.f64 re re) (*.f64 im im)) 2)) (sqrt.f64 1/2))
(/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 1)
(/.f64 (neg.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) -1)
(/.f64 (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2) 2)
(/.f64 (*.f64 2 (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) 4)
(/.f64 (+.f64 (*.f64 re -2) (*.f64 2 (+.f64 re (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)))) 4)
(/.f64 (+.f64 (*.f64 2 (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) (*.f64 2 (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2))) 8)
(/.f64 (+.f64 (*.f64 (+.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) 2) (*.f64 re -2)) 2)
(/.f64 (+.f64 (*.f64 2 (+.f64 re (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2))) (*.f64 re -2)) 4)
(/.f64 (-.f64 (*.f64 2 (+.f64 re (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2))) (+.f64 re re)) 4)
(/.f64 (-.f64 (+.f64 (neg.f64 re) (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) (neg.f64 re)) 2)
(/.f64 (-.f64 (*.f64 (+.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) 2) (+.f64 re re)) 2)
(/.f64 (-.f64 (*.f64 re -2) (-.f64 0 (*.f64 (+.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) 2))) 2)
(pow.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 1)
(neg.f64 (neg.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
(-.f64 re (-.f64 (*.f64 re 1/2) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re -1/2))
(-.f64 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re 1/2)) 0)
(-.f64 (*.f64 re 1/2) (neg.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))
(-.f64 0 (-.f64 (*.f64 re -1/2) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))
(-.f64 (*.f64 re 3/2) (-.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))
(-.f64 (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re -1/2)))
(-.f64 (/.f64 re 4) (-.f64 (/.f64 re -4) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))
(-.f64 (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2) (-.f64 (*.f64 re -1/2) (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)))
(-.f64 (+.f64 (/.f64 re 4) (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) (-.f64 (/.f64 re -4) (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)))
(-.f64 (+.f64 (/.f64 re 4) (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) (/.f64 (-.f64 (*.f64 re -1/2) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) 2))
(-.f64 (/.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) 2) (-.f64 (neg.f64 re) (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)))
(-.f64 (+.f64 (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2) (*.f64 re 1/2)) (-.f64 0 (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)))
(-.f64 (+.f64 (/.f64 re 4) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) (/.f64 re -4))
(-.f64 (-.f64 (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2) (*.f64 re -1/2)) (-.f64 0 (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)))
(-.f64 (-.f64 (/.f64 re 4) (neg.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))) (/.f64 re -4))
(-.f64 (-.f64 (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2) (neg.f64 re)) (-.f64 (*.f64 re 1/2) (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)))
(-.f64 (+.f64 (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2) re) (-.f64 (*.f64 re 1/2) (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)))
(-.f64 (+.f64 (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2) (/.f64 (*.f64 re 3/2) 2)) (-.f64 (/.f64 re 4) (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)))
(*.f64 1/2 (+.f64 re (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)))
(*.f64 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re 1/2)) 1)
(*.f64 1 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re 1/2)))
(*.f64 (+.f64 re (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) 1/2)
(*.f64 (*.f64 2 (+.f64 re (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2))) 1/4)
(/.f64 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re 1/2)) 1)
(/.f64 (+.f64 re (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) 2)
(/.f64 (*.f64 2 (+.f64 re (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2))) 4)
(/.f64 (+.f64 (*.f64 2 (+.f64 re (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2))) (*.f64 2 (+.f64 re (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)))) 8)
(/.f64 (+.f64 (*.f64 2 (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) (+.f64 re re)) 4)
(/.f64 (+.f64 (+.f64 re re) (*.f64 2 (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2))) 4)
(/.f64 (-.f64 (*.f64 2 (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) (*.f64 re -2)) 4)
(pow.f64 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re 1/2)) 1)
(neg.f64 (-.f64 (*.f64 re -1/2) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))
Outputs
im
(+.f64 (*.f64 -1 re) im)
(+.f64 im (neg.f64 re))
(+.f64 (*.f64 -1 re) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) im))
(+.f64 im (+.f64 (*.f64 (pow.f64 re 2) (/.f64 1/2 im)) (neg.f64 re)))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) (+.f64 im (neg.f64 re)))
(+.f64 (*.f64 -1 re) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) im)))
(+.f64 (+.f64 im (*.f64 (pow.f64 re 2) (/.f64 1/2 im))) (+.f64 (*.f64 (pow.f64 re 4) (/.f64 -1/8 (pow.f64 im 3))) (neg.f64 re)))
(+.f64 (+.f64 im (*.f64 1/2 (/.f64 (pow.f64 re 2) im))) (+.f64 (*.f64 (pow.f64 re 4) (/.f64 -1/8 (pow.f64 im 3))) (neg.f64 re)))
(+.f64 (*.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3))) (+.f64 im (+.f64 (*.f64 (pow.f64 re 2) (/.f64 1/2 im)) (neg.f64 re))))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 (pow.f64 im 2) (/.f64 1/2 re))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))
(+.f64 (*.f64 (pow.f64 im 2) (/.f64 1/2 re)) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))) (*.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5)))))
(+.f64 (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5)))))
(+.f64 (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))) (+.f64 (*.f64 (pow.f64 im 2) (/.f64 1/2 re)) (*.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5)))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (+.f64 (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (*.f64 -1/8 (pow.f64 im 4)) 2) (*.f64 1/16 (pow.f64 im 8))) (pow.f64 re 7))) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))))
(+.f64 (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))) (*.f64 (+.f64 (*.f64 1/64 (pow.f64 (pow.f64 im 4) 2)) (*.f64 1/16 (pow.f64 im 8))) (/.f64 -1/2 (pow.f64 re 7)))) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (*.f64 1/2 (/.f64 (pow.f64 im 2) re))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (*.f64 (+.f64 (*.f64 1/64 (pow.f64 im 8)) (*.f64 1/16 (pow.f64 im 8))) (/.f64 -1/2 (pow.f64 re 7))))))
(+.f64 (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 im 8) 5/64) (pow.f64 re 7)))) (+.f64 (*.f64 (pow.f64 im 2) (/.f64 1/2 re)) (*.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5)))))
(*.f64 -2 re)
(*.f64 re -2)
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 -2 re))
(+.f64 (*.f64 (pow.f64 im 2) (/.f64 -1/2 re)) (*.f64 re -2))
(+.f64 (*.f64 1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 -2 re)))
(+.f64 (+.f64 (*.f64 (pow.f64 im 2) (/.f64 -1/2 re)) (*.f64 re -2)) (*.f64 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) 1/8))
(+.f64 (*.f64 (pow.f64 im 2) (/.f64 -1/2 re)) (+.f64 (*.f64 (pow.f64 im 4) (/.f64 1/8 (pow.f64 re 3))) (*.f64 re -2)))
(+.f64 (*.f64 (pow.f64 im 2) (/.f64 -1/2 re)) (+.f64 (*.f64 re -2) (*.f64 (pow.f64 im 4) (/.f64 1/8 (pow.f64 re 3)))))
(+.f64 (*.f64 1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))) (+.f64 (*.f64 -1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 -2 re))))
(+.f64 (+.f64 (*.f64 (pow.f64 im 2) (/.f64 -1/2 re)) (*.f64 re -2)) (+.f64 (*.f64 (pow.f64 im 6) (/.f64 -1/16 (pow.f64 re 5))) (*.f64 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) 1/8)))
(+.f64 (+.f64 (*.f64 (pow.f64 im 2) (/.f64 -1/2 re)) (*.f64 re -2)) (+.f64 (*.f64 (pow.f64 im 4) (/.f64 1/8 (pow.f64 re 3))) (*.f64 (pow.f64 im 6) (/.f64 -1/16 (pow.f64 re 5)))))
(+.f64 (+.f64 (*.f64 (pow.f64 im 2) (/.f64 -1/2 re)) (*.f64 (pow.f64 im 6) (/.f64 -1/16 (pow.f64 re 5)))) (+.f64 (*.f64 re -2) (*.f64 (pow.f64 im 4) (/.f64 1/8 (pow.f64 re 3)))))
(-.f64 (+.f64 (*.f64 1/2 re) re) (+.f64 (*.f64 -1/2 re) (*.f64 2 re)))
(-.f64 (+.f64 re (*.f64 re 1/2)) (*.f64 re 3/2))
(-.f64 (*.f64 re 3/2) (*.f64 re 3/2))
0
(-.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 re (*.f64 1/2 re))) (+.f64 (*.f64 -1/2 re) (*.f64 2 re)))
(-.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 re (*.f64 re 1/2))) (*.f64 re 3/2))
(-.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 re 3/2)) (*.f64 re 3/2))
(-.f64 0 (neg.f64 (*.f64 (pow.f64 im 2) (/.f64 1/2 re))))
(-.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 re (+.f64 (*.f64 1/2 re) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)))))) (+.f64 (*.f64 -1/2 re) (*.f64 2 re)))
(-.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 re (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))) (*.f64 re 1/2)))) (*.f64 re 3/2))
(-.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))) (*.f64 re 3/2))) (*.f64 re 3/2))
(-.f64 (+.f64 (*.f64 (pow.f64 im 2) (/.f64 1/2 re)) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))) (*.f64 re 3/2))) (*.f64 re 3/2))
(-.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (+.f64 re (+.f64 (*.f64 1/2 re) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))))) (+.f64 (*.f64 -1/2 re) (*.f64 2 re)))
(-.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (+.f64 re (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))) (*.f64 re 1/2))))) (*.f64 re 3/2))
(-.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (*.f64 re 3/2)))) (*.f64 re 3/2))
(-.f64 (+.f64 (*.f64 (pow.f64 im 2) (/.f64 1/2 re)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))) (*.f64 re 3/2)))) (*.f64 re 3/2))
im
(-.f64 (+.f64 (*.f64 1/2 re) im) (+.f64 (*.f64 -1/2 re) (*.f64 2 re)))
(+.f64 im (neg.f64 re))
(-.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) (+.f64 (*.f64 1/2 re) im)) (+.f64 (*.f64 -1/2 re) (*.f64 2 re)))
(-.f64 (+.f64 im (+.f64 (*.f64 re 1/2) (*.f64 (pow.f64 re 2) (/.f64 1/2 im)))) (*.f64 re 3/2))
(-.f64 (+.f64 im (*.f64 1/2 (+.f64 re (/.f64 (pow.f64 re 2) im)))) (*.f64 re 3/2))
(-.f64 (+.f64 im (*.f64 1/2 (+.f64 (/.f64 (pow.f64 re 2) im) re))) (*.f64 re 3/2))
(-.f64 (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) (+.f64 (*.f64 1/2 re) im))) (+.f64 (*.f64 -1/2 re) (*.f64 2 re)))
(-.f64 (+.f64 (*.f64 (pow.f64 re 4) (/.f64 -1/8 (pow.f64 im 3))) (+.f64 im (+.f64 (*.f64 re 1/2) (*.f64 (pow.f64 re 2) (/.f64 1/2 im))))) (*.f64 re 3/2))
(-.f64 (+.f64 (*.f64 1/2 (+.f64 re (/.f64 (pow.f64 re 2) im))) (+.f64 im (*.f64 (pow.f64 re 4) (/.f64 -1/8 (pow.f64 im 3))))) (*.f64 re 3/2))
(-.f64 (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3))) (+.f64 im (*.f64 1/2 (+.f64 (/.f64 (pow.f64 re 2) im) re)))) (*.f64 re 3/2))
(*.f64 -1 im)
(*.f64 im -1)
(neg.f64 im)
(-.f64 (+.f64 (*.f64 1/2 re) (*.f64 -1 im)) (+.f64 (*.f64 -1/2 re) (*.f64 2 re)))
(-.f64 (+.f64 (*.f64 im -1) (*.f64 re 1/2)) (*.f64 re 3/2))
(-.f64 (+.f64 (neg.f64 im) (*.f64 re 1/2)) (*.f64 re 3/2))
(-.f64 (neg.f64 im) re)
(-.f64 (+.f64 (*.f64 1/2 re) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 re 2) im)) (*.f64 -1 im))) (+.f64 (*.f64 -1/2 re) (*.f64 2 re)))
(-.f64 (+.f64 (*.f64 im -1) (+.f64 (*.f64 (pow.f64 re 2) (/.f64 -1/2 im)) (*.f64 re 1/2))) (*.f64 re 3/2))
(-.f64 (+.f64 (neg.f64 im) (+.f64 (*.f64 (pow.f64 re 2) (/.f64 -1/2 im)) (*.f64 re 1/2))) (*.f64 re 3/2))
(-.f64 (neg.f64 re) (neg.f64 (+.f64 (neg.f64 im) (*.f64 (pow.f64 re 2) (/.f64 -1/2 im)))))
(-.f64 (+.f64 (*.f64 1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3))) (+.f64 (*.f64 1/2 re) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 re 2) im)) (*.f64 -1 im)))) (+.f64 (*.f64 -1/2 re) (*.f64 2 re)))
(-.f64 (+.f64 (+.f64 (*.f64 im -1) (*.f64 (pow.f64 re 2) (/.f64 -1/2 im))) (+.f64 (*.f64 re 1/2) (*.f64 (pow.f64 re 4) (/.f64 1/8 (pow.f64 im 3))))) (*.f64 re 3/2))
(-.f64 (+.f64 (+.f64 (neg.f64 im) (*.f64 (pow.f64 re 2) (/.f64 -1/2 im))) (+.f64 (*.f64 (pow.f64 re 4) (/.f64 1/8 (pow.f64 im 3))) (*.f64 re 1/2))) (*.f64 re 3/2))
(-.f64 (+.f64 (+.f64 (neg.f64 im) (+.f64 (*.f64 (pow.f64 re 2) (/.f64 -1/2 im)) (*.f64 re 1/2))) (*.f64 (pow.f64 re 4) (/.f64 1/8 (pow.f64 im 3)))) (*.f64 re 3/2))
im
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) im)
(+.f64 im (*.f64 (pow.f64 re 2) (/.f64 1/2 im)))
(+.f64 im (*.f64 1/2 (/.f64 (pow.f64 re 2) im)))
(+.f64 (*.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) im))
(+.f64 im (+.f64 (*.f64 (pow.f64 re 2) (/.f64 1/2 im)) (*.f64 (pow.f64 re 4) (/.f64 -1/8 (pow.f64 im 3)))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) (+.f64 im (*.f64 (pow.f64 re 4) (/.f64 -1/8 (pow.f64 im 3)))))
(+.f64 im (+.f64 (*.f64 (pow.f64 re 2) (/.f64 1/2 im)) (*.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3)))))
(+.f64 (*.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 re 6) (pow.f64 im 5))) im)))
(+.f64 (+.f64 im (*.f64 1/16 (/.f64 (pow.f64 re 6) (pow.f64 im 5)))) (+.f64 (*.f64 (pow.f64 re 2) (/.f64 1/2 im)) (*.f64 (pow.f64 re 4) (/.f64 -1/8 (pow.f64 im 3)))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) (+.f64 (+.f64 im (*.f64 1/16 (/.f64 (pow.f64 re 6) (pow.f64 im 5)))) (*.f64 (pow.f64 re 4) (/.f64 -1/8 (pow.f64 im 3)))))
(+.f64 (*.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3))) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 re 6) (pow.f64 im 5))) (+.f64 im (*.f64 (pow.f64 re 2) (/.f64 1/2 im)))))
re
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) re)
(+.f64 re (*.f64 1/2 (/.f64 (pow.f64 im 2) re)))
(+.f64 re (*.f64 (pow.f64 im 2) (/.f64 1/2 re)))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 re (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)))))
(+.f64 re (+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)))))
(+.f64 re (+.f64 (*.f64 (pow.f64 im 2) (/.f64 1/2 re)) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (+.f64 re (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))) (+.f64 re (*.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))))))
(+.f64 (*.f64 (pow.f64 im 2) (/.f64 1/2 re)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (+.f64 re (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))))
(*.f64 -1 re)
(neg.f64 re)
(+.f64 (*.f64 -1 re) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)))
(+.f64 (*.f64 (pow.f64 im 2) (/.f64 -1/2 re)) (neg.f64 re))
(-.f64 (*.f64 (pow.f64 im 2) (/.f64 -1/2 re)) re)
(+.f64 (*.f64 -1 re) (+.f64 (*.f64 1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re))))
(+.f64 (*.f64 (pow.f64 im 2) (/.f64 -1/2 re)) (+.f64 (*.f64 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) 1/8) (neg.f64 re)))
(+.f64 (*.f64 (pow.f64 im 2) (/.f64 -1/2 re)) (+.f64 (*.f64 (pow.f64 im 4) (/.f64 1/8 (pow.f64 re 3))) (neg.f64 re)))
(+.f64 (*.f64 (pow.f64 im 2) (/.f64 -1/2 re)) (-.f64 (*.f64 (pow.f64 im 4) (/.f64 1/8 (pow.f64 re 3))) re))
(+.f64 (*.f64 -1 re) (+.f64 (*.f64 1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))) (+.f64 (*.f64 -1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)))))
(+.f64 (+.f64 (*.f64 (pow.f64 im 2) (/.f64 -1/2 re)) (*.f64 (pow.f64 im 6) (/.f64 -1/16 (pow.f64 re 5)))) (+.f64 (*.f64 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) 1/8) (neg.f64 re)))
(+.f64 (*.f64 (pow.f64 im 4) (/.f64 1/8 (pow.f64 re 3))) (+.f64 (+.f64 (*.f64 (pow.f64 im 2) (/.f64 -1/2 re)) (*.f64 (pow.f64 im 6) (/.f64 -1/16 (pow.f64 re 5)))) (neg.f64 re)))
(+.f64 (+.f64 (*.f64 (pow.f64 im 2) (/.f64 -1/2 re)) (*.f64 (pow.f64 im 6) (/.f64 -1/16 (pow.f64 re 5)))) (-.f64 (*.f64 (pow.f64 im 4) (/.f64 1/8 (pow.f64 re 3))) re))
(-.f64 (*.f64 1/2 re) (*.f64 -1/2 re))
re
(-.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 1/2 re)) (*.f64 -1/2 re))
(+.f64 re (*.f64 1/2 (/.f64 (pow.f64 im 2) re)))
(+.f64 re (*.f64 (pow.f64 im 2) (/.f64 1/2 re)))
(-.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 1/2 re) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))) (*.f64 -1/2 re))
(-.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))) (*.f64 re 1/2))) (*.f64 re -1/2))
(-.f64 (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))) (*.f64 1/2 (+.f64 (/.f64 (pow.f64 im 2) re) re))) (*.f64 re -1/2))
(-.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (+.f64 (*.f64 1/2 re) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)))))) (*.f64 -1/2 re))
(-.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))) (+.f64 (*.f64 re 1/2) (*.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5)))))) (*.f64 re -1/2))
(-.f64 (+.f64 (*.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))) (*.f64 1/2 (+.f64 (/.f64 (pow.f64 im 2) re) re)))) (*.f64 re -1/2))
im
(-.f64 (+.f64 (*.f64 1/2 re) im) (+.f64 (*.f64 -1/2 re) re))
(-.f64 (+.f64 im (*.f64 re 1/2)) (+.f64 re (*.f64 re -1/2)))
(neg.f64 (neg.f64 im))
(-.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) (+.f64 (*.f64 1/2 re) im)) (+.f64 (*.f64 -1/2 re) re))
(-.f64 (+.f64 im (+.f64 (*.f64 re 1/2) (*.f64 (pow.f64 re 2) (/.f64 1/2 im)))) (+.f64 re (*.f64 re -1/2)))
(-.f64 (+.f64 im (*.f64 1/2 (+.f64 re (/.f64 (pow.f64 re 2) im)))) (+.f64 re (*.f64 re -1/2)))
(-.f64 (+.f64 im (*.f64 1/2 (+.f64 (/.f64 (pow.f64 re 2) im) re))) (*.f64 re 1/2))
(-.f64 (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) (+.f64 (*.f64 1/2 re) im))) (+.f64 (*.f64 -1/2 re) re))
(-.f64 (+.f64 (*.f64 (pow.f64 re 4) (/.f64 -1/8 (pow.f64 im 3))) (+.f64 im (+.f64 (*.f64 re 1/2) (*.f64 (pow.f64 re 2) (/.f64 1/2 im))))) (+.f64 re (*.f64 re -1/2)))
(-.f64 (+.f64 (*.f64 1/2 (+.f64 re (/.f64 (pow.f64 re 2) im))) (+.f64 im (*.f64 (pow.f64 re 4) (/.f64 -1/8 (pow.f64 im 3))))) (+.f64 re (*.f64 re -1/2)))
(-.f64 (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3))) (+.f64 im (*.f64 1/2 (+.f64 (/.f64 (pow.f64 re 2) im) re)))) (*.f64 re 1/2))
(*.f64 -1 im)
(*.f64 im -1)
(neg.f64 im)
(-.f64 (+.f64 (*.f64 1/2 re) (*.f64 -1 im)) (+.f64 (*.f64 -1/2 re) re))
(-.f64 (+.f64 (*.f64 im -1) (*.f64 re 1/2)) (+.f64 re (*.f64 re -1/2)))
(-.f64 (+.f64 (neg.f64 im) (*.f64 re 1/2)) (+.f64 re (*.f64 re -1/2)))
(-.f64 (neg.f64 im) 0)
(-.f64 (+.f64 (*.f64 1/2 re) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 re 2) im)) (*.f64 -1 im))) (+.f64 (*.f64 -1/2 re) re))
(-.f64 (+.f64 (*.f64 im -1) (+.f64 (*.f64 (pow.f64 re 2) (/.f64 -1/2 im)) (*.f64 re 1/2))) (+.f64 re (*.f64 re -1/2)))
(-.f64 (+.f64 (neg.f64 im) (+.f64 (*.f64 (pow.f64 re 2) (/.f64 -1/2 im)) (*.f64 re 1/2))) (+.f64 re (*.f64 re -1/2)))
(-.f64 0 (neg.f64 (+.f64 (neg.f64 im) (*.f64 (pow.f64 re 2) (/.f64 -1/2 im)))))
(-.f64 (+.f64 (*.f64 1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3))) (+.f64 (*.f64 1/2 re) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 re 2) im)) (*.f64 -1 im)))) (+.f64 (*.f64 -1/2 re) re))
(-.f64 (+.f64 (+.f64 (*.f64 im -1) (*.f64 (pow.f64 re 2) (/.f64 -1/2 im))) (+.f64 (*.f64 re 1/2) (*.f64 (pow.f64 re 4) (/.f64 1/8 (pow.f64 im 3))))) (+.f64 re (*.f64 re -1/2)))
(-.f64 (+.f64 (+.f64 (neg.f64 im) (*.f64 (pow.f64 re 2) (/.f64 -1/2 im))) (+.f64 (*.f64 (pow.f64 re 4) (/.f64 1/8 (pow.f64 im 3))) (*.f64 re 1/2))) (+.f64 re (*.f64 re -1/2)))
(-.f64 (+.f64 (+.f64 (neg.f64 im) (+.f64 (*.f64 (pow.f64 re 2) (/.f64 -1/2 im)) (*.f64 re 1/2))) (*.f64 (pow.f64 re 4) (/.f64 1/8 (pow.f64 im 3)))) (*.f64 re 1/2))
im
(+.f64 (*.f64 1/2 re) im)
(+.f64 im (*.f64 re 1/2))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) (+.f64 (*.f64 1/2 re) im))
(+.f64 im (+.f64 (*.f64 re 1/2) (*.f64 (pow.f64 re 2) (/.f64 1/2 im))))
(+.f64 im (*.f64 1/2 (+.f64 re (/.f64 (pow.f64 re 2) im))))
(+.f64 im (*.f64 1/2 (+.f64 (/.f64 (pow.f64 re 2) im) re)))
(+.f64 (*.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) (+.f64 (*.f64 1/2 re) im)))
(+.f64 (*.f64 (pow.f64 re 4) (/.f64 -1/8 (pow.f64 im 3))) (+.f64 im (+.f64 (*.f64 re 1/2) (*.f64 (pow.f64 re 2) (/.f64 1/2 im)))))
(+.f64 (*.f64 1/2 (+.f64 re (/.f64 (pow.f64 re 2) im))) (+.f64 im (*.f64 (pow.f64 re 4) (/.f64 -1/8 (pow.f64 im 3)))))
(+.f64 (*.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3))) (+.f64 im (*.f64 1/2 (+.f64 (/.f64 (pow.f64 re 2) im) re))))
(*.f64 3/2 re)
(*.f64 re 3/2)
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 3/2 re))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 re 3/2))
(+.f64 (*.f64 (pow.f64 im 2) (/.f64 1/2 re)) (*.f64 re 3/2))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 3/2 re) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))) (*.f64 re 3/2)))
(+.f64 (*.f64 (pow.f64 im 2) (/.f64 1/2 re)) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))) (*.f64 re 3/2)))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (+.f64 (*.f64 3/2 re) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))) (*.f64 re 3/2))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (*.f64 re 3/2))))
(+.f64 (*.f64 (pow.f64 im 2) (/.f64 1/2 re)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))) (*.f64 re 3/2))))
(*.f64 -1/2 re)
(*.f64 re -1/2)
(+.f64 (*.f64 -1/2 re) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)))
(+.f64 (*.f64 (pow.f64 im 2) (/.f64 -1/2 re)) (*.f64 re -1/2))
(*.f64 -1/2 (+.f64 (/.f64 (pow.f64 im 2) re) re))
(+.f64 (*.f64 -1/2 re) (+.f64 (*.f64 1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re))))
(+.f64 (*.f64 (pow.f64 im 2) (/.f64 -1/2 re)) (+.f64 (*.f64 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) 1/8) (*.f64 re -1/2)))
(+.f64 (*.f64 (pow.f64 im 4) (/.f64 1/8 (pow.f64 re 3))) (*.f64 -1/2 (+.f64 (/.f64 (pow.f64 im 2) re) re)))
(+.f64 (*.f64 -1/2 re) (+.f64 (*.f64 1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))) (+.f64 (*.f64 -1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)))))
(+.f64 (+.f64 (*.f64 (pow.f64 im 2) (/.f64 -1/2 re)) (*.f64 (pow.f64 im 6) (/.f64 -1/16 (pow.f64 re 5)))) (+.f64 (*.f64 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) 1/8) (*.f64 re -1/2)))
(+.f64 (+.f64 (*.f64 (pow.f64 im 4) (/.f64 1/8 (pow.f64 re 3))) (*.f64 (pow.f64 im 6) (/.f64 -1/16 (pow.f64 re 5)))) (*.f64 -1/2 (+.f64 (/.f64 (pow.f64 im 2) re) re)))
(+.f64 re (*.f64 1/2 re))
(*.f64 re 3/2)
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 1/2 re) re))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 re 3/2))
(+.f64 (*.f64 (pow.f64 im 2) (/.f64 1/2 re)) (*.f64 re 3/2))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 1/2 re) (+.f64 re (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))) (*.f64 re 3/2)))
(+.f64 (*.f64 (pow.f64 im 2) (/.f64 1/2 re)) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))) (*.f64 re 3/2)))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (+.f64 (*.f64 1/2 re) (+.f64 re (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)))))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))) (*.f64 re 3/2))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (*.f64 re 3/2))))
(+.f64 (*.f64 (pow.f64 im 2) (/.f64 1/2 re)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))) (*.f64 re 3/2))))
im
(+.f64 (*.f64 1/2 re) im)
(+.f64 im (*.f64 re 1/2))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) (+.f64 (*.f64 1/2 re) im))
(+.f64 im (+.f64 (*.f64 re 1/2) (*.f64 (pow.f64 re 2) (/.f64 1/2 im))))
(+.f64 im (*.f64 1/2 (+.f64 re (/.f64 (pow.f64 re 2) im))))
(+.f64 im (*.f64 1/2 (+.f64 (/.f64 (pow.f64 re 2) im) re)))
(+.f64 (*.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) (+.f64 (*.f64 1/2 re) im)))
(+.f64 (*.f64 (pow.f64 re 4) (/.f64 -1/8 (pow.f64 im 3))) (+.f64 im (+.f64 (*.f64 re 1/2) (*.f64 (pow.f64 re 2) (/.f64 1/2 im)))))
(+.f64 (*.f64 1/2 (+.f64 re (/.f64 (pow.f64 re 2) im))) (+.f64 im (*.f64 (pow.f64 re 4) (/.f64 -1/8 (pow.f64 im 3)))))
(+.f64 (*.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3))) (+.f64 im (*.f64 1/2 (+.f64 (/.f64 (pow.f64 re 2) im) re))))
(*.f64 -1 im)
(*.f64 im -1)
(neg.f64 im)
(+.f64 (*.f64 1/2 re) (*.f64 -1 im))
(+.f64 (*.f64 im -1) (*.f64 re 1/2))
(+.f64 (neg.f64 im) (*.f64 re 1/2))
(-.f64 (neg.f64 im) (*.f64 re -1/2))
(+.f64 (*.f64 1/2 re) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 re 2) im)) (*.f64 -1 im)))
(+.f64 (*.f64 im -1) (+.f64 (*.f64 (pow.f64 re 2) (/.f64 -1/2 im)) (*.f64 re 1/2)))
(+.f64 (neg.f64 im) (+.f64 (*.f64 (pow.f64 re 2) (/.f64 -1/2 im)) (*.f64 re 1/2)))
(+.f64 (*.f64 1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3))) (+.f64 (*.f64 1/2 re) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 re 2) im)) (*.f64 -1 im))))
(+.f64 (+.f64 (*.f64 im -1) (*.f64 (pow.f64 re 2) (/.f64 -1/2 im))) (+.f64 (*.f64 re 1/2) (*.f64 (pow.f64 re 4) (/.f64 1/8 (pow.f64 im 3)))))
(+.f64 (+.f64 (neg.f64 im) (*.f64 (pow.f64 re 2) (/.f64 -1/2 im))) (+.f64 (*.f64 (pow.f64 re 4) (/.f64 1/8 (pow.f64 im 3))) (*.f64 re 1/2)))
(+.f64 (+.f64 (neg.f64 im) (+.f64 (*.f64 (pow.f64 re 2) (/.f64 -1/2 im)) (*.f64 re 1/2))) (*.f64 (pow.f64 re 4) (/.f64 1/8 (pow.f64 im 3))))
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (neg.f64 re))
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
(+.f64 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re 1/2)) (neg.f64 (*.f64 re 3/2)))
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (neg.f64 re))
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
(+.f64 (*.f64 re -1/2) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re -1/2)))
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (neg.f64 re))
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
(+.f64 (*.f64 re 1/2) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re 3/2)))
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (neg.f64 re))
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
(+.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) 0)
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (neg.f64 re))
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
(+.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) (-.f64 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re 1/2)) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re 1/2))))
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (neg.f64 re))
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
(+.f64 0 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (neg.f64 re))
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
(+.f64 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re -1/2)) (*.f64 re -1/2))
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (neg.f64 re))
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
(+.f64 (+.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) (*.f64 re -2))
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (neg.f64 re))
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
(+.f64 (neg.f64 re) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (neg.f64 re))
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
(+.f64 -1 (-.f64 1 (-.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))))
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (neg.f64 re))
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
(+.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re 3/2)) (*.f64 re 1/2))
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (neg.f64 re))
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
(+.f64 (/.f64 re -4) (-.f64 (/.f64 re -4) (-.f64 (*.f64 re 1/2) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))))
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (neg.f64 re))
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
(+.f64 (/.f64 re -4) (/.f64 (+.f64 (neg.f64 (*.f64 re 3/2)) (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) 2))
(+.f64 (/.f64 re -4) (/.f64 (+.f64 (neg.f64 (*.f64 re 3/2)) (*.f64 2 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))) 2))
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (+.f64 (/.f64 (*.f64 re 3/2) -2) (/.f64 re -4)))
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 (/.f64 re 4) -4))
(+.f64 (/.f64 re -4) (-.f64 (/.f64 re 4) (-.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))))
(+.f64 (/.f64 re -4) (/.f64 (+.f64 (neg.f64 (*.f64 re 3/2)) (*.f64 2 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))) 2))
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (+.f64 (/.f64 (*.f64 re 3/2) -2) (/.f64 re -4)))
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 (/.f64 re 4) -4))
(+.f64 (*.f64 3 (/.f64 re -4)) (+.f64 (/.f64 re -4) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))
(+.f64 (/.f64 re -4) (/.f64 (+.f64 (neg.f64 (*.f64 re 3/2)) (*.f64 2 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))) 2))
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (+.f64 (/.f64 (*.f64 re 3/2) -2) (/.f64 re -4)))
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 (/.f64 re 4) -4))
(+.f64 (*.f64 3 (/.f64 re -4)) (-.f64 (/.f64 re -4) (neg.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))))
(+.f64 (/.f64 re -4) (/.f64 (+.f64 (neg.f64 (*.f64 re 3/2)) (*.f64 2 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))) 2))
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (+.f64 (/.f64 (*.f64 re 3/2) -2) (/.f64 re -4)))
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 (/.f64 re 4) -4))
(+.f64 (+.f64 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re -1/2)) (/.f64 re 4)) (neg.f64 (/.f64 (*.f64 re 3/2) 2)))
(+.f64 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re -1/2)) (+.f64 (/.f64 re 4) (/.f64 (*.f64 re 3/2) -2)))
(+.f64 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re -1/2)) (+.f64 (/.f64 re 4) (*.f64 re -3/4)))
(+.f64 (/.f64 re 4) (+.f64 (+.f64 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re -1/2)) (/.f64 re 4)) (neg.f64 re)))
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (neg.f64 re))
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
(+.f64 (/.f64 re 4) (/.f64 (+.f64 (*.f64 re -1/2) (*.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) 2)) 2))
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (neg.f64 re))
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
(+.f64 (/.f64 re 4) (-.f64 (/.f64 re 4) (-.f64 (*.f64 re 3/2) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))))
(+.f64 (/.f64 re 4) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (-.f64 (*.f64 re 3/2) (/.f64 re 4))))
(+.f64 (/.f64 re 4) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (-.f64 (*.f64 re 1/4) (neg.f64 re))))
(+.f64 (*.f64 re -2) (+.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (neg.f64 re))
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
(+.f64 (neg.f64 (*.f64 re 3/2)) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re 1/2)))
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (neg.f64 re))
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
(+.f64 (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2) (+.f64 (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2) (neg.f64 re)))
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (neg.f64 re))
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
(+.f64 (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2) (-.f64 (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2) re))
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (neg.f64 re))
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
(+.f64 (+.f64 (/.f64 re 4) (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) (-.f64 (+.f64 (/.f64 re 4) (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) (*.f64 re 3/2)))
(+.f64 (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2) (+.f64 (/.f64 re 4) (-.f64 (+.f64 (/.f64 re 4) (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) (*.f64 re 3/2))))
(+.f64 (/.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) 2) (/.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) 2))
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (neg.f64 re))
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
(+.f64 (+.f64 -1 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re -1/2))) (-.f64 1 (*.f64 re 1/2)))
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (neg.f64 re))
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
(+.f64 (+.f64 1 (*.f64 re 1/2)) (+.f64 (+.f64 -1 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re -1/2))) (neg.f64 re)))
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (neg.f64 re))
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
(+.f64 (-.f64 1 re) (+.f64 -1 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (+.f64 -1 (-.f64 1 re)))
(+.f64 -1 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (-.f64 1 re)))
(+.f64 (+.f64 -1 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) (-.f64 1 re))
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (+.f64 -1 (-.f64 1 re)))
(+.f64 -1 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (-.f64 1 re)))
(+.f64 (-.f64 1 (*.f64 re 1/2)) (+.f64 -1 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re -1/2))))
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (neg.f64 re))
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
(+.f64 (+.f64 (-.f64 1 (*.f64 re 1/2)) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) (-.f64 -1 (*.f64 re 1/2)))
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (neg.f64 re))
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
(+.f64 (-.f64 -1 re) (+.f64 1 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (+.f64 1 (-.f64 -1 re)))
(+.f64 (+.f64 1 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) (-.f64 -1 re))
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (+.f64 1 (-.f64 -1 re)))
(+.f64 (-.f64 -1 (*.f64 re 1/2)) (+.f64 (-.f64 1 (*.f64 re 1/2)) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (neg.f64 re))
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
(+.f64 (-.f64 (/.f64 re -4) (neg.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))) (*.f64 3 (/.f64 re -4)))
(+.f64 (/.f64 re -4) (/.f64 (+.f64 (neg.f64 (*.f64 re 3/2)) (*.f64 2 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))) 2))
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (+.f64 (/.f64 (*.f64 re 3/2) -2) (/.f64 re -4)))
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 (/.f64 re 4) -4))
(+.f64 (-.f64 (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2) re) (neg.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (neg.f64 re))
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
(+.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (/.f64 (*.f64 re 3/2) 2)) (neg.f64 (/.f64 re 4)))
(+.f64 (/.f64 re -4) (/.f64 (+.f64 (neg.f64 (*.f64 re 3/2)) (*.f64 2 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))) 2))
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (+.f64 (/.f64 (*.f64 re 3/2) -2) (/.f64 re -4)))
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 (/.f64 re 4) -4))
(+.f64 (-.f64 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re -1/2)) (/.f64 re 4)) (neg.f64 (/.f64 re 4)))
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (neg.f64 re))
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
(+.f64 (-.f64 (+.f64 re (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) (*.f64 re 3/2)) (-.f64 (*.f64 re -1/2) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))
(+.f64 (-.f64 (+.f64 re (*.f64 2 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))) (*.f64 re 3/2)) (-.f64 (*.f64 re -1/2) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))
(+.f64 (-.f64 (*.f64 re -1/2) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) (+.f64 (*.f64 re -1/2) (*.f64 2 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))))
(+.f64 (-.f64 -1 (-.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))) 1)
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (neg.f64 re))
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
(+.f64 (-.f64 (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2) re) (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2))
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (neg.f64 re))
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
(+.f64 (-.f64 (/.f64 re 4) (neg.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))) (-.f64 (/.f64 re 4) (*.f64 re 3/2)))
(+.f64 (-.f64 (/.f64 re 4) (*.f64 re 3/2)) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (/.f64 re 4)))
(+.f64 (-.f64 (neg.f64 re) (*.f64 re 1/4)) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (/.f64 re 4)))
(+.f64 (-.f64 (/.f64 re 4) (-.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))) (/.f64 re -4))
(+.f64 (/.f64 re -4) (/.f64 (+.f64 (neg.f64 (*.f64 re 3/2)) (*.f64 2 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))) 2))
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (+.f64 (/.f64 (*.f64 re 3/2) -2) (/.f64 re -4)))
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 (/.f64 re 4) -4))
(+.f64 (-.f64 (/.f64 re 4) re) (-.f64 (/.f64 re 4) (-.f64 (*.f64 re 1/2) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))))
(+.f64 (-.f64 (/.f64 re 4) re) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (-.f64 (*.f64 re 1/2) (/.f64 re 4))))
(+.f64 (*.f64 re -3/4) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (-.f64 (*.f64 re 1/2) (/.f64 re 4))))
(+.f64 (*.f64 re -3/4) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re 1/4)))
(+.f64 (-.f64 (+.f64 (/.f64 re 4) (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) (*.f64 re 1/2)) (-.f64 (+.f64 (/.f64 re 4) (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) re))
(+.f64 (+.f64 (*.f64 re -1/2) (+.f64 (/.f64 re 4) (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2))) (-.f64 (+.f64 (/.f64 re 4) (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) re))
(+.f64 (-.f64 (+.f64 (/.f64 re 4) (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) re) (-.f64 (+.f64 (/.f64 re 4) (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) (*.f64 re 1/2)))
(+.f64 (-.f64 (+.f64 (/.f64 re 4) (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) (*.f64 re 1/2)) (-.f64 (+.f64 (/.f64 re 4) (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) re))
(+.f64 (+.f64 (*.f64 re -1/2) (+.f64 (/.f64 re 4) (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2))) (-.f64 (+.f64 (/.f64 re 4) (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) re))
(+.f64 (-.f64 (+.f64 (/.f64 re 4) (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) (+.f64 re re)) (-.f64 (+.f64 (/.f64 re 4) (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) (*.f64 re -1/2)))
(+.f64 (-.f64 (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2) (/.f64 (*.f64 re 3/2) 2)) (-.f64 (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2) (/.f64 re 4)))
(+.f64 (/.f64 re -4) (/.f64 (+.f64 (neg.f64 (*.f64 re 3/2)) (*.f64 2 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))) 2))
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (+.f64 (/.f64 (*.f64 re 3/2) -2) (/.f64 re -4)))
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 (/.f64 re 4) -4))
(+.f64 (-.f64 (/.f64 re 4) (-.f64 (*.f64 re 1/2) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))) (-.f64 (/.f64 re 4) re))
(+.f64 (-.f64 (/.f64 re 4) re) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (-.f64 (*.f64 re 1/2) (/.f64 re 4))))
(+.f64 (*.f64 re -3/4) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (-.f64 (*.f64 re 1/2) (/.f64 re 4))))
(+.f64 (*.f64 re -3/4) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re 1/4)))
(+.f64 (-.f64 (+.f64 (/.f64 re 4) (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) (*.f64 re -1/2)) (-.f64 (+.f64 (/.f64 re 4) (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) (+.f64 re re)))
(+.f64 (-.f64 (+.f64 (/.f64 re 4) (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) (+.f64 re re)) (-.f64 (+.f64 (/.f64 re 4) (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) (*.f64 re -1/2)))
(+.f64 (-.f64 (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2) (*.f64 re 3/2)) (-.f64 (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2) (*.f64 re -1/2)))
(+.f64 (-.f64 (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2) (*.f64 re 3/2)) (/.f64 (+.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) 2))
(+.f64 (-.f64 (/.f64 re 4) (*.f64 re 3/2)) (-.f64 (/.f64 re 4) (neg.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))))
(+.f64 (-.f64 (/.f64 re 4) (neg.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))) (-.f64 (/.f64 re 4) (*.f64 re 3/2)))
(+.f64 (-.f64 (/.f64 re 4) (*.f64 re 3/2)) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (/.f64 re 4)))
(+.f64 (-.f64 (neg.f64 re) (*.f64 re 1/4)) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (/.f64 re 4)))
(+.f64 (-.f64 (/.f64 re 4) (-.f64 (*.f64 re 3/2) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))) (/.f64 re 4))
(+.f64 (/.f64 re 4) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (-.f64 (*.f64 re 3/2) (/.f64 re 4))))
(+.f64 (/.f64 re 4) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (-.f64 (*.f64 re 1/4) (neg.f64 re))))
(+.f64 (-.f64 (+.f64 (/.f64 re 4) (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) (*.f64 re 3/2)) (+.f64 (/.f64 re 4) (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)))
(+.f64 (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2) (+.f64 (/.f64 re 4) (-.f64 (+.f64 (/.f64 re 4) (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) (*.f64 re 3/2))))
(+.f64 (+.f64 (/.f64 re 4) (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) (-.f64 (+.f64 (/.f64 re 4) (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) (*.f64 re 3/2)))
(+.f64 (-.f64 -1 (-.f64 (*.f64 re -1/2) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))) (-.f64 1 (*.f64 re 3/2)))
(+.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (+.f64 (*.f64 re -1/2) 1)) (-.f64 1 (*.f64 re 3/2)))
(+.f64 (-.f64 -1 (*.f64 re 3/2)) (-.f64 1 (-.f64 (*.f64 re -1/2) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))))
(+.f64 (-.f64 -1 (*.f64 re 3/2)) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (-.f64 (*.f64 re -1/2) 1)))
(+.f64 (-.f64 -1 (*.f64 re 3/2)) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (+.f64 (*.f64 re -1/2) -1)))
(+.f64 (-.f64 -1 (*.f64 re 3/2)) (+.f64 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re 1/2)) 1))
(*.f64 1/2 (*.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) 2))
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (neg.f64 re))
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
(*.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) 1)
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (neg.f64 re))
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
(*.f64 1 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (neg.f64 re))
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
(*.f64 (-.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) -1)
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (neg.f64 re))
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
(*.f64 (*.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) 2) 1/2)
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (neg.f64 re))
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
(*.f64 (*.f64 2 (*.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) 2)) 1/4)
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (neg.f64 re))
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
(/.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) 1)
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (neg.f64 re))
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
(/.f64 (-.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) -1)
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (neg.f64 re))
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
(/.f64 (*.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) 2) 2)
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (neg.f64 re))
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
(/.f64 (*.f64 2 (*.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) 2)) 4)
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (neg.f64 re))
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
(/.f64 (+.f64 (*.f64 2 (*.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) 2)) (*.f64 2 (*.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) 2))) 8)
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (neg.f64 re))
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
(/.f64 (-.f64 (*.f64 2 (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) (*.f64 re 4)) 4)
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (neg.f64 re))
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
(/.f64 (-.f64 (+.f64 re (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) (*.f64 re 3)) 2)
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (neg.f64 re))
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
(/.f64 (-.f64 (+.f64 (neg.f64 re) (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) re) 2)
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (neg.f64 re))
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
(pow.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) 1)
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (neg.f64 re))
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
(neg.f64 (-.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (neg.f64 re))
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
(+.f64 re (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 0)
(+.f64 re (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (-.f64 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re 1/2)) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re 1/2))))
(+.f64 re (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (-.f64 (+.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) (+.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))))
(+.f64 re (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
(+.f64 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re 1/2)) (*.f64 re -1/2))
(+.f64 re (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
(+.f64 (*.f64 re -1/2) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re 1/2)))
(+.f64 re (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
(+.f64 (*.f64 re -1/2) (-.f64 (*.f64 re -1/2) (-.f64 (neg.f64 re) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))))
(+.f64 re (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
(+.f64 (*.f64 re 1/2) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re -1/2)))
(+.f64 re (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
(+.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) re)
(+.f64 re (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
(+.f64 0 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))
(+.f64 re (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
(+.f64 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re -1/2)) (*.f64 re 1/2))
(+.f64 re (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
(+.f64 (+.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) (neg.f64 re))
(+.f64 re (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
(+.f64 (neg.f64 re) (+.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))
(+.f64 re (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
(+.f64 -1 (+.f64 1 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))
(+.f64 re (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
(+.f64 (/.f64 re -4) (+.f64 (/.f64 re -4) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re 1/2))))
(+.f64 re (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
(+.f64 (/.f64 re -4) (/.f64 (+.f64 (*.f64 re 1/2) (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) 2))
(+.f64 re (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
(+.f64 (/.f64 re -4) (-.f64 (/.f64 re 4) (neg.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))))
(+.f64 re (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
(+.f64 (/.f64 re -4) (-.f64 (/.f64 re -4) (-.f64 (*.f64 re -1/2) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))))
(+.f64 re (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
(+.f64 (*.f64 3 (/.f64 re -4)) (+.f64 (/.f64 re -4) (+.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))))
(+.f64 (*.f64 re -3/4) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (+.f64 re (/.f64 re -4))))
(+.f64 (+.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) (*.f64 (/.f64 re 4) -4))
(+.f64 (*.f64 3 (/.f64 re -4)) (neg.f64 (+.f64 (*.f64 3 (/.f64 re -4)) (neg.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))))
(+.f64 (*.f64 re -3/4) (neg.f64 (+.f64 (*.f64 re -3/4) (neg.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))))
(+.f64 (*.f64 re -3/4) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (neg.f64 (*.f64 re -3/4))))
(-.f64 (*.f64 re -3/4) (-.f64 (*.f64 re -3/4) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))
(+.f64 (/.f64 (*.f64 re 3/2) 2) (-.f64 (/.f64 re 4) (-.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))))
(+.f64 re (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
(+.f64 (+.f64 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re -1/2)) (/.f64 re 4)) (/.f64 re 4))
(+.f64 re (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
(+.f64 (/.f64 re 4) (+.f64 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re -1/2)) (/.f64 re 4)))
(+.f64 re (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
(+.f64 (/.f64 re 4) (+.f64 (+.f64 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re 1/2)) (/.f64 re 4)) (neg.f64 re)))
(+.f64 re (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
(+.f64 (/.f64 re 4) (-.f64 (/.f64 re -4) (neg.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))))
(+.f64 re (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
(+.f64 (/.f64 re 4) (/.f64 (+.f64 (*.f64 re -1/2) (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) 2))
(+.f64 re (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
(+.f64 (/.f64 re 4) (-.f64 (/.f64 re 4) (-.f64 (*.f64 re 1/2) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))))
(+.f64 (/.f64 re 4) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (-.f64 (*.f64 re 1/2) (/.f64 re 4))))
(+.f64 (/.f64 re 4) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re 1/4)))
(+.f64 (+.f64 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re 1/2)) (/.f64 re 4)) (neg.f64 (/.f64 (*.f64 re 3/2) 2)))
(+.f64 (neg.f64 (/.f64 (*.f64 re 3/2) 2)) (+.f64 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re 1/2)) (/.f64 re 4)))
(+.f64 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re 1/2)) (+.f64 (/.f64 re 4) (/.f64 (*.f64 re 3/2) -2)))
(+.f64 (*.f64 re -3/4) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (-.f64 (*.f64 re 1/4) re)))
(+.f64 (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2) (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2))
(+.f64 re (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
(+.f64 (+.f64 (/.f64 re 4) (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) (+.f64 (+.f64 (/.f64 re 4) (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) (*.f64 re -1/2)))
(+.f64 re (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
(+.f64 (+.f64 (/.f64 re 4) (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) (-.f64 (+.f64 (/.f64 re 4) (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) (*.f64 re 1/2)))
(+.f64 re (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
(+.f64 (/.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) 2) (-.f64 (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2) (*.f64 re -1/2)))
(+.f64 re (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
(+.f64 (+.f64 -1 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re -1/2))) (+.f64 1 (*.f64 re 1/2)))
(+.f64 re (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
(+.f64 (+.f64 1 (*.f64 re 1/2)) (+.f64 -1 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re -1/2))))
(+.f64 re (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
(+.f64 (+.f64 -1 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) 1)
(+.f64 re (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
(+.f64 (+.f64 -1 (*.f64 re 1/2)) (+.f64 (-.f64 1 (*.f64 re 1/2)) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))
(+.f64 re (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
(+.f64 (+.f64 (-.f64 1 (*.f64 re 1/2)) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) (+.f64 -1 (*.f64 re 1/2)))
(+.f64 re (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
(+.f64 (-.f64 -1 re) (-.f64 1 (-.f64 (neg.f64 re) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))))
(+.f64 (-.f64 -1 re) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (-.f64 (neg.f64 re) 1)))
(+.f64 (-.f64 -1 re) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (-.f64 -1 re)))
(+.f64 (-.f64 -1 (*.f64 re 1/2)) (-.f64 1 (-.f64 (*.f64 re -1/2) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))))
(+.f64 (-.f64 -1 (*.f64 re 1/2)) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (-.f64 (*.f64 re -1/2) 1)))
(+.f64 (-.f64 -1 (*.f64 re 1/2)) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (+.f64 (*.f64 re -1/2) -1)))
(+.f64 (+.f64 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re 1/2)) 1) (+.f64 (*.f64 re -1/2) -1))
(+.f64 (-.f64 (*.f64 re -1/2) (-.f64 (neg.f64 re) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))) (*.f64 re -1/2))
(+.f64 re (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
(+.f64 (-.f64 (*.f64 (+.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) 2) re) (-.f64 (neg.f64 re) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))
(+.f64 (-.f64 (neg.f64 re) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) (-.f64 (*.f64 2 (+.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))) re))
(-.f64 (*.f64 2 (+.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))) (+.f64 re (+.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))))
(+.f64 (-.f64 (+.f64 re (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) (*.f64 re 1/2)) (-.f64 (*.f64 re -1/2) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))
(+.f64 (-.f64 (*.f64 re -1/2) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) (-.f64 (+.f64 re (*.f64 2 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))) (*.f64 re 1/2)))
(+.f64 (-.f64 (*.f64 re -1/2) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) (+.f64 (*.f64 2 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) (*.f64 re 1/2)))
(+.f64 (-.f64 (/.f64 re -4) (neg.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))) (/.f64 re 4))
(+.f64 re (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
(+.f64 (-.f64 (*.f64 re -1/2) (/.f64 re -4)) (-.f64 (*.f64 re -1/2) (+.f64 (*.f64 3 (/.f64 re -4)) (neg.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))))
(+.f64 (-.f64 (*.f64 re -1/2) (/.f64 re -4)) (-.f64 (*.f64 re -1/2) (+.f64 (*.f64 re -3/4) (neg.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))))
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (+.f64 (*.f64 re 1/4) (-.f64 (*.f64 re -1/2) (/.f64 re -4))))
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (+.f64 (*.f64 re 1/4) (-.f64 (*.f64 re -1/2) (*.f64 re -1/4))))
(+.f64 (-.f64 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re 1/2)) (/.f64 re 4)) (neg.f64 (/.f64 re 4)))
(+.f64 re (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
(+.f64 (-.f64 (+.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) (*.f64 re 1/2)) (*.f64 re -1/2))
(+.f64 re (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
(+.f64 (-.f64 (+.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) (/.f64 (*.f64 re 3/2) 2)) (neg.f64 (/.f64 re 4)))
(-.f64 (+.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) (+.f64 (/.f64 (*.f64 re 3/2) 2) (/.f64 re 4)))
(-.f64 (+.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) (/.f64 (+.f64 (*.f64 re 3) re) 4))
(-.f64 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 (/.f64 re 4) -4)) (neg.f64 re))
(+.f64 (-.f64 (neg.f64 re) (*.f64 3 (/.f64 re -4))) (neg.f64 (-.f64 (/.f64 re -4) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))))
(+.f64 re (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
(+.f64 (-.f64 (neg.f64 re) (-.f64 (/.f64 re -4) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))) (neg.f64 (*.f64 3 (/.f64 re -4))))
(+.f64 re (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
(+.f64 (-.f64 (neg.f64 re) (+.f64 (*.f64 3 (/.f64 re -4)) (neg.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))) (/.f64 re 4))
(+.f64 re (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
(+.f64 (-.f64 -1 (-.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))) (-.f64 1 (neg.f64 re)))
(+.f64 (-.f64 -1 (-.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))) (+.f64 re 1))
(+.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (+.f64 re 1)) (+.f64 re 1))
(+.f64 (/.f64 (+.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) 2) (/.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) 2))
(+.f64 re (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
(+.f64 (-.f64 (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2) (*.f64 re -1/2)) (/.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) 2))
(+.f64 re (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
(+.f64 (-.f64 (/.f64 re 4) (neg.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))) (/.f64 re -4))
(+.f64 re (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
(+.f64 (-.f64 (/.f64 re 4) (-.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))) (/.f64 (*.f64 re 3/2) 2))
(+.f64 re (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
(+.f64 (-.f64 (+.f64 (/.f64 re 4) (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) (*.f64 re 1/2)) (+.f64 (/.f64 re 4) (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)))
(+.f64 re (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
(+.f64 (-.f64 (+.f64 (/.f64 re 4) (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) re) (-.f64 (+.f64 (/.f64 re 4) (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) (*.f64 re -1/2)))
(+.f64 (-.f64 (+.f64 (/.f64 re 4) (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) (/.f64 re -4)) (/.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) 2))
(+.f64 (/.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) 2) (-.f64 (+.f64 (/.f64 re 4) (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) (/.f64 re -4)))
(+.f64 (/.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) 2) (-.f64 (/.f64 re 4) (-.f64 (*.f64 re -1/4) (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2))))
(+.f64 (-.f64 (/.f64 re 4) (-.f64 (*.f64 re 1/2) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))) (/.f64 re 4))
(+.f64 (/.f64 re 4) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (-.f64 (*.f64 re 1/2) (/.f64 re 4))))
(+.f64 (/.f64 re 4) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re 1/4)))
(+.f64 (-.f64 (+.f64 (/.f64 re 4) (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) (*.f64 re -1/2)) (-.f64 (+.f64 (/.f64 re 4) (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) re))
(+.f64 (-.f64 (+.f64 (/.f64 re 4) (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) re) (-.f64 (+.f64 (/.f64 re 4) (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) (*.f64 re -1/2)))
(+.f64 (-.f64 (*.f64 re -1/2) (+.f64 (*.f64 3 (/.f64 re -4)) (neg.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))) (-.f64 (*.f64 re -1/2) (/.f64 re -4)))
(+.f64 (-.f64 (*.f64 re -1/2) (/.f64 re -4)) (-.f64 (*.f64 re -1/2) (+.f64 (*.f64 re -3/4) (neg.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))))
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (+.f64 (*.f64 re 1/4) (-.f64 (*.f64 re -1/2) (/.f64 re -4))))
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (+.f64 (*.f64 re 1/4) (-.f64 (*.f64 re -1/2) (*.f64 re -1/4))))
(+.f64 (-.f64 (*.f64 re -1/2) (-.f64 (/.f64 re -4) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))) (-.f64 (*.f64 re -1/2) (*.f64 3 (/.f64 re -4))))
(+.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (-.f64 (/.f64 re -4) (*.f64 re -1/2))) (-.f64 (*.f64 re -1/2) (*.f64 re -3/4)))
(+.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (-.f64 (/.f64 re -4) (*.f64 re -1/2))) (*.f64 re 1/4))
(+.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re 1/4)) (*.f64 re 1/4))
(+.f64 (-.f64 (*.f64 re -1/2) (*.f64 3 (/.f64 re -4))) (-.f64 (*.f64 re -1/2) (-.f64 (/.f64 re -4) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))))
(+.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (-.f64 (/.f64 re -4) (*.f64 re -1/2))) (-.f64 (*.f64 re -1/2) (*.f64 re -3/4)))
(+.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (-.f64 (/.f64 re -4) (*.f64 re -1/2))) (*.f64 re 1/4))
(+.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re 1/4)) (*.f64 re 1/4))
(+.f64 (-.f64 (/.f64 re 4) (-.f64 (*.f64 re -1/2) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))) (-.f64 (/.f64 re 4) re))
(+.f64 (neg.f64 (/.f64 (*.f64 re 3/2) 2)) (+.f64 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re 1/2)) (/.f64 re 4)))
(+.f64 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re 1/2)) (+.f64 (/.f64 re 4) (/.f64 (*.f64 re 3/2) -2)))
(+.f64 (*.f64 re -3/4) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (-.f64 (*.f64 re 1/4) re)))
(+.f64 (-.f64 -1 (-.f64 (*.f64 re -1/2) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))) (-.f64 1 (*.f64 re 1/2)))
(+.f64 (-.f64 1 (*.f64 re 1/2)) (-.f64 -1 (-.f64 (*.f64 re -1/2) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))))
(+.f64 (+.f64 (*.f64 re -1/2) 1) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (+.f64 (*.f64 re -1/2) 1)))
(+.f64 (-.f64 -1 (neg.f64 re)) (-.f64 1 (-.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))))
(+.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (-.f64 re 1)) (-.f64 -1 (neg.f64 re)))
(+.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (-.f64 re 1)) (-.f64 re 1))
(+.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (+.f64 re -1)) (+.f64 re -1))
(+.f64 (-.f64 -1 (-.f64 (neg.f64 re) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))) (-.f64 1 re))
(+.f64 (-.f64 1 re) (-.f64 -1 (-.f64 (neg.f64 re) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))))
(+.f64 (-.f64 1 re) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (-.f64 1 re)))
(*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 1)
(+.f64 re (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
(*.f64 1/2 (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2))
(+.f64 re (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
(*.f64 1 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))
(+.f64 re (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
(*.f64 (neg.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) -1)
(+.f64 re (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
(*.f64 (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2) 1/2)
(+.f64 re (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
(*.f64 (*.f64 2 (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) 1/4)
(+.f64 re (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
(*.f64 (sqrt.f64 (*.f64 (+.f64 (*.f64 re re) (*.f64 im im)) 2)) (sqrt.f64 1/2))
(sqrt.f64 (*.f64 (*.f64 2 (+.f64 (*.f64 re re) (*.f64 im im))) 1/2))
(sqrt.f64 (*.f64 1/2 (*.f64 2 (+.f64 (*.f64 re re) (*.f64 im im)))))
(sqrt.f64 (*.f64 (+.f64 (*.f64 re re) (*.f64 im im)) 1))
(/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 1)
(+.f64 re (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
(/.f64 (neg.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) -1)
(+.f64 re (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
(/.f64 (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2) 2)
(+.f64 re (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
(/.f64 (*.f64 2 (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) 4)
(+.f64 re (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
(/.f64 (+.f64 (*.f64 re -2) (*.f64 2 (+.f64 re (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)))) 4)
(/.f64 (+.f64 (*.f64 re -2) (*.f64 2 (+.f64 re (*.f64 2 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))))) 4)
(+.f64 (*.f64 re -1/2) (/.f64 (*.f64 2 (+.f64 re (*.f64 2 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))) 4))
(/.f64 (+.f64 (*.f64 2 (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) (*.f64 2 (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2))) 8)
(+.f64 re (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
(/.f64 (+.f64 (*.f64 (+.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) 2) (*.f64 re -2)) 2)
(/.f64 (+.f64 (*.f64 re -2) (*.f64 2 (+.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))) 2)
(-.f64 (/.f64 (*.f64 (+.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) 4) 4) re)
(/.f64 (+.f64 (*.f64 2 (+.f64 re (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2))) (*.f64 re -2)) 4)
(/.f64 (+.f64 (*.f64 re -2) (*.f64 2 (+.f64 re (*.f64 2 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))))) 4)
(+.f64 (*.f64 re -1/2) (/.f64 (*.f64 2 (+.f64 re (*.f64 2 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))) 4))
(/.f64 (-.f64 (*.f64 2 (+.f64 re (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2))) (+.f64 re re)) 4)
(/.f64 (+.f64 (*.f64 re -2) (*.f64 2 (+.f64 re (*.f64 2 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))))) 4)
(+.f64 (*.f64 re -1/2) (/.f64 (*.f64 2 (+.f64 re (*.f64 2 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))) 4))
(/.f64 (-.f64 (+.f64 (neg.f64 re) (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) (neg.f64 re)) 2)
(+.f64 re (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
(/.f64 (-.f64 (*.f64 (+.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) 2) (+.f64 re re)) 2)
(/.f64 (+.f64 (*.f64 re -2) (*.f64 2 (+.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))) 2)
(-.f64 (/.f64 (*.f64 (+.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) 4) 4) re)
(/.f64 (-.f64 (*.f64 re -2) (-.f64 0 (*.f64 (+.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) 2))) 2)
(/.f64 (+.f64 (*.f64 re -2) (*.f64 2 (+.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))) 2)
(-.f64 (/.f64 (*.f64 (+.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) 4) 4) re)
(pow.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 1)
(+.f64 re (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
(neg.f64 (neg.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))
(+.f64 re (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
(+.f64 re (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
(-.f64 re (-.f64 (*.f64 re 1/2) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re 1/2))
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re -1/2))
(-.f64 re (-.f64 (*.f64 re 1/2) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re 1/2))
(-.f64 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re 1/2)) 0)
(-.f64 re (-.f64 (*.f64 re 1/2) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re 1/2))
(-.f64 (*.f64 re 1/2) (neg.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))
(-.f64 re (-.f64 (*.f64 re 1/2) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re 1/2))
(-.f64 0 (-.f64 (*.f64 re -1/2) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))
(-.f64 re (-.f64 (*.f64 re 1/2) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re 1/2))
(-.f64 (*.f64 re 3/2) (-.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))
(-.f64 re (-.f64 (*.f64 re 1/2) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re 1/2))
(-.f64 (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re -1/2)))
(-.f64 re (-.f64 (*.f64 re 1/2) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re 1/2))
(-.f64 (/.f64 re 4) (-.f64 (/.f64 re -4) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))
(-.f64 re (-.f64 (*.f64 re 1/2) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re 1/2))
(-.f64 (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2) (-.f64 (*.f64 re -1/2) (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)))
(-.f64 re (-.f64 (*.f64 re 1/2) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re 1/2))
(-.f64 (+.f64 (/.f64 re 4) (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) (-.f64 (/.f64 re -4) (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)))
(-.f64 re (-.f64 (*.f64 re 1/2) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re 1/2))
(-.f64 (+.f64 (/.f64 re 4) (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) (/.f64 (-.f64 (*.f64 re -1/2) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) 2))
(-.f64 re (-.f64 (*.f64 re 1/2) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re 1/2))
(-.f64 (/.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) 2) (-.f64 (neg.f64 re) (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)))
(-.f64 re (-.f64 (*.f64 re 1/2) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re 1/2))
(-.f64 (+.f64 (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2) (*.f64 re 1/2)) (-.f64 0 (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)))
(-.f64 re (-.f64 (*.f64 re 1/2) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re 1/2))
(-.f64 (+.f64 (/.f64 re 4) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) (/.f64 re -4))
(-.f64 re (-.f64 (*.f64 re 1/2) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re 1/2))
(-.f64 (-.f64 (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2) (*.f64 re -1/2)) (-.f64 0 (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)))
(-.f64 re (-.f64 (*.f64 re 1/2) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re 1/2))
(-.f64 (-.f64 (/.f64 re 4) (neg.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))) (/.f64 re -4))
(-.f64 re (-.f64 (*.f64 re 1/2) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re 1/2))
(-.f64 (-.f64 (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2) (neg.f64 re)) (-.f64 (*.f64 re 1/2) (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)))
(-.f64 re (-.f64 (*.f64 re 1/2) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re 1/2))
(-.f64 (+.f64 (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2) re) (-.f64 (*.f64 re 1/2) (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)))
(-.f64 re (-.f64 (*.f64 re 1/2) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re 1/2))
(-.f64 (+.f64 (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2) (/.f64 (*.f64 re 3/2) 2)) (-.f64 (/.f64 re 4) (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)))
(-.f64 (/.f64 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re 3/2)) 2) (-.f64 (/.f64 re 4) (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)))
(-.f64 (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2) (-.f64 (/.f64 re 4) (/.f64 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re 3/2)) 2)))
(-.f64 (+.f64 (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2) (*.f64 re 3/4)) (-.f64 (/.f64 re 4) (/.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)))
(*.f64 1/2 (+.f64 re (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)))
(-.f64 re (-.f64 (*.f64 re 1/2) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re 1/2))
(*.f64 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re 1/2)) 1)
(-.f64 re (-.f64 (*.f64 re 1/2) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re 1/2))
(*.f64 1 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re 1/2)))
(-.f64 re (-.f64 (*.f64 re 1/2) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re 1/2))
(*.f64 (+.f64 re (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) 1/2)
(-.f64 re (-.f64 (*.f64 re 1/2) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re 1/2))
(*.f64 (*.f64 2 (+.f64 re (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2))) 1/4)
(-.f64 re (-.f64 (*.f64 re 1/2) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re 1/2))
(/.f64 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re 1/2)) 1)
(-.f64 re (-.f64 (*.f64 re 1/2) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re 1/2))
(/.f64 (+.f64 re (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) 2)
(-.f64 re (-.f64 (*.f64 re 1/2) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re 1/2))
(/.f64 (*.f64 2 (+.f64 re (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2))) 4)
(/.f64 (*.f64 2 (+.f64 re (*.f64 2 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))) 4)
(/.f64 (+.f64 (*.f64 2 (+.f64 re (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2))) (*.f64 2 (+.f64 re (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)))) 8)
(/.f64 (*.f64 2 (+.f64 re (*.f64 2 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))) 4)
(/.f64 (+.f64 (*.f64 2 (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) (+.f64 re re)) 4)
(-.f64 re (-.f64 (*.f64 re 1/2) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re 1/2))
(/.f64 (+.f64 (+.f64 re re) (*.f64 2 (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2))) 4)
(-.f64 re (-.f64 (*.f64 re 1/2) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re 1/2))
(/.f64 (-.f64 (*.f64 2 (*.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) 2)) (*.f64 re -2)) 4)
(-.f64 re (-.f64 (*.f64 re 1/2) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re 1/2))
(pow.f64 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re 1/2)) 1)
(-.f64 re (-.f64 (*.f64 re 1/2) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re 1/2))
(neg.f64 (-.f64 (*.f64 re -1/2) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))
(-.f64 re (-.f64 (*.f64 re 1/2) (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))))
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re 1/2))

eval4.2s (11.9%)

Compiler

Compiled 30674 to 21594 computations (29.6% saved)

prune2.8s (7.8%)

Pruning

15 alts after pruning (12 fresh and 3 done)

PrunedKeptTotal
New1256121268
Fresh303
Picked101
Done235
Total1262151277
Error
0.0b
Counts
1277 → 15
Alt Table
Click to see full alt table
StatusErrorProgram
32.3b
(*.f64 1/2 (+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im))))
32.1b
(*.f64 1/2 (+.f64 (sqrt.f64 (*.f64 2 im)) (*.f64 -1/2 (*.f64 re (sqrt.f64 (*.f64 2 (/.f64 1 im)))))))
46.0b
(*.f64 1/2 (*.f64 (pow.f64 (sqrt.f64 im) 2) (*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 1/2 re)))))
46.0b
(*.f64 1/2 (*.f64 (pow.f64 (sqrt.f64 im) 2) (sqrt.f64 (/.f64 1 re))))
46.0b
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
51.4b
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1/2 re)) (sqrt.f64 (*.f64 2 (pow.f64 im 2)))))
30.3b
(*.f64 1/2 (*.f64 (sqrt.f64 (-.f64 im re)) (sqrt.f64 2)))
54.5b
(*.f64 1/2 (sqrt.f64 (/.f64 (pow.f64 im 2) re)))
34.3b
(*.f64 1/2 (sqrt.f64 (-.f64 (/.f64 (pow.f64 re 2) im) (*.f64 2 (-.f64 re im)))))
59.7b
(*.f64 1/2 (sqrt.f64 (*.f64 re -2)))
39.8b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
30.0b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 im re))))
47.1b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 re -2))))
31.7b
(*.f64 1/2 (sqrt.f64 (*.f64 2 im)))
58.5b
(*.f64 1/2 (sqrt.f64 (*.f64 2 0)))
Compiler

Compiled 347 to 291 computations (16.1% saved)

localize30.0ms (0.1%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(sqrt.f64 (-.f64 im re))
0.3b
(*.f64 (sqrt.f64 (-.f64 im re)) (sqrt.f64 2))
Compiler

Compiled 31 to 16 computations (48.4% saved)

series6.0ms (0%)

Counts
2 → 16
Calls

12 calls:

TimeVariablePointExpression
1.0ms
im
@-inf
(*.f64 (sqrt.f64 (-.f64 im re)) (sqrt.f64 2))
1.0ms
im
@-inf
(sqrt.f64 (-.f64 im re))
1.0ms
im
@0
(sqrt.f64 (-.f64 im re))
0.0ms
im
@inf
(sqrt.f64 (-.f64 im re))
0.0ms
re
@inf
(sqrt.f64 (-.f64 im re))

rewrite381.0ms (1.1%)

Algorithm
batch-egg-rewrite
Rules
684×rational_best-simplify-83
646×rational_best-simplify-1
574×rational_best-simplify-47
508×rational_best-simplify-57
494×rational_best-simplify-51
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01028
16528
212428
330828
4111528
5688928
Stop Event
node limit
Counts
2 → 62
Calls
Call 1
Inputs
(*.f64 (sqrt.f64 (-.f64 im re)) (sqrt.f64 2))
(sqrt.f64 (-.f64 im re))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (sqrt.f64 (*.f64 (-.f64 re im) -2)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (sqrt.f64 (*.f64 (-.f64 re im) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sqrt.f64 (*.f64 (-.f64 re im) -2)) 1/2) (*.f64 (sqrt.f64 (*.f64 (-.f64 re im) -2)) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (sqrt.f64 (*.f64 (-.f64 re im) -2)) 4) (+.f64 (/.f64 (sqrt.f64 (*.f64 (-.f64 re im) -2)) 4) (*.f64 (sqrt.f64 (*.f64 (-.f64 re im) -2)) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (sqrt.f64 (*.f64 (-.f64 re im) -2)) 4) (/.f64 (*.f64 -3 (/.f64 (sqrt.f64 (*.f64 (-.f64 re im) -2)) -2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (sqrt.f64 (*.f64 (-.f64 re im) -2)) 4) (/.f64 (*.f64 (sqrt.f64 (*.f64 (-.f64 re im) -2)) 3) 4))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (sqrt.f64 (*.f64 (-.f64 re im) -2)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (sqrt.f64 (*.f64 (-.f64 re im) -2)) 1/2) (/.f64 (sqrt.f64 (*.f64 (-.f64 re im) -2)) -2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (/.f64 (sqrt.f64 (*.f64 (-.f64 re im) -2)) 4) (*.f64 (sqrt.f64 (*.f64 (-.f64 re im) -2)) 1/2)) (neg.f64 (/.f64 (sqrt.f64 (*.f64 (-.f64 re im) -2)) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 -3 (/.f64 (sqrt.f64 (*.f64 (-.f64 re im) -2)) -2)) 2) (/.f64 (/.f64 (sqrt.f64 (*.f64 (-.f64 re im) -2)) -2) 2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 (sqrt.f64 (*.f64 (-.f64 re im) -2)) 3) 4) (/.f64 (neg.f64 (sqrt.f64 (*.f64 (-.f64 re im) -2))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (*.f64 (-.f64 re im) -2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (sqrt.f64 (*.f64 (-.f64 re im) -2))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 (*.f64 (-.f64 re im) -2)) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (sqrt.f64 (*.f64 (-.f64 re im) -2)) 4) 4) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (sqrt.f64 (*.f64 (-.f64 re im) -2)) 4)) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 (sqrt.f64 (*.f64 (-.f64 re im) -2)) 4)) (*.f64 2 (*.f64 (sqrt.f64 (*.f64 (-.f64 re im) -2)) 4))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 (*.f64 (sqrt.f64 (*.f64 (-.f64 re im) -2)) 4) 4) (*.f64 (*.f64 (sqrt.f64 (*.f64 (-.f64 re im) -2)) 4) 4)) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 4 (*.f64 (*.f64 (sqrt.f64 (*.f64 (-.f64 re im) -2)) 4) 4)) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (*.f64 2 (*.f64 (sqrt.f64 (-.f64 im re)) 4)) (*.f64 2 (*.f64 (sqrt.f64 (-.f64 im re)) 4))) (+.f64 (*.f64 (*.f64 2 (sqrt.f64 2)) 4) (*.f64 (*.f64 2 (sqrt.f64 2)) 4))) 256)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (*.f64 (*.f64 2 (sqrt.f64 2)) 4) (*.f64 (*.f64 2 (sqrt.f64 2)) 4)) (+.f64 (*.f64 2 (*.f64 (sqrt.f64 (-.f64 im re)) 4)) (*.f64 2 (*.f64 (sqrt.f64 (-.f64 im re)) 4)))) 256)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (sqrt.f64 (-.f64 im re)) 4) (+.f64 (*.f64 (*.f64 2 (sqrt.f64 2)) 4) (*.f64 (*.f64 2 (sqrt.f64 2)) 4))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (sqrt.f64 2) 4) (+.f64 (*.f64 2 (*.f64 (sqrt.f64 (-.f64 im re)) 4)) (*.f64 2 (*.f64 (sqrt.f64 (-.f64 im re)) 4)))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 2) (+.f64 (*.f64 2 (*.f64 (sqrt.f64 (-.f64 im re)) 4)) (*.f64 2 (*.f64 (sqrt.f64 (-.f64 im re)) 4)))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 (-.f64 im re)) (+.f64 (*.f64 (*.f64 2 (sqrt.f64 2)) 4) (*.f64 (*.f64 2 (sqrt.f64 2)) 4))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (-.f64 re im) -2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 (-.f64 re im) -2))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (sqrt.f64 (-.f64 im re)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (sqrt.f64 (-.f64 im re)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sqrt.f64 (-.f64 im re)) 1/2) (*.f64 (sqrt.f64 (-.f64 im re)) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (sqrt.f64 (-.f64 im re)) 4) (+.f64 (/.f64 (sqrt.f64 (-.f64 im re)) 4) (*.f64 (sqrt.f64 (-.f64 im re)) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (sqrt.f64 (-.f64 im re)) 4) (/.f64 (*.f64 -3 (/.f64 (sqrt.f64 (-.f64 im re)) -2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (sqrt.f64 (-.f64 im re)) 4) (/.f64 (*.f64 (sqrt.f64 (-.f64 im re)) 3) 4))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (sqrt.f64 (-.f64 im re)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (sqrt.f64 (-.f64 im re)) 1/2) (/.f64 (sqrt.f64 (-.f64 im re)) -2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (/.f64 (sqrt.f64 (-.f64 im re)) 4) (*.f64 (sqrt.f64 (-.f64 im re)) 1/2)) (neg.f64 (/.f64 (sqrt.f64 (-.f64 im re)) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 -3 (/.f64 (sqrt.f64 (-.f64 im re)) -2)) 2) (/.f64 (/.f64 (sqrt.f64 (-.f64 im re)) -2) 2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 (sqrt.f64 (-.f64 im re)) 3) 4) (/.f64 (neg.f64 (sqrt.f64 (-.f64 im re))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (-.f64 im re)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (sqrt.f64 (-.f64 im re)) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (-.f64 re im) -2)) (sqrt.f64 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (sqrt.f64 (-.f64 im re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (-.f64 im re)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 (sqrt.f64 (-.f64 im re)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (sqrt.f64 (*.f64 (-.f64 im re) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (-.f64 im re)) 1/2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (-.f64 im re)) 4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -2 (/.f64 (sqrt.f64 (-.f64 im re)) -2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 (sqrt.f64 (-.f64 im re)) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (*.f64 (sqrt.f64 (-.f64 im re)) 4)) 1/8)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 1/2) (sqrt.f64 (*.f64 (-.f64 re im) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/8 (*.f64 2 (*.f64 (sqrt.f64 (-.f64 im re)) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (-.f64 im re) 4)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (-.f64 re im)) (sqrt.f64 -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 -1) (sqrt.f64 (-.f64 re im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (sqrt.f64 1/2) (sqrt.f64 1/2)) (*.f64 (sqrt.f64 (*.f64 (-.f64 re im) -2)) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (-.f64 im re)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 (-.f64 im re)) 2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 (-.f64 im re)) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (sqrt.f64 (-.f64 im re)) 4)) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 (sqrt.f64 (-.f64 im re)) 4)) (*.f64 2 (*.f64 (sqrt.f64 (-.f64 im re)) 4))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (-.f64 im re)) 1)))))

simplify296.0ms (0.8%)

Algorithm
egg-herbie
Rules
1212×rational_best-simplify-75
1108×rational_best-simplify-76
824×rational_best-simplify-50
796×rational_best-simplify-56
728×rational_best-simplify-3
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02272428
15682240
213672136
344652136
Stop Event
node limit
Counts
78 → 132
Calls
Call 1
Inputs
(*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 -1)) (sqrt.f64 re))
(+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) im) (sqrt.f64 -1)) (sqrt.f64 (/.f64 1 re)))) (*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 -1)) (sqrt.f64 re)))
(+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) im) (sqrt.f64 -1)) (sqrt.f64 (/.f64 1 re)))) (+.f64 (*.f64 -1/8 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 2)) (pow.f64 (sqrt.f64 -1) 3)) (sqrt.f64 (/.f64 1 (pow.f64 re 3))))) (*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 -1)) (sqrt.f64 re))))
(+.f64 (*.f64 1/16 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 3)) (pow.f64 (sqrt.f64 -1) 5)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) (+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) im) (sqrt.f64 -1)) (sqrt.f64 (/.f64 1 re)))) (+.f64 (*.f64 -1/8 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 2)) (pow.f64 (sqrt.f64 -1) 3)) (sqrt.f64 (/.f64 1 (pow.f64 re 3))))) (*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 -1)) (sqrt.f64 re)))))
(*.f64 (sqrt.f64 2) (sqrt.f64 im))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (+.f64 (*.f64 -1/8 (*.f64 (*.f64 (sqrt.f64 2) (pow.f64 re 2)) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (*.f64 (sqrt.f64 2) (sqrt.f64 im))))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (+.f64 (*.f64 -1/16 (*.f64 (*.f64 (sqrt.f64 2) (pow.f64 re 3)) (sqrt.f64 (/.f64 1 (pow.f64 im 5))))) (+.f64 (*.f64 -1/8 (*.f64 (*.f64 (sqrt.f64 2) (pow.f64 re 2)) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))))
(*.f64 (sqrt.f64 -1) (sqrt.f64 re))
(+.f64 (*.f64 1/2 (*.f64 (/.f64 im (sqrt.f64 -1)) (sqrt.f64 (/.f64 1 re)))) (*.f64 (sqrt.f64 -1) (sqrt.f64 re)))
(+.f64 (*.f64 1/2 (*.f64 (/.f64 im (sqrt.f64 -1)) (sqrt.f64 (/.f64 1 re)))) (+.f64 (*.f64 -1/8 (*.f64 (/.f64 (pow.f64 im 2) (pow.f64 (sqrt.f64 -1) 3)) (sqrt.f64 (/.f64 1 (pow.f64 re 3))))) (*.f64 (sqrt.f64 -1) (sqrt.f64 re))))
(+.f64 (*.f64 1/2 (*.f64 (/.f64 im (sqrt.f64 -1)) (sqrt.f64 (/.f64 1 re)))) (+.f64 (*.f64 -1/8 (*.f64 (/.f64 (pow.f64 im 2) (pow.f64 (sqrt.f64 -1) 3)) (sqrt.f64 (/.f64 1 (pow.f64 re 3))))) (+.f64 (*.f64 (sqrt.f64 -1) (sqrt.f64 re)) (*.f64 1/16 (*.f64 (/.f64 (pow.f64 im 3) (pow.f64 (sqrt.f64 -1) 5)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))))))
(sqrt.f64 im)
(+.f64 (sqrt.f64 im) (*.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 1 im)))))
(+.f64 (sqrt.f64 im) (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 re 2) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (*.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 1 im))))))
(+.f64 (sqrt.f64 im) (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 re 2) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (+.f64 (*.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 1 im)))) (*.f64 -1/16 (*.f64 (pow.f64 re 3) (sqrt.f64 (/.f64 1 (pow.f64 im 5))))))))
(+.f64 (sqrt.f64 (*.f64 (-.f64 re im) -2)) 0)
(+.f64 0 (sqrt.f64 (*.f64 (-.f64 re im) -2)))
(+.f64 (*.f64 (sqrt.f64 (*.f64 (-.f64 re im) -2)) 1/2) (*.f64 (sqrt.f64 (*.f64 (-.f64 re im) -2)) 1/2))
(+.f64 (/.f64 (sqrt.f64 (*.f64 (-.f64 re im) -2)) 4) (+.f64 (/.f64 (sqrt.f64 (*.f64 (-.f64 re im) -2)) 4) (*.f64 (sqrt.f64 (*.f64 (-.f64 re im) -2)) 1/2)))
(+.f64 (/.f64 (sqrt.f64 (*.f64 (-.f64 re im) -2)) 4) (/.f64 (*.f64 -3 (/.f64 (sqrt.f64 (*.f64 (-.f64 re im) -2)) -2)) 2))
(+.f64 (/.f64 (sqrt.f64 (*.f64 (-.f64 re im) -2)) 4) (/.f64 (*.f64 (sqrt.f64 (*.f64 (-.f64 re im) -2)) 3) 4))
(-.f64 (sqrt.f64 (*.f64 (-.f64 re im) -2)) 0)
(-.f64 (*.f64 (sqrt.f64 (*.f64 (-.f64 re im) -2)) 1/2) (/.f64 (sqrt.f64 (*.f64 (-.f64 re im) -2)) -2))
(-.f64 (+.f64 (/.f64 (sqrt.f64 (*.f64 (-.f64 re im) -2)) 4) (*.f64 (sqrt.f64 (*.f64 (-.f64 re im) -2)) 1/2)) (neg.f64 (/.f64 (sqrt.f64 (*.f64 (-.f64 re im) -2)) 4)))
(-.f64 (/.f64 (*.f64 -3 (/.f64 (sqrt.f64 (*.f64 (-.f64 re im) -2)) -2)) 2) (/.f64 (/.f64 (sqrt.f64 (*.f64 (-.f64 re im) -2)) -2) 2))
(-.f64 (/.f64 (*.f64 (sqrt.f64 (*.f64 (-.f64 re im) -2)) 3) 4) (/.f64 (neg.f64 (sqrt.f64 (*.f64 (-.f64 re im) -2))) 4))
(/.f64 (sqrt.f64 (*.f64 (-.f64 re im) -2)) 1)
(/.f64 (*.f64 2 (sqrt.f64 (*.f64 (-.f64 re im) -2))) 2)
(/.f64 (*.f64 (sqrt.f64 (*.f64 (-.f64 re im) -2)) 4) 4)
(/.f64 (*.f64 (*.f64 (sqrt.f64 (*.f64 (-.f64 re im) -2)) 4) 4) 16)
(/.f64 (*.f64 2 (*.f64 (sqrt.f64 (*.f64 (-.f64 re im) -2)) 4)) 8)
(/.f64 (+.f64 (*.f64 2 (*.f64 (sqrt.f64 (*.f64 (-.f64 re im) -2)) 4)) (*.f64 2 (*.f64 (sqrt.f64 (*.f64 (-.f64 re im) -2)) 4))) 16)
(/.f64 (+.f64 (*.f64 (*.f64 (sqrt.f64 (*.f64 (-.f64 re im) -2)) 4) 4) (*.f64 (*.f64 (sqrt.f64 (*.f64 (-.f64 re im) -2)) 4) 4)) 32)
(/.f64 (*.f64 4 (*.f64 (*.f64 (sqrt.f64 (*.f64 (-.f64 re im) -2)) 4) 4)) 64)
(/.f64 (*.f64 (+.f64 (*.f64 2 (*.f64 (sqrt.f64 (-.f64 im re)) 4)) (*.f64 2 (*.f64 (sqrt.f64 (-.f64 im re)) 4))) (+.f64 (*.f64 (*.f64 2 (sqrt.f64 2)) 4) (*.f64 (*.f64 2 (sqrt.f64 2)) 4))) 256)
(/.f64 (*.f64 (+.f64 (*.f64 (*.f64 2 (sqrt.f64 2)) 4) (*.f64 (*.f64 2 (sqrt.f64 2)) 4)) (+.f64 (*.f64 2 (*.f64 (sqrt.f64 (-.f64 im re)) 4)) (*.f64 2 (*.f64 (sqrt.f64 (-.f64 im re)) 4)))) 256)
(/.f64 (*.f64 (*.f64 (sqrt.f64 (-.f64 im re)) 4) (+.f64 (*.f64 (*.f64 2 (sqrt.f64 2)) 4) (*.f64 (*.f64 2 (sqrt.f64 2)) 4))) 64)
(/.f64 (*.f64 (*.f64 (sqrt.f64 2) 4) (+.f64 (*.f64 2 (*.f64 (sqrt.f64 (-.f64 im re)) 4)) (*.f64 2 (*.f64 (sqrt.f64 (-.f64 im re)) 4)))) 64)
(/.f64 (*.f64 (sqrt.f64 2) (+.f64 (*.f64 2 (*.f64 (sqrt.f64 (-.f64 im re)) 4)) (*.f64 2 (*.f64 (sqrt.f64 (-.f64 im re)) 4)))) 16)
(/.f64 (*.f64 (sqrt.f64 (-.f64 im re)) (+.f64 (*.f64 (*.f64 2 (sqrt.f64 2)) 4) (*.f64 (*.f64 2 (sqrt.f64 2)) 4))) 16)
(pow.f64 (sqrt.f64 (*.f64 (-.f64 re im) -2)) 1)
(sqrt.f64 (*.f64 (-.f64 re im) -2))
(+.f64 (sqrt.f64 (-.f64 im re)) 0)
(+.f64 0 (sqrt.f64 (-.f64 im re)))
(+.f64 (*.f64 (sqrt.f64 (-.f64 im re)) 1/2) (*.f64 (sqrt.f64 (-.f64 im re)) 1/2))
(+.f64 (/.f64 (sqrt.f64 (-.f64 im re)) 4) (+.f64 (/.f64 (sqrt.f64 (-.f64 im re)) 4) (*.f64 (sqrt.f64 (-.f64 im re)) 1/2)))
(+.f64 (/.f64 (sqrt.f64 (-.f64 im re)) 4) (/.f64 (*.f64 -3 (/.f64 (sqrt.f64 (-.f64 im re)) -2)) 2))
(+.f64 (/.f64 (sqrt.f64 (-.f64 im re)) 4) (/.f64 (*.f64 (sqrt.f64 (-.f64 im re)) 3) 4))
(-.f64 (sqrt.f64 (-.f64 im re)) 0)
(-.f64 (*.f64 (sqrt.f64 (-.f64 im re)) 1/2) (/.f64 (sqrt.f64 (-.f64 im re)) -2))
(-.f64 (+.f64 (/.f64 (sqrt.f64 (-.f64 im re)) 4) (*.f64 (sqrt.f64 (-.f64 im re)) 1/2)) (neg.f64 (/.f64 (sqrt.f64 (-.f64 im re)) 4)))
(-.f64 (/.f64 (*.f64 -3 (/.f64 (sqrt.f64 (-.f64 im re)) -2)) 2) (/.f64 (/.f64 (sqrt.f64 (-.f64 im re)) -2) 2))
(-.f64 (/.f64 (*.f64 (sqrt.f64 (-.f64 im re)) 3) 4) (/.f64 (neg.f64 (sqrt.f64 (-.f64 im re))) 4))
(*.f64 (sqrt.f64 (-.f64 im re)) 1)
(*.f64 2 (*.f64 (sqrt.f64 (-.f64 im re)) 1/2))
(*.f64 (sqrt.f64 (*.f64 (-.f64 re im) -2)) (sqrt.f64 1/2))
(*.f64 1 (sqrt.f64 (-.f64 im re)))
(*.f64 (*.f64 (sqrt.f64 (-.f64 im re)) 2) 1/2)
(*.f64 1/2 (*.f64 (sqrt.f64 (-.f64 im re)) 2))
(*.f64 1/2 (sqrt.f64 (*.f64 (-.f64 im re) 4)))
(*.f64 (*.f64 (sqrt.f64 (-.f64 im re)) 1/2) 2)
(*.f64 (*.f64 (sqrt.f64 (-.f64 im re)) 4) 1/4)
(*.f64 -2 (/.f64 (sqrt.f64 (-.f64 im re)) -2))
(*.f64 1/4 (*.f64 (sqrt.f64 (-.f64 im re)) 4))
(*.f64 (*.f64 2 (*.f64 (sqrt.f64 (-.f64 im re)) 4)) 1/8)
(*.f64 (sqrt.f64 1/2) (sqrt.f64 (*.f64 (-.f64 re im) -2)))
(*.f64 1/8 (*.f64 2 (*.f64 (sqrt.f64 (-.f64 im re)) 4)))
(*.f64 (sqrt.f64 (*.f64 (-.f64 im re) 4)) 1/2)
(*.f64 (sqrt.f64 (-.f64 re im)) (sqrt.f64 -1))
(*.f64 (sqrt.f64 -1) (sqrt.f64 (-.f64 re im)))
(*.f64 (+.f64 (sqrt.f64 1/2) (sqrt.f64 1/2)) (*.f64 (sqrt.f64 (*.f64 (-.f64 re im) -2)) 1/2))
(/.f64 (sqrt.f64 (-.f64 im re)) 1)
(/.f64 (*.f64 (sqrt.f64 (-.f64 im re)) 2) 2)
(/.f64 (*.f64 (sqrt.f64 (-.f64 im re)) 4) 4)
(/.f64 (*.f64 2 (*.f64 (sqrt.f64 (-.f64 im re)) 4)) 8)
(/.f64 (+.f64 (*.f64 2 (*.f64 (sqrt.f64 (-.f64 im re)) 4)) (*.f64 2 (*.f64 (sqrt.f64 (-.f64 im re)) 4))) 16)
(pow.f64 (sqrt.f64 (-.f64 im re)) 1)
Outputs
(*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 -1)) (sqrt.f64 re))
(*.f64 (sqrt.f64 -2) (sqrt.f64 re))
(sqrt.f64 (*.f64 -2 re))
(sqrt.f64 (*.f64 re -2))
(+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) im) (sqrt.f64 -1)) (sqrt.f64 (/.f64 1 re)))) (*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 -1)) (sqrt.f64 re)))
(+.f64 (*.f64 (sqrt.f64 -2) (sqrt.f64 re)) (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) im) (sqrt.f64 -1)) (sqrt.f64 (/.f64 1 re)))))
(+.f64 (sqrt.f64 (*.f64 -2 re)) (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) im) (/.f64 (sqrt.f64 (/.f64 1 re)) (sqrt.f64 -1)))))
(+.f64 (sqrt.f64 (*.f64 re -2)) (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) im) (/.f64 (sqrt.f64 (/.f64 1 re)) (sqrt.f64 -1)))))
(+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) im) (sqrt.f64 -1)) (sqrt.f64 (/.f64 1 re)))) (+.f64 (*.f64 -1/8 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 2)) (pow.f64 (sqrt.f64 -1) 3)) (sqrt.f64 (/.f64 1 (pow.f64 re 3))))) (*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 -1)) (sqrt.f64 re))))
(+.f64 (*.f64 (sqrt.f64 -2) (sqrt.f64 re)) (+.f64 (*.f64 -1/8 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 2)) (sqrt.f64 -1)) (sqrt.f64 (/.f64 1 (pow.f64 re 3))))) (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) im) (sqrt.f64 -1)) (sqrt.f64 (/.f64 1 re))))))
(+.f64 (sqrt.f64 (*.f64 -2 re)) (+.f64 (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) im) (/.f64 (sqrt.f64 (/.f64 1 re)) (sqrt.f64 -1)))) (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 2)) (sqrt.f64 -1)) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) -1/8))))
(+.f64 (sqrt.f64 (*.f64 re -2)) (+.f64 (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) im) (/.f64 (sqrt.f64 (/.f64 1 re)) (sqrt.f64 -1)))) (*.f64 -1/8 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 2)) (sqrt.f64 -1)) (sqrt.f64 (/.f64 1 (pow.f64 re 3)))))))
(+.f64 (sqrt.f64 (*.f64 re -2)) (+.f64 (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) im) (/.f64 (sqrt.f64 (/.f64 1 re)) (sqrt.f64 -1)))) (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 2)) (sqrt.f64 -1)) (*.f64 -1/8 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))))))
(+.f64 (*.f64 1/16 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 3)) (pow.f64 (sqrt.f64 -1) 5)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) (+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) im) (sqrt.f64 -1)) (sqrt.f64 (/.f64 1 re)))) (+.f64 (*.f64 -1/8 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 2)) (pow.f64 (sqrt.f64 -1) 3)) (sqrt.f64 (/.f64 1 (pow.f64 re 3))))) (*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 -1)) (sqrt.f64 re)))))
(+.f64 (+.f64 (*.f64 (sqrt.f64 -2) (sqrt.f64 re)) (*.f64 -1/8 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 2)) (sqrt.f64 -1)) (sqrt.f64 (/.f64 1 (pow.f64 re 3)))))) (+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) im) (sqrt.f64 -1)) (sqrt.f64 (/.f64 1 re)))) (*.f64 1/16 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 3)) (sqrt.f64 -1)) (sqrt.f64 (/.f64 1 (pow.f64 re 5)))))))
(+.f64 (+.f64 (sqrt.f64 (*.f64 -2 re)) (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 2)) (sqrt.f64 -1)) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) -1/8))) (+.f64 (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) im) (/.f64 (sqrt.f64 (/.f64 1 re)) (sqrt.f64 -1)))) (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 3)) (sqrt.f64 -1)) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) 1/16))))
(+.f64 (+.f64 (sqrt.f64 (*.f64 re -2)) (*.f64 -1/8 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 2)) (sqrt.f64 -1)) (sqrt.f64 (/.f64 1 (pow.f64 re 3)))))) (+.f64 (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) im) (/.f64 (sqrt.f64 (/.f64 1 re)) (sqrt.f64 -1)))) (*.f64 1/16 (*.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 3)) (/.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (sqrt.f64 -1))))))
(+.f64 (sqrt.f64 (*.f64 re -2)) (+.f64 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (*.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 3)) (/.f64 1/16 (sqrt.f64 -1)))) (+.f64 (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) im) (/.f64 (sqrt.f64 (/.f64 1 re)) (sqrt.f64 -1)))) (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 2)) (sqrt.f64 -1)) (*.f64 -1/8 (sqrt.f64 (/.f64 1 (pow.f64 re 3))))))))
(*.f64 (sqrt.f64 2) (sqrt.f64 im))
(sqrt.f64 (*.f64 2 im))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))
(+.f64 (sqrt.f64 (*.f64 2 im)) (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))))
(+.f64 (sqrt.f64 (*.f64 2 im)) (*.f64 -1/2 (*.f64 re (sqrt.f64 (*.f64 2 (/.f64 1 im))))))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (+.f64 (*.f64 -1/8 (*.f64 (*.f64 (sqrt.f64 2) (pow.f64 re 2)) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (*.f64 (sqrt.f64 2) (sqrt.f64 im))))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (+.f64 (sqrt.f64 (*.f64 2 im)) (*.f64 -1/8 (*.f64 (*.f64 (sqrt.f64 2) (pow.f64 re 2)) (sqrt.f64 (/.f64 1 (pow.f64 im 3)))))))
(+.f64 (sqrt.f64 (*.f64 2 im)) (+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 im 3))) (*.f64 -1/8 (*.f64 (sqrt.f64 2) (pow.f64 re 2))))))
(+.f64 (sqrt.f64 (*.f64 2 im)) (+.f64 (*.f64 -1/2 (*.f64 re (sqrt.f64 (*.f64 2 (/.f64 1 im))))) (*.f64 -1/8 (*.f64 (pow.f64 re 2) (sqrt.f64 (*.f64 2 (/.f64 1 (pow.f64 im 3))))))))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (+.f64 (*.f64 -1/16 (*.f64 (*.f64 (sqrt.f64 2) (pow.f64 re 3)) (sqrt.f64 (/.f64 1 (pow.f64 im 5))))) (+.f64 (*.f64 -1/8 (*.f64 (*.f64 (sqrt.f64 2) (pow.f64 re 2)) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (+.f64 (+.f64 (sqrt.f64 (*.f64 2 im)) (*.f64 -1/8 (*.f64 (*.f64 (sqrt.f64 2) (pow.f64 re 2)) (sqrt.f64 (/.f64 1 (pow.f64 im 3)))))) (*.f64 -1/16 (*.f64 (*.f64 (sqrt.f64 2) (pow.f64 re 3)) (sqrt.f64 (/.f64 1 (pow.f64 im 5)))))))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (+.f64 (sqrt.f64 (*.f64 2 im)) (+.f64 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 im 3))) (*.f64 -1/8 (*.f64 (sqrt.f64 2) (pow.f64 re 2)))) (*.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 re 3) (sqrt.f64 (/.f64 1 (pow.f64 im 5)))))))))
(+.f64 (*.f64 -1/2 (*.f64 re (sqrt.f64 (*.f64 2 (/.f64 1 im))))) (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 re 2) (sqrt.f64 (*.f64 2 (/.f64 1 (pow.f64 im 3)))))) (+.f64 (sqrt.f64 (*.f64 2 im)) (*.f64 -1/16 (*.f64 (pow.f64 re 3) (sqrt.f64 (*.f64 2 (/.f64 1 (pow.f64 im 5)))))))))
(+.f64 (+.f64 (*.f64 -1/2 (*.f64 re (sqrt.f64 (*.f64 2 (/.f64 1 im))))) (*.f64 -1/8 (*.f64 (pow.f64 re 2) (sqrt.f64 (*.f64 2 (/.f64 1 (pow.f64 im 3))))))) (+.f64 (sqrt.f64 (*.f64 2 im)) (*.f64 -1/16 (*.f64 (pow.f64 re 3) (sqrt.f64 (*.f64 2 (/.f64 1 (pow.f64 im 5))))))))
(*.f64 (sqrt.f64 -1) (sqrt.f64 re))
(sqrt.f64 (*.f64 -1 re))
(sqrt.f64 (neg.f64 re))
(+.f64 (*.f64 1/2 (*.f64 (/.f64 im (sqrt.f64 -1)) (sqrt.f64 (/.f64 1 re)))) (*.f64 (sqrt.f64 -1) (sqrt.f64 re)))
(+.f64 (sqrt.f64 (*.f64 -1 re)) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) (/.f64 im (sqrt.f64 -1)))))
(+.f64 (sqrt.f64 (*.f64 -1 re)) (*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 1/2 (/.f64 im (sqrt.f64 -1)))))
(+.f64 (sqrt.f64 (neg.f64 re)) (*.f64 1/2 (*.f64 im (/.f64 (sqrt.f64 (/.f64 1 re)) (sqrt.f64 -1)))))
(+.f64 (sqrt.f64 (neg.f64 re)) (*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 1/2 (/.f64 im (sqrt.f64 -1)))))
(+.f64 (*.f64 1/2 (*.f64 (/.f64 im (sqrt.f64 -1)) (sqrt.f64 (/.f64 1 re)))) (+.f64 (*.f64 -1/8 (*.f64 (/.f64 (pow.f64 im 2) (pow.f64 (sqrt.f64 -1) 3)) (sqrt.f64 (/.f64 1 (pow.f64 re 3))))) (*.f64 (sqrt.f64 -1) (sqrt.f64 re))))
(+.f64 (sqrt.f64 (*.f64 -1 re)) (+.f64 (*.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (/.f64 (pow.f64 im 2) (sqrt.f64 -1)))) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) (/.f64 im (sqrt.f64 -1))))))
(+.f64 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (*.f64 -1/8 (/.f64 (pow.f64 im 2) (sqrt.f64 -1)))) (+.f64 (sqrt.f64 (*.f64 -1 re)) (*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 1/2 (/.f64 im (sqrt.f64 -1))))))
(+.f64 (sqrt.f64 (neg.f64 re)) (+.f64 (*.f64 1/2 (*.f64 im (/.f64 (sqrt.f64 (/.f64 1 re)) (sqrt.f64 -1)))) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (*.f64 (pow.f64 im 2) (/.f64 -1/8 (sqrt.f64 -1))))))
(+.f64 (+.f64 (sqrt.f64 (neg.f64 re)) (*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 1/2 (/.f64 im (sqrt.f64 -1))))) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (*.f64 -1/8 (/.f64 (pow.f64 im 2) (sqrt.f64 -1)))))
(+.f64 (*.f64 1/2 (*.f64 (/.f64 im (sqrt.f64 -1)) (sqrt.f64 (/.f64 1 re)))) (+.f64 (*.f64 -1/8 (*.f64 (/.f64 (pow.f64 im 2) (pow.f64 (sqrt.f64 -1) 3)) (sqrt.f64 (/.f64 1 (pow.f64 re 3))))) (+.f64 (*.f64 (sqrt.f64 -1) (sqrt.f64 re)) (*.f64 1/16 (*.f64 (/.f64 (pow.f64 im 3) (pow.f64 (sqrt.f64 -1) 5)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))))))
(+.f64 (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) (/.f64 im (sqrt.f64 -1)))) (+.f64 (*.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (/.f64 (pow.f64 im 2) (sqrt.f64 -1)))) (+.f64 (sqrt.f64 (*.f64 -1 re)) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (*.f64 (/.f64 (pow.f64 im 3) (sqrt.f64 -1)) 1/16)))))
(+.f64 (+.f64 (sqrt.f64 (*.f64 -1 re)) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (*.f64 -1/8 (/.f64 (pow.f64 im 2) (sqrt.f64 -1))))) (+.f64 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (*.f64 1/16 (/.f64 (pow.f64 im 3) (sqrt.f64 -1)))) (*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 1/2 (/.f64 im (sqrt.f64 -1))))))
(+.f64 (sqrt.f64 (neg.f64 re)) (+.f64 (*.f64 1/16 (*.f64 (pow.f64 im 3) (/.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (sqrt.f64 -1)))) (+.f64 (*.f64 1/2 (*.f64 im (/.f64 (sqrt.f64 (/.f64 1 re)) (sqrt.f64 -1)))) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (*.f64 (pow.f64 im 2) (/.f64 -1/8 (sqrt.f64 -1)))))))
(+.f64 (sqrt.f64 (neg.f64 re)) (+.f64 (*.f64 1/16 (*.f64 (pow.f64 im 3) (/.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 5))) (sqrt.f64 -1)))) (+.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 1/2 (/.f64 im (sqrt.f64 -1)))) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (*.f64 -1/8 (/.f64 (pow.f64 im 2) (sqrt.f64 -1)))))))
(sqrt.f64 im)
(+.f64 (sqrt.f64 im) (*.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 1 im)))))
(+.f64 (sqrt.f64 im) (*.f64 re (*.f64 (sqrt.f64 (/.f64 1 im)) -1/2)))
(+.f64 (sqrt.f64 im) (*.f64 re (*.f64 -1/2 (sqrt.f64 (/.f64 1 im)))))
(+.f64 (sqrt.f64 im) (*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 re -1/2)))
(+.f64 (sqrt.f64 im) (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 re 2) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (*.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 1 im))))))
(+.f64 (sqrt.f64 im) (+.f64 (*.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 1 im)))) (*.f64 -1/8 (*.f64 (pow.f64 re 2) (sqrt.f64 (/.f64 1 (pow.f64 im 3)))))))
(+.f64 (*.f64 -1/8 (*.f64 (pow.f64 re 2) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (+.f64 (sqrt.f64 im) (*.f64 re (*.f64 (sqrt.f64 (/.f64 1 im)) -1/2))))
(+.f64 (sqrt.f64 im) (+.f64 (*.f64 re (*.f64 -1/2 (sqrt.f64 (/.f64 1 im)))) (*.f64 -1/8 (*.f64 (pow.f64 re 2) (sqrt.f64 (/.f64 1 (pow.f64 im 3)))))))
(+.f64 (+.f64 (sqrt.f64 im) (*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 re -1/2))) (*.f64 (pow.f64 re 2) (*.f64 -1/8 (sqrt.f64 (/.f64 1 (pow.f64 im 3))))))
(+.f64 (sqrt.f64 im) (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 re 2) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (+.f64 (*.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 1 im)))) (*.f64 -1/16 (*.f64 (pow.f64 re 3) (sqrt.f64 (/.f64 1 (pow.f64 im 5))))))))
(+.f64 (sqrt.f64 im) (+.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 1 im)) -1/2)) (+.f64 (*.f64 -1/16 (*.f64 (pow.f64 re 3) (sqrt.f64 (/.f64 1 (pow.f64 im 5))))) (*.f64 -1/8 (*.f64 (pow.f64 re 2) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))))))
(+.f64 (sqrt.f64 im) (+.f64 (*.f64 re (*.f64 -1/2 (sqrt.f64 (/.f64 1 im)))) (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 re 2) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (*.f64 (pow.f64 re 3) (*.f64 -1/16 (sqrt.f64 (/.f64 1 (pow.f64 im 5))))))))
(+.f64 (sqrt.f64 im) (+.f64 (*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 re -1/2)) (+.f64 (*.f64 (pow.f64 re 2) (*.f64 -1/8 (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (*.f64 (pow.f64 re 3) (*.f64 -1/16 (sqrt.f64 (/.f64 1 (pow.f64 im 5))))))))
(+.f64 (sqrt.f64 (*.f64 (-.f64 re im) -2)) 0)
(sqrt.f64 (*.f64 (-.f64 re im) -2))
(+.f64 0 (sqrt.f64 (*.f64 (-.f64 re im) -2)))
(sqrt.f64 (*.f64 (-.f64 re im) -2))
(+.f64 (*.f64 (sqrt.f64 (*.f64 (-.f64 re im) -2)) 1/2) (*.f64 (sqrt.f64 (*.f64 (-.f64 re im) -2)) 1/2))
(sqrt.f64 (*.f64 (-.f64 re im) -2))
(+.f64 (/.f64 (sqrt.f64 (*.f64 (-.f64 re im) -2)) 4) (+.f64 (/.f64 (sqrt.f64 (*.f64 (-.f64 re im) -2)) 4) (*.f64 (sqrt.f64 (*.f64 (-.f64 re im) -2)) 1/2)))
(sqrt.f64 (*.f64 (-.f64 re im) -2))
(+.f64 (/.f64 (sqrt.f64 (*.f64 (-.f64 re im) -2)) 4) (/.f64 (*.f64 -3 (/.f64 (sqrt.f64 (*.f64 (-.f64 re im) -2)) -2)) 2))
(sqrt.f64 (*.f64 (-.f64 re im) -2))
(+.f64 (/.f64 (sqrt.f64 (*.f64 (-.f64 re im) -2)) 4) (/.f64 (*.f64 (sqrt.f64 (*.f64 (-.f64 re im) -2)) 3) 4))
(sqrt.f64 (*.f64 (-.f64 re im) -2))
(-.f64 (sqrt.f64 (*.f64 (-.f64 re im) -2)) 0)
(sqrt.f64 (*.f64 (-.f64 re im) -2))
(-.f64 (*.f64 (sqrt.f64 (*.f64 (-.f64 re im) -2)) 1/2) (/.f64 (sqrt.f64 (*.f64 (-.f64 re im) -2)) -2))
(sqrt.f64 (*.f64 (-.f64 re im) -2))
(-.f64 (+.f64 (/.f64 (sqrt.f64 (*.f64 (-.f64 re im) -2)) 4) (*.f64 (sqrt.f64 (*.f64 (-.f64 re im) -2)) 1/2)) (neg.f64 (/.f64 (sqrt.f64 (*.f64 (-.f64 re im) -2)) 4)))
(sqrt.f64 (*.f64 (-.f64 re im) -2))
(-.f64 (/.f64 (*.f64 -3 (/.f64 (sqrt.f64 (*.f64 (-.f64 re im) -2)) -2)) 2) (/.f64 (/.f64 (sqrt.f64 (*.f64 (-.f64 re im) -2)) -2) 2))
(sqrt.f64 (*.f64 (-.f64 re im) -2))
(-.f64 (/.f64 (*.f64 (sqrt.f64 (*.f64 (-.f64 re im) -2)) 3) 4) (/.f64 (neg.f64 (sqrt.f64 (*.f64 (-.f64 re im) -2))) 4))
(sqrt.f64 (*.f64 (-.f64 re im) -2))
(/.f64 (sqrt.f64 (*.f64 (-.f64 re im) -2)) 1)
(sqrt.f64 (*.f64 (-.f64 re im) -2))
(/.f64 (*.f64 2 (sqrt.f64 (*.f64 (-.f64 re im) -2))) 2)
(sqrt.f64 (*.f64 (-.f64 re im) -2))
(/.f64 (*.f64 (sqrt.f64 (*.f64 (-.f64 re im) -2)) 4) 4)
(sqrt.f64 (*.f64 (-.f64 re im) -2))
(/.f64 (*.f64 (*.f64 (sqrt.f64 (*.f64 (-.f64 re im) -2)) 4) 4) 16)
(sqrt.f64 (*.f64 (-.f64 re im) -2))
(/.f64 (*.f64 2 (*.f64 (sqrt.f64 (*.f64 (-.f64 re im) -2)) 4)) 8)
(sqrt.f64 (*.f64 (-.f64 re im) -2))
(/.f64 (+.f64 (*.f64 2 (*.f64 (sqrt.f64 (*.f64 (-.f64 re im) -2)) 4)) (*.f64 2 (*.f64 (sqrt.f64 (*.f64 (-.f64 re im) -2)) 4))) 16)
(sqrt.f64 (*.f64 (-.f64 re im) -2))
(/.f64 (+.f64 (*.f64 (*.f64 (sqrt.f64 (*.f64 (-.f64 re im) -2)) 4) 4) (*.f64 (*.f64 (sqrt.f64 (*.f64 (-.f64 re im) -2)) 4) 4)) 32)
(sqrt.f64 (*.f64 (-.f64 re im) -2))
(/.f64 (*.f64 4 (*.f64 (*.f64 (sqrt.f64 (*.f64 (-.f64 re im) -2)) 4) 4)) 64)
(sqrt.f64 (*.f64 (-.f64 re im) -2))
(/.f64 (*.f64 (+.f64 (*.f64 2 (*.f64 (sqrt.f64 (-.f64 im re)) 4)) (*.f64 2 (*.f64 (sqrt.f64 (-.f64 im re)) 4))) (+.f64 (*.f64 (*.f64 2 (sqrt.f64 2)) 4) (*.f64 (*.f64 2 (sqrt.f64 2)) 4))) 256)
(/.f64 (*.f64 (*.f64 (*.f64 4 (sqrt.f64 (-.f64 im re))) 4) (*.f64 4 (+.f64 (*.f64 2 (sqrt.f64 2)) (*.f64 2 (sqrt.f64 2))))) 256)
(/.f64 (*.f64 (*.f64 (sqrt.f64 (-.f64 im re)) 8) (*.f64 4 (*.f64 (sqrt.f64 2) 8))) 256)
(/.f64 (*.f64 (sqrt.f64 (-.f64 im re)) (*.f64 (sqrt.f64 2) 16)) 16)
(/.f64 (*.f64 (+.f64 (*.f64 (*.f64 2 (sqrt.f64 2)) 4) (*.f64 (*.f64 2 (sqrt.f64 2)) 4)) (+.f64 (*.f64 2 (*.f64 (sqrt.f64 (-.f64 im re)) 4)) (*.f64 2 (*.f64 (sqrt.f64 (-.f64 im re)) 4)))) 256)
(/.f64 (*.f64 (*.f64 (*.f64 4 (sqrt.f64 (-.f64 im re))) 4) (*.f64 4 (+.f64 (*.f64 2 (sqrt.f64 2)) (*.f64 2 (sqrt.f64 2))))) 256)
(/.f64 (*.f64 (*.f64 (sqrt.f64 (-.f64 im re)) 8) (*.f64 4 (*.f64 (sqrt.f64 2) 8))) 256)
(/.f64 (*.f64 (sqrt.f64 (-.f64 im re)) (*.f64 (sqrt.f64 2) 16)) 16)
(/.f64 (*.f64 (*.f64 (sqrt.f64 (-.f64 im re)) 4) (+.f64 (*.f64 (*.f64 2 (sqrt.f64 2)) 4) (*.f64 (*.f64 2 (sqrt.f64 2)) 4))) 64)
(/.f64 (*.f64 (*.f64 (*.f64 4 (sqrt.f64 (-.f64 im re))) 4) (*.f64 4 (+.f64 (*.f64 2 (sqrt.f64 2)) (*.f64 2 (sqrt.f64 2))))) 256)
(/.f64 (*.f64 (*.f64 (sqrt.f64 (-.f64 im re)) 8) (*.f64 4 (*.f64 (sqrt.f64 2) 8))) 256)
(/.f64 (*.f64 (sqrt.f64 (-.f64 im re)) (*.f64 (sqrt.f64 2) 16)) 16)
(/.f64 (*.f64 (*.f64 (sqrt.f64 2) 4) (+.f64 (*.f64 2 (*.f64 (sqrt.f64 (-.f64 im re)) 4)) (*.f64 2 (*.f64 (sqrt.f64 (-.f64 im re)) 4)))) 64)
(/.f64 (*.f64 (*.f64 (*.f64 4 (sqrt.f64 (-.f64 im re))) 4) (*.f64 4 (+.f64 (*.f64 2 (sqrt.f64 2)) (*.f64 2 (sqrt.f64 2))))) 256)
(/.f64 (*.f64 (*.f64 (sqrt.f64 (-.f64 im re)) 8) (*.f64 4 (*.f64 (sqrt.f64 2) 8))) 256)
(/.f64 (*.f64 (sqrt.f64 (-.f64 im re)) (*.f64 (sqrt.f64 2) 16)) 16)
(/.f64 (*.f64 (sqrt.f64 2) (+.f64 (*.f64 2 (*.f64 (sqrt.f64 (-.f64 im re)) 4)) (*.f64 2 (*.f64 (sqrt.f64 (-.f64 im re)) 4)))) 16)
(/.f64 (*.f64 (*.f64 (*.f64 4 (sqrt.f64 (-.f64 im re))) 4) (*.f64 4 (+.f64 (*.f64 2 (sqrt.f64 2)) (*.f64 2 (sqrt.f64 2))))) 256)
(/.f64 (*.f64 (*.f64 (sqrt.f64 (-.f64 im re)) 8) (*.f64 4 (*.f64 (sqrt.f64 2) 8))) 256)
(/.f64 (*.f64 (sqrt.f64 (-.f64 im re)) (*.f64 (sqrt.f64 2) 16)) 16)
(/.f64 (*.f64 (sqrt.f64 (-.f64 im re)) (+.f64 (*.f64 (*.f64 2 (sqrt.f64 2)) 4) (*.f64 (*.f64 2 (sqrt.f64 2)) 4))) 16)
(/.f64 (*.f64 (*.f64 (*.f64 4 (sqrt.f64 (-.f64 im re))) 4) (*.f64 4 (+.f64 (*.f64 2 (sqrt.f64 2)) (*.f64 2 (sqrt.f64 2))))) 256)
(/.f64 (*.f64 (*.f64 (sqrt.f64 (-.f64 im re)) 8) (*.f64 4 (*.f64 (sqrt.f64 2) 8))) 256)
(/.f64 (*.f64 (sqrt.f64 (-.f64 im re)) (*.f64 (sqrt.f64 2) 16)) 16)
(pow.f64 (sqrt.f64 (*.f64 (-.f64 re im) -2)) 1)
(sqrt.f64 (*.f64 (-.f64 re im) -2))
(sqrt.f64 (*.f64 (-.f64 re im) -2))
(+.f64 (sqrt.f64 (-.f64 im re)) 0)
(sqrt.f64 (-.f64 im re))
(+.f64 0 (sqrt.f64 (-.f64 im re)))
(sqrt.f64 (-.f64 im re))
(+.f64 (*.f64 (sqrt.f64 (-.f64 im re)) 1/2) (*.f64 (sqrt.f64 (-.f64 im re)) 1/2))
(sqrt.f64 (-.f64 im re))
(+.f64 (/.f64 (sqrt.f64 (-.f64 im re)) 4) (+.f64 (/.f64 (sqrt.f64 (-.f64 im re)) 4) (*.f64 (sqrt.f64 (-.f64 im re)) 1/2)))
(sqrt.f64 (-.f64 im re))
(+.f64 (/.f64 (sqrt.f64 (-.f64 im re)) 4) (/.f64 (*.f64 -3 (/.f64 (sqrt.f64 (-.f64 im re)) -2)) 2))
(sqrt.f64 (-.f64 im re))
(+.f64 (/.f64 (sqrt.f64 (-.f64 im re)) 4) (/.f64 (*.f64 (sqrt.f64 (-.f64 im re)) 3) 4))
(sqrt.f64 (-.f64 im re))
(-.f64 (sqrt.f64 (-.f64 im re)) 0)
(sqrt.f64 (-.f64 im re))
(-.f64 (*.f64 (sqrt.f64 (-.f64 im re)) 1/2) (/.f64 (sqrt.f64 (-.f64 im re)) -2))
(sqrt.f64 (-.f64 im re))
(-.f64 (+.f64 (/.f64 (sqrt.f64 (-.f64 im re)) 4) (*.f64 (sqrt.f64 (-.f64 im re)) 1/2)) (neg.f64 (/.f64 (sqrt.f64 (-.f64 im re)) 4)))
(sqrt.f64 (-.f64 im re))
(-.f64 (/.f64 (*.f64 -3 (/.f64 (sqrt.f64 (-.f64 im re)) -2)) 2) (/.f64 (/.f64 (sqrt.f64 (-.f64 im re)) -2) 2))
(sqrt.f64 (-.f64 im re))
(-.f64 (/.f64 (*.f64 (sqrt.f64 (-.f64 im re)) 3) 4) (/.f64 (neg.f64 (sqrt.f64 (-.f64 im re))) 4))
(sqrt.f64 (-.f64 im re))
(*.f64 (sqrt.f64 (-.f64 im re)) 1)
(sqrt.f64 (-.f64 im re))
(*.f64 2 (*.f64 (sqrt.f64 (-.f64 im re)) 1/2))
(sqrt.f64 (-.f64 im re))
(*.f64 (sqrt.f64 (*.f64 (-.f64 re im) -2)) (sqrt.f64 1/2))
(sqrt.f64 (*.f64 (*.f64 (-.f64 re im) -2) 1/2))
(sqrt.f64 (neg.f64 (-.f64 re im)))
(*.f64 1 (sqrt.f64 (-.f64 im re)))
(sqrt.f64 (-.f64 im re))
(*.f64 (*.f64 (sqrt.f64 (-.f64 im re)) 2) 1/2)
(sqrt.f64 (-.f64 im re))
(*.f64 1/2 (*.f64 (sqrt.f64 (-.f64 im re)) 2))
(sqrt.f64 (-.f64 im re))
(*.f64 1/2 (sqrt.f64 (*.f64 (-.f64 im re) 4)))
(sqrt.f64 (-.f64 im re))
(*.f64 (*.f64 (sqrt.f64 (-.f64 im re)) 1/2) 2)
(sqrt.f64 (-.f64 im re))
(*.f64 (*.f64 (sqrt.f64 (-.f64 im re)) 4) 1/4)
(sqrt.f64 (-.f64 im re))
(*.f64 -2 (/.f64 (sqrt.f64 (-.f64 im re)) -2))
(sqrt.f64 (-.f64 im re))
(*.f64 1/4 (*.f64 (sqrt.f64 (-.f64 im re)) 4))
(sqrt.f64 (-.f64 im re))
(*.f64 (*.f64 2 (*.f64 (sqrt.f64 (-.f64 im re)) 4)) 1/8)
(sqrt.f64 (-.f64 im re))
(*.f64 (sqrt.f64 1/2) (sqrt.f64 (*.f64 (-.f64 re im) -2)))
(sqrt.f64 (*.f64 (*.f64 (-.f64 re im) -2) 1/2))
(sqrt.f64 (neg.f64 (-.f64 re im)))
(*.f64 1/8 (*.f64 2 (*.f64 (sqrt.f64 (-.f64 im re)) 4)))
(sqrt.f64 (-.f64 im re))
(*.f64 (sqrt.f64 (*.f64 (-.f64 im re) 4)) 1/2)
(sqrt.f64 (-.f64 im re))
(*.f64 (sqrt.f64 (-.f64 re im)) (sqrt.f64 -1))
(sqrt.f64 (*.f64 (*.f64 (-.f64 re im) -2) 1/2))
(sqrt.f64 (neg.f64 (-.f64 re im)))
(*.f64 (sqrt.f64 -1) (sqrt.f64 (-.f64 re im)))
(sqrt.f64 (*.f64 (*.f64 (-.f64 re im) -2) 1/2))
(sqrt.f64 (neg.f64 (-.f64 re im)))
(*.f64 (+.f64 (sqrt.f64 1/2) (sqrt.f64 1/2)) (*.f64 (sqrt.f64 (*.f64 (-.f64 re im) -2)) 1/2))
(sqrt.f64 (*.f64 (*.f64 (-.f64 re im) -2) 1/2))
(sqrt.f64 (neg.f64 (-.f64 re im)))
(/.f64 (sqrt.f64 (-.f64 im re)) 1)
(sqrt.f64 (-.f64 im re))
(/.f64 (*.f64 (sqrt.f64 (-.f64 im re)) 2) 2)
(sqrt.f64 (-.f64 im re))
(/.f64 (*.f64 (sqrt.f64 (-.f64 im re)) 4) 4)
(sqrt.f64 (-.f64 im re))
(/.f64 (*.f64 2 (*.f64 (sqrt.f64 (-.f64 im re)) 4)) 8)
(sqrt.f64 (-.f64 im re))
(/.f64 (+.f64 (*.f64 2 (*.f64 (sqrt.f64 (-.f64 im re)) 4)) (*.f64 2 (*.f64 (sqrt.f64 (-.f64 im re)) 4))) 16)
(sqrt.f64 (-.f64 im re))
(pow.f64 (sqrt.f64 (-.f64 im re)) 1)
(sqrt.f64 (-.f64 im re))

localize82.0ms (0.2%)

Compiler

Compiled 18 to 18 computations (0% saved)

localize29.0ms (0.1%)

Compiler

Compiled 18 to 14 computations (22.2% saved)

localize55.0ms (0.2%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(pow.f64 im 2)
8.3b
(/.f64 (pow.f64 im 2) re)
18.2b
(sqrt.f64 (/.f64 (pow.f64 im 2) re))
Compiler

Compiled 28 to 19 computations (32.1% saved)

series2.0ms (0%)

Counts
2 → 12
Calls

9 calls:

TimeVariablePointExpression
1.0ms
im
@-inf
(pow.f64 im 2)
0.0ms
im
@inf
(pow.f64 im 2)
0.0ms
re
@-inf
(sqrt.f64 (/.f64 (pow.f64 im 2) re))
0.0ms
re
@inf
(sqrt.f64 (/.f64 (pow.f64 im 2) re))
0.0ms
re
@0
(sqrt.f64 (/.f64 (pow.f64 im 2) re))

rewrite279.0ms (0.8%)

Algorithm
batch-egg-rewrite
Rules
1168×rational_best-simplify-55
774×rational_best-simplify-64
680×rational_best-4
680×rational_best-2
680×rational_best-3
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0924
15924
212824
336124
4163124
Stop Event
node limit
Counts
2 → 103
Calls
Call 1
Inputs
(sqrt.f64 (/.f64 (pow.f64 im 2) re))
(pow.f64 im 2)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (sqrt.f64 (/.f64 (pow.f64 im 2) re)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 2) (/.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (/.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 2) 2) (+.f64 (/.f64 (/.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 2) 2) (/.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 2) (/.f64 (neg.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 2) (neg.f64 (/.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (sqrt.f64 (/.f64 (pow.f64 im 2) re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (sqrt.f64 (/.f64 (pow.f64 im 2) re))) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 2 (sqrt.f64 (/.f64 (pow.f64 im 2) re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 2 (sqrt.f64 (/.f64 (pow.f64 im 2) re))) 4) 1/8)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (pow.f64 im 2)) (sqrt.f64 (/.f64 1 re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 1 re)) (sqrt.f64 (pow.f64 im 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 2 (pow.f64 im 2))) (sqrt.f64 (/.f64 1/2 re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 1/2 re)) (sqrt.f64 (*.f64 2 (pow.f64 im 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 2 (/.f64 (pow.f64 im 2) re))) (sqrt.f64 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 1/2) (sqrt.f64 (*.f64 2 (/.f64 (pow.f64 im 2) re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (pow.f64 im 2) 4)) (sqrt.f64 (/.f64 2 (*.f64 re 8))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 2 (*.f64 re 8))) (sqrt.f64 (*.f64 (pow.f64 im 2) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (sqrt.f64 (/.f64 (pow.f64 im 2) re))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 2 (sqrt.f64 (/.f64 (pow.f64 im 2) re))) 4) 8)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 1)))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (pow.f64 im 2) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (pow.f64 im 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (pow.f64 im 2) 2) (/.f64 (pow.f64 im 2) 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (pow.f64 im 2) 2) (neg.f64 (/.f64 (pow.f64 im 2) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (pow.f64 im 2) 4) (/.f64 (*.f64 (pow.f64 im 2) 3) 4))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (*.f64 (pow.f64 im 2) 3) 4) (/.f64 (pow.f64 im 2) 4))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (*.f64 (pow.f64 im 2) 3) 4) (+.f64 (/.f64 (pow.f64 im 2) 4) 0))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (/.f64 (pow.f64 im 2) 2) 2) (+.f64 (/.f64 (/.f64 (pow.f64 im 2) 2) 2) (/.f64 (pow.f64 im 2) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (pow.f64 im 2) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (neg.f64 (pow.f64 im 2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 im 2) 2) (/.f64 (pow.f64 im 2) -2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 (pow.f64 im 2) 3) 4) (/.f64 (neg.f64 (pow.f64 im 2)) 4))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (/.f64 (/.f64 (pow.f64 im 2) 2) 2) (/.f64 (pow.f64 im 2) -2)) (-.f64 0 (/.f64 (/.f64 (pow.f64 im 2) 2) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (pow.f64 im 2) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 im 2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 re (/.f64 (pow.f64 im 2) re))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 im 2) re) re)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (pow.f64 im 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (pow.f64 im 2)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (pow.f64 im 2)) (*.f64 (/.f64 1/2 re) re))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (pow.f64 im 2)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 (pow.f64 im 2) re) 1/2) (+.f64 re re))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (/.f64 (pow.f64 im 2) re)) (/.f64 re 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (/.f64 (pow.f64 im 2) re)) (*.f64 1/2 re))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 im 2) 4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 im 2) 4) (*.f64 (/.f64 2 (*.f64 re 8)) re))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 im 2) 4) (/.f64 re (*.f64 re 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 2 (pow.f64 im 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 re) (*.f64 (pow.f64 im 2) re))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1/2 re) (*.f64 (pow.f64 im 2) (+.f64 re re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 2 (*.f64 re 8)) (*.f64 re (*.f64 (pow.f64 im 2) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 (pow.f64 im 2) re) 4) (/.f64 re 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (*.f64 (pow.f64 im 2) 4)) 1/8)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (*.f64 (pow.f64 im 2) 4)) (/.f64 re (*.f64 re 8)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 im 2) 2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 im 2) (*.f64 re re)) (*.f64 re re))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 im 2) (*.f64 re re)) (/.f64 re (/.f64 1 re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 (pow.f64 im 2) re) (/.f64 re 2)) (/.f64 re (/.f64 2 re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -2 (/.f64 (pow.f64 im 2) -2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 (pow.f64 im 2) (*.f64 re re)) re) (/.f64 re (/.f64 (/.f64 1 re) re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 (/.f64 (pow.f64 im 2) re) (/.f64 re 2)) re) (/.f64 re (/.f64 (/.f64 2 re) re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 (pow.f64 im 2) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (pow.f64 (+.f64 im im) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 (*.f64 (/.f64 (pow.f64 im 2) re) 4) re))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (*.f64 re 8)) (*.f64 (*.f64 2 (*.f64 (pow.f64 im 2) 4)) re))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (/.f64 2 re)) (*.f64 2 (/.f64 (pow.f64 im 2) re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 2 (/.f64 (pow.f64 im 2) re)) 4) (/.f64 re 8))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 2 (pow.f64 im 2)) 8) (/.f64 re (*.f64 2 (*.f64 re 8))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 (pow.f64 im 2) 4) (*.f64 re re)) (/.f64 re (/.f64 4 re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 (pow.f64 im 2) re) (+.f64 re re)) (/.f64 re (/.f64 1/2 re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 im 2) re) (/.f64 re (*.f64 re re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 im 2) (+.f64 re re)) (/.f64 re (*.f64 re (+.f64 re re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 re (*.f64 (pow.f64 im 2) 4)) (/.f64 re (*.f64 re (*.f64 re 4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 1 re) re) (*.f64 (*.f64 (pow.f64 im 2) re) re))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 1/2 re) re) (*.f64 (*.f64 (pow.f64 im 2) (+.f64 re re)) re))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 1 re) (*.f64 re 4)) (*.f64 (*.f64 re (*.f64 (pow.f64 im 2) 4)) re))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 (pow.f64 im 2) (*.f64 re re)) (+.f64 re re)) (/.f64 re (/.f64 (/.f64 1/2 re) re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (+.f64 im im) 2) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 im 2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (pow.f64 im 2) re) (/.f64 1 re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (pow.f64 im 2)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (pow.f64 im 2)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (/.f64 (pow.f64 im 2) re)) (/.f64 2 re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 im 2) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (pow.f64 im 2) 4)) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 2 (pow.f64 im 2)) 8) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 im 2) re) re)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 im 2) (+.f64 re re)) (+.f64 re re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 re re) (*.f64 (pow.f64 im 2) 4)) (*.f64 re 8))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 re re) (*.f64 2 (pow.f64 im 2))) (*.f64 re 4))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 re 4) (*.f64 (pow.f64 im 2) 4)) (*.f64 2 (*.f64 re 8)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 re 8) (*.f64 2 (*.f64 (pow.f64 im 2) 4))) (*.f64 8 (*.f64 re 8)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1/2 (*.f64 (/.f64 (pow.f64 im 2) re) 1/2)) (*.f64 (/.f64 1/2 re) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 (/.f64 1 re) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (neg.f64 (pow.f64 im 2)))))))

simplify283.0ms (0.8%)

Algorithm
egg-herbie
Rules
1210×rational_best-simplify-1
1102×rational_best-simplify-67
956×rational_best-simplify-63
926×rational_best-simplify-64
784×rational_best-simplify-54
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
02281769
16391761
224631761
Stop Event
node limit
Counts
115 → 115
Calls
Call 1
Inputs
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(+.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 0)
(+.f64 0 (sqrt.f64 (/.f64 (pow.f64 im 2) re)))
(+.f64 (/.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 2) (/.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 2))
(+.f64 (/.f64 (/.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 2) 2) (+.f64 (/.f64 (/.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 2) 2) (/.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 2)))
(-.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 0)
(-.f64 (/.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 2) (/.f64 (neg.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re))) 2))
(-.f64 (/.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 2) (neg.f64 (/.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 2)))
(*.f64 2 (*.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 1/2))
(*.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 1)
(*.f64 1 (sqrt.f64 (/.f64 (pow.f64 im 2) re)))
(*.f64 (*.f64 2 (sqrt.f64 (/.f64 (pow.f64 im 2) re))) 1/2)
(*.f64 1/2 (*.f64 2 (sqrt.f64 (/.f64 (pow.f64 im 2) re))))
(*.f64 (*.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 4) 1/4)
(*.f64 1/4 (*.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 4))
(*.f64 (*.f64 (*.f64 2 (sqrt.f64 (/.f64 (pow.f64 im 2) re))) 4) 1/8)
(*.f64 (sqrt.f64 (pow.f64 im 2)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 (/.f64 1 re)) (sqrt.f64 (pow.f64 im 2)))
(*.f64 (sqrt.f64 (*.f64 2 (pow.f64 im 2))) (sqrt.f64 (/.f64 1/2 re)))
(*.f64 (sqrt.f64 (/.f64 1/2 re)) (sqrt.f64 (*.f64 2 (pow.f64 im 2))))
(*.f64 (sqrt.f64 (*.f64 2 (/.f64 (pow.f64 im 2) re))) (sqrt.f64 1/2))
(*.f64 (sqrt.f64 1/2) (sqrt.f64 (*.f64 2 (/.f64 (pow.f64 im 2) re))))
(*.f64 (sqrt.f64 (*.f64 (pow.f64 im 2) 4)) (sqrt.f64 (/.f64 2 (*.f64 re 8))))
(*.f64 (sqrt.f64 (/.f64 2 (*.f64 re 8))) (sqrt.f64 (*.f64 (pow.f64 im 2) 4)))
(/.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 1)
(/.f64 (*.f64 2 (sqrt.f64 (/.f64 (pow.f64 im 2) re))) 2)
(/.f64 (*.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 4) 4)
(/.f64 (*.f64 (*.f64 2 (sqrt.f64 (/.f64 (pow.f64 im 2) re))) 4) 8)
(pow.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 1)
(+.f64 (pow.f64 im 2) 0)
(+.f64 0 (pow.f64 im 2))
(+.f64 (/.f64 (pow.f64 im 2) 2) (/.f64 (pow.f64 im 2) 2))
(+.f64 (/.f64 (pow.f64 im 2) 2) (neg.f64 (/.f64 (pow.f64 im 2) -2)))
(+.f64 (/.f64 (pow.f64 im 2) 4) (/.f64 (*.f64 (pow.f64 im 2) 3) 4))
(+.f64 (/.f64 (*.f64 (pow.f64 im 2) 3) 4) (/.f64 (pow.f64 im 2) 4))
(+.f64 (/.f64 (*.f64 (pow.f64 im 2) 3) 4) (+.f64 (/.f64 (pow.f64 im 2) 4) 0))
(+.f64 (/.f64 (/.f64 (pow.f64 im 2) 2) 2) (+.f64 (/.f64 (/.f64 (pow.f64 im 2) 2) 2) (/.f64 (pow.f64 im 2) 2)))
(-.f64 (pow.f64 im 2) 0)
(-.f64 0 (neg.f64 (pow.f64 im 2)))
(-.f64 (/.f64 (pow.f64 im 2) 2) (/.f64 (pow.f64 im 2) -2))
(-.f64 (/.f64 (*.f64 (pow.f64 im 2) 3) 4) (/.f64 (neg.f64 (pow.f64 im 2)) 4))
(-.f64 (-.f64 (/.f64 (/.f64 (pow.f64 im 2) 2) 2) (/.f64 (pow.f64 im 2) -2)) (-.f64 0 (/.f64 (/.f64 (pow.f64 im 2) 2) 2)))
(*.f64 2 (*.f64 (pow.f64 im 2) 1/2))
(*.f64 (pow.f64 im 2) 1)
(*.f64 re (/.f64 (pow.f64 im 2) re))
(*.f64 (/.f64 (pow.f64 im 2) re) re)
(*.f64 1 (pow.f64 im 2))
(*.f64 (*.f64 2 (pow.f64 im 2)) 1/2)
(*.f64 (*.f64 2 (pow.f64 im 2)) (*.f64 (/.f64 1/2 re) re))
(*.f64 (neg.f64 (pow.f64 im 2)) -1)
(*.f64 (*.f64 (/.f64 (pow.f64 im 2) re) 1/2) (+.f64 re re))
(*.f64 (*.f64 2 (/.f64 (pow.f64 im 2) re)) (/.f64 re 2))
(*.f64 (*.f64 2 (/.f64 (pow.f64 im 2) re)) (*.f64 1/2 re))
(*.f64 (*.f64 (pow.f64 im 2) 4) 1/4)
(*.f64 (*.f64 (pow.f64 im 2) 4) (*.f64 (/.f64 2 (*.f64 re 8)) re))
(*.f64 (*.f64 (pow.f64 im 2) 4) (/.f64 re (*.f64 re 4)))
(*.f64 1/2 (*.f64 2 (pow.f64 im 2)))
(*.f64 (/.f64 1 re) (*.f64 (pow.f64 im 2) re))
(*.f64 (/.f64 1/2 re) (*.f64 (pow.f64 im 2) (+.f64 re re)))
(*.f64 (/.f64 2 (*.f64 re 8)) (*.f64 re (*.f64 (pow.f64 im 2) 4)))
(*.f64 (*.f64 (/.f64 (pow.f64 im 2) re) 4) (/.f64 re 4))
(*.f64 (*.f64 2 (*.f64 (pow.f64 im 2) 4)) 1/8)
(*.f64 (*.f64 2 (*.f64 (pow.f64 im 2) 4)) (/.f64 re (*.f64 re 8)))
(*.f64 (/.f64 (pow.f64 im 2) 2) 2)
(*.f64 (/.f64 (pow.f64 im 2) (*.f64 re re)) (*.f64 re re))
(*.f64 (/.f64 (pow.f64 im 2) (*.f64 re re)) (/.f64 re (/.f64 1 re)))
(*.f64 (/.f64 (/.f64 (pow.f64 im 2) re) (/.f64 re 2)) (/.f64 re (/.f64 2 re)))
(*.f64 -2 (/.f64 (pow.f64 im 2) -2))
(*.f64 (/.f64 (/.f64 (pow.f64 im 2) (*.f64 re re)) re) (/.f64 re (/.f64 (/.f64 1 re) re)))
(*.f64 (/.f64 (/.f64 (/.f64 (pow.f64 im 2) re) (/.f64 re 2)) re) (/.f64 re (/.f64 (/.f64 2 re) re)))
(*.f64 1/4 (*.f64 (pow.f64 im 2) 4))
(*.f64 1/4 (pow.f64 (+.f64 im im) 2))
(*.f64 1/4 (*.f64 (*.f64 (/.f64 (pow.f64 im 2) re) 4) re))
(*.f64 (/.f64 1 (*.f64 re 8)) (*.f64 (*.f64 2 (*.f64 (pow.f64 im 2) 4)) re))
(*.f64 (/.f64 1 (/.f64 2 re)) (*.f64 2 (/.f64 (pow.f64 im 2) re)))
(*.f64 (*.f64 (*.f64 2 (/.f64 (pow.f64 im 2) re)) 4) (/.f64 re 8))
(*.f64 (*.f64 (*.f64 2 (pow.f64 im 2)) 8) (/.f64 re (*.f64 2 (*.f64 re 8))))
(*.f64 (/.f64 (*.f64 (pow.f64 im 2) 4) (*.f64 re re)) (/.f64 re (/.f64 4 re)))
(*.f64 (/.f64 (/.f64 (pow.f64 im 2) re) (+.f64 re re)) (/.f64 re (/.f64 1/2 re)))
(*.f64 (*.f64 (pow.f64 im 2) re) (/.f64 re (*.f64 re re)))
(*.f64 (*.f64 (pow.f64 im 2) (+.f64 re re)) (/.f64 re (*.f64 re (+.f64 re re))))
(*.f64 (*.f64 re (*.f64 (pow.f64 im 2) 4)) (/.f64 re (*.f64 re (*.f64 re 4))))
(*.f64 (/.f64 (/.f64 1 re) re) (*.f64 (*.f64 (pow.f64 im 2) re) re))
(*.f64 (/.f64 (/.f64 1/2 re) re) (*.f64 (*.f64 (pow.f64 im 2) (+.f64 re re)) re))
(*.f64 (/.f64 (/.f64 1 re) (*.f64 re 4)) (*.f64 (*.f64 re (*.f64 (pow.f64 im 2) 4)) re))
(*.f64 (/.f64 (/.f64 (pow.f64 im 2) (*.f64 re re)) (+.f64 re re)) (/.f64 re (/.f64 (/.f64 1/2 re) re)))
(*.f64 (pow.f64 (+.f64 im im) 2) 1/4)
(/.f64 (pow.f64 im 2) 1)
(/.f64 (/.f64 (pow.f64 im 2) re) (/.f64 1 re))
(/.f64 (*.f64 2 (pow.f64 im 2)) 2)
(/.f64 (neg.f64 (pow.f64 im 2)) -1)
(/.f64 (*.f64 2 (/.f64 (pow.f64 im 2) re)) (/.f64 2 re))
(/.f64 (*.f64 (pow.f64 im 2) 4) 4)
(/.f64 (*.f64 2 (*.f64 (pow.f64 im 2) 4)) 8)
(/.f64 (*.f64 (*.f64 2 (pow.f64 im 2)) 8) 16)
(/.f64 (*.f64 (pow.f64 im 2) re) re)
(/.f64 (*.f64 (pow.f64 im 2) (+.f64 re re)) (+.f64 re re))
(/.f64 (*.f64 (+.f64 re re) (*.f64 (pow.f64 im 2) 4)) (*.f64 re 8))
(/.f64 (*.f64 (+.f64 re re) (*.f64 2 (pow.f64 im 2))) (*.f64 re 4))
(/.f64 (*.f64 (*.f64 re 4) (*.f64 (pow.f64 im 2) 4)) (*.f64 2 (*.f64 re 8)))
(/.f64 (*.f64 (*.f64 re 8) (*.f64 2 (*.f64 (pow.f64 im 2) 4))) (*.f64 8 (*.f64 re 8)))
(/.f64 (*.f64 1/2 (*.f64 (/.f64 (pow.f64 im 2) re) 1/2)) (*.f64 (/.f64 1/2 re) 1/2))
(/.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 (/.f64 1 re) 1/2))
(neg.f64 (neg.f64 (pow.f64 im 2)))
Outputs
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 im (*.f64 (sqrt.f64 (/.f64 1 re)) -1))
(neg.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (sqrt.f64 (/.f64 1 re)) (neg.f64 im))
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 im (*.f64 (sqrt.f64 (/.f64 1 re)) -1))
(neg.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (sqrt.f64 (/.f64 1 re)) (neg.f64 im))
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 im (*.f64 (sqrt.f64 (/.f64 1 re)) -1))
(neg.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (sqrt.f64 (/.f64 1 re)) (neg.f64 im))
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 im (*.f64 (sqrt.f64 (/.f64 1 re)) -1))
(neg.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (sqrt.f64 (/.f64 1 re)) (neg.f64 im))
(+.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 0)
(sqrt.f64 (/.f64 (pow.f64 im 2) re))
(+.f64 0 (sqrt.f64 (/.f64 (pow.f64 im 2) re)))
(sqrt.f64 (/.f64 (pow.f64 im 2) re))
(+.f64 (/.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 2) (/.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 2))
(sqrt.f64 (/.f64 (pow.f64 im 2) re))
(+.f64 (/.f64 (/.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 2) 2) (+.f64 (/.f64 (/.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 2) 2) (/.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 2)))
(sqrt.f64 (/.f64 (pow.f64 im 2) re))
(-.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 0)
(sqrt.f64 (/.f64 (pow.f64 im 2) re))
(-.f64 (/.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 2) (/.f64 (neg.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re))) 2))
(sqrt.f64 (/.f64 (pow.f64 im 2) re))
(-.f64 (/.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 2) (neg.f64 (/.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 2)))
(sqrt.f64 (/.f64 (pow.f64 im 2) re))
(*.f64 2 (*.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 1/2))
(sqrt.f64 (/.f64 (pow.f64 im 2) re))
(*.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 1)
(sqrt.f64 (/.f64 (pow.f64 im 2) re))
(*.f64 1 (sqrt.f64 (/.f64 (pow.f64 im 2) re)))
(sqrt.f64 (/.f64 (pow.f64 im 2) re))
(*.f64 (*.f64 2 (sqrt.f64 (/.f64 (pow.f64 im 2) re))) 1/2)
(sqrt.f64 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 2 (sqrt.f64 (/.f64 (pow.f64 im 2) re))))
(sqrt.f64 (/.f64 (pow.f64 im 2) re))
(*.f64 (*.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 4) 1/4)
(sqrt.f64 (/.f64 (pow.f64 im 2) re))
(*.f64 1/4 (*.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 4))
(sqrt.f64 (/.f64 (pow.f64 im 2) re))
(*.f64 (*.f64 (*.f64 2 (sqrt.f64 (/.f64 (pow.f64 im 2) re))) 4) 1/8)
(sqrt.f64 (/.f64 (pow.f64 im 2) re))
(*.f64 (sqrt.f64 (pow.f64 im 2)) (sqrt.f64 (/.f64 1 re)))
(sqrt.f64 (/.f64 (pow.f64 im 2) re))
(*.f64 (sqrt.f64 (/.f64 1 re)) (sqrt.f64 (pow.f64 im 2)))
(sqrt.f64 (/.f64 (pow.f64 im 2) re))
(*.f64 (sqrt.f64 (*.f64 2 (pow.f64 im 2))) (sqrt.f64 (/.f64 1/2 re)))
(sqrt.f64 (/.f64 (pow.f64 im 2) re))
(*.f64 (sqrt.f64 (/.f64 1/2 re)) (sqrt.f64 (*.f64 2 (pow.f64 im 2))))
(sqrt.f64 (/.f64 (pow.f64 im 2) re))
(*.f64 (sqrt.f64 (*.f64 2 (/.f64 (pow.f64 im 2) re))) (sqrt.f64 1/2))
(sqrt.f64 (/.f64 (pow.f64 im 2) re))
(*.f64 (sqrt.f64 1/2) (sqrt.f64 (*.f64 2 (/.f64 (pow.f64 im 2) re))))
(sqrt.f64 (/.f64 (pow.f64 im 2) re))
(*.f64 (sqrt.f64 (*.f64 (pow.f64 im 2) 4)) (sqrt.f64 (/.f64 2 (*.f64 re 8))))
(sqrt.f64 (/.f64 (pow.f64 im 2) re))
(*.f64 (sqrt.f64 (/.f64 2 (*.f64 re 8))) (sqrt.f64 (*.f64 (pow.f64 im 2) 4)))
(sqrt.f64 (/.f64 (pow.f64 im 2) re))
(/.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 1)
(sqrt.f64 (/.f64 (pow.f64 im 2) re))
(/.f64 (*.f64 2 (sqrt.f64 (/.f64 (pow.f64 im 2) re))) 2)
(sqrt.f64 (/.f64 (pow.f64 im 2) re))
(/.f64 (*.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 4) 4)
(sqrt.f64 (/.f64 (pow.f64 im 2) re))
(/.f64 (*.f64 (*.f64 2 (sqrt.f64 (/.f64 (pow.f64 im 2) re))) 4) 8)
(sqrt.f64 (/.f64 (pow.f64 im 2) re))
(pow.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 1)
(sqrt.f64 (/.f64 (pow.f64 im 2) re))
(+.f64 (pow.f64 im 2) 0)
(pow.f64 im 2)
(+.f64 0 (pow.f64 im 2))
(pow.f64 im 2)
(+.f64 (/.f64 (pow.f64 im 2) 2) (/.f64 (pow.f64 im 2) 2))
(pow.f64 im 2)
(+.f64 (/.f64 (pow.f64 im 2) 2) (neg.f64 (/.f64 (pow.f64 im 2) -2)))
(pow.f64 im 2)
(+.f64 (/.f64 (pow.f64 im 2) 4) (/.f64 (*.f64 (pow.f64 im 2) 3) 4))
(pow.f64 im 2)
(+.f64 (/.f64 (*.f64 (pow.f64 im 2) 3) 4) (/.f64 (pow.f64 im 2) 4))
(pow.f64 im 2)
(+.f64 (/.f64 (*.f64 (pow.f64 im 2) 3) 4) (+.f64 (/.f64 (pow.f64 im 2) 4) 0))
(pow.f64 im 2)
(+.f64 (/.f64 (/.f64 (pow.f64 im 2) 2) 2) (+.f64 (/.f64 (/.f64 (pow.f64 im 2) 2) 2) (/.f64 (pow.f64 im 2) 2)))
(pow.f64 im 2)
(-.f64 (pow.f64 im 2) 0)
(pow.f64 im 2)
(-.f64 0 (neg.f64 (pow.f64 im 2)))
(pow.f64 im 2)
(-.f64 (/.f64 (pow.f64 im 2) 2) (/.f64 (pow.f64 im 2) -2))
(pow.f64 im 2)
(-.f64 (/.f64 (*.f64 (pow.f64 im 2) 3) 4) (/.f64 (neg.f64 (pow.f64 im 2)) 4))
(pow.f64 im 2)
(-.f64 (-.f64 (/.f64 (/.f64 (pow.f64 im 2) 2) 2) (/.f64 (pow.f64 im 2) -2)) (-.f64 0 (/.f64 (/.f64 (pow.f64 im 2) 2) 2)))
(pow.f64 im 2)
(*.f64 2 (*.f64 (pow.f64 im 2) 1/2))
(pow.f64 im 2)
(*.f64 (pow.f64 im 2) 1)
(pow.f64 im 2)
(*.f64 re (/.f64 (pow.f64 im 2) re))
(*.f64 (pow.f64 im 2) (/.f64 re re))
(+.f64 (pow.f64 im 2) (/.f64 0 re))
(*.f64 (/.f64 (pow.f64 im 2) re) re)
(*.f64 re (/.f64 (pow.f64 im 2) re))
(*.f64 (pow.f64 im 2) (/.f64 re re))
(+.f64 (pow.f64 im 2) (/.f64 0 re))
(*.f64 1 (pow.f64 im 2))
(pow.f64 im 2)
(*.f64 (*.f64 2 (pow.f64 im 2)) 1/2)
(pow.f64 im 2)
(*.f64 (*.f64 2 (pow.f64 im 2)) (*.f64 (/.f64 1/2 re) re))
(*.f64 re (/.f64 (pow.f64 im 2) re))
(*.f64 (pow.f64 im 2) (/.f64 re re))
(+.f64 (pow.f64 im 2) (/.f64 0 re))
(*.f64 (neg.f64 (pow.f64 im 2)) -1)
(pow.f64 im 2)
(*.f64 (*.f64 (/.f64 (pow.f64 im 2) re) 1/2) (+.f64 re re))
(*.f64 re (/.f64 (pow.f64 im 2) re))
(*.f64 (pow.f64 im 2) (/.f64 re re))
(+.f64 (pow.f64 im 2) (/.f64 0 re))
(*.f64 (*.f64 2 (/.f64 (pow.f64 im 2) re)) (/.f64 re 2))
(*.f64 re (/.f64 (pow.f64 im 2) re))
(*.f64 (pow.f64 im 2) (/.f64 re re))
(+.f64 (pow.f64 im 2) (/.f64 0 re))
(*.f64 (*.f64 2 (/.f64 (pow.f64 im 2) re)) (*.f64 1/2 re))
(*.f64 re (/.f64 (pow.f64 im 2) re))
(*.f64 (pow.f64 im 2) (/.f64 re re))
(+.f64 (pow.f64 im 2) (/.f64 0 re))
(*.f64 (*.f64 (pow.f64 im 2) 4) 1/4)
(pow.f64 im 2)
(*.f64 (*.f64 (pow.f64 im 2) 4) (*.f64 (/.f64 2 (*.f64 re 8)) re))
(*.f64 re (/.f64 (pow.f64 im 2) re))
(*.f64 (pow.f64 im 2) (/.f64 re re))
(+.f64 (pow.f64 im 2) (/.f64 0 re))
(*.f64 (*.f64 (pow.f64 im 2) 4) (/.f64 re (*.f64 re 4)))
(*.f64 re (/.f64 (pow.f64 im 2) re))
(*.f64 (pow.f64 im 2) (/.f64 re re))
(+.f64 (pow.f64 im 2) (/.f64 0 re))
(*.f64 1/2 (*.f64 2 (pow.f64 im 2)))
(pow.f64 im 2)
(*.f64 (/.f64 1 re) (*.f64 (pow.f64 im 2) re))
(*.f64 re (/.f64 (pow.f64 im 2) re))
(*.f64 (pow.f64 im 2) (/.f64 re re))
(+.f64 (pow.f64 im 2) (/.f64 0 re))
(*.f64 (/.f64 1/2 re) (*.f64 (pow.f64 im 2) (+.f64 re re)))
(*.f64 re (/.f64 (pow.f64 im 2) re))
(*.f64 (pow.f64 im 2) (/.f64 re re))
(+.f64 (pow.f64 im 2) (/.f64 0 re))
(*.f64 (/.f64 2 (*.f64 re 8)) (*.f64 re (*.f64 (pow.f64 im 2) 4)))
(*.f64 re (/.f64 (pow.f64 im 2) re))
(*.f64 (pow.f64 im 2) (/.f64 re re))
(+.f64 (pow.f64 im 2) (/.f64 0 re))
(*.f64 (*.f64 (/.f64 (pow.f64 im 2) re) 4) (/.f64 re 4))
(*.f64 re (/.f64 (pow.f64 im 2) re))
(*.f64 (pow.f64 im 2) (/.f64 re re))
(+.f64 (pow.f64 im 2) (/.f64 0 re))
(*.f64 (*.f64 2 (*.f64 (pow.f64 im 2) 4)) 1/8)
(pow.f64 im 2)
(*.f64 (*.f64 2 (*.f64 (pow.f64 im 2) 4)) (/.f64 re (*.f64 re 8)))
(*.f64 re (/.f64 (pow.f64 im 2) re))
(*.f64 (pow.f64 im 2) (/.f64 re re))
(+.f64 (pow.f64 im 2) (/.f64 0 re))
(*.f64 (/.f64 (pow.f64 im 2) 2) 2)
(pow.f64 im 2)
(*.f64 (/.f64 (pow.f64 im 2) (*.f64 re re)) (*.f64 re re))
(*.f64 re (/.f64 (pow.f64 im 2) re))
(*.f64 (pow.f64 im 2) (/.f64 re re))
(+.f64 (pow.f64 im 2) (/.f64 0 re))
(*.f64 (/.f64 (pow.f64 im 2) (*.f64 re re)) (/.f64 re (/.f64 1 re)))
(*.f64 re (/.f64 (pow.f64 im 2) re))
(*.f64 (pow.f64 im 2) (/.f64 re re))
(+.f64 (pow.f64 im 2) (/.f64 0 re))
(*.f64 (/.f64 (/.f64 (pow.f64 im 2) re) (/.f64 re 2)) (/.f64 re (/.f64 2 re)))
(*.f64 re (/.f64 (pow.f64 im 2) re))
(*.f64 (pow.f64 im 2) (/.f64 re re))
(+.f64 (pow.f64 im 2) (/.f64 0 re))
(*.f64 -2 (/.f64 (pow.f64 im 2) -2))
(pow.f64 im 2)
(*.f64 (/.f64 (/.f64 (pow.f64 im 2) (*.f64 re re)) re) (/.f64 re (/.f64 (/.f64 1 re) re)))
(*.f64 re (/.f64 (pow.f64 im 2) re))
(*.f64 (pow.f64 im 2) (/.f64 re re))
(+.f64 (pow.f64 im 2) (/.f64 0 re))
(*.f64 (/.f64 (/.f64 (/.f64 (pow.f64 im 2) re) (/.f64 re 2)) re) (/.f64 re (/.f64 (/.f64 2 re) re)))
(*.f64 re (/.f64 (pow.f64 im 2) re))
(*.f64 (pow.f64 im 2) (/.f64 re re))
(+.f64 (pow.f64 im 2) (/.f64 0 re))
(*.f64 1/4 (*.f64 (pow.f64 im 2) 4))
(pow.f64 im 2)
(*.f64 1/4 (pow.f64 (+.f64 im im) 2))
(*.f64 1/4 (*.f64 (*.f64 (/.f64 (pow.f64 im 2) re) 4) re))
(*.f64 re (*.f64 (*.f64 (/.f64 (pow.f64 im 2) re) 4) 1/4))
(*.f64 1/4 (*.f64 4 (*.f64 (pow.f64 im 2) (/.f64 re re))))
(*.f64 1/4 (*.f64 re (*.f64 (pow.f64 im 2) (/.f64 4 re))))
(*.f64 (/.f64 1 (*.f64 re 8)) (*.f64 (*.f64 2 (*.f64 (pow.f64 im 2) 4)) re))
(*.f64 re (/.f64 (pow.f64 im 2) re))
(*.f64 (pow.f64 im 2) (/.f64 re re))
(+.f64 (pow.f64 im 2) (/.f64 0 re))
(*.f64 (/.f64 1 (/.f64 2 re)) (*.f64 2 (/.f64 (pow.f64 im 2) re)))
(*.f64 re (/.f64 (pow.f64 im 2) re))
(*.f64 (pow.f64 im 2) (/.f64 re re))
(+.f64 (pow.f64 im 2) (/.f64 0 re))
(*.f64 (*.f64 (*.f64 2 (/.f64 (pow.f64 im 2) re)) 4) (/.f64 re 8))
(*.f64 re (/.f64 (pow.f64 im 2) re))
(*.f64 (pow.f64 im 2) (/.f64 re re))
(+.f64 (pow.f64 im 2) (/.f64 0 re))
(*.f64 (*.f64 (*.f64 2 (pow.f64 im 2)) 8) (/.f64 re (*.f64 2 (*.f64 re 8))))
(*.f64 re (/.f64 (pow.f64 im 2) re))
(*.f64 (pow.f64 im 2) (/.f64 re re))
(+.f64 (pow.f64 im 2) (/.f64 0 re))
(*.f64 (/.f64 (*.f64 (pow.f64 im 2) 4) (*.f64 re re)) (/.f64 re (/.f64 4 re)))
(*.f64 re (/.f64 (pow.f64 im 2) re))
(*.f64 (pow.f64 im 2) (/.f64 re re))
(+.f64 (pow.f64 im 2) (/.f64 0 re))
(*.f64 (/.f64 (/.f64 (pow.f64 im 2) re) (+.f64 re re)) (/.f64 re (/.f64 1/2 re)))
(*.f64 re (/.f64 (pow.f64 im 2) re))
(*.f64 (pow.f64 im 2) (/.f64 re re))
(+.f64 (pow.f64 im 2) (/.f64 0 re))
(*.f64 (*.f64 (pow.f64 im 2) re) (/.f64 re (*.f64 re re)))
(*.f64 re (/.f64 (pow.f64 im 2) re))
(*.f64 (pow.f64 im 2) (/.f64 re re))
(+.f64 (pow.f64 im 2) (/.f64 0 re))
(*.f64 (*.f64 (pow.f64 im 2) (+.f64 re re)) (/.f64 re (*.f64 re (+.f64 re re))))
(*.f64 re (/.f64 (pow.f64 im 2) re))
(*.f64 (pow.f64 im 2) (/.f64 re re))
(+.f64 (pow.f64 im 2) (/.f64 0 re))
(*.f64 (*.f64 re (*.f64 (pow.f64 im 2) 4)) (/.f64 re (*.f64 re (*.f64 re 4))))
(*.f64 re (/.f64 (pow.f64 im 2) re))
(*.f64 (pow.f64 im 2) (/.f64 re re))
(+.f64 (pow.f64 im 2) (/.f64 0 re))
(*.f64 (/.f64 (/.f64 1 re) re) (*.f64 (*.f64 (pow.f64 im 2) re) re))
(*.f64 re (/.f64 (pow.f64 im 2) re))
(*.f64 (pow.f64 im 2) (/.f64 re re))
(+.f64 (pow.f64 im 2) (/.f64 0 re))
(*.f64 (/.f64 (/.f64 1/2 re) re) (*.f64 (*.f64 (pow.f64 im 2) (+.f64 re re)) re))
(*.f64 re (/.f64 (pow.f64 im 2) re))
(*.f64 (pow.f64 im 2) (/.f64 re re))
(+.f64 (pow.f64 im 2) (/.f64 0 re))
(*.f64 (/.f64 (/.f64 1 re) (*.f64 re 4)) (*.f64 (*.f64 re (*.f64 (pow.f64 im 2) 4)) re))
(*.f64 re (/.f64 (pow.f64 im 2) re))
(*.f64 (pow.f64 im 2) (/.f64 re re))
(+.f64 (pow.f64 im 2) (/.f64 0 re))
(*.f64 (/.f64 (/.f64 (pow.f64 im 2) (*.f64 re re)) (+.f64 re re)) (/.f64 re (/.f64 (/.f64 1/2 re) re)))
(*.f64 re (/.f64 (pow.f64 im 2) re))
(*.f64 (pow.f64 im 2) (/.f64 re re))
(+.f64 (pow.f64 im 2) (/.f64 0 re))
(*.f64 (pow.f64 (+.f64 im im) 2) 1/4)
(*.f64 1/4 (pow.f64 (+.f64 im im) 2))
(/.f64 (pow.f64 im 2) 1)
(pow.f64 im 2)
(/.f64 (/.f64 (pow.f64 im 2) re) (/.f64 1 re))
(*.f64 re (/.f64 (pow.f64 im 2) re))
(*.f64 (pow.f64 im 2) (/.f64 re re))
(+.f64 (pow.f64 im 2) (/.f64 0 re))
(/.f64 (*.f64 2 (pow.f64 im 2)) 2)
(pow.f64 im 2)
(/.f64 (neg.f64 (pow.f64 im 2)) -1)
(pow.f64 im 2)
(/.f64 (*.f64 2 (/.f64 (pow.f64 im 2) re)) (/.f64 2 re))
(*.f64 re (/.f64 (pow.f64 im 2) re))
(*.f64 (pow.f64 im 2) (/.f64 re re))
(+.f64 (pow.f64 im 2) (/.f64 0 re))
(/.f64 (*.f64 (pow.f64 im 2) 4) 4)
(pow.f64 im 2)
(/.f64 (*.f64 2 (*.f64 (pow.f64 im 2) 4)) 8)
(pow.f64 im 2)
(/.f64 (*.f64 (*.f64 2 (pow.f64 im 2)) 8) 16)
(pow.f64 im 2)
(/.f64 (*.f64 (pow.f64 im 2) re) re)
(*.f64 re (/.f64 (pow.f64 im 2) re))
(*.f64 (pow.f64 im 2) (/.f64 re re))
(+.f64 (pow.f64 im 2) (/.f64 0 re))
(/.f64 (*.f64 (pow.f64 im 2) (+.f64 re re)) (+.f64 re re))
(*.f64 re (/.f64 (pow.f64 im 2) re))
(*.f64 (pow.f64 im 2) (/.f64 re re))
(+.f64 (pow.f64 im 2) (/.f64 0 re))
(/.f64 (*.f64 (+.f64 re re) (*.f64 (pow.f64 im 2) 4)) (*.f64 re 8))
(*.f64 re (/.f64 (pow.f64 im 2) re))
(*.f64 (pow.f64 im 2) (/.f64 re re))
(+.f64 (pow.f64 im 2) (/.f64 0 re))
(/.f64 (*.f64 (+.f64 re re) (*.f64 2 (pow.f64 im 2))) (*.f64 re 4))
(*.f64 re (/.f64 (pow.f64 im 2) re))
(*.f64 (pow.f64 im 2) (/.f64 re re))
(+.f64 (pow.f64 im 2) (/.f64 0 re))
(/.f64 (*.f64 (*.f64 re 4) (*.f64 (pow.f64 im 2) 4)) (*.f64 2 (*.f64 re 8)))
(*.f64 re (/.f64 (pow.f64 im 2) re))
(*.f64 (pow.f64 im 2) (/.f64 re re))
(+.f64 (pow.f64 im 2) (/.f64 0 re))
(/.f64 (*.f64 (*.f64 re 8) (*.f64 2 (*.f64 (pow.f64 im 2) 4))) (*.f64 8 (*.f64 re 8)))
(*.f64 re (/.f64 (pow.f64 im 2) re))
(*.f64 (pow.f64 im 2) (/.f64 re re))
(+.f64 (pow.f64 im 2) (/.f64 0 re))
(/.f64 (*.f64 1/2 (*.f64 (/.f64 (pow.f64 im 2) re) 1/2)) (*.f64 (/.f64 1/2 re) 1/2))
(*.f64 re (/.f64 (pow.f64 im 2) re))
(*.f64 (pow.f64 im 2) (/.f64 re re))
(+.f64 (pow.f64 im 2) (/.f64 0 re))
(/.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 (/.f64 1 re) 1/2))
(*.f64 re (/.f64 (pow.f64 im 2) re))
(*.f64 (pow.f64 im 2) (/.f64 re re))
(+.f64 (pow.f64 im 2) (/.f64 0 re))
(neg.f64 (neg.f64 (pow.f64 im 2)))
(pow.f64 im 2)

localize151.0ms (0.4%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(*.f64 -1/2 (*.f64 re (sqrt.f64 (*.f64 2 (/.f64 1 im)))))
0.0b
(+.f64 (sqrt.f64 (*.f64 2 im)) (*.f64 -1/2 (*.f64 re (sqrt.f64 (*.f64 2 (/.f64 1 im))))))
0.1b
(sqrt.f64 (*.f64 2 (/.f64 1 im)))
0.2b
(*.f64 re (sqrt.f64 (*.f64 2 (/.f64 1 im))))
Compiler

Compiled 79 to 62 computations (21.5% saved)

series23.0ms (0.1%)

Counts
4 → 36
Calls

21 calls:

TimeVariablePointExpression
10.0ms
im
@-inf
(sqrt.f64 (*.f64 2 (/.f64 1 im)))
2.0ms
re
@0
(*.f64 re (sqrt.f64 (*.f64 2 (/.f64 1 im))))
1.0ms
im
@-inf
(+.f64 (sqrt.f64 (*.f64 2 im)) (*.f64 -1/2 (*.f64 re (sqrt.f64 (*.f64 2 (/.f64 1 im))))))
1.0ms
im
@-inf
(*.f64 re (sqrt.f64 (*.f64 2 (/.f64 1 im))))
1.0ms
im
@0
(+.f64 (sqrt.f64 (*.f64 2 im)) (*.f64 -1/2 (*.f64 re (sqrt.f64 (*.f64 2 (/.f64 1 im))))))

rewrite360.0ms (1%)

Algorithm
batch-egg-rewrite
Rules
994×rational_best-simplify-63
726×rational_best-simplify-48
718×rational_best-4
718×rational_best-2
718×rational_best-3
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
016114
111690
223390
357990
4199590
Stop Event
node limit
Counts
4 → 139
Calls
Call 1
Inputs
(*.f64 re (sqrt.f64 (*.f64 2 (/.f64 1 im))))
(sqrt.f64 (*.f64 2 (/.f64 1 im)))
(+.f64 (sqrt.f64 (*.f64 2 im)) (*.f64 -1/2 (*.f64 re (sqrt.f64 (*.f64 2 (/.f64 1 im))))))
(*.f64 -1/2 (*.f64 re (sqrt.f64 (*.f64 2 (/.f64 1 im)))))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 re (sqrt.f64 (/.f64 2 im))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)) (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) 4) (/.f64 (/.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) 3)) 2) 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) 4) (/.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) 3)) 4))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) 4) (/.f64 (*.f64 3 (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) -4)) -1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 -3 (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) -4)) (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (*.f64 (sqrt.f64 (/.f64 2 im)) (neg.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)) (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) 4) (*.f64 3 (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) -4)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 re (*.f64 2 (sqrt.f64 (/.f64 2 im)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (neg.f64 re)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 -2 re)) -2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 4)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 4))) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (neg.f64 re)) 4) -4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 re 4) (*.f64 (sqrt.f64 (/.f64 2 im)) 4)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (neg.f64 re)) 4) -1) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 4)) (*.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (neg.f64 re)) 4)) 8)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (neg.f64 re)))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (sqrt.f64 (/.f64 2 im)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (sqrt.f64 (/.f64 2 im)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) 1/2) (*.f64 (sqrt.f64 (/.f64 2 im)) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (sqrt.f64 (/.f64 2 im)) 4) (/.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) 3) 2) 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (sqrt.f64 (/.f64 2 im)) 4) (/.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) 3) 4))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (sqrt.f64 (/.f64 2 im)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) 1/2) (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (sqrt.f64 (/.f64 2 im)) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (sqrt.f64 (/.f64 1/2 im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (sqrt.f64 (/.f64 2 im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 2 im)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 1 im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 1 im)) (sqrt.f64 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (sqrt.f64 (/.f64 2 im))) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 2 (sqrt.f64 (/.f64 2 im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) 1/2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 2) 2) (*.f64 (sqrt.f64 (/.f64 1/4 im)) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (/.f64 1/4 im)) 4) (/.f64 (sqrt.f64 2) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (sqrt.f64 2)) (/.f64 (sqrt.f64 (/.f64 1 im)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) 4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 (sqrt.f64 (/.f64 2 im)) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (/.f64 1 im)) 2) (*.f64 2 (sqrt.f64 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (*.f64 (sqrt.f64 (/.f64 2 im)) 4)) 1/8)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (*.f64 2 (sqrt.f64 2))) (/.f64 (sqrt.f64 (/.f64 1 im)) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (*.f64 (sqrt.f64 (/.f64 1/4 im)) 4)) (/.f64 (sqrt.f64 2) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 1/2) (sqrt.f64 (/.f64 4 im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 1/2 im)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 4 im)) (sqrt.f64 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (/.f64 2 im)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (sqrt.f64 (/.f64 2 im))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (sqrt.f64 (/.f64 2 im)) 4)) 8)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 2 im)) 1)))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (sqrt.f64 (+.f64 im im)) (-.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)) (*.f64 (sqrt.f64 (/.f64 2 im)) (neg.f64 re))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (sqrt.f64 (+.f64 im im)) (+.f64 (+.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2))) (neg.f64 (sqrt.f64 (+.f64 im im)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)) (neg.f64 (sqrt.f64 (+.f64 im im))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)) (+.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)) (-.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)) (sqrt.f64 (+.f64 im im)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)) (+.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)) (-.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)) (sqrt.f64 (+.f64 im im)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)) (+.f64 (+.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)) (-.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)) (sqrt.f64 (+.f64 im im)))) 0))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)) (+.f64 (+.f64 (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) 4) (/.f64 (sqrt.f64 (+.f64 im im)) -2)) (+.f64 (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) -4) (/.f64 (sqrt.f64 (+.f64 im im)) -2))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (sqrt.f64 (+.f64 im im)) (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (sqrt.f64 (+.f64 im im)) (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2))) (*.f64 (sqrt.f64 (+.f64 im im)) 0))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (-.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)) (sqrt.f64 (+.f64 im im))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (+.f64 (-.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)) (sqrt.f64 (+.f64 im im))) (*.f64 re (sqrt.f64 (/.f64 2 im)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (+.f64 (+.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2))) (*.f64 (sqrt.f64 (+.f64 im im)) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (neg.f64 re)) (-.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)) (sqrt.f64 (+.f64 im im))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 2 (sqrt.f64 (+.f64 im im))) (+.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 2 (sqrt.f64 (+.f64 im im))) (+.f64 (+.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2))) 0))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 2 (sqrt.f64 (+.f64 im im))) (+.f64 (+.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2))) (*.f64 (sqrt.f64 (+.f64 im im)) 0)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 re (sqrt.f64 (/.f64 2 im)))) (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) -4) (-.f64 (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) 4) (sqrt.f64 (+.f64 im im))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) -4) (+.f64 (+.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)) (-.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)) (sqrt.f64 (+.f64 im im)))) (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) -4) (+.f64 (+.f64 (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) 4) (/.f64 (sqrt.f64 (+.f64 im im)) -2)) (/.f64 (sqrt.f64 (+.f64 im im)) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) -4) (+.f64 (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) 4) (neg.f64 (sqrt.f64 (+.f64 im im)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) -4) (/.f64 (sqrt.f64 (+.f64 im im)) 2)) (+.f64 (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) 4) (/.f64 (sqrt.f64 (+.f64 im im)) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (sqrt.f64 (+.f64 im im)) 2) (/.f64 (-.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) (sqrt.f64 (+.f64 im im))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (sqrt.f64 (+.f64 im im)) 2) (+.f64 (+.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2))) (*.f64 -3 (/.f64 (sqrt.f64 (+.f64 im im)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (sqrt.f64 (+.f64 im im)) 2) (+.f64 (+.f64 (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) 4) (/.f64 (sqrt.f64 (+.f64 im im)) -2)) (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (sqrt.f64 (+.f64 im im)) 2) (+.f64 (/.f64 (sqrt.f64 (+.f64 im im)) -2) (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)) (sqrt.f64 (+.f64 im im))) (*.f64 (sqrt.f64 (+.f64 im im)) -2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 re (sqrt.f64 (/.f64 2 im)))) 2) (/.f64 (sqrt.f64 (+.f64 im im)) -2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 3 (/.f64 (sqrt.f64 (+.f64 im im)) 2)) (+.f64 (+.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2))) (/.f64 (sqrt.f64 (+.f64 im im)) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 3 (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) -4)) (-.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)) (-.f64 (sqrt.f64 (+.f64 im im)) (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) 4))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (sqrt.f64 (+.f64 im im)) (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) 4)) (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 0 (-.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)) (sqrt.f64 (+.f64 im im)))) (*.f64 re (sqrt.f64 (/.f64 2 im))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) -4) (+.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)) (-.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)) (sqrt.f64 (+.f64 im im))))) (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (*.f64 3 (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) -4)) (-.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)) (sqrt.f64 (+.f64 im im)))) (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (sqrt.f64 (+.f64 im im)) (+.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)))) (neg.f64 (sqrt.f64 (+.f64 im im))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 0 (+.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)))) (*.f64 (sqrt.f64 (+.f64 im im)) -2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (/.f64 (sqrt.f64 (+.f64 im im)) 2) (+.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)))) (*.f64 -3 (/.f64 (sqrt.f64 (+.f64 im im)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (*.f64 3 (/.f64 (sqrt.f64 (+.f64 im im)) 2)) (+.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)))) (/.f64 (sqrt.f64 (+.f64 im im)) -2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)) (+.f64 (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) 4) (/.f64 (sqrt.f64 (+.f64 im im)) -2))) (+.f64 (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) -4) (/.f64 (sqrt.f64 (+.f64 im im)) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) -4) (+.f64 (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) 4) (/.f64 (sqrt.f64 (+.f64 im im)) -2))) (/.f64 (sqrt.f64 (+.f64 im im)) -2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (+.f64 (sqrt.f64 (+.f64 im im)) (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (sqrt.f64 (+.f64 im im)) (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 2) (-.f64 (*.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 1 im)))) (neg.f64 (sqrt.f64 im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 2) (+.f64 (*.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 1 im)))) (sqrt.f64 im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 2) (+.f64 (sqrt.f64 im) (*.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 1 im))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 2 (sqrt.f64 (+.f64 im im))) (*.f64 re (sqrt.f64 (/.f64 2 im)))) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (-.f64 (*.f64 2 (sqrt.f64 (+.f64 im im))) (*.f64 re (sqrt.f64 (/.f64 2 im)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)) (sqrt.f64 (+.f64 im im))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 -2 re)) (*.f64 (sqrt.f64 (+.f64 im im)) 4)) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (+.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 -2 re)) (*.f64 (sqrt.f64 (+.f64 im im)) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 (*.f64 2 (sqrt.f64 (+.f64 im im))) (*.f64 re (sqrt.f64 (/.f64 2 im)))) 4) 1/8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (sqrt.f64 (+.f64 im im)) (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 2 (sqrt.f64 (+.f64 im im))) (*.f64 re (sqrt.f64 (/.f64 2 im)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)) (sqrt.f64 (+.f64 im im))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 -2 re)) (*.f64 (sqrt.f64 (+.f64 im im)) 4)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 2 (sqrt.f64 (+.f64 im im))) (*.f64 re (sqrt.f64 (/.f64 2 im)))) 4) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (sqrt.f64 (+.f64 im im)) 4) (*.f64 re (*.f64 2 (sqrt.f64 (/.f64 2 im))))) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (neg.f64 re)) 4) (*.f64 2 (*.f64 (sqrt.f64 (+.f64 im im)) 4))) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 (sqrt.f64 (+.f64 im im)) 4)) (*.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (neg.f64 re)) 4)) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 -2 re)) (neg.f64 (*.f64 (sqrt.f64 (+.f64 im im)) 4))) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 -2 re)) (-.f64 (*.f64 (sqrt.f64 (+.f64 im im)) -2) (*.f64 re (sqrt.f64 (/.f64 2 im))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (+.f64 (sqrt.f64 (+.f64 im im)) (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (-.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)) (sqrt.f64 (+.f64 im im))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) -4) (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) -4))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (neg.f64 re)) 8) (/.f64 (*.f64 3 (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) -4)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (neg.f64 re)) 8) (/.f64 (*.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) -3/2) 4))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 0 (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) 4)) (neg.f64 (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) -4) (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 re (*.f64 2 (sqrt.f64 (/.f64 2 im)))) -4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (neg.f64 re)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 -2 re)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 4)) -8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) -2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (neg.f64 re)) 4) 8)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)))))))

simplify381.0ms (1.1%)

Algorithm
egg-herbie
Rules
1102×rational_best-simplify-50
984×rational_best-simplify-47
798×rational_best-simplify-48
704×rational_best-simplify-52
638×rational_best-simplify-1
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02965593
17075377
219815293
Stop Event
node limit
Counts
175 → 179
Calls
Call 1
Inputs
(*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))
(*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))
(*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))
(*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))
(*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))
(*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))
(*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))
(*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))
(*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))
(*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))
(*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))
(*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))
(*.f64 (sqrt.f64 2) (sqrt.f64 im))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))
(*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im))))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))
(*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im))))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))
(*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im))))
(*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im))))
(*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im))))
(*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im))))
(*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im))))
(*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im))))
(*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im))))
(*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im))))
(*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im))))
(*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im))))
(*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im))))
(*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im))))
(+.f64 0 (*.f64 re (sqrt.f64 (/.f64 2 im))))
(+.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)) (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)))
(+.f64 (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) 4) (/.f64 (/.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) 3)) 2) 2))
(+.f64 (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) 4) (/.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) 3)) 4))
(+.f64 (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) 4) (/.f64 (*.f64 3 (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) -4)) -1))
(+.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) 0)
(+.f64 (*.f64 -3 (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) -4)) (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) 4))
(-.f64 0 (*.f64 (sqrt.f64 (/.f64 2 im)) (neg.f64 re)))
(-.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)) (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)))
(-.f64 (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) 4) (*.f64 3 (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) -4)))
(-.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) 0)
(/.f64 (*.f64 re (*.f64 2 (sqrt.f64 (/.f64 2 im)))) 2)
(/.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (neg.f64 re)) -1)
(/.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 -2 re)) -2)
(/.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 4)) 4)
(/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) 1)
(/.f64 (*.f64 2 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 4))) 8)
(/.f64 (*.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (neg.f64 re)) 4) -4)
(/.f64 (*.f64 (*.f64 re 4) (*.f64 (sqrt.f64 (/.f64 2 im)) 4)) 16)
(/.f64 (/.f64 (*.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (neg.f64 re)) 4) -1) 4)
(/.f64 (-.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 4)) (*.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (neg.f64 re)) 4)) 8)
(pow.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) 1)
(neg.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (neg.f64 re)))
(+.f64 (sqrt.f64 (/.f64 2 im)) 0)
(+.f64 0 (sqrt.f64 (/.f64 2 im)))
(+.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) 1/2) (*.f64 (sqrt.f64 (/.f64 2 im)) 1/2))
(+.f64 (/.f64 (sqrt.f64 (/.f64 2 im)) 4) (/.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) 3) 2) 2))
(+.f64 (/.f64 (sqrt.f64 (/.f64 2 im)) 4) (/.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) 3) 4))
(-.f64 (sqrt.f64 (/.f64 2 im)) 0)
(-.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) 1/2) (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2))
(*.f64 2 (*.f64 (sqrt.f64 (/.f64 2 im)) 1/2))
(*.f64 2 (sqrt.f64 (/.f64 1/2 im)))
(*.f64 1 (sqrt.f64 (/.f64 2 im)))
(*.f64 (sqrt.f64 (/.f64 2 im)) 1)
(*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 1 im)))
(*.f64 (sqrt.f64 (/.f64 1 im)) (sqrt.f64 2))
(*.f64 (*.f64 2 (sqrt.f64 (/.f64 2 im))) 1/2)
(*.f64 1/2 (*.f64 2 (sqrt.f64 (/.f64 2 im))))
(*.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) 1/2) 2)
(*.f64 (/.f64 (sqrt.f64 2) 2) (*.f64 (sqrt.f64 (/.f64 1/4 im)) 4))
(*.f64 (*.f64 (sqrt.f64 (/.f64 1/4 im)) 4) (/.f64 (sqrt.f64 2) 2))
(*.f64 (*.f64 2 (sqrt.f64 2)) (/.f64 (sqrt.f64 (/.f64 1 im)) 2))
(*.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) 4) 1/4)
(*.f64 1/4 (*.f64 (sqrt.f64 (/.f64 2 im)) 4))
(*.f64 (/.f64 (sqrt.f64 (/.f64 1 im)) 2) (*.f64 2 (sqrt.f64 2)))
(*.f64 (*.f64 2 (*.f64 (sqrt.f64 (/.f64 2 im)) 4)) 1/8)
(*.f64 (*.f64 2 (*.f64 2 (sqrt.f64 2))) (/.f64 (sqrt.f64 (/.f64 1 im)) 4))
(*.f64 (*.f64 2 (*.f64 (sqrt.f64 (/.f64 1/4 im)) 4)) (/.f64 (sqrt.f64 2) 4))
(*.f64 (sqrt.f64 1/2) (sqrt.f64 (/.f64 4 im)))
(*.f64 (sqrt.f64 (/.f64 1/2 im)) 2)
(*.f64 (sqrt.f64 (/.f64 4 im)) (sqrt.f64 1/2))
(/.f64 (sqrt.f64 (/.f64 2 im)) 1)
(/.f64 (*.f64 2 (sqrt.f64 (/.f64 2 im))) 2)
(/.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) 4) 4)
(/.f64 (*.f64 2 (*.f64 (sqrt.f64 (/.f64 2 im)) 4)) 8)
(pow.f64 (sqrt.f64 (/.f64 2 im)) 1)
(-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)))
(-.f64 (sqrt.f64 (+.f64 im im)) (-.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)) (*.f64 (sqrt.f64 (/.f64 2 im)) (neg.f64 re))))
(-.f64 (sqrt.f64 (+.f64 im im)) (+.f64 (+.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2))) (neg.f64 (sqrt.f64 (+.f64 im im)))))
(-.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)) (neg.f64 (sqrt.f64 (+.f64 im im))))
(-.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)) (+.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)) (-.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)) (sqrt.f64 (+.f64 im im)))))
(-.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)) (+.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)) (-.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)) (sqrt.f64 (+.f64 im im)))))
(-.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)) (+.f64 (+.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)) (-.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)) (sqrt.f64 (+.f64 im im)))) 0))
(-.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)) (+.f64 (+.f64 (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) 4) (/.f64 (sqrt.f64 (+.f64 im im)) -2)) (+.f64 (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) -4) (/.f64 (sqrt.f64 (+.f64 im im)) -2))))
(-.f64 (+.f64 (sqrt.f64 (+.f64 im im)) (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2))) 0)
(-.f64 (+.f64 (sqrt.f64 (+.f64 im im)) (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2))) (*.f64 (sqrt.f64 (+.f64 im im)) 0))
(-.f64 0 (-.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)) (sqrt.f64 (+.f64 im im))))
(-.f64 0 (+.f64 (-.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)) (sqrt.f64 (+.f64 im im))) (*.f64 re (sqrt.f64 (/.f64 2 im)))))
(-.f64 0 (+.f64 (+.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2))) (*.f64 (sqrt.f64 (+.f64 im im)) -2)))
(-.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (neg.f64 re)) (-.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)) (sqrt.f64 (+.f64 im im))))
(-.f64 (*.f64 2 (sqrt.f64 (+.f64 im im))) (+.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2))))
(-.f64 (*.f64 2 (sqrt.f64 (+.f64 im im))) (+.f64 (+.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2))) 0))
(-.f64 (*.f64 2 (sqrt.f64 (+.f64 im im))) (+.f64 (+.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2))) (*.f64 (sqrt.f64 (+.f64 im im)) 0)))
(-.f64 (-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 re (sqrt.f64 (/.f64 2 im)))) (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)))
(-.f64 (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) -4) (-.f64 (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) 4) (sqrt.f64 (+.f64 im im))))
(-.f64 (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) -4) (+.f64 (+.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)) (-.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)) (sqrt.f64 (+.f64 im im)))) (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) 4)))
(-.f64 (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) -4) (+.f64 (+.f64 (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) 4) (/.f64 (sqrt.f64 (+.f64 im im)) -2)) (/.f64 (sqrt.f64 (+.f64 im im)) -2)))
(-.f64 (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) -4) (+.f64 (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) 4) (neg.f64 (sqrt.f64 (+.f64 im im)))))
(-.f64 (+.f64 (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) -4) (/.f64 (sqrt.f64 (+.f64 im im)) 2)) (+.f64 (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) 4) (/.f64 (sqrt.f64 (+.f64 im im)) -2)))
(-.f64 (/.f64 (sqrt.f64 (+.f64 im im)) 2) (/.f64 (-.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) (sqrt.f64 (+.f64 im im))) 2))
(-.f64 (/.f64 (sqrt.f64 (+.f64 im im)) 2) (+.f64 (+.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2))) (*.f64 -3 (/.f64 (sqrt.f64 (+.f64 im im)) 2))))
(-.f64 (/.f64 (sqrt.f64 (+.f64 im im)) 2) (+.f64 (+.f64 (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) 4) (/.f64 (sqrt.f64 (+.f64 im im)) -2)) (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) 4)))
(-.f64 (/.f64 (sqrt.f64 (+.f64 im im)) 2) (+.f64 (/.f64 (sqrt.f64 (+.f64 im im)) -2) (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2))))
(-.f64 (-.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)) (sqrt.f64 (+.f64 im im))) (*.f64 (sqrt.f64 (+.f64 im im)) -2))
(-.f64 (/.f64 (-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 re (sqrt.f64 (/.f64 2 im)))) 2) (/.f64 (sqrt.f64 (+.f64 im im)) -2))
(-.f64 (*.f64 3 (/.f64 (sqrt.f64 (+.f64 im im)) 2)) (+.f64 (+.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2))) (/.f64 (sqrt.f64 (+.f64 im im)) -2)))
(-.f64 (*.f64 3 (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) -4)) (-.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)) (-.f64 (sqrt.f64 (+.f64 im im)) (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) 4))))
(-.f64 (-.f64 (sqrt.f64 (+.f64 im im)) (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) 4)) (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) 4))
(-.f64 (-.f64 0 (-.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)) (sqrt.f64 (+.f64 im im)))) (*.f64 re (sqrt.f64 (/.f64 2 im))))
(-.f64 (-.f64 (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) -4) (+.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)) (-.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)) (sqrt.f64 (+.f64 im im))))) (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) 4))
(-.f64 (-.f64 (*.f64 3 (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) -4)) (-.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)) (sqrt.f64 (+.f64 im im)))) (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) 4))
(-.f64 (-.f64 (sqrt.f64 (+.f64 im im)) (+.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)))) (neg.f64 (sqrt.f64 (+.f64 im im))))
(-.f64 (-.f64 0 (+.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)))) (*.f64 (sqrt.f64 (+.f64 im im)) -2))
(-.f64 (-.f64 (/.f64 (sqrt.f64 (+.f64 im im)) 2) (+.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)))) (*.f64 -3 (/.f64 (sqrt.f64 (+.f64 im im)) 2)))
(-.f64 (-.f64 (*.f64 3 (/.f64 (sqrt.f64 (+.f64 im im)) 2)) (+.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)))) (/.f64 (sqrt.f64 (+.f64 im im)) -2))
(-.f64 (-.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)) (+.f64 (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) 4) (/.f64 (sqrt.f64 (+.f64 im im)) -2))) (+.f64 (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) -4) (/.f64 (sqrt.f64 (+.f64 im im)) -2)))
(-.f64 (-.f64 (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) -4) (+.f64 (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) 4) (/.f64 (sqrt.f64 (+.f64 im im)) -2))) (/.f64 (sqrt.f64 (+.f64 im im)) -2))
(*.f64 1 (+.f64 (sqrt.f64 (+.f64 im im)) (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2))))
(*.f64 (+.f64 (sqrt.f64 (+.f64 im im)) (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2))) 1)
(*.f64 (sqrt.f64 2) (-.f64 (*.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 1 im)))) (neg.f64 (sqrt.f64 im))))
(*.f64 (sqrt.f64 2) (+.f64 (*.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 1 im)))) (sqrt.f64 im)))
(*.f64 (sqrt.f64 2) (+.f64 (sqrt.f64 im) (*.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 1 im))))))
(*.f64 (-.f64 (*.f64 2 (sqrt.f64 (+.f64 im im))) (*.f64 re (sqrt.f64 (/.f64 2 im)))) 1/2)
(*.f64 1/2 (-.f64 (*.f64 2 (sqrt.f64 (+.f64 im im))) (*.f64 re (sqrt.f64 (/.f64 2 im)))))
(*.f64 (-.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)) (sqrt.f64 (+.f64 im im))) -1)
(*.f64 (+.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 -2 re)) (*.f64 (sqrt.f64 (+.f64 im im)) 4)) 1/4)
(*.f64 1/4 (+.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 -2 re)) (*.f64 (sqrt.f64 (+.f64 im im)) 4)))
(*.f64 (*.f64 (-.f64 (*.f64 2 (sqrt.f64 (+.f64 im im))) (*.f64 re (sqrt.f64 (/.f64 2 im)))) 4) 1/8)
(/.f64 (+.f64 (sqrt.f64 (+.f64 im im)) (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2))) 1)
(/.f64 (-.f64 (*.f64 2 (sqrt.f64 (+.f64 im im))) (*.f64 re (sqrt.f64 (/.f64 2 im)))) 2)
(/.f64 (-.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)) (sqrt.f64 (+.f64 im im))) -1)
(/.f64 (+.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 -2 re)) (*.f64 (sqrt.f64 (+.f64 im im)) 4)) 4)
(/.f64 (*.f64 (-.f64 (*.f64 2 (sqrt.f64 (+.f64 im im))) (*.f64 re (sqrt.f64 (/.f64 2 im)))) 4) 8)
(/.f64 (-.f64 (*.f64 (sqrt.f64 (+.f64 im im)) 4) (*.f64 re (*.f64 2 (sqrt.f64 (/.f64 2 im))))) 4)
(/.f64 (+.f64 (*.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (neg.f64 re)) 4) (*.f64 2 (*.f64 (sqrt.f64 (+.f64 im im)) 4))) 8)
(/.f64 (+.f64 (*.f64 2 (*.f64 (sqrt.f64 (+.f64 im im)) 4)) (*.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (neg.f64 re)) 4)) 8)
(/.f64 (-.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 -2 re)) (neg.f64 (*.f64 (sqrt.f64 (+.f64 im im)) 4))) 4)
(/.f64 (-.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 -2 re)) (-.f64 (*.f64 (sqrt.f64 (+.f64 im im)) -2) (*.f64 re (sqrt.f64 (/.f64 2 im))))) 2)
(pow.f64 (+.f64 (sqrt.f64 (+.f64 im im)) (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2))) 1)
(neg.f64 (-.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)) (sqrt.f64 (+.f64 im im))))
(+.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)) 0)
(+.f64 0 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)))
(+.f64 (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) -4) (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) -4))
(+.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (neg.f64 re)) 8) (/.f64 (*.f64 3 (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) -4)) 2))
(+.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (neg.f64 re)) 8) (/.f64 (*.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) -3/2) 4))
(+.f64 (-.f64 0 (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) 4)) (neg.f64 (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) 4)))
(-.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)) 0)
(-.f64 0 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)))
(-.f64 (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) -4) (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) 4))
(/.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)) 1)
(/.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)) -1)
(/.f64 (*.f64 re (*.f64 2 (sqrt.f64 (/.f64 2 im)))) -4)
(/.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (neg.f64 re)) 2)
(/.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 -2 re)) 4)
(/.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 4)) -8)
(/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) -2)
(/.f64 (*.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (neg.f64 re)) 4) 8)
(pow.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)) 1)
(neg.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)))
Outputs
(*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))
(*.f64 re (sqrt.f64 (*.f64 2 (/.f64 1 im))))
(*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))
(*.f64 re (sqrt.f64 (*.f64 2 (/.f64 1 im))))
(*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))
(*.f64 re (sqrt.f64 (*.f64 2 (/.f64 1 im))))
(*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))
(*.f64 re (sqrt.f64 (*.f64 2 (/.f64 1 im))))
(*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))
(*.f64 re (sqrt.f64 (*.f64 2 (/.f64 1 im))))
(*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))
(*.f64 re (sqrt.f64 (*.f64 2 (/.f64 1 im))))
(*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))
(*.f64 re (sqrt.f64 (*.f64 2 (/.f64 1 im))))
(*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))
(*.f64 re (sqrt.f64 (*.f64 2 (/.f64 1 im))))
(*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))
(*.f64 re (sqrt.f64 (*.f64 2 (/.f64 1 im))))
(*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))
(*.f64 re (sqrt.f64 (*.f64 2 (/.f64 1 im))))
(*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))
(*.f64 re (sqrt.f64 (*.f64 2 (/.f64 1 im))))
(*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))
(*.f64 re (sqrt.f64 (*.f64 2 (/.f64 1 im))))
(*.f64 (sqrt.f64 2) (sqrt.f64 im))
(sqrt.f64 (*.f64 2 im))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))
(+.f64 (sqrt.f64 (*.f64 2 im)) (*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 (*.f64 (sqrt.f64 2) re) -1/2)))
(+.f64 (sqrt.f64 (*.f64 2 im)) (*.f64 (*.f64 re (sqrt.f64 (*.f64 2 (/.f64 1 im)))) -1/2))
(+.f64 (sqrt.f64 (*.f64 2 im)) (*.f64 (sqrt.f64 (*.f64 2 (/.f64 1 im))) (*.f64 re -1/2)))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))
(+.f64 (sqrt.f64 (*.f64 2 im)) (*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 (*.f64 (sqrt.f64 2) re) -1/2)))
(+.f64 (sqrt.f64 (*.f64 2 im)) (*.f64 (*.f64 re (sqrt.f64 (*.f64 2 (/.f64 1 im)))) -1/2))
(+.f64 (sqrt.f64 (*.f64 2 im)) (*.f64 (sqrt.f64 (*.f64 2 (/.f64 1 im))) (*.f64 re -1/2)))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))
(+.f64 (sqrt.f64 (*.f64 2 im)) (*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 (*.f64 (sqrt.f64 2) re) -1/2)))
(+.f64 (sqrt.f64 (*.f64 2 im)) (*.f64 (*.f64 re (sqrt.f64 (*.f64 2 (/.f64 1 im)))) -1/2))
(+.f64 (sqrt.f64 (*.f64 2 im)) (*.f64 (sqrt.f64 (*.f64 2 (/.f64 1 im))) (*.f64 re -1/2)))
(*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im))))
(*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 (*.f64 (sqrt.f64 2) re) -1/2))
(*.f64 (*.f64 re (sqrt.f64 (*.f64 2 (/.f64 1 im)))) -1/2)
(*.f64 (sqrt.f64 (*.f64 2 (/.f64 1 im))) (*.f64 re -1/2))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))
(+.f64 (sqrt.f64 (*.f64 2 im)) (*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 (*.f64 (sqrt.f64 2) re) -1/2)))
(+.f64 (sqrt.f64 (*.f64 2 im)) (*.f64 (*.f64 re (sqrt.f64 (*.f64 2 (/.f64 1 im)))) -1/2))
(+.f64 (sqrt.f64 (*.f64 2 im)) (*.f64 (sqrt.f64 (*.f64 2 (/.f64 1 im))) (*.f64 re -1/2)))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))
(+.f64 (sqrt.f64 (*.f64 2 im)) (*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 (*.f64 (sqrt.f64 2) re) -1/2)))
(+.f64 (sqrt.f64 (*.f64 2 im)) (*.f64 (*.f64 re (sqrt.f64 (*.f64 2 (/.f64 1 im)))) -1/2))
(+.f64 (sqrt.f64 (*.f64 2 im)) (*.f64 (sqrt.f64 (*.f64 2 (/.f64 1 im))) (*.f64 re -1/2)))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))
(+.f64 (sqrt.f64 (*.f64 2 im)) (*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 (*.f64 (sqrt.f64 2) re) -1/2)))
(+.f64 (sqrt.f64 (*.f64 2 im)) (*.f64 (*.f64 re (sqrt.f64 (*.f64 2 (/.f64 1 im)))) -1/2))
(+.f64 (sqrt.f64 (*.f64 2 im)) (*.f64 (sqrt.f64 (*.f64 2 (/.f64 1 im))) (*.f64 re -1/2)))
(*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im))))
(*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 (*.f64 (sqrt.f64 2) re) -1/2))
(*.f64 (*.f64 re (sqrt.f64 (*.f64 2 (/.f64 1 im)))) -1/2)
(*.f64 (sqrt.f64 (*.f64 2 (/.f64 1 im))) (*.f64 re -1/2))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))
(+.f64 (sqrt.f64 (*.f64 2 im)) (*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 (*.f64 (sqrt.f64 2) re) -1/2)))
(+.f64 (sqrt.f64 (*.f64 2 im)) (*.f64 (*.f64 re (sqrt.f64 (*.f64 2 (/.f64 1 im)))) -1/2))
(+.f64 (sqrt.f64 (*.f64 2 im)) (*.f64 (sqrt.f64 (*.f64 2 (/.f64 1 im))) (*.f64 re -1/2)))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))
(+.f64 (sqrt.f64 (*.f64 2 im)) (*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 (*.f64 (sqrt.f64 2) re) -1/2)))
(+.f64 (sqrt.f64 (*.f64 2 im)) (*.f64 (*.f64 re (sqrt.f64 (*.f64 2 (/.f64 1 im)))) -1/2))
(+.f64 (sqrt.f64 (*.f64 2 im)) (*.f64 (sqrt.f64 (*.f64 2 (/.f64 1 im))) (*.f64 re -1/2)))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))
(+.f64 (sqrt.f64 (*.f64 2 im)) (*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 (*.f64 (sqrt.f64 2) re) -1/2)))
(+.f64 (sqrt.f64 (*.f64 2 im)) (*.f64 (*.f64 re (sqrt.f64 (*.f64 2 (/.f64 1 im)))) -1/2))
(+.f64 (sqrt.f64 (*.f64 2 im)) (*.f64 (sqrt.f64 (*.f64 2 (/.f64 1 im))) (*.f64 re -1/2)))
(*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im))))
(*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 (*.f64 (sqrt.f64 2) re) -1/2))
(*.f64 (*.f64 re (sqrt.f64 (*.f64 2 (/.f64 1 im)))) -1/2)
(*.f64 (sqrt.f64 (*.f64 2 (/.f64 1 im))) (*.f64 re -1/2))
(*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im))))
(*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 (*.f64 (sqrt.f64 2) re) -1/2))
(*.f64 (*.f64 re (sqrt.f64 (*.f64 2 (/.f64 1 im)))) -1/2)
(*.f64 (sqrt.f64 (*.f64 2 (/.f64 1 im))) (*.f64 re -1/2))
(*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im))))
(*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 (*.f64 (sqrt.f64 2) re) -1/2))
(*.f64 (*.f64 re (sqrt.f64 (*.f64 2 (/.f64 1 im)))) -1/2)
(*.f64 (sqrt.f64 (*.f64 2 (/.f64 1 im))) (*.f64 re -1/2))
(*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im))))
(*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 (*.f64 (sqrt.f64 2) re) -1/2))
(*.f64 (*.f64 re (sqrt.f64 (*.f64 2 (/.f64 1 im)))) -1/2)
(*.f64 (sqrt.f64 (*.f64 2 (/.f64 1 im))) (*.f64 re -1/2))
(*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im))))
(*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 (*.f64 (sqrt.f64 2) re) -1/2))
(*.f64 (*.f64 re (sqrt.f64 (*.f64 2 (/.f64 1 im)))) -1/2)
(*.f64 (sqrt.f64 (*.f64 2 (/.f64 1 im))) (*.f64 re -1/2))
(*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im))))
(*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 (*.f64 (sqrt.f64 2) re) -1/2))
(*.f64 (*.f64 re (sqrt.f64 (*.f64 2 (/.f64 1 im)))) -1/2)
(*.f64 (sqrt.f64 (*.f64 2 (/.f64 1 im))) (*.f64 re -1/2))
(*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im))))
(*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 (*.f64 (sqrt.f64 2) re) -1/2))
(*.f64 (*.f64 re (sqrt.f64 (*.f64 2 (/.f64 1 im)))) -1/2)
(*.f64 (sqrt.f64 (*.f64 2 (/.f64 1 im))) (*.f64 re -1/2))
(*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im))))
(*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 (*.f64 (sqrt.f64 2) re) -1/2))
(*.f64 (*.f64 re (sqrt.f64 (*.f64 2 (/.f64 1 im)))) -1/2)
(*.f64 (sqrt.f64 (*.f64 2 (/.f64 1 im))) (*.f64 re -1/2))
(*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im))))
(*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 (*.f64 (sqrt.f64 2) re) -1/2))
(*.f64 (*.f64 re (sqrt.f64 (*.f64 2 (/.f64 1 im)))) -1/2)
(*.f64 (sqrt.f64 (*.f64 2 (/.f64 1 im))) (*.f64 re -1/2))
(*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im))))
(*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 (*.f64 (sqrt.f64 2) re) -1/2))
(*.f64 (*.f64 re (sqrt.f64 (*.f64 2 (/.f64 1 im)))) -1/2)
(*.f64 (sqrt.f64 (*.f64 2 (/.f64 1 im))) (*.f64 re -1/2))
(*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im))))
(*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 (*.f64 (sqrt.f64 2) re) -1/2))
(*.f64 (*.f64 re (sqrt.f64 (*.f64 2 (/.f64 1 im)))) -1/2)
(*.f64 (sqrt.f64 (*.f64 2 (/.f64 1 im))) (*.f64 re -1/2))
(*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im))))
(*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 (*.f64 (sqrt.f64 2) re) -1/2))
(*.f64 (*.f64 re (sqrt.f64 (*.f64 2 (/.f64 1 im)))) -1/2)
(*.f64 (sqrt.f64 (*.f64 2 (/.f64 1 im))) (*.f64 re -1/2))
(+.f64 0 (*.f64 re (sqrt.f64 (/.f64 2 im))))
(*.f64 re (sqrt.f64 (/.f64 2 im)))
(+.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)) (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)))
(*.f64 re (sqrt.f64 (/.f64 2 im)))
(+.f64 (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) 4) (/.f64 (/.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) 3)) 2) 2))
(*.f64 re (sqrt.f64 (/.f64 2 im)))
(+.f64 (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) 4) (/.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) 3)) 4))
(*.f64 re (sqrt.f64 (/.f64 2 im)))
(+.f64 (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) 4) (/.f64 (*.f64 3 (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) -4)) -1))
(+.f64 (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) 4) (neg.f64 (*.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) -3/4)))
(+.f64 (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) 4) (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) 3/4)))
(+.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) 0)
(*.f64 re (sqrt.f64 (/.f64 2 im)))
(+.f64 (*.f64 -3 (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) -4)) (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) 4))
(+.f64 (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) 4) (neg.f64 (*.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) -3/4)))
(+.f64 (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) 4) (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) 3/4)))
(-.f64 0 (*.f64 (sqrt.f64 (/.f64 2 im)) (neg.f64 re)))
(*.f64 re (sqrt.f64 (/.f64 2 im)))
(-.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)) (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)))
(*.f64 re (sqrt.f64 (/.f64 2 im)))
(-.f64 (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) 4) (*.f64 3 (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) -4)))
(+.f64 (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) 4) (neg.f64 (*.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) -3/4)))
(+.f64 (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) 4) (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) 3/4)))
(-.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) 0)
(*.f64 re (sqrt.f64 (/.f64 2 im)))
(/.f64 (*.f64 re (*.f64 2 (sqrt.f64 (/.f64 2 im)))) 2)
(*.f64 re (sqrt.f64 (/.f64 2 im)))
(/.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (neg.f64 re)) -1)
(*.f64 re (sqrt.f64 (/.f64 2 im)))
(/.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 -2 re)) -2)
(*.f64 re (sqrt.f64 (/.f64 2 im)))
(/.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 4)) 4)
(*.f64 re (sqrt.f64 (/.f64 2 im)))
(/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) 1)
(*.f64 re (sqrt.f64 (/.f64 2 im)))
(/.f64 (*.f64 2 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 4))) 8)
(*.f64 re (sqrt.f64 (/.f64 2 im)))
(/.f64 (*.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (neg.f64 re)) 4) -4)
(*.f64 re (sqrt.f64 (/.f64 2 im)))
(/.f64 (*.f64 (*.f64 re 4) (*.f64 (sqrt.f64 (/.f64 2 im)) 4)) 16)
(*.f64 re (sqrt.f64 (/.f64 2 im)))
(/.f64 (/.f64 (*.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (neg.f64 re)) 4) -1) 4)
(*.f64 re (sqrt.f64 (/.f64 2 im)))
(/.f64 (-.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 4)) (*.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (neg.f64 re)) 4)) 8)
(*.f64 re (sqrt.f64 (/.f64 2 im)))
(pow.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) 1)
(*.f64 re (sqrt.f64 (/.f64 2 im)))
(neg.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (neg.f64 re)))
(*.f64 re (sqrt.f64 (/.f64 2 im)))
(+.f64 (sqrt.f64 (/.f64 2 im)) 0)
(sqrt.f64 (/.f64 2 im))
(+.f64 0 (sqrt.f64 (/.f64 2 im)))
(sqrt.f64 (/.f64 2 im))
(+.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) 1/2) (*.f64 (sqrt.f64 (/.f64 2 im)) 1/2))
(sqrt.f64 (/.f64 2 im))
(+.f64 (/.f64 (sqrt.f64 (/.f64 2 im)) 4) (/.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) 3) 2) 2))
(sqrt.f64 (/.f64 2 im))
(+.f64 (/.f64 (sqrt.f64 (/.f64 2 im)) 4) (/.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) 3) 4))
(sqrt.f64 (/.f64 2 im))
(-.f64 (sqrt.f64 (/.f64 2 im)) 0)
(sqrt.f64 (/.f64 2 im))
(-.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) 1/2) (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2))
(sqrt.f64 (/.f64 2 im))
(*.f64 2 (*.f64 (sqrt.f64 (/.f64 2 im)) 1/2))
(sqrt.f64 (/.f64 2 im))
(*.f64 2 (sqrt.f64 (/.f64 1/2 im)))
(*.f64 1 (sqrt.f64 (/.f64 2 im)))
(sqrt.f64 (/.f64 2 im))
(*.f64 (sqrt.f64 (/.f64 2 im)) 1)
(sqrt.f64 (/.f64 2 im))
(*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 1 im)))
(sqrt.f64 (*.f64 2 (/.f64 1 im)))
(*.f64 (sqrt.f64 (/.f64 1 im)) (sqrt.f64 2))
(sqrt.f64 (*.f64 2 (/.f64 1 im)))
(*.f64 (*.f64 2 (sqrt.f64 (/.f64 2 im))) 1/2)
(sqrt.f64 (/.f64 2 im))
(*.f64 1/2 (*.f64 2 (sqrt.f64 (/.f64 2 im))))
(sqrt.f64 (/.f64 2 im))
(*.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) 1/2) 2)
(sqrt.f64 (/.f64 2 im))
(*.f64 (/.f64 (sqrt.f64 2) 2) (*.f64 (sqrt.f64 (/.f64 1/4 im)) 4))
(*.f64 (sqrt.f64 2) (/.f64 (*.f64 4 (sqrt.f64 (/.f64 1/4 im))) 2))
(*.f64 4 (*.f64 (/.f64 (sqrt.f64 2) 2) (sqrt.f64 (/.f64 1/4 im))))
(*.f64 (sqrt.f64 2) (*.f64 2 (sqrt.f64 (/.f64 1/4 im))))
(*.f64 (*.f64 (sqrt.f64 (/.f64 1/4 im)) 4) (/.f64 (sqrt.f64 2) 2))
(*.f64 (sqrt.f64 2) (/.f64 (*.f64 4 (sqrt.f64 (/.f64 1/4 im))) 2))
(*.f64 4 (*.f64 (/.f64 (sqrt.f64 2) 2) (sqrt.f64 (/.f64 1/4 im))))
(*.f64 (sqrt.f64 2) (*.f64 2 (sqrt.f64 (/.f64 1/4 im))))
(*.f64 (*.f64 2 (sqrt.f64 2)) (/.f64 (sqrt.f64 (/.f64 1 im)) 2))
(sqrt.f64 (*.f64 2 (/.f64 1 im)))
(*.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) 4) 1/4)
(sqrt.f64 (/.f64 2 im))
(*.f64 1/4 (*.f64 (sqrt.f64 (/.f64 2 im)) 4))
(sqrt.f64 (/.f64 2 im))
(*.f64 (/.f64 (sqrt.f64 (/.f64 1 im)) 2) (*.f64 2 (sqrt.f64 2)))
(sqrt.f64 (*.f64 2 (/.f64 1 im)))
(*.f64 (*.f64 2 (*.f64 (sqrt.f64 (/.f64 2 im)) 4)) 1/8)
(sqrt.f64 (/.f64 2 im))
(*.f64 (*.f64 2 (*.f64 2 (sqrt.f64 2))) (/.f64 (sqrt.f64 (/.f64 1 im)) 4))
(sqrt.f64 (*.f64 2 (/.f64 1 im)))
(*.f64 (*.f64 2 (*.f64 (sqrt.f64 (/.f64 1/4 im)) 4)) (/.f64 (sqrt.f64 2) 4))
(*.f64 (sqrt.f64 2) (/.f64 (*.f64 4 (sqrt.f64 (/.f64 1/4 im))) 2))
(*.f64 4 (*.f64 (/.f64 (sqrt.f64 2) 2) (sqrt.f64 (/.f64 1/4 im))))
(*.f64 (sqrt.f64 2) (*.f64 2 (sqrt.f64 (/.f64 1/4 im))))
(*.f64 (sqrt.f64 1/2) (sqrt.f64 (/.f64 4 im)))
(sqrt.f64 (*.f64 2 (/.f64 1 im)))
(*.f64 (sqrt.f64 (/.f64 1/2 im)) 2)
(*.f64 2 (sqrt.f64 (/.f64 1/2 im)))
(*.f64 (sqrt.f64 (/.f64 4 im)) (sqrt.f64 1/2))
(sqrt.f64 (*.f64 2 (/.f64 1 im)))
(/.f64 (sqrt.f64 (/.f64 2 im)) 1)
(sqrt.f64 (/.f64 2 im))
(/.f64 (*.f64 2 (sqrt.f64 (/.f64 2 im))) 2)
(sqrt.f64 (/.f64 2 im))
(/.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) 4) 4)
(sqrt.f64 (/.f64 2 im))
(/.f64 (*.f64 2 (*.f64 (sqrt.f64 (/.f64 2 im)) 4)) 8)
(sqrt.f64 (/.f64 2 im))
(pow.f64 (sqrt.f64 (/.f64 2 im)) 1)
(sqrt.f64 (/.f64 2 im))
(-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)))
(+.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re -1/2)) (sqrt.f64 (+.f64 im im)))
(-.f64 (sqrt.f64 (+.f64 im im)) (-.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)) (*.f64 (sqrt.f64 (/.f64 2 im)) (neg.f64 re))))
(-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)))
(+.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re -1/2)) (sqrt.f64 (+.f64 im im)))
(-.f64 (sqrt.f64 (+.f64 im im)) (+.f64 (+.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2))) (neg.f64 (sqrt.f64 (+.f64 im im)))))
(-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)))
(+.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re -1/2)) (sqrt.f64 (+.f64 im im)))
(-.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)) (neg.f64 (sqrt.f64 (+.f64 im im))))
(-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)))
(+.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re -1/2)) (sqrt.f64 (+.f64 im im)))
(-.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)) (+.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)) (-.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)) (sqrt.f64 (+.f64 im im)))))
(-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)))
(+.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re -1/2)) (sqrt.f64 (+.f64 im im)))
(-.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)) (+.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)) (-.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)) (sqrt.f64 (+.f64 im im)))))
(-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)))
(+.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re -1/2)) (sqrt.f64 (+.f64 im im)))
(-.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)) (+.f64 (+.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)) (-.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)) (sqrt.f64 (+.f64 im im)))) 0))
(-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)))
(+.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re -1/2)) (sqrt.f64 (+.f64 im im)))
(-.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)) (+.f64 (+.f64 (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) 4) (/.f64 (sqrt.f64 (+.f64 im im)) -2)) (+.f64 (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) -4) (/.f64 (sqrt.f64 (+.f64 im im)) -2))))
(-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)))
(+.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re -1/2)) (sqrt.f64 (+.f64 im im)))
(-.f64 (+.f64 (sqrt.f64 (+.f64 im im)) (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2))) 0)
(-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)))
(+.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re -1/2)) (sqrt.f64 (+.f64 im im)))
(-.f64 (+.f64 (sqrt.f64 (+.f64 im im)) (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2))) (*.f64 (sqrt.f64 (+.f64 im im)) 0))
(-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)))
(+.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re -1/2)) (sqrt.f64 (+.f64 im im)))
(-.f64 0 (-.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)) (sqrt.f64 (+.f64 im im))))
(-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)))
(+.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re -1/2)) (sqrt.f64 (+.f64 im im)))
(-.f64 0 (+.f64 (-.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)) (sqrt.f64 (+.f64 im im))) (*.f64 re (sqrt.f64 (/.f64 2 im)))))
(-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)))
(+.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re -1/2)) (sqrt.f64 (+.f64 im im)))
(-.f64 0 (+.f64 (+.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2))) (*.f64 (sqrt.f64 (+.f64 im im)) -2)))
(-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)))
(+.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re -1/2)) (sqrt.f64 (+.f64 im im)))
(-.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (neg.f64 re)) (-.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)) (sqrt.f64 (+.f64 im im))))
(-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)))
(+.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re -1/2)) (sqrt.f64 (+.f64 im im)))
(-.f64 (*.f64 2 (sqrt.f64 (+.f64 im im))) (+.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2))))
(-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)))
(+.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re -1/2)) (sqrt.f64 (+.f64 im im)))
(-.f64 (*.f64 2 (sqrt.f64 (+.f64 im im))) (+.f64 (+.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2))) 0))
(-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)))
(+.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re -1/2)) (sqrt.f64 (+.f64 im im)))
(-.f64 (*.f64 2 (sqrt.f64 (+.f64 im im))) (+.f64 (+.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2))) (*.f64 (sqrt.f64 (+.f64 im im)) 0)))
(-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)))
(+.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re -1/2)) (sqrt.f64 (+.f64 im im)))
(-.f64 (-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 re (sqrt.f64 (/.f64 2 im)))) (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)))
(-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)))
(+.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re -1/2)) (sqrt.f64 (+.f64 im im)))
(-.f64 (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) -4) (-.f64 (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) 4) (sqrt.f64 (+.f64 im im))))
(-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)))
(+.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re -1/2)) (sqrt.f64 (+.f64 im im)))
(-.f64 (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) -4) (+.f64 (+.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)) (-.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)) (sqrt.f64 (+.f64 im im)))) (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) 4)))
(-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)))
(+.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re -1/2)) (sqrt.f64 (+.f64 im im)))
(-.f64 (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) -4) (+.f64 (+.f64 (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) 4) (/.f64 (sqrt.f64 (+.f64 im im)) -2)) (/.f64 (sqrt.f64 (+.f64 im im)) -2)))
(-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)))
(+.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re -1/2)) (sqrt.f64 (+.f64 im im)))
(-.f64 (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) -4) (+.f64 (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) 4) (neg.f64 (sqrt.f64 (+.f64 im im)))))
(-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)))
(+.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re -1/2)) (sqrt.f64 (+.f64 im im)))
(-.f64 (+.f64 (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) -4) (/.f64 (sqrt.f64 (+.f64 im im)) 2)) (+.f64 (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) 4) (/.f64 (sqrt.f64 (+.f64 im im)) -2)))
(-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)))
(+.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re -1/2)) (sqrt.f64 (+.f64 im im)))
(-.f64 (/.f64 (sqrt.f64 (+.f64 im im)) 2) (/.f64 (-.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) (sqrt.f64 (+.f64 im im))) 2))
(-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)))
(+.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re -1/2)) (sqrt.f64 (+.f64 im im)))
(-.f64 (/.f64 (sqrt.f64 (+.f64 im im)) 2) (+.f64 (+.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2))) (*.f64 -3 (/.f64 (sqrt.f64 (+.f64 im im)) 2))))
(-.f64 (/.f64 (sqrt.f64 (+.f64 im im)) 2) (+.f64 (+.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)) (sqrt.f64 (+.f64 im im))) (*.f64 (sqrt.f64 (+.f64 im im)) -3/2)))
(-.f64 (+.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re -1/2)) (*.f64 -1 (/.f64 (sqrt.f64 (+.f64 im im)) 2))) (*.f64 (sqrt.f64 (+.f64 im im)) -3/2))
(+.f64 (/.f64 (-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 re (sqrt.f64 (/.f64 2 im)))) 2) (neg.f64 (*.f64 (sqrt.f64 (+.f64 im im)) -1/2)))
(-.f64 (/.f64 (sqrt.f64 (+.f64 im im)) 2) (+.f64 (+.f64 (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) 4) (/.f64 (sqrt.f64 (+.f64 im im)) -2)) (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) 4)))
(-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)))
(+.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re -1/2)) (sqrt.f64 (+.f64 im im)))
(-.f64 (/.f64 (sqrt.f64 (+.f64 im im)) 2) (+.f64 (/.f64 (sqrt.f64 (+.f64 im im)) -2) (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2))))
(-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)))
(+.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re -1/2)) (sqrt.f64 (+.f64 im im)))
(-.f64 (-.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)) (sqrt.f64 (+.f64 im im))) (*.f64 (sqrt.f64 (+.f64 im im)) -2))
(-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)))
(+.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re -1/2)) (sqrt.f64 (+.f64 im im)))
(-.f64 (/.f64 (-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 re (sqrt.f64 (/.f64 2 im)))) 2) (/.f64 (sqrt.f64 (+.f64 im im)) -2))
(-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)))
(+.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re -1/2)) (sqrt.f64 (+.f64 im im)))
(-.f64 (*.f64 3 (/.f64 (sqrt.f64 (+.f64 im im)) 2)) (+.f64 (+.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2))) (/.f64 (sqrt.f64 (+.f64 im im)) -2)))
(-.f64 (*.f64 (sqrt.f64 (+.f64 im im)) 3/2) (+.f64 (+.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)) (sqrt.f64 (+.f64 im im))) (/.f64 (sqrt.f64 (+.f64 im im)) -2)))
(-.f64 (*.f64 (sqrt.f64 (+.f64 im im)) 3/2) (+.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)) (+.f64 (sqrt.f64 (+.f64 im im)) (/.f64 (sqrt.f64 (+.f64 im im)) -2))))
(-.f64 (-.f64 (*.f64 (sqrt.f64 (+.f64 im im)) 3/2) (/.f64 (-.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) (sqrt.f64 (+.f64 im im))) 2)) (sqrt.f64 (+.f64 im im)))
(-.f64 (*.f64 3 (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) -4)) (-.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)) (-.f64 (sqrt.f64 (+.f64 im im)) (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) 4))))
(-.f64 (*.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) -3/4) (-.f64 (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) 4) (-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 re (*.f64 -1/2 (sqrt.f64 (/.f64 2 im)))))))
(-.f64 (sqrt.f64 (+.f64 im im)) (+.f64 (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) 4) (*.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) 1/4)))
(+.f64 (-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) 1/4)) (*.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) -1/4))
(-.f64 (-.f64 (sqrt.f64 (+.f64 im im)) (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) 4)) (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) 4))
(-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)))
(+.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re -1/2)) (sqrt.f64 (+.f64 im im)))
(-.f64 (-.f64 0 (-.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)) (sqrt.f64 (+.f64 im im)))) (*.f64 re (sqrt.f64 (/.f64 2 im))))
(-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)))
(+.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re -1/2)) (sqrt.f64 (+.f64 im im)))
(-.f64 (-.f64 (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) -4) (+.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)) (-.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)) (sqrt.f64 (+.f64 im im))))) (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) 4))
(-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)))
(+.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re -1/2)) (sqrt.f64 (+.f64 im im)))
(-.f64 (-.f64 (*.f64 3 (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) -4)) (-.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)) (sqrt.f64 (+.f64 im im)))) (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) 4))
(-.f64 (*.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) -3/4) (-.f64 (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) 4) (-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 re (*.f64 -1/2 (sqrt.f64 (/.f64 2 im)))))))
(-.f64 (sqrt.f64 (+.f64 im im)) (+.f64 (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) 4) (*.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) 1/4)))
(+.f64 (-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) 1/4)) (*.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) -1/4))
(-.f64 (-.f64 (sqrt.f64 (+.f64 im im)) (+.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)))) (neg.f64 (sqrt.f64 (+.f64 im im))))
(-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)))
(+.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re -1/2)) (sqrt.f64 (+.f64 im im)))
(-.f64 (-.f64 0 (+.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)))) (*.f64 (sqrt.f64 (+.f64 im im)) -2))
(-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)))
(+.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re -1/2)) (sqrt.f64 (+.f64 im im)))
(-.f64 (-.f64 (/.f64 (sqrt.f64 (+.f64 im im)) 2) (+.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)))) (*.f64 -3 (/.f64 (sqrt.f64 (+.f64 im im)) 2)))
(-.f64 (/.f64 (sqrt.f64 (+.f64 im im)) 2) (+.f64 (+.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)) (sqrt.f64 (+.f64 im im))) (*.f64 (sqrt.f64 (+.f64 im im)) -3/2)))
(-.f64 (+.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re -1/2)) (*.f64 -1 (/.f64 (sqrt.f64 (+.f64 im im)) 2))) (*.f64 (sqrt.f64 (+.f64 im im)) -3/2))
(+.f64 (/.f64 (-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 re (sqrt.f64 (/.f64 2 im)))) 2) (neg.f64 (*.f64 (sqrt.f64 (+.f64 im im)) -1/2)))
(-.f64 (-.f64 (*.f64 3 (/.f64 (sqrt.f64 (+.f64 im im)) 2)) (+.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)))) (/.f64 (sqrt.f64 (+.f64 im im)) -2))
(-.f64 (*.f64 (sqrt.f64 (+.f64 im im)) 3/2) (+.f64 (+.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)) (sqrt.f64 (+.f64 im im))) (/.f64 (sqrt.f64 (+.f64 im im)) -2)))
(-.f64 (*.f64 (sqrt.f64 (+.f64 im im)) 3/2) (+.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)) (+.f64 (sqrt.f64 (+.f64 im im)) (/.f64 (sqrt.f64 (+.f64 im im)) -2))))
(-.f64 (-.f64 (*.f64 (sqrt.f64 (+.f64 im im)) 3/2) (/.f64 (-.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) (sqrt.f64 (+.f64 im im))) 2)) (sqrt.f64 (+.f64 im im)))
(-.f64 (-.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)) (+.f64 (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) 4) (/.f64 (sqrt.f64 (+.f64 im im)) -2))) (+.f64 (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) -4) (/.f64 (sqrt.f64 (+.f64 im im)) -2)))
(-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)))
(+.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re -1/2)) (sqrt.f64 (+.f64 im im)))
(-.f64 (-.f64 (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) -4) (+.f64 (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) 4) (/.f64 (sqrt.f64 (+.f64 im im)) -2))) (/.f64 (sqrt.f64 (+.f64 im im)) -2))
(-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)))
(+.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re -1/2)) (sqrt.f64 (+.f64 im im)))
(*.f64 1 (+.f64 (sqrt.f64 (+.f64 im im)) (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2))))
(-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)))
(+.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re -1/2)) (sqrt.f64 (+.f64 im im)))
(*.f64 (+.f64 (sqrt.f64 (+.f64 im im)) (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2))) 1)
(-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)))
(+.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re -1/2)) (sqrt.f64 (+.f64 im im)))
(*.f64 (sqrt.f64 2) (-.f64 (*.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 1 im)))) (neg.f64 (sqrt.f64 im))))
(*.f64 (sqrt.f64 2) (+.f64 (sqrt.f64 im) (*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 re -1/2))))
(*.f64 (sqrt.f64 2) (+.f64 (*.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 1 im)))) (sqrt.f64 im)))
(*.f64 (sqrt.f64 2) (+.f64 (sqrt.f64 im) (*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 re -1/2))))
(*.f64 (sqrt.f64 2) (+.f64 (sqrt.f64 im) (*.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 1 im))))))
(*.f64 (sqrt.f64 2) (+.f64 (sqrt.f64 im) (*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 re -1/2))))
(*.f64 (-.f64 (*.f64 2 (sqrt.f64 (+.f64 im im))) (*.f64 re (sqrt.f64 (/.f64 2 im)))) 1/2)
(-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)))
(+.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re -1/2)) (sqrt.f64 (+.f64 im im)))
(*.f64 1/2 (-.f64 (*.f64 2 (sqrt.f64 (+.f64 im im))) (*.f64 re (sqrt.f64 (/.f64 2 im)))))
(-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)))
(+.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re -1/2)) (sqrt.f64 (+.f64 im im)))
(*.f64 (-.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)) (sqrt.f64 (+.f64 im im))) -1)
(-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)))
(+.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re -1/2)) (sqrt.f64 (+.f64 im im)))
(*.f64 (+.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 -2 re)) (*.f64 (sqrt.f64 (+.f64 im im)) 4)) 1/4)
(*.f64 1/4 (+.f64 (*.f64 re (*.f64 -2 (sqrt.f64 (/.f64 2 im)))) (*.f64 4 (sqrt.f64 (+.f64 im im)))))
(*.f64 1/4 (+.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -2)) (*.f64 4 (sqrt.f64 (+.f64 im im)))))
(*.f64 1/4 (+.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 -2 re)) (*.f64 (sqrt.f64 (+.f64 im im)) 4)))
(*.f64 1/4 (+.f64 (*.f64 re (*.f64 -2 (sqrt.f64 (/.f64 2 im)))) (*.f64 4 (sqrt.f64 (+.f64 im im)))))
(*.f64 1/4 (+.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -2)) (*.f64 4 (sqrt.f64 (+.f64 im im)))))
(*.f64 (*.f64 (-.f64 (*.f64 2 (sqrt.f64 (+.f64 im im))) (*.f64 re (sqrt.f64 (/.f64 2 im)))) 4) 1/8)
(-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)))
(+.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re -1/2)) (sqrt.f64 (+.f64 im im)))
(/.f64 (+.f64 (sqrt.f64 (+.f64 im im)) (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2))) 1)
(-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)))
(+.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re -1/2)) (sqrt.f64 (+.f64 im im)))
(/.f64 (-.f64 (*.f64 2 (sqrt.f64 (+.f64 im im))) (*.f64 re (sqrt.f64 (/.f64 2 im)))) 2)
(-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)))
(+.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re -1/2)) (sqrt.f64 (+.f64 im im)))
(/.f64 (-.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)) (sqrt.f64 (+.f64 im im))) -1)
(-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)))
(+.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re -1/2)) (sqrt.f64 (+.f64 im im)))
(/.f64 (+.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 -2 re)) (*.f64 (sqrt.f64 (+.f64 im im)) 4)) 4)
(-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)))
(+.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re -1/2)) (sqrt.f64 (+.f64 im im)))
(/.f64 (*.f64 (-.f64 (*.f64 2 (sqrt.f64 (+.f64 im im))) (*.f64 re (sqrt.f64 (/.f64 2 im)))) 4) 8)
(-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)))
(+.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re -1/2)) (sqrt.f64 (+.f64 im im)))
(/.f64 (-.f64 (*.f64 (sqrt.f64 (+.f64 im im)) 4) (*.f64 re (*.f64 2 (sqrt.f64 (/.f64 2 im))))) 4)
(-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)))
(+.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re -1/2)) (sqrt.f64 (+.f64 im im)))
(/.f64 (+.f64 (*.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (neg.f64 re)) 4) (*.f64 2 (*.f64 (sqrt.f64 (+.f64 im im)) 4))) 8)
(-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)))
(+.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re -1/2)) (sqrt.f64 (+.f64 im im)))
(/.f64 (+.f64 (*.f64 2 (*.f64 (sqrt.f64 (+.f64 im im)) 4)) (*.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (neg.f64 re)) 4)) 8)
(-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)))
(+.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re -1/2)) (sqrt.f64 (+.f64 im im)))
(/.f64 (-.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 -2 re)) (neg.f64 (*.f64 (sqrt.f64 (+.f64 im im)) 4))) 4)
(-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)))
(+.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re -1/2)) (sqrt.f64 (+.f64 im im)))
(/.f64 (-.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 -2 re)) (-.f64 (*.f64 (sqrt.f64 (+.f64 im im)) -2) (*.f64 re (sqrt.f64 (/.f64 2 im))))) 2)
(/.f64 (-.f64 (*.f64 re (*.f64 -2 (sqrt.f64 (/.f64 2 im)))) (-.f64 (*.f64 -2 (sqrt.f64 (+.f64 im im))) (*.f64 re (sqrt.f64 (/.f64 2 im))))) 2)
(/.f64 (-.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) (-.f64 (*.f64 -2 (sqrt.f64 (+.f64 im im))) (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -2)))) 2)
(/.f64 (-.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) (*.f64 -2 (-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 re (sqrt.f64 (/.f64 2 im)))))) 2)
(pow.f64 (+.f64 (sqrt.f64 (+.f64 im im)) (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2))) 1)
(-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)))
(+.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re -1/2)) (sqrt.f64 (+.f64 im im)))
(neg.f64 (-.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)) (sqrt.f64 (+.f64 im im))))
(-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)))
(+.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re -1/2)) (sqrt.f64 (+.f64 im im)))
(+.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)) 0)
(*.f64 re (*.f64 -1/2 (sqrt.f64 (/.f64 2 im))))
(*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re -1/2))
(+.f64 0 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)))
(*.f64 re (*.f64 -1/2 (sqrt.f64 (/.f64 2 im))))
(*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re -1/2))
(+.f64 (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) -4) (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) -4))
(*.f64 re (*.f64 -1/2 (sqrt.f64 (/.f64 2 im))))
(*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re -1/2))
(+.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (neg.f64 re)) 8) (/.f64 (*.f64 3 (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) -4)) 2))
(+.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (neg.f64 re)) 8) (/.f64 (*.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) -3/4) 2))
(/.f64 (-.f64 (*.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) -3) (*.f64 re (sqrt.f64 (/.f64 2 im)))) 8)
(+.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (neg.f64 re)) 8) (/.f64 (*.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) -3/2) 4))
(+.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (neg.f64 re)) 8) (/.f64 (*.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) -3/4) 2))
(/.f64 (-.f64 (*.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) -3) (*.f64 re (sqrt.f64 (/.f64 2 im)))) 8)
(+.f64 (-.f64 0 (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) 4)) (neg.f64 (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) 4)))
(*.f64 re (*.f64 -1/2 (sqrt.f64 (/.f64 2 im))))
(*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re -1/2))
(-.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)) 0)
(*.f64 re (*.f64 -1/2 (sqrt.f64 (/.f64 2 im))))
(*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re -1/2))
(-.f64 0 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)))
(*.f64 re (*.f64 -1/2 (sqrt.f64 (/.f64 2 im))))
(*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re -1/2))
(-.f64 (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) -4) (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) 4))
(*.f64 re (*.f64 -1/2 (sqrt.f64 (/.f64 2 im))))
(*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re -1/2))
(/.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)) 1)
(*.f64 re (*.f64 -1/2 (sqrt.f64 (/.f64 2 im))))
(*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re -1/2))
(/.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)) -1)
(*.f64 re (*.f64 -1/2 (sqrt.f64 (/.f64 2 im))))
(*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re -1/2))
(/.f64 (*.f64 re (*.f64 2 (sqrt.f64 (/.f64 2 im)))) -4)
(*.f64 re (*.f64 -1/2 (sqrt.f64 (/.f64 2 im))))
(*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re -1/2))
(/.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (neg.f64 re)) 2)
(*.f64 re (*.f64 -1/2 (sqrt.f64 (/.f64 2 im))))
(*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re -1/2))
(/.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 -2 re)) 4)
(*.f64 re (*.f64 -1/2 (sqrt.f64 (/.f64 2 im))))
(*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re -1/2))
(/.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 4)) -8)
(*.f64 re (*.f64 -1/2 (sqrt.f64 (/.f64 2 im))))
(*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re -1/2))
(/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) -2)
(*.f64 re (*.f64 -1/2 (sqrt.f64 (/.f64 2 im))))
(*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re -1/2))
(/.f64 (*.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (neg.f64 re)) 4) 8)
(*.f64 re (*.f64 -1/2 (sqrt.f64 (/.f64 2 im))))
(*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re -1/2))
(pow.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)) 1)
(*.f64 re (*.f64 -1/2 (sqrt.f64 (/.f64 2 im))))
(*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re -1/2))
(neg.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)))
(*.f64 re (*.f64 -1/2 (sqrt.f64 (/.f64 2 im))))
(*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re -1/2))

eval803.0ms (2.3%)

Compiler

Compiled 10548 to 8045 computations (23.7% saved)

prune535.0ms (1.5%)

Pruning

15 alts after pruning (8 fresh and 7 done)

PrunedKeptTotal
New5302532
Fresh167
Picked101
Done077
Total53215547
Error
0.0b
Counts
547 → 15
Alt Table
Click to see full alt table
StatusErrorProgram
32.1b
(*.f64 1/2 (-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2))))
46.0b
(*.f64 1/2 (*.f64 (pow.f64 (sqrt.f64 im) 2) (*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 1/2 re)))))
46.0b
(*.f64 1/2 (*.f64 (pow.f64 (sqrt.f64 im) 2) (sqrt.f64 (/.f64 1 re))))
32.3b
(*.f64 1/2 (*.f64 (+.f64 (sqrt.f64 im) (*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 re -1/2))) (sqrt.f64 2)))
46.0b
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
51.4b
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1/2 re)) (sqrt.f64 (*.f64 2 (pow.f64 im 2)))))
30.3b
(*.f64 1/2 (*.f64 (sqrt.f64 (-.f64 im re)) (sqrt.f64 2)))
54.5b
(*.f64 1/2 (sqrt.f64 (/.f64 (pow.f64 im 2) re)))
34.3b
(*.f64 1/2 (sqrt.f64 (-.f64 (/.f64 (pow.f64 re 2) im) (*.f64 2 (-.f64 re im)))))
59.7b
(*.f64 1/2 (sqrt.f64 (*.f64 re -2)))
39.8b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
30.0b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 im re))))
47.1b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 re -2))))
31.7b
(*.f64 1/2 (sqrt.f64 (*.f64 2 im)))
58.5b
(*.f64 1/2 (sqrt.f64 (*.f64 2 0)))
Compiler

Compiled 300 to 247 computations (17.7% saved)

localize49.0ms (0.1%)

Compiler

Compiled 18 to 14 computations (22.2% saved)

localize74.0ms (0.2%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.1b
(sqrt.f64 (/.f64 1 re))
0.1b
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
Compiler

Compiled 27 to 19 computations (29.6% saved)

series6.0ms (0%)

Counts
2 → 0
Calls

9 calls:

TimeVariablePointExpression
2.0ms
re
@-inf
(sqrt.f64 (/.f64 1 re))
1.0ms
re
@-inf
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
1.0ms
re
@0
(sqrt.f64 (/.f64 1 re))
0.0ms
im
@-inf
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
0.0ms
re
@inf
(sqrt.f64 (/.f64 1 re))

rewrite326.0ms (0.9%)

Algorithm
batch-egg-rewrite
Rules
1448×rational_best-2
1448×rational_best-3
1448×rational_best-1
1446×rational_best-4
1446×exponential-1
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0928
16028
211528
328428
494928
5417728
Stop Event
node limit
Counts
2 → 63
Calls
Call 1
Inputs
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(sqrt.f64 (/.f64 1 re))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (sqrt.f64 (/.f64 1 re)) im))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 im (sqrt.f64 (/.f64 1/4 re))) (*.f64 im (sqrt.f64 (/.f64 1/4 re))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 4) (+.f64 (*.f64 im (sqrt.f64 (/.f64 1/4 re))) (/.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 4) (/.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im 3)) 2) 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 4) (/.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im 3)) 4))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (*.f64 im (sqrt.f64 (/.f64 1/4 re))) (/.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 4)) (/.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 4))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im 3)) 2) 2) (/.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 4))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im 3)) 4) (/.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 4))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 im (sqrt.f64 (/.f64 1/4 re))) (neg.f64 (*.f64 im (sqrt.f64 (/.f64 1/4 re)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (*.f64 im (sqrt.f64 (/.f64 1/4 re))) (/.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 4)) (neg.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im 3)) 2) 2) (/.f64 (neg.f64 (*.f64 im (sqrt.f64 (/.f64 1/4 re)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im 3)) 4) (/.f64 (neg.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im)) 4))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) (+.f64 im im)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im 4)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 4 (*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im 4))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 2 (*.f64 im 4))) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 2 (*.f64 im 4))) (*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 2 (*.f64 im 4)))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 4 (*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im 4))) (*.f64 4 (*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im 4)))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 2 (*.f64 im 4)) (*.f64 2 (*.f64 (sqrt.f64 (/.f64 1 re)) 4))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 1)))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (sqrt.f64 (/.f64 1 re)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (sqrt.f64 (/.f64 1 re)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) 1/2) (*.f64 (sqrt.f64 (/.f64 1 re)) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (sqrt.f64 (/.f64 1 re)) 4) (+.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) 1/2) (/.f64 (sqrt.f64 (/.f64 1 re)) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (sqrt.f64 (/.f64 1 re)) 4) (/.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) 3) 2) 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (sqrt.f64 (/.f64 1 re)) 4) (/.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) 3) 4))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) 1/2) (/.f64 (sqrt.f64 (/.f64 1 re)) 4)) (/.f64 (sqrt.f64 (/.f64 1 re)) 4))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) 3) 2) 2) (/.f64 (sqrt.f64 (/.f64 1 re)) 4))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) 3) 4) (/.f64 (sqrt.f64 (/.f64 1 re)) 4))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (sqrt.f64 (/.f64 1 re)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) 1/2) (/.f64 (sqrt.f64 (/.f64 1 re)) -2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) 1/2) (/.f64 (sqrt.f64 (/.f64 1 re)) 4)) (neg.f64 (/.f64 (sqrt.f64 (/.f64 1 re)) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) 3) 2) 2) (/.f64 (/.f64 (sqrt.f64 (/.f64 1 re)) -2) 2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) 3) 4) (/.f64 (neg.f64 (sqrt.f64 (/.f64 1 re))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (sqrt.f64 (/.f64 1 re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 1 re)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (sqrt.f64 (/.f64 1 re)) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (sqrt.f64 (/.f64 1/4 re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (sqrt.f64 (/.f64 4 re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) 1/2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) 4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 (sqrt.f64 (/.f64 1 re)) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (*.f64 (sqrt.f64 (/.f64 1 re)) 4)) 1/8)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 1/2 re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 1/2 re)) (sqrt.f64 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 2 re)) (sqrt.f64 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 1/2) (sqrt.f64 (/.f64 2 re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 1/4 re)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/8 (*.f64 2 (*.f64 (sqrt.f64 (/.f64 1 re)) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 4 re)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 8) (sqrt.f64 (/.f64 1/2 (*.f64 re 4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 1/2 (*.f64 re 4))) (sqrt.f64 8))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (/.f64 1 re)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) 2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (sqrt.f64 (/.f64 1 re)) 4)) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 (sqrt.f64 (/.f64 1 re)) 4)) (*.f64 2 (*.f64 (sqrt.f64 (/.f64 1 re)) 4))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 1 re)) 1)))))

simplify339.0ms (1%)

Algorithm
egg-herbie
Rules
1130×rational_best-simplify-75
1044×rational_best-simplify-76
988×rational_best-simplify-1
914×rational_best-simplify-80
786×rational_best-simplify-66
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01371071
13051063
28091007
33302979
Stop Event
node limit
Counts
63 → 75
Calls
Call 1
Inputs
(+.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 0)
(+.f64 0 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(+.f64 (*.f64 im (sqrt.f64 (/.f64 1/4 re))) (*.f64 im (sqrt.f64 (/.f64 1/4 re))))
(+.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 4) (+.f64 (*.f64 im (sqrt.f64 (/.f64 1/4 re))) (/.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 4)))
(+.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 4) (/.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im 3)) 2) 2))
(+.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 4) (/.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im 3)) 4))
(+.f64 (+.f64 (*.f64 im (sqrt.f64 (/.f64 1/4 re))) (/.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 4)) (/.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 4))
(+.f64 (/.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im 3)) 2) 2) (/.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 4))
(+.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im 3)) 4) (/.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 4))
(-.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 0)
(-.f64 (*.f64 im (sqrt.f64 (/.f64 1/4 re))) (neg.f64 (*.f64 im (sqrt.f64 (/.f64 1/4 re)))))
(-.f64 (+.f64 (*.f64 im (sqrt.f64 (/.f64 1/4 re))) (/.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 4)) (neg.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 4)))
(-.f64 (/.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im 3)) 2) 2) (/.f64 (neg.f64 (*.f64 im (sqrt.f64 (/.f64 1/4 re)))) 2))
(-.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im 3)) 4) (/.f64 (neg.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im)) 4))
(/.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 1)
(/.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) (+.f64 im im)) 2)
(/.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im 4)) 4)
(/.f64 (*.f64 4 (*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im 4))) 16)
(/.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 2 (*.f64 im 4))) 8)
(/.f64 (+.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 2 (*.f64 im 4))) (*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 2 (*.f64 im 4)))) 16)
(/.f64 (+.f64 (*.f64 4 (*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im 4))) (*.f64 4 (*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im 4)))) 32)
(/.f64 (*.f64 (*.f64 2 (*.f64 im 4)) (*.f64 2 (*.f64 (sqrt.f64 (/.f64 1 re)) 4))) 64)
(pow.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 1)
(+.f64 (sqrt.f64 (/.f64 1 re)) 0)
(+.f64 0 (sqrt.f64 (/.f64 1 re)))
(+.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) 1/2) (*.f64 (sqrt.f64 (/.f64 1 re)) 1/2))
(+.f64 (/.f64 (sqrt.f64 (/.f64 1 re)) 4) (+.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) 1/2) (/.f64 (sqrt.f64 (/.f64 1 re)) 4)))
(+.f64 (/.f64 (sqrt.f64 (/.f64 1 re)) 4) (/.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) 3) 2) 2))
(+.f64 (/.f64 (sqrt.f64 (/.f64 1 re)) 4) (/.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) 3) 4))
(+.f64 (+.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) 1/2) (/.f64 (sqrt.f64 (/.f64 1 re)) 4)) (/.f64 (sqrt.f64 (/.f64 1 re)) 4))
(+.f64 (/.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) 3) 2) 2) (/.f64 (sqrt.f64 (/.f64 1 re)) 4))
(+.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) 3) 4) (/.f64 (sqrt.f64 (/.f64 1 re)) 4))
(-.f64 (sqrt.f64 (/.f64 1 re)) 0)
(-.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) 1/2) (/.f64 (sqrt.f64 (/.f64 1 re)) -2))
(-.f64 (+.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) 1/2) (/.f64 (sqrt.f64 (/.f64 1 re)) 4)) (neg.f64 (/.f64 (sqrt.f64 (/.f64 1 re)) 4)))
(-.f64 (/.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) 3) 2) 2) (/.f64 (/.f64 (sqrt.f64 (/.f64 1 re)) -2) 2))
(-.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) 3) 4) (/.f64 (neg.f64 (sqrt.f64 (/.f64 1 re))) 4))
(*.f64 1 (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 (/.f64 1 re)) 1)
(*.f64 2 (*.f64 (sqrt.f64 (/.f64 1 re)) 1/2))
(*.f64 2 (sqrt.f64 (/.f64 1/4 re)))
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) 2) 1/2)
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) 2))
(*.f64 1/2 (sqrt.f64 (/.f64 4 re)))
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) 1/2) 2)
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) 4) 1/4)
(*.f64 1/4 (*.f64 (sqrt.f64 (/.f64 1 re)) 4))
(*.f64 (*.f64 2 (*.f64 (sqrt.f64 (/.f64 1 re)) 4)) 1/8)
(*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 1/2 re)))
(*.f64 (sqrt.f64 (/.f64 1/2 re)) (sqrt.f64 2))
(*.f64 (sqrt.f64 (/.f64 2 re)) (sqrt.f64 1/2))
(*.f64 (sqrt.f64 1/2) (sqrt.f64 (/.f64 2 re)))
(*.f64 (sqrt.f64 (/.f64 1/4 re)) 2)
(*.f64 1/8 (*.f64 2 (*.f64 (sqrt.f64 (/.f64 1 re)) 4)))
(*.f64 (sqrt.f64 (/.f64 4 re)) 1/2)
(*.f64 (sqrt.f64 8) (sqrt.f64 (/.f64 1/2 (*.f64 re 4))))
(*.f64 (sqrt.f64 (/.f64 1/2 (*.f64 re 4))) (sqrt.f64 8))
(/.f64 (sqrt.f64 (/.f64 1 re)) 1)
(/.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) 2) 2)
(/.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) 4) 4)
(/.f64 (*.f64 2 (*.f64 (sqrt.f64 (/.f64 1 re)) 4)) 8)
(/.f64 (+.f64 (*.f64 2 (*.f64 (sqrt.f64 (/.f64 1 re)) 4)) (*.f64 2 (*.f64 (sqrt.f64 (/.f64 1 re)) 4))) 16)
(pow.f64 (sqrt.f64 (/.f64 1 re)) 1)
Outputs
(+.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 0)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(+.f64 0 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(+.f64 (*.f64 im (sqrt.f64 (/.f64 1/4 re))) (*.f64 im (sqrt.f64 (/.f64 1/4 re))))
(*.f64 (sqrt.f64 (/.f64 1/4 re)) (+.f64 im im))
(+.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 4) (+.f64 (*.f64 im (sqrt.f64 (/.f64 1/4 re))) (/.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 4)))
(+.f64 (*.f64 im (sqrt.f64 (/.f64 1/4 re))) (/.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 2))
(+.f64 (*.f64 im (sqrt.f64 (/.f64 1/4 re))) (*.f64 im (*.f64 (sqrt.f64 (/.f64 1 re)) 1/2)))
(+.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 4) (/.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im 3)) 2) 2))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(+.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 4) (/.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im 3)) 4))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(+.f64 (+.f64 (*.f64 im (sqrt.f64 (/.f64 1/4 re))) (/.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 4)) (/.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 4))
(+.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 4) (+.f64 (*.f64 im (sqrt.f64 (/.f64 1/4 re))) (/.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 4)))
(+.f64 (*.f64 im (sqrt.f64 (/.f64 1/4 re))) (/.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 2))
(+.f64 (*.f64 im (sqrt.f64 (/.f64 1/4 re))) (*.f64 im (*.f64 (sqrt.f64 (/.f64 1 re)) 1/2)))
(+.f64 (/.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im 3)) 2) 2) (/.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 4))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(+.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im 3)) 4) (/.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 4))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(-.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 0)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(-.f64 (*.f64 im (sqrt.f64 (/.f64 1/4 re))) (neg.f64 (*.f64 im (sqrt.f64 (/.f64 1/4 re)))))
(*.f64 (sqrt.f64 (/.f64 1/4 re)) (+.f64 im im))
(-.f64 (+.f64 (*.f64 im (sqrt.f64 (/.f64 1/4 re))) (/.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 4)) (neg.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 4)))
(-.f64 (+.f64 (*.f64 im (sqrt.f64 (/.f64 1/4 re))) (/.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 4)) (/.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) -4))
(-.f64 (*.f64 im (sqrt.f64 (/.f64 1/4 re))) (+.f64 (*.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) -1/4) (*.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) -1/4)))
(-.f64 (*.f64 im (sqrt.f64 (/.f64 1/4 re))) (/.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) -2))
(-.f64 (/.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im 3)) 2) 2) (/.f64 (neg.f64 (*.f64 im (sqrt.f64 (/.f64 1/4 re)))) 2))
(-.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im 3)) 4) (/.f64 (neg.f64 (*.f64 im (sqrt.f64 (/.f64 1/4 re)))) 2))
(-.f64 (/.f64 (*.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 6) 8) (/.f64 (*.f64 im (sqrt.f64 (/.f64 1/4 re))) -2))
(/.f64 (-.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im 3)) (*.f64 (*.f64 im (sqrt.f64 (/.f64 1/4 re))) -2)) 4)
(-.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im 3)) 4) (/.f64 (*.f64 im (sqrt.f64 (/.f64 1/4 re))) -2))
(-.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im 3)) 4) (/.f64 (neg.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im)) 4))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(/.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 1)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(/.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) (+.f64 im im)) 2)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(/.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im 4)) 4)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(/.f64 (*.f64 4 (*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im 4))) 16)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(/.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 2 (*.f64 im 4))) 8)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(/.f64 (+.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 2 (*.f64 im 4))) (*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 2 (*.f64 im 4)))) 16)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(/.f64 (+.f64 (*.f64 4 (*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im 4))) (*.f64 4 (*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im 4)))) 32)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(/.f64 (*.f64 (*.f64 2 (*.f64 im 4)) (*.f64 2 (*.f64 (sqrt.f64 (/.f64 1 re)) 4))) 64)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(pow.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 1)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(+.f64 (sqrt.f64 (/.f64 1 re)) 0)
(sqrt.f64 (/.f64 1 re))
(+.f64 0 (sqrt.f64 (/.f64 1 re)))
(sqrt.f64 (/.f64 1 re))
(+.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) 1/2) (*.f64 (sqrt.f64 (/.f64 1 re)) 1/2))
(sqrt.f64 (/.f64 1 re))
(+.f64 (/.f64 (sqrt.f64 (/.f64 1 re)) 4) (+.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) 1/2) (/.f64 (sqrt.f64 (/.f64 1 re)) 4)))
(sqrt.f64 (/.f64 1 re))
(+.f64 (/.f64 (sqrt.f64 (/.f64 1 re)) 4) (/.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) 3) 2) 2))
(sqrt.f64 (/.f64 1 re))
(+.f64 (/.f64 (sqrt.f64 (/.f64 1 re)) 4) (/.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) 3) 4))
(sqrt.f64 (/.f64 1 re))
(+.f64 (+.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) 1/2) (/.f64 (sqrt.f64 (/.f64 1 re)) 4)) (/.f64 (sqrt.f64 (/.f64 1 re)) 4))
(sqrt.f64 (/.f64 1 re))
(+.f64 (/.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) 3) 2) 2) (/.f64 (sqrt.f64 (/.f64 1 re)) 4))
(sqrt.f64 (/.f64 1 re))
(+.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) 3) 4) (/.f64 (sqrt.f64 (/.f64 1 re)) 4))
(sqrt.f64 (/.f64 1 re))
(-.f64 (sqrt.f64 (/.f64 1 re)) 0)
(sqrt.f64 (/.f64 1 re))
(-.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) 1/2) (/.f64 (sqrt.f64 (/.f64 1 re)) -2))
(sqrt.f64 (/.f64 1 re))
(-.f64 (+.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) 1/2) (/.f64 (sqrt.f64 (/.f64 1 re)) 4)) (neg.f64 (/.f64 (sqrt.f64 (/.f64 1 re)) 4)))
(sqrt.f64 (/.f64 1 re))
(-.f64 (/.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) 3) 2) 2) (/.f64 (/.f64 (sqrt.f64 (/.f64 1 re)) -2) 2))
(sqrt.f64 (/.f64 1 re))
(-.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) 3) 4) (/.f64 (neg.f64 (sqrt.f64 (/.f64 1 re))) 4))
(sqrt.f64 (/.f64 1 re))
(*.f64 1 (sqrt.f64 (/.f64 1 re)))
(sqrt.f64 (/.f64 1 re))
(*.f64 (sqrt.f64 (/.f64 1 re)) 1)
(sqrt.f64 (/.f64 1 re))
(*.f64 2 (*.f64 (sqrt.f64 (/.f64 1 re)) 1/2))
(sqrt.f64 (/.f64 1 re))
(*.f64 2 (sqrt.f64 (/.f64 1/4 re)))
(sqrt.f64 (/.f64 1 re))
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) 2) 1/2)
(sqrt.f64 (/.f64 1 re))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) 2))
(sqrt.f64 (/.f64 1 re))
(*.f64 1/2 (sqrt.f64 (/.f64 4 re)))
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) 1/2) 2)
(sqrt.f64 (/.f64 1 re))
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) 4) 1/4)
(sqrt.f64 (/.f64 1 re))
(*.f64 1/4 (*.f64 (sqrt.f64 (/.f64 1 re)) 4))
(sqrt.f64 (/.f64 1 re))
(*.f64 (*.f64 2 (*.f64 (sqrt.f64 (/.f64 1 re)) 4)) 1/8)
(sqrt.f64 (/.f64 1 re))
(*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 1/2 re)))
(sqrt.f64 (/.f64 1 re))
(*.f64 (sqrt.f64 (/.f64 1/2 re)) (sqrt.f64 2))
(sqrt.f64 (/.f64 1 re))
(*.f64 (sqrt.f64 (/.f64 2 re)) (sqrt.f64 1/2))
(sqrt.f64 (/.f64 1 re))
(*.f64 (sqrt.f64 1/2) (sqrt.f64 (/.f64 2 re)))
(sqrt.f64 (/.f64 1 re))
(*.f64 (sqrt.f64 (/.f64 1/4 re)) 2)
(sqrt.f64 (/.f64 1 re))
(*.f64 1/8 (*.f64 2 (*.f64 (sqrt.f64 (/.f64 1 re)) 4)))
(sqrt.f64 (/.f64 1 re))
(*.f64 (sqrt.f64 (/.f64 4 re)) 1/2)
(*.f64 1/2 (sqrt.f64 (/.f64 4 re)))
(*.f64 (sqrt.f64 8) (sqrt.f64 (/.f64 1/2 (*.f64 re 4))))
(sqrt.f64 (/.f64 1 re))
(*.f64 (sqrt.f64 (/.f64 1/2 (*.f64 re 4))) (sqrt.f64 8))
(sqrt.f64 (/.f64 1 re))
(/.f64 (sqrt.f64 (/.f64 1 re)) 1)
(sqrt.f64 (/.f64 1 re))
(/.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) 2) 2)
(sqrt.f64 (/.f64 1 re))
(/.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) 4) 4)
(sqrt.f64 (/.f64 1 re))
(/.f64 (*.f64 2 (*.f64 (sqrt.f64 (/.f64 1 re)) 4)) 8)
(sqrt.f64 (/.f64 1 re))
(/.f64 (+.f64 (*.f64 2 (*.f64 (sqrt.f64 (/.f64 1 re)) 4)) (*.f64 2 (*.f64 (sqrt.f64 (/.f64 1 re)) 4))) 16)
(sqrt.f64 (/.f64 1 re))
(pow.f64 (sqrt.f64 (/.f64 1 re)) 1)
(sqrt.f64 (/.f64 1 re))

localize81.0ms (0.2%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)))
0.1b
(sqrt.f64 (/.f64 2 im))
0.2b
(*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2))
Compiler

Compiled 59 to 35 computations (40.7% saved)

series7.0ms (0%)

Counts
3 → 24
Calls

15 calls:

TimeVariablePointExpression
1.0ms
im
@-inf
(-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)))
1.0ms
im
@inf
(-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)))
1.0ms
im
@-inf
(*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2))
1.0ms
im
@0
(*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2))
1.0ms
im
@0
(-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)))

rewrite300.0ms (0.8%)

Algorithm
batch-egg-rewrite
Rules
798×rational_best-simplify-83
692×rational_best-simplify-47
648×rational_best-simplify-63
648×rational_best-simplify-51
622×rational_best-simplify-57
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01473
19373
217773
345173
4160673
Stop Event
node limit
Counts
3 → 125
Calls
Call 1
Inputs
(*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2))
(sqrt.f64 (/.f64 2 im))
(-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/4)) (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/4)) (neg.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -4)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) 8) (+.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) 8) (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) 8) (/.f64 (*.f64 3 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/4))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) 8) (/.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 3/2)) 4))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (*.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/4)) (/.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -4))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) 8) (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/4))) (-.f64 0 (/.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) 8)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 3 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/4))) 2) (/.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -4) 2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 3/2)) 4) (/.f64 (*.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -1/2) 4))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -1/2) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (sqrt.f64 (/.f64 2 im)) re)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 4)) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 2 (*.f64 re 4))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 4 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 4))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 4 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 4))) 2) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) 4) (*.f64 2 (*.f64 re 4))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 re 4) (*.f64 2 (*.f64 (sqrt.f64 (/.f64 2 im)) 4))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 2 (*.f64 re 4)) (*.f64 (sqrt.f64 (/.f64 2 im)) 4)) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 2 (*.f64 (sqrt.f64 (/.f64 2 im)) 4)) (*.f64 re 4)) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 (/.f64 1/2 im)) re) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (*.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -1/2))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (sqrt.f64 (/.f64 2 im)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (sqrt.f64 (/.f64 2 im)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) 1/2) (*.f64 (sqrt.f64 (/.f64 2 im)) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (sqrt.f64 (/.f64 2 im)) 4) (+.f64 (/.f64 (sqrt.f64 (/.f64 2 im)) 4) (*.f64 (sqrt.f64 (/.f64 2 im)) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (sqrt.f64 (/.f64 2 im)) 4) (/.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) 3) 2) 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (sqrt.f64 (/.f64 2 im)) 4) (/.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) 3) 4))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (sqrt.f64 (/.f64 2 im)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) 1/2) (/.f64 (sqrt.f64 (/.f64 2 im)) -2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) 1/2) (/.f64 (*.f64 -2 (sqrt.f64 (/.f64 2 im))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (/.f64 (sqrt.f64 (/.f64 2 im)) 4) (*.f64 (sqrt.f64 (/.f64 2 im)) 1/2)) (-.f64 0 (/.f64 (sqrt.f64 (/.f64 2 im)) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) 3) 2) 2) (/.f64 (/.f64 (sqrt.f64 (/.f64 2 im)) -2) 2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) 3) 4) (/.f64 (neg.f64 (sqrt.f64 (/.f64 2 im))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (sqrt.f64 (/.f64 2 im)) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (sqrt.f64 (/.f64 1/2 im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 2 im)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 2 (sqrt.f64 (/.f64 2 im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (sqrt.f64 (/.f64 2 im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (sqrt.f64 (/.f64 2 im))) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) 1/2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 (sqrt.f64 (/.f64 2 im)) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) 4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/8 (*.f64 2 (*.f64 (sqrt.f64 (/.f64 2 im)) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (*.f64 (sqrt.f64 (/.f64 2 im)) 4)) 1/8)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 1 im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 1/2) (sqrt.f64 (/.f64 4 im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 1 im)) (sqrt.f64 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 1/2 im)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 4 im)) (sqrt.f64 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 8) (sqrt.f64 (/.f64 1/4 im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 1/4 im)) (sqrt.f64 8))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (/.f64 2 im)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (sqrt.f64 (/.f64 2 im))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (sqrt.f64 (/.f64 2 im)) 4)) 8)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 2 im)) 1)))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -1/2)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (+.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -1/2) (sqrt.f64 (+.f64 im im)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -1/2) (neg.f64 (neg.f64 (sqrt.f64 (+.f64 im im)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 2 (sqrt.f64 (+.f64 im im))) (neg.f64 (-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (*.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -1/2) (*.f64 2 (sqrt.f64 (+.f64 im im)))) (neg.f64 (sqrt.f64 (+.f64 im im))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 (sqrt.f64 (+.f64 im im))) (+.f64 (*.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -1/2) (*.f64 2 (sqrt.f64 (+.f64 im im)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (+.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -1/2)) 2) (/.f64 (+.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -1/2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (sqrt.f64 (+.f64 im im)) 2) (/.f64 (-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (sqrt.f64 (/.f64 2 im)) re)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -1/2)) (neg.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (*.f64 (+.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -1/2)) 3) 2) (+.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/4)) (/.f64 (sqrt.f64 (+.f64 im im)) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (sqrt.f64 (/.f64 2 im)) re)) (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (*.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -1/2) (-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -1/2))) (*.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -4) (+.f64 (sqrt.f64 (+.f64 im im)) (/.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -4)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -4) (neg.f64 (-.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/4)) (sqrt.f64 (+.f64 im im)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -4) (/.f64 (-.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/4)) (sqrt.f64 (+.f64 im im))) -1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -4) (-.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -4) (neg.f64 (sqrt.f64 (+.f64 im im)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (sqrt.f64 (+.f64 im im)) (/.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -4)) (/.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -4))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (sqrt.f64 (+.f64 im im)) (/.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -4)) (-.f64 (sqrt.f64 (+.f64 im im)) (+.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/4)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 (neg.f64 (sqrt.f64 (+.f64 im im)))) (*.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (sqrt.f64 (+.f64 im im)) 4) (+.f64 (/.f64 (sqrt.f64 (+.f64 im im)) 4) (/.f64 (-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (sqrt.f64 (/.f64 2 im)) re)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (/.f64 (sqrt.f64 (+.f64 im im)) 4) (/.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) 8)) (+.f64 (-.f64 (/.f64 (sqrt.f64 (+.f64 im im)) 4) (/.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) 8)) (/.f64 (+.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -1/2)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (/.f64 (sqrt.f64 (+.f64 im im)) 4) (/.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) 8)) (/.f64 (/.f64 (*.f64 (+.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -1/2)) 3) 2) 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (/.f64 (sqrt.f64 (+.f64 im im)) 4) (/.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) 8)) (/.f64 (*.f64 (+.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -1/2)) 3) 4))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (sqrt.f64 (/.f64 2 im)) re)) 2) (/.f64 (sqrt.f64 (+.f64 im im)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (sqrt.f64 (/.f64 2 im)) re)) 2) (neg.f64 (/.f64 (sqrt.f64 (+.f64 im im)) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (sqrt.f64 (+.f64 im im)) (/.f64 (sqrt.f64 (+.f64 im im)) 2)) (-.f64 (sqrt.f64 (+.f64 im im)) (/.f64 (+.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (sqrt.f64 (/.f64 2 im)) re)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (/.f64 (sqrt.f64 (+.f64 im im)) 2) (-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -1/2))) (-.f64 (/.f64 (sqrt.f64 (+.f64 im im)) 2) (neg.f64 (sqrt.f64 (+.f64 im im)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 2 (sqrt.f64 (+.f64 im im))) (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/4))) (neg.f64 (+.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/4)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 2 (sqrt.f64 (+.f64 im im))) (sqrt.f64 (+.f64 im im))) (*.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 2 (sqrt.f64 (+.f64 im im))) (/.f64 (sqrt.f64 (+.f64 im im)) 2)) (neg.f64 (/.f64 (+.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (sqrt.f64 (/.f64 2 im)) re)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -1/2)) (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/4))) (neg.f64 (*.f64 3 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/4)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (-.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/4)) (sqrt.f64 (+.f64 im im))) -1) (/.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -4))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (/.f64 (-.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) (sqrt.f64 (+.f64 im im))) 2) -1) (/.f64 (/.f64 (sqrt.f64 (+.f64 im im)) -2) -1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (+.f64 (*.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -1/2) (*.f64 2 (sqrt.f64 (+.f64 im im)))) 4) (/.f64 (+.f64 (*.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -1/2) (-.f64 (*.f64 2 (sqrt.f64 (+.f64 im im))) (*.f64 (sqrt.f64 (/.f64 2 im)) re))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (-.f64 (*.f64 2 (sqrt.f64 (+.f64 im im))) (*.f64 (sqrt.f64 (/.f64 2 im)) re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (-.f64 (*.f64 (sqrt.f64 (+.f64 im im)) 4) (+.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) (*.f64 2 (sqrt.f64 (+.f64 im im))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -1/2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (+.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)) (sqrt.f64 (+.f64 im im))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 2 (sqrt.f64 (+.f64 im im))) (*.f64 (sqrt.f64 (/.f64 2 im)) re)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (-.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)) (sqrt.f64 (+.f64 im im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (-.f64 (*.f64 (sqrt.f64 (+.f64 im im)) 4) (*.f64 2 (*.f64 (sqrt.f64 (/.f64 2 im)) re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 (sqrt.f64 (+.f64 im im)) 4) (*.f64 2 (*.f64 (sqrt.f64 (/.f64 2 im)) re))) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 (*.f64 2 (sqrt.f64 (+.f64 im im))) (*.f64 (sqrt.f64 (/.f64 2 im)) re)) 4) 1/8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -1/2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)) (sqrt.f64 (+.f64 im im))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 2 (sqrt.f64 (+.f64 im im))) (*.f64 (sqrt.f64 (/.f64 2 im)) re)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (sqrt.f64 (+.f64 im im)) 4) (*.f64 2 (*.f64 (sqrt.f64 (/.f64 2 im)) re))) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) (*.f64 -2 (sqrt.f64 (+.f64 im im)))) -2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 2 (sqrt.f64 (+.f64 im im))) (*.f64 (sqrt.f64 (/.f64 2 im)) re)) 4) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 2 (*.f64 (sqrt.f64 (/.f64 2 im)) re)) (*.f64 (sqrt.f64 (+.f64 im im)) 4)) -4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (-.f64 (*.f64 2 (*.f64 (sqrt.f64 (/.f64 2 im)) re)) (*.f64 (sqrt.f64 (+.f64 im im)) 4)) -1) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (sqrt.f64 (+.f64 im im)) 4) (+.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) (*.f64 2 (sqrt.f64 (+.f64 im im))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (neg.f64 (*.f64 2 (*.f64 (sqrt.f64 (/.f64 2 im)) re))) (*.f64 (sqrt.f64 (+.f64 im im)) 4)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 2 (*.f64 (sqrt.f64 (+.f64 im im)) 4)) (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 4))) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 2 (*.f64 (sqrt.f64 (+.f64 im im)) 4)) (+.f64 (*.f64 (sqrt.f64 (+.f64 im im)) 4) (*.f64 2 (*.f64 (sqrt.f64 (/.f64 2 im)) re)))) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (+.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) (*.f64 2 (sqrt.f64 (+.f64 im im)))) (*.f64 2 (*.f64 (sqrt.f64 (/.f64 2 im)) re))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (+.f64 (*.f64 (sqrt.f64 (+.f64 im im)) 4) (*.f64 2 (*.f64 (sqrt.f64 (/.f64 2 im)) re))) (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 4))) 4)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (+.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -1/2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (-.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)) (sqrt.f64 (+.f64 im im))))))))

simplify556.0ms (1.6%)

Algorithm
egg-herbie
Rules
1100×rational_best-simplify-1
772×rational_best-simplify-47
610×rational_best-simplify-108
604×rational_best-simplify-64
536×rational_best-simplify-65
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02854811
17244611
219694299
376604299
Stop Event
node limit
Counts
149 → 149
Calls
Call 1
Inputs
(*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im))))
(*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im))))
(*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im))))
(*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im))))
(*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im))))
(*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im))))
(*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im))))
(*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im))))
(*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im))))
(*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im))))
(*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im))))
(*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im))))
(*.f64 (sqrt.f64 2) (sqrt.f64 im))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))
(*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im))))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))
(*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im))))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))
(+.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)) 0)
(+.f64 0 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)))
(+.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/4)) (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/4)))
(+.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/4)) (neg.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -4)))
(+.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) 8) (+.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) 8) (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/4))))
(+.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) 8) (/.f64 (*.f64 3 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/4))) 2))
(+.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) 8) (/.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 3/2)) 4))
(-.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)) 0)
(-.f64 0 (*.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -1/2))
(-.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/4)) (/.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -4))
(-.f64 (+.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) 8) (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/4))) (-.f64 0 (/.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) 8)))
(-.f64 (/.f64 (*.f64 3 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/4))) 2) (/.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -4) 2))
(-.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 3/2)) 4) (/.f64 (*.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -1/2) 4))
(/.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)) 1)
(/.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) 2)
(/.f64 (*.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -1/2) -1)
(/.f64 (*.f64 2 (*.f64 (sqrt.f64 (/.f64 2 im)) re)) 4)
(/.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 4)) 8)
(/.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 2 (*.f64 re 4))) 16)
(/.f64 (*.f64 4 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 4))) 32)
(/.f64 (/.f64 (*.f64 4 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 4))) 2) 16)
(/.f64 (*.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) 4) (*.f64 2 (*.f64 re 4))) 64)
(/.f64 (*.f64 (*.f64 re 4) (*.f64 2 (*.f64 (sqrt.f64 (/.f64 2 im)) 4))) 64)
(/.f64 (*.f64 (*.f64 2 (*.f64 re 4)) (*.f64 (sqrt.f64 (/.f64 2 im)) 4)) 64)
(/.f64 (*.f64 (*.f64 2 (*.f64 (sqrt.f64 (/.f64 2 im)) 4)) (*.f64 re 4)) 64)
(/.f64 (*.f64 (sqrt.f64 (/.f64 1/2 im)) re) 1)
(pow.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)) 1)
(neg.f64 (*.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -1/2))
(+.f64 (sqrt.f64 (/.f64 2 im)) 0)
(+.f64 0 (sqrt.f64 (/.f64 2 im)))
(+.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) 1/2) (*.f64 (sqrt.f64 (/.f64 2 im)) 1/2))
(+.f64 (/.f64 (sqrt.f64 (/.f64 2 im)) 4) (+.f64 (/.f64 (sqrt.f64 (/.f64 2 im)) 4) (*.f64 (sqrt.f64 (/.f64 2 im)) 1/2)))
(+.f64 (/.f64 (sqrt.f64 (/.f64 2 im)) 4) (/.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) 3) 2) 2))
(+.f64 (/.f64 (sqrt.f64 (/.f64 2 im)) 4) (/.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) 3) 4))
(-.f64 (sqrt.f64 (/.f64 2 im)) 0)
(-.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) 1/2) (/.f64 (sqrt.f64 (/.f64 2 im)) -2))
(-.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) 1/2) (/.f64 (*.f64 -2 (sqrt.f64 (/.f64 2 im))) 4))
(-.f64 (+.f64 (/.f64 (sqrt.f64 (/.f64 2 im)) 4) (*.f64 (sqrt.f64 (/.f64 2 im)) 1/2)) (-.f64 0 (/.f64 (sqrt.f64 (/.f64 2 im)) 4)))
(-.f64 (/.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) 3) 2) 2) (/.f64 (/.f64 (sqrt.f64 (/.f64 2 im)) -2) 2))
(-.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) 3) 4) (/.f64 (neg.f64 (sqrt.f64 (/.f64 2 im))) 4))
(*.f64 2 (*.f64 (sqrt.f64 (/.f64 2 im)) 1/2))
(*.f64 2 (sqrt.f64 (/.f64 1/2 im)))
(*.f64 (sqrt.f64 (/.f64 2 im)) 1)
(*.f64 1/2 (*.f64 2 (sqrt.f64 (/.f64 2 im))))
(*.f64 1 (sqrt.f64 (/.f64 2 im)))
(*.f64 (*.f64 2 (sqrt.f64 (/.f64 2 im))) 1/2)
(*.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) 1/2) 2)
(*.f64 1/4 (*.f64 (sqrt.f64 (/.f64 2 im)) 4))
(*.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) 4) 1/4)
(*.f64 1/8 (*.f64 2 (*.f64 (sqrt.f64 (/.f64 2 im)) 4)))
(*.f64 (*.f64 2 (*.f64 (sqrt.f64 (/.f64 2 im)) 4)) 1/8)
(*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 1 im)))
(*.f64 (sqrt.f64 1/2) (sqrt.f64 (/.f64 4 im)))
(*.f64 (sqrt.f64 (/.f64 1 im)) (sqrt.f64 2))
(*.f64 (sqrt.f64 (/.f64 1/2 im)) 2)
(*.f64 (sqrt.f64 (/.f64 4 im)) (sqrt.f64 1/2))
(*.f64 (sqrt.f64 8) (sqrt.f64 (/.f64 1/4 im)))
(*.f64 (sqrt.f64 (/.f64 1/4 im)) (sqrt.f64 8))
(/.f64 (sqrt.f64 (/.f64 2 im)) 1)
(/.f64 (*.f64 2 (sqrt.f64 (/.f64 2 im))) 2)
(/.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) 4) 4)
(/.f64 (*.f64 2 (*.f64 (sqrt.f64 (/.f64 2 im)) 4)) 8)
(pow.f64 (sqrt.f64 (/.f64 2 im)) 1)
(+.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -1/2))
(+.f64 (+.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -1/2)) 0)
(+.f64 0 (+.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -1/2)))
(+.f64 (*.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -1/2) (sqrt.f64 (+.f64 im im)))
(+.f64 (*.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -1/2) (neg.f64 (neg.f64 (sqrt.f64 (+.f64 im im)))))
(+.f64 (*.f64 2 (sqrt.f64 (+.f64 im im))) (neg.f64 (-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -1/2))))
(+.f64 (+.f64 (*.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -1/2) (*.f64 2 (sqrt.f64 (+.f64 im im)))) (neg.f64 (sqrt.f64 (+.f64 im im))))
(+.f64 (neg.f64 (sqrt.f64 (+.f64 im im))) (+.f64 (*.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -1/2) (*.f64 2 (sqrt.f64 (+.f64 im im)))))
(+.f64 (/.f64 (+.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -1/2)) 2) (/.f64 (+.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -1/2)) 2))
(+.f64 (/.f64 (sqrt.f64 (+.f64 im im)) 2) (/.f64 (-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (sqrt.f64 (/.f64 2 im)) re)) 2))
(+.f64 (-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -1/2)) (neg.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re)))
(+.f64 (/.f64 (*.f64 (+.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -1/2)) 3) 2) (+.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/4)) (/.f64 (sqrt.f64 (+.f64 im im)) -2)))
(+.f64 (-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (sqrt.f64 (/.f64 2 im)) re)) (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)))
(+.f64 (+.f64 (*.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -1/2) (-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -1/2))) (*.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -1/2))
(+.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -4) (+.f64 (sqrt.f64 (+.f64 im im)) (/.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -4)))
(+.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -4) (neg.f64 (-.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/4)) (sqrt.f64 (+.f64 im im)))))
(+.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -4) (/.f64 (-.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/4)) (sqrt.f64 (+.f64 im im))) -1))
(+.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -4) (-.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -4) (neg.f64 (sqrt.f64 (+.f64 im im)))))
(+.f64 (+.f64 (sqrt.f64 (+.f64 im im)) (/.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -4)) (/.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -4))
(+.f64 (+.f64 (sqrt.f64 (+.f64 im im)) (/.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -4)) (-.f64 (sqrt.f64 (+.f64 im im)) (+.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/4)))))
(+.f64 (neg.f64 (neg.f64 (sqrt.f64 (+.f64 im im)))) (*.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -1/2))
(+.f64 (/.f64 (sqrt.f64 (+.f64 im im)) 4) (+.f64 (/.f64 (sqrt.f64 (+.f64 im im)) 4) (/.f64 (-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (sqrt.f64 (/.f64 2 im)) re)) 2)))
(+.f64 (-.f64 (/.f64 (sqrt.f64 (+.f64 im im)) 4) (/.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) 8)) (+.f64 (-.f64 (/.f64 (sqrt.f64 (+.f64 im im)) 4) (/.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) 8)) (/.f64 (+.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -1/2)) 2)))
(+.f64 (-.f64 (/.f64 (sqrt.f64 (+.f64 im im)) 4) (/.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) 8)) (/.f64 (/.f64 (*.f64 (+.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -1/2)) 3) 2) 2))
(+.f64 (-.f64 (/.f64 (sqrt.f64 (+.f64 im im)) 4) (/.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) 8)) (/.f64 (*.f64 (+.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -1/2)) 3) 4))
(+.f64 (/.f64 (-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (sqrt.f64 (/.f64 2 im)) re)) 2) (/.f64 (sqrt.f64 (+.f64 im im)) 2))
(+.f64 (/.f64 (-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (sqrt.f64 (/.f64 2 im)) re)) 2) (neg.f64 (/.f64 (sqrt.f64 (+.f64 im im)) -2)))
(+.f64 (-.f64 (sqrt.f64 (+.f64 im im)) (/.f64 (sqrt.f64 (+.f64 im im)) 2)) (-.f64 (sqrt.f64 (+.f64 im im)) (/.f64 (+.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (sqrt.f64 (/.f64 2 im)) re)) 2)))
(+.f64 (-.f64 (/.f64 (sqrt.f64 (+.f64 im im)) 2) (-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -1/2))) (-.f64 (/.f64 (sqrt.f64 (+.f64 im im)) 2) (neg.f64 (sqrt.f64 (+.f64 im im)))))
(+.f64 (-.f64 (*.f64 2 (sqrt.f64 (+.f64 im im))) (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/4))) (neg.f64 (+.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/4)))))
(+.f64 (-.f64 (*.f64 2 (sqrt.f64 (+.f64 im im))) (sqrt.f64 (+.f64 im im))) (*.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -1/2))
(+.f64 (-.f64 (*.f64 2 (sqrt.f64 (+.f64 im im))) (/.f64 (sqrt.f64 (+.f64 im im)) 2)) (neg.f64 (/.f64 (+.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (sqrt.f64 (/.f64 2 im)) re)) 2)))
(+.f64 (-.f64 (-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -1/2)) (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/4))) (neg.f64 (*.f64 3 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/4)))))
(+.f64 (/.f64 (-.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/4)) (sqrt.f64 (+.f64 im im))) -1) (/.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -4))
(+.f64 (/.f64 (/.f64 (-.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) (sqrt.f64 (+.f64 im im))) 2) -1) (/.f64 (/.f64 (sqrt.f64 (+.f64 im im)) -2) -1))
(+.f64 (/.f64 (+.f64 (*.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -1/2) (*.f64 2 (sqrt.f64 (+.f64 im im)))) 4) (/.f64 (+.f64 (*.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -1/2) (-.f64 (*.f64 2 (sqrt.f64 (+.f64 im im))) (*.f64 (sqrt.f64 (/.f64 2 im)) re))) 4))
(*.f64 1/2 (-.f64 (*.f64 2 (sqrt.f64 (+.f64 im im))) (*.f64 (sqrt.f64 (/.f64 2 im)) re)))
(*.f64 1/2 (-.f64 (*.f64 (sqrt.f64 (+.f64 im im)) 4) (+.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) (*.f64 2 (sqrt.f64 (+.f64 im im))))))
(*.f64 (+.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -1/2)) 1)
(*.f64 1 (+.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -1/2)))
(*.f64 (-.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)) (sqrt.f64 (+.f64 im im))) -1)
(*.f64 (-.f64 (*.f64 2 (sqrt.f64 (+.f64 im im))) (*.f64 (sqrt.f64 (/.f64 2 im)) re)) 1/2)
(*.f64 -1 (-.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)) (sqrt.f64 (+.f64 im im))))
(*.f64 1/4 (-.f64 (*.f64 (sqrt.f64 (+.f64 im im)) 4) (*.f64 2 (*.f64 (sqrt.f64 (/.f64 2 im)) re))))
(*.f64 (-.f64 (*.f64 (sqrt.f64 (+.f64 im im)) 4) (*.f64 2 (*.f64 (sqrt.f64 (/.f64 2 im)) re))) 1/4)
(*.f64 (*.f64 (-.f64 (*.f64 2 (sqrt.f64 (+.f64 im im))) (*.f64 (sqrt.f64 (/.f64 2 im)) re)) 4) 1/8)
(/.f64 (+.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -1/2)) 1)
(/.f64 (-.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)) (sqrt.f64 (+.f64 im im))) -1)
(/.f64 (-.f64 (*.f64 2 (sqrt.f64 (+.f64 im im))) (*.f64 (sqrt.f64 (/.f64 2 im)) re)) 2)
(/.f64 (-.f64 (*.f64 (sqrt.f64 (+.f64 im im)) 4) (*.f64 2 (*.f64 (sqrt.f64 (/.f64 2 im)) re))) 4)
(/.f64 (+.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) (*.f64 -2 (sqrt.f64 (+.f64 im im)))) -2)
(/.f64 (*.f64 (-.f64 (*.f64 2 (sqrt.f64 (+.f64 im im))) (*.f64 (sqrt.f64 (/.f64 2 im)) re)) 4) 8)
(/.f64 (-.f64 (*.f64 2 (*.f64 (sqrt.f64 (/.f64 2 im)) re)) (*.f64 (sqrt.f64 (+.f64 im im)) 4)) -4)
(/.f64 (/.f64 (-.f64 (*.f64 2 (*.f64 (sqrt.f64 (/.f64 2 im)) re)) (*.f64 (sqrt.f64 (+.f64 im im)) 4)) -1) 4)
(/.f64 (-.f64 (*.f64 (sqrt.f64 (+.f64 im im)) 4) (+.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) (*.f64 2 (sqrt.f64 (+.f64 im im))))) 2)
(/.f64 (+.f64 (neg.f64 (*.f64 2 (*.f64 (sqrt.f64 (/.f64 2 im)) re))) (*.f64 (sqrt.f64 (+.f64 im im)) 4)) 4)
(/.f64 (-.f64 (*.f64 2 (*.f64 (sqrt.f64 (+.f64 im im)) 4)) (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 4))) 8)
(/.f64 (-.f64 (*.f64 2 (*.f64 (sqrt.f64 (+.f64 im im)) 4)) (+.f64 (*.f64 (sqrt.f64 (+.f64 im im)) 4) (*.f64 2 (*.f64 (sqrt.f64 (/.f64 2 im)) re)))) 4)
(/.f64 (-.f64 (+.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) (*.f64 2 (sqrt.f64 (+.f64 im im)))) (*.f64 2 (*.f64 (sqrt.f64 (/.f64 2 im)) re))) 2)
(/.f64 (-.f64 (+.f64 (*.f64 (sqrt.f64 (+.f64 im im)) 4) (*.f64 2 (*.f64 (sqrt.f64 (/.f64 2 im)) re))) (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 4))) 4)
(pow.f64 (+.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -1/2)) 1)
(neg.f64 (-.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)) (sqrt.f64 (+.f64 im im))))
Outputs
(*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im))))
(*.f64 1/2 (*.f64 re (sqrt.f64 (*.f64 1 (/.f64 2 im)))))
(*.f64 re (*.f64 1/2 (sqrt.f64 (/.f64 2 im))))
(*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im))))
(*.f64 1/2 (*.f64 re (sqrt.f64 (*.f64 1 (/.f64 2 im)))))
(*.f64 re (*.f64 1/2 (sqrt.f64 (/.f64 2 im))))
(*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im))))
(*.f64 1/2 (*.f64 re (sqrt.f64 (*.f64 1 (/.f64 2 im)))))
(*.f64 re (*.f64 1/2 (sqrt.f64 (/.f64 2 im))))
(*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im))))
(*.f64 1/2 (*.f64 re (sqrt.f64 (*.f64 1 (/.f64 2 im)))))
(*.f64 re (*.f64 1/2 (sqrt.f64 (/.f64 2 im))))
(*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im))))
(*.f64 1/2 (*.f64 re (sqrt.f64 (*.f64 1 (/.f64 2 im)))))
(*.f64 re (*.f64 1/2 (sqrt.f64 (/.f64 2 im))))
(*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im))))
(*.f64 1/2 (*.f64 re (sqrt.f64 (*.f64 1 (/.f64 2 im)))))
(*.f64 re (*.f64 1/2 (sqrt.f64 (/.f64 2 im))))
(*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im))))
(*.f64 1/2 (*.f64 re (sqrt.f64 (*.f64 1 (/.f64 2 im)))))
(*.f64 re (*.f64 1/2 (sqrt.f64 (/.f64 2 im))))
(*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im))))
(*.f64 1/2 (*.f64 re (sqrt.f64 (*.f64 1 (/.f64 2 im)))))
(*.f64 re (*.f64 1/2 (sqrt.f64 (/.f64 2 im))))
(*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im))))
(*.f64 1/2 (*.f64 re (sqrt.f64 (*.f64 1 (/.f64 2 im)))))
(*.f64 re (*.f64 1/2 (sqrt.f64 (/.f64 2 im))))
(*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im))))
(*.f64 1/2 (*.f64 re (sqrt.f64 (*.f64 1 (/.f64 2 im)))))
(*.f64 re (*.f64 1/2 (sqrt.f64 (/.f64 2 im))))
(*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im))))
(*.f64 1/2 (*.f64 re (sqrt.f64 (*.f64 1 (/.f64 2 im)))))
(*.f64 re (*.f64 1/2 (sqrt.f64 (/.f64 2 im))))
(*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im))))
(*.f64 1/2 (*.f64 re (sqrt.f64 (*.f64 1 (/.f64 2 im)))))
(*.f64 re (*.f64 1/2 (sqrt.f64 (/.f64 2 im))))
(*.f64 (sqrt.f64 2) (sqrt.f64 im))
(sqrt.f64 (*.f64 2 im))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))
(+.f64 (sqrt.f64 (*.f64 2 im)) (*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 (*.f64 (sqrt.f64 2) re) -1/2)))
(+.f64 (sqrt.f64 (*.f64 2 im)) (*.f64 (*.f64 re (sqrt.f64 (*.f64 1 (/.f64 2 im)))) -1/2))
(-.f64 (sqrt.f64 (*.f64 2 im)) (*.f64 re (*.f64 1/2 (sqrt.f64 (/.f64 2 im)))))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))
(+.f64 (sqrt.f64 (*.f64 2 im)) (*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 (*.f64 (sqrt.f64 2) re) -1/2)))
(+.f64 (sqrt.f64 (*.f64 2 im)) (*.f64 (*.f64 re (sqrt.f64 (*.f64 1 (/.f64 2 im)))) -1/2))
(-.f64 (sqrt.f64 (*.f64 2 im)) (*.f64 re (*.f64 1/2 (sqrt.f64 (/.f64 2 im)))))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))
(+.f64 (sqrt.f64 (*.f64 2 im)) (*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 (*.f64 (sqrt.f64 2) re) -1/2)))
(+.f64 (sqrt.f64 (*.f64 2 im)) (*.f64 (*.f64 re (sqrt.f64 (*.f64 1 (/.f64 2 im)))) -1/2))
(-.f64 (sqrt.f64 (*.f64 2 im)) (*.f64 re (*.f64 1/2 (sqrt.f64 (/.f64 2 im)))))
(*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im))))
(*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 (*.f64 (sqrt.f64 2) re) -1/2))
(*.f64 (*.f64 re (sqrt.f64 (*.f64 1 (/.f64 2 im)))) -1/2)
(*.f64 re (*.f64 -1/2 (sqrt.f64 (/.f64 2 im))))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))
(+.f64 (sqrt.f64 (*.f64 2 im)) (*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 (*.f64 (sqrt.f64 2) re) -1/2)))
(+.f64 (sqrt.f64 (*.f64 2 im)) (*.f64 (*.f64 re (sqrt.f64 (*.f64 1 (/.f64 2 im)))) -1/2))
(-.f64 (sqrt.f64 (*.f64 2 im)) (*.f64 re (*.f64 1/2 (sqrt.f64 (/.f64 2 im)))))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))
(+.f64 (sqrt.f64 (*.f64 2 im)) (*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 (*.f64 (sqrt.f64 2) re) -1/2)))
(+.f64 (sqrt.f64 (*.f64 2 im)) (*.f64 (*.f64 re (sqrt.f64 (*.f64 1 (/.f64 2 im)))) -1/2))
(-.f64 (sqrt.f64 (*.f64 2 im)) (*.f64 re (*.f64 1/2 (sqrt.f64 (/.f64 2 im)))))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))
(+.f64 (sqrt.f64 (*.f64 2 im)) (*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 (*.f64 (sqrt.f64 2) re) -1/2)))
(+.f64 (sqrt.f64 (*.f64 2 im)) (*.f64 (*.f64 re (sqrt.f64 (*.f64 1 (/.f64 2 im)))) -1/2))
(-.f64 (sqrt.f64 (*.f64 2 im)) (*.f64 re (*.f64 1/2 (sqrt.f64 (/.f64 2 im)))))
(*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im))))
(*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 (*.f64 (sqrt.f64 2) re) -1/2))
(*.f64 (*.f64 re (sqrt.f64 (*.f64 1 (/.f64 2 im)))) -1/2)
(*.f64 re (*.f64 -1/2 (sqrt.f64 (/.f64 2 im))))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))
(+.f64 (sqrt.f64 (*.f64 2 im)) (*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 (*.f64 (sqrt.f64 2) re) -1/2)))
(+.f64 (sqrt.f64 (*.f64 2 im)) (*.f64 (*.f64 re (sqrt.f64 (*.f64 1 (/.f64 2 im)))) -1/2))
(-.f64 (sqrt.f64 (*.f64 2 im)) (*.f64 re (*.f64 1/2 (sqrt.f64 (/.f64 2 im)))))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))
(+.f64 (sqrt.f64 (*.f64 2 im)) (*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 (*.f64 (sqrt.f64 2) re) -1/2)))
(+.f64 (sqrt.f64 (*.f64 2 im)) (*.f64 (*.f64 re (sqrt.f64 (*.f64 1 (/.f64 2 im)))) -1/2))
(-.f64 (sqrt.f64 (*.f64 2 im)) (*.f64 re (*.f64 1/2 (sqrt.f64 (/.f64 2 im)))))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))
(+.f64 (sqrt.f64 (*.f64 2 im)) (*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 (*.f64 (sqrt.f64 2) re) -1/2)))
(+.f64 (sqrt.f64 (*.f64 2 im)) (*.f64 (*.f64 re (sqrt.f64 (*.f64 1 (/.f64 2 im)))) -1/2))
(-.f64 (sqrt.f64 (*.f64 2 im)) (*.f64 re (*.f64 1/2 (sqrt.f64 (/.f64 2 im)))))
(+.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)) 0)
(*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im))))
(*.f64 1/2 (*.f64 re (sqrt.f64 (*.f64 1 (/.f64 2 im)))))
(*.f64 re (*.f64 1/2 (sqrt.f64 (/.f64 2 im))))
(+.f64 0 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)))
(*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im))))
(*.f64 1/2 (*.f64 re (sqrt.f64 (*.f64 1 (/.f64 2 im)))))
(*.f64 re (*.f64 1/2 (sqrt.f64 (/.f64 2 im))))
(+.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/4)) (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/4)))
(*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im))))
(*.f64 1/2 (*.f64 re (sqrt.f64 (*.f64 1 (/.f64 2 im)))))
(*.f64 re (*.f64 1/2 (sqrt.f64 (/.f64 2 im))))
(+.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/4)) (neg.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -4)))
(*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im))))
(*.f64 1/2 (*.f64 re (sqrt.f64 (*.f64 1 (/.f64 2 im)))))
(*.f64 re (*.f64 1/2 (sqrt.f64 (/.f64 2 im))))
(+.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) 8) (+.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) 8) (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/4))))
(*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im))))
(*.f64 1/2 (*.f64 re (sqrt.f64 (*.f64 1 (/.f64 2 im)))))
(*.f64 re (*.f64 1/2 (sqrt.f64 (/.f64 2 im))))
(+.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) 8) (/.f64 (*.f64 3 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/4))) 2))
(*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im))))
(*.f64 1/2 (*.f64 re (sqrt.f64 (*.f64 1 (/.f64 2 im)))))
(*.f64 re (*.f64 1/2 (sqrt.f64 (/.f64 2 im))))
(+.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) 8) (/.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 3/2)) 4))
(*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im))))
(*.f64 1/2 (*.f64 re (sqrt.f64 (*.f64 1 (/.f64 2 im)))))
(*.f64 re (*.f64 1/2 (sqrt.f64 (/.f64 2 im))))
(-.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)) 0)
(*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im))))
(*.f64 1/2 (*.f64 re (sqrt.f64 (*.f64 1 (/.f64 2 im)))))
(*.f64 re (*.f64 1/2 (sqrt.f64 (/.f64 2 im))))
(-.f64 0 (*.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -1/2))
(*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im))))
(*.f64 1/2 (*.f64 re (sqrt.f64 (*.f64 1 (/.f64 2 im)))))
(*.f64 re (*.f64 1/2 (sqrt.f64 (/.f64 2 im))))
(-.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/4)) (/.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -4))
(*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im))))
(*.f64 1/2 (*.f64 re (sqrt.f64 (*.f64 1 (/.f64 2 im)))))
(*.f64 re (*.f64 1/2 (sqrt.f64 (/.f64 2 im))))
(-.f64 (+.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) 8) (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/4))) (-.f64 0 (/.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) 8)))
(*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im))))
(*.f64 1/2 (*.f64 re (sqrt.f64 (*.f64 1 (/.f64 2 im)))))
(*.f64 re (*.f64 1/2 (sqrt.f64 (/.f64 2 im))))
(-.f64 (/.f64 (*.f64 3 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/4))) 2) (/.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -4) 2))
(*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im))))
(*.f64 1/2 (*.f64 re (sqrt.f64 (*.f64 1 (/.f64 2 im)))))
(*.f64 re (*.f64 1/2 (sqrt.f64 (/.f64 2 im))))
(-.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 3/2)) 4) (/.f64 (*.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -1/2) 4))
(*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im))))
(*.f64 1/2 (*.f64 re (sqrt.f64 (*.f64 1 (/.f64 2 im)))))
(*.f64 re (*.f64 1/2 (sqrt.f64 (/.f64 2 im))))
(/.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)) 1)
(*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im))))
(*.f64 1/2 (*.f64 re (sqrt.f64 (*.f64 1 (/.f64 2 im)))))
(*.f64 re (*.f64 1/2 (sqrt.f64 (/.f64 2 im))))
(/.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) 2)
(*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im))))
(*.f64 1/2 (*.f64 re (sqrt.f64 (*.f64 1 (/.f64 2 im)))))
(*.f64 re (*.f64 1/2 (sqrt.f64 (/.f64 2 im))))
(/.f64 (*.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -1/2) -1)
(*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im))))
(*.f64 1/2 (*.f64 re (sqrt.f64 (*.f64 1 (/.f64 2 im)))))
(*.f64 re (*.f64 1/2 (sqrt.f64 (/.f64 2 im))))
(/.f64 (*.f64 2 (*.f64 (sqrt.f64 (/.f64 2 im)) re)) 4)
(*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im))))
(*.f64 1/2 (*.f64 re (sqrt.f64 (*.f64 1 (/.f64 2 im)))))
(*.f64 re (*.f64 1/2 (sqrt.f64 (/.f64 2 im))))
(/.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 4)) 8)
(*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im))))
(*.f64 1/2 (*.f64 re (sqrt.f64 (*.f64 1 (/.f64 2 im)))))
(*.f64 re (*.f64 1/2 (sqrt.f64 (/.f64 2 im))))
(/.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 2 (*.f64 re 4))) 16)
(*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im))))
(*.f64 1/2 (*.f64 re (sqrt.f64 (*.f64 1 (/.f64 2 im)))))
(*.f64 re (*.f64 1/2 (sqrt.f64 (/.f64 2 im))))
(/.f64 (*.f64 4 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 4))) 32)
(*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im))))
(*.f64 1/2 (*.f64 re (sqrt.f64 (*.f64 1 (/.f64 2 im)))))
(*.f64 re (*.f64 1/2 (sqrt.f64 (/.f64 2 im))))
(/.f64 (/.f64 (*.f64 4 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 4))) 2) 16)
(*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im))))
(*.f64 1/2 (*.f64 re (sqrt.f64 (*.f64 1 (/.f64 2 im)))))
(*.f64 re (*.f64 1/2 (sqrt.f64 (/.f64 2 im))))
(/.f64 (*.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) 4) (*.f64 2 (*.f64 re 4))) 64)
(*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im))))
(*.f64 1/2 (*.f64 re (sqrt.f64 (*.f64 1 (/.f64 2 im)))))
(*.f64 re (*.f64 1/2 (sqrt.f64 (/.f64 2 im))))
(/.f64 (*.f64 (*.f64 re 4) (*.f64 2 (*.f64 (sqrt.f64 (/.f64 2 im)) 4))) 64)
(*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im))))
(*.f64 1/2 (*.f64 re (sqrt.f64 (*.f64 1 (/.f64 2 im)))))
(*.f64 re (*.f64 1/2 (sqrt.f64 (/.f64 2 im))))
(/.f64 (*.f64 (*.f64 2 (*.f64 re 4)) (*.f64 (sqrt.f64 (/.f64 2 im)) 4)) 64)
(*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im))))
(*.f64 1/2 (*.f64 re (sqrt.f64 (*.f64 1 (/.f64 2 im)))))
(*.f64 re (*.f64 1/2 (sqrt.f64 (/.f64 2 im))))
(/.f64 (*.f64 (*.f64 2 (*.f64 (sqrt.f64 (/.f64 2 im)) 4)) (*.f64 re 4)) 64)
(*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im))))
(*.f64 1/2 (*.f64 re (sqrt.f64 (*.f64 1 (/.f64 2 im)))))
(*.f64 re (*.f64 1/2 (sqrt.f64 (/.f64 2 im))))
(/.f64 (*.f64 (sqrt.f64 (/.f64 1/2 im)) re) 1)
(*.f64 re (sqrt.f64 (/.f64 1/2 im)))
(pow.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)) 1)
(*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im))))
(*.f64 1/2 (*.f64 re (sqrt.f64 (*.f64 1 (/.f64 2 im)))))
(*.f64 re (*.f64 1/2 (sqrt.f64 (/.f64 2 im))))
(neg.f64 (*.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -1/2))
(*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im))))
(*.f64 1/2 (*.f64 re (sqrt.f64 (*.f64 1 (/.f64 2 im)))))
(*.f64 re (*.f64 1/2 (sqrt.f64 (/.f64 2 im))))
(+.f64 (sqrt.f64 (/.f64 2 im)) 0)
(sqrt.f64 (/.f64 2 im))
(+.f64 0 (sqrt.f64 (/.f64 2 im)))
(sqrt.f64 (/.f64 2 im))
(+.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) 1/2) (*.f64 (sqrt.f64 (/.f64 2 im)) 1/2))
(sqrt.f64 (/.f64 2 im))
(+.f64 (/.f64 (sqrt.f64 (/.f64 2 im)) 4) (+.f64 (/.f64 (sqrt.f64 (/.f64 2 im)) 4) (*.f64 (sqrt.f64 (/.f64 2 im)) 1/2)))
(sqrt.f64 (/.f64 2 im))
(+.f64 (/.f64 (sqrt.f64 (/.f64 2 im)) 4) (/.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) 3) 2) 2))
(sqrt.f64 (/.f64 2 im))
(+.f64 (/.f64 (sqrt.f64 (/.f64 2 im)) 4) (/.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) 3) 4))
(sqrt.f64 (/.f64 2 im))
(-.f64 (sqrt.f64 (/.f64 2 im)) 0)
(sqrt.f64 (/.f64 2 im))
(-.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) 1/2) (/.f64 (sqrt.f64 (/.f64 2 im)) -2))
(sqrt.f64 (/.f64 2 im))
(-.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) 1/2) (/.f64 (*.f64 -2 (sqrt.f64 (/.f64 2 im))) 4))
(sqrt.f64 (/.f64 2 im))
(-.f64 (+.f64 (/.f64 (sqrt.f64 (/.f64 2 im)) 4) (*.f64 (sqrt.f64 (/.f64 2 im)) 1/2)) (-.f64 0 (/.f64 (sqrt.f64 (/.f64 2 im)) 4)))
(sqrt.f64 (/.f64 2 im))
(-.f64 (/.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) 3) 2) 2) (/.f64 (/.f64 (sqrt.f64 (/.f64 2 im)) -2) 2))
(sqrt.f64 (/.f64 2 im))
(-.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) 3) 4) (/.f64 (neg.f64 (sqrt.f64 (/.f64 2 im))) 4))
(sqrt.f64 (/.f64 2 im))
(*.f64 2 (*.f64 (sqrt.f64 (/.f64 2 im)) 1/2))
(sqrt.f64 (/.f64 2 im))
(*.f64 2 (sqrt.f64 (/.f64 1/2 im)))
(sqrt.f64 (/.f64 2 im))
(*.f64 (sqrt.f64 (/.f64 2 im)) 1)
(sqrt.f64 (/.f64 2 im))
(*.f64 1/2 (*.f64 2 (sqrt.f64 (/.f64 2 im))))
(sqrt.f64 (/.f64 2 im))
(*.f64 1 (sqrt.f64 (/.f64 2 im)))
(sqrt.f64 (/.f64 2 im))
(*.f64 (*.f64 2 (sqrt.f64 (/.f64 2 im))) 1/2)
(sqrt.f64 (/.f64 2 im))
(*.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) 1/2) 2)
(sqrt.f64 (/.f64 2 im))
(*.f64 1/4 (*.f64 (sqrt.f64 (/.f64 2 im)) 4))
(sqrt.f64 (/.f64 2 im))
(*.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) 4) 1/4)
(sqrt.f64 (/.f64 2 im))
(*.f64 1/8 (*.f64 2 (*.f64 (sqrt.f64 (/.f64 2 im)) 4)))
(sqrt.f64 (/.f64 2 im))
(*.f64 (*.f64 2 (*.f64 (sqrt.f64 (/.f64 2 im)) 4)) 1/8)
(sqrt.f64 (/.f64 2 im))
(*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 1 im)))
(sqrt.f64 (/.f64 2 im))
(*.f64 (sqrt.f64 1/2) (sqrt.f64 (/.f64 4 im)))
(sqrt.f64 (/.f64 2 im))
(*.f64 (sqrt.f64 (/.f64 1 im)) (sqrt.f64 2))
(sqrt.f64 (/.f64 2 im))
(*.f64 (sqrt.f64 (/.f64 1/2 im)) 2)
(sqrt.f64 (/.f64 2 im))
(*.f64 (sqrt.f64 (/.f64 4 im)) (sqrt.f64 1/2))
(sqrt.f64 (/.f64 2 im))
(*.f64 (sqrt.f64 8) (sqrt.f64 (/.f64 1/4 im)))
(sqrt.f64 (/.f64 2 im))
(*.f64 (sqrt.f64 (/.f64 1/4 im)) (sqrt.f64 8))
(sqrt.f64 (/.f64 2 im))
(/.f64 (sqrt.f64 (/.f64 2 im)) 1)
(sqrt.f64 (/.f64 2 im))
(/.f64 (*.f64 2 (sqrt.f64 (/.f64 2 im))) 2)
(sqrt.f64 (/.f64 2 im))
(/.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) 4) 4)
(sqrt.f64 (/.f64 2 im))
(/.f64 (*.f64 2 (*.f64 (sqrt.f64 (/.f64 2 im)) 4)) 8)
(sqrt.f64 (/.f64 2 im))
(pow.f64 (sqrt.f64 (/.f64 2 im)) 1)
(sqrt.f64 (/.f64 2 im))
(+.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -1/2))
(+.f64 (*.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 2 im)))) (sqrt.f64 (+.f64 im im)))
(+.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)) (sqrt.f64 (+.f64 im im)))
(-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 re (*.f64 1/2 (sqrt.f64 (/.f64 2 im)))))
(+.f64 (+.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -1/2)) 0)
(+.f64 (*.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 2 im)))) (sqrt.f64 (+.f64 im im)))
(+.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)) (sqrt.f64 (+.f64 im im)))
(-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 re (*.f64 1/2 (sqrt.f64 (/.f64 2 im)))))
(+.f64 0 (+.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -1/2)))
(+.f64 (*.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 2 im)))) (sqrt.f64 (+.f64 im im)))
(+.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)) (sqrt.f64 (+.f64 im im)))
(-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 re (*.f64 1/2 (sqrt.f64 (/.f64 2 im)))))
(+.f64 (*.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -1/2) (sqrt.f64 (+.f64 im im)))
(+.f64 (*.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 2 im)))) (sqrt.f64 (+.f64 im im)))
(+.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)) (sqrt.f64 (+.f64 im im)))
(-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 re (*.f64 1/2 (sqrt.f64 (/.f64 2 im)))))
(+.f64 (*.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -1/2) (neg.f64 (neg.f64 (sqrt.f64 (+.f64 im im)))))
(+.f64 (*.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 2 im)))) (sqrt.f64 (+.f64 im im)))
(+.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)) (sqrt.f64 (+.f64 im im)))
(-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 re (*.f64 1/2 (sqrt.f64 (/.f64 2 im)))))
(+.f64 (*.f64 2 (sqrt.f64 (+.f64 im im))) (neg.f64 (-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -1/2))))
(+.f64 (*.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 2 im)))) (sqrt.f64 (+.f64 im im)))
(+.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)) (sqrt.f64 (+.f64 im im)))
(-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 re (*.f64 1/2 (sqrt.f64 (/.f64 2 im)))))
(+.f64 (+.f64 (*.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -1/2) (*.f64 2 (sqrt.f64 (+.f64 im im)))) (neg.f64 (sqrt.f64 (+.f64 im im))))
(+.f64 (*.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 2 im)))) (sqrt.f64 (+.f64 im im)))
(+.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)) (sqrt.f64 (+.f64 im im)))
(-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 re (*.f64 1/2 (sqrt.f64 (/.f64 2 im)))))
(+.f64 (neg.f64 (sqrt.f64 (+.f64 im im))) (+.f64 (*.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -1/2) (*.f64 2 (sqrt.f64 (+.f64 im im)))))
(+.f64 (*.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 2 im)))) (sqrt.f64 (+.f64 im im)))
(+.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)) (sqrt.f64 (+.f64 im im)))
(-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 re (*.f64 1/2 (sqrt.f64 (/.f64 2 im)))))
(+.f64 (/.f64 (+.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -1/2)) 2) (/.f64 (+.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -1/2)) 2))
(+.f64 (*.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 2 im)))) (sqrt.f64 (+.f64 im im)))
(+.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)) (sqrt.f64 (+.f64 im im)))
(-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 re (*.f64 1/2 (sqrt.f64 (/.f64 2 im)))))
(+.f64 (/.f64 (sqrt.f64 (+.f64 im im)) 2) (/.f64 (-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (sqrt.f64 (/.f64 2 im)) re)) 2))
(+.f64 (*.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 2 im)))) (sqrt.f64 (+.f64 im im)))
(+.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)) (sqrt.f64 (+.f64 im im)))
(-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 re (*.f64 1/2 (sqrt.f64 (/.f64 2 im)))))
(+.f64 (-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -1/2)) (neg.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re)))
(+.f64 (*.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 2 im)))) (sqrt.f64 (+.f64 im im)))
(+.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)) (sqrt.f64 (+.f64 im im)))
(-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 re (*.f64 1/2 (sqrt.f64 (/.f64 2 im)))))
(+.f64 (/.f64 (*.f64 (+.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -1/2)) 3) 2) (+.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/4)) (/.f64 (sqrt.f64 (+.f64 im im)) -2)))
(+.f64 (/.f64 (*.f64 3 (+.f64 (*.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 2 im)))) (sqrt.f64 (+.f64 im im)))) 2) (+.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/4)) (/.f64 (sqrt.f64 (+.f64 im im)) -2)))
(+.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) 1/4)) (+.f64 (/.f64 (sqrt.f64 (+.f64 im im)) -2) (/.f64 (*.f64 3 (+.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)) (sqrt.f64 (+.f64 im im)))) 2)))
(+.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/4)) (+.f64 (/.f64 (*.f64 3 (-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 re (*.f64 1/2 (sqrt.f64 (/.f64 2 im)))))) 2) (/.f64 (sqrt.f64 (+.f64 im im)) -2)))
(+.f64 (-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (sqrt.f64 (/.f64 2 im)) re)) (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)))
(+.f64 (*.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 2 im)))) (sqrt.f64 (+.f64 im im)))
(+.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)) (sqrt.f64 (+.f64 im im)))
(-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 re (*.f64 1/2 (sqrt.f64 (/.f64 2 im)))))
(+.f64 (+.f64 (*.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -1/2) (-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -1/2))) (*.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -1/2))
(+.f64 (*.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 2 im)))) (sqrt.f64 (+.f64 im im)))
(+.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)) (sqrt.f64 (+.f64 im im)))
(-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 re (*.f64 1/2 (sqrt.f64 (/.f64 2 im)))))
(+.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -4) (+.f64 (sqrt.f64 (+.f64 im im)) (/.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -4)))
(+.f64 (*.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 2 im)))) (sqrt.f64 (+.f64 im im)))
(+.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)) (sqrt.f64 (+.f64 im im)))
(-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 re (*.f64 1/2 (sqrt.f64 (/.f64 2 im)))))
(+.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -4) (neg.f64 (-.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/4)) (sqrt.f64 (+.f64 im im)))))
(+.f64 (*.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 2 im)))) (sqrt.f64 (+.f64 im im)))
(+.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)) (sqrt.f64 (+.f64 im im)))
(-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 re (*.f64 1/2 (sqrt.f64 (/.f64 2 im)))))
(+.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -4) (/.f64 (-.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/4)) (sqrt.f64 (+.f64 im im))) -1))
(+.f64 (*.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 2 im)))) (sqrt.f64 (+.f64 im im)))
(+.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)) (sqrt.f64 (+.f64 im im)))
(-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 re (*.f64 1/2 (sqrt.f64 (/.f64 2 im)))))
(+.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -4) (-.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -4) (neg.f64 (sqrt.f64 (+.f64 im im)))))
(+.f64 (*.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 2 im)))) (sqrt.f64 (+.f64 im im)))
(+.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)) (sqrt.f64 (+.f64 im im)))
(-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 re (*.f64 1/2 (sqrt.f64 (/.f64 2 im)))))
(+.f64 (+.f64 (sqrt.f64 (+.f64 im im)) (/.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -4)) (/.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -4))
(+.f64 (*.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 2 im)))) (sqrt.f64 (+.f64 im im)))
(+.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)) (sqrt.f64 (+.f64 im im)))
(-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 re (*.f64 1/2 (sqrt.f64 (/.f64 2 im)))))
(+.f64 (+.f64 (sqrt.f64 (+.f64 im im)) (/.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -4)) (-.f64 (sqrt.f64 (+.f64 im im)) (+.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/4)))))
(+.f64 (*.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 2 im)))) (sqrt.f64 (+.f64 im im)))
(+.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)) (sqrt.f64 (+.f64 im im)))
(-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 re (*.f64 1/2 (sqrt.f64 (/.f64 2 im)))))
(+.f64 (neg.f64 (neg.f64 (sqrt.f64 (+.f64 im im)))) (*.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -1/2))
(+.f64 (*.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 2 im)))) (sqrt.f64 (+.f64 im im)))
(+.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)) (sqrt.f64 (+.f64 im im)))
(-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 re (*.f64 1/2 (sqrt.f64 (/.f64 2 im)))))
(+.f64 (/.f64 (sqrt.f64 (+.f64 im im)) 4) (+.f64 (/.f64 (sqrt.f64 (+.f64 im im)) 4) (/.f64 (-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (sqrt.f64 (/.f64 2 im)) re)) 2)))
(+.f64 (*.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 2 im)))) (sqrt.f64 (+.f64 im im)))
(+.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)) (sqrt.f64 (+.f64 im im)))
(-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 re (*.f64 1/2 (sqrt.f64 (/.f64 2 im)))))
(+.f64 (-.f64 (/.f64 (sqrt.f64 (+.f64 im im)) 4) (/.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) 8)) (+.f64 (-.f64 (/.f64 (sqrt.f64 (+.f64 im im)) 4) (/.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) 8)) (/.f64 (+.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -1/2)) 2)))
(+.f64 (*.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 2 im)))) (sqrt.f64 (+.f64 im im)))
(+.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)) (sqrt.f64 (+.f64 im im)))
(-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 re (*.f64 1/2 (sqrt.f64 (/.f64 2 im)))))
(+.f64 (-.f64 (/.f64 (sqrt.f64 (+.f64 im im)) 4) (/.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) 8)) (/.f64 (/.f64 (*.f64 (+.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -1/2)) 3) 2) 2))
(+.f64 (-.f64 (/.f64 (sqrt.f64 (+.f64 im im)) 4) (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) 8)) (/.f64 (*.f64 3 (+.f64 (*.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 2 im)))) (sqrt.f64 (+.f64 im im)))) 4))
(+.f64 (-.f64 (/.f64 (sqrt.f64 (+.f64 im im)) 4) (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) 8)) (/.f64 (*.f64 3 (+.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)) (sqrt.f64 (+.f64 im im)))) 4))
(/.f64 (+.f64 (-.f64 (*.f64 2 (sqrt.f64 (+.f64 im im))) (*.f64 re (sqrt.f64 (/.f64 2 im)))) (*.f64 3 (-.f64 (*.f64 2 (sqrt.f64 (+.f64 im im))) (*.f64 re (sqrt.f64 (/.f64 2 im)))))) 8)
(+.f64 (-.f64 (/.f64 (sqrt.f64 (+.f64 im im)) 4) (/.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) 8)) (/.f64 (*.f64 (+.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -1/2)) 3) 4))
(+.f64 (-.f64 (/.f64 (sqrt.f64 (+.f64 im im)) 4) (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) 8)) (/.f64 (*.f64 3 (+.f64 (*.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 2 im)))) (sqrt.f64 (+.f64 im im)))) 4))
(+.f64 (-.f64 (/.f64 (sqrt.f64 (+.f64 im im)) 4) (/.f64 (*.f64 re (sqrt.f64 (/.f64 2 im))) 8)) (/.f64 (*.f64 3 (+.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)) (sqrt.f64 (+.f64 im im)))) 4))
(/.f64 (+.f64 (-.f64 (*.f64 2 (sqrt.f64 (+.f64 im im))) (*.f64 re (sqrt.f64 (/.f64 2 im)))) (*.f64 3 (-.f64 (*.f64 2 (sqrt.f64 (+.f64 im im))) (*.f64 re (sqrt.f64 (/.f64 2 im)))))) 8)
(+.f64 (/.f64 (-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (sqrt.f64 (/.f64 2 im)) re)) 2) (/.f64 (sqrt.f64 (+.f64 im im)) 2))
(+.f64 (*.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 2 im)))) (sqrt.f64 (+.f64 im im)))
(+.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)) (sqrt.f64 (+.f64 im im)))
(-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 re (*.f64 1/2 (sqrt.f64 (/.f64 2 im)))))
(+.f64 (/.f64 (-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (sqrt.f64 (/.f64 2 im)) re)) 2) (neg.f64 (/.f64 (sqrt.f64 (+.f64 im im)) -2)))
(+.f64 (*.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 2 im)))) (sqrt.f64 (+.f64 im im)))
(+.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)) (sqrt.f64 (+.f64 im im)))
(-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 re (*.f64 1/2 (sqrt.f64 (/.f64 2 im)))))
(+.f64 (-.f64 (sqrt.f64 (+.f64 im im)) (/.f64 (sqrt.f64 (+.f64 im im)) 2)) (-.f64 (sqrt.f64 (+.f64 im im)) (/.f64 (+.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (sqrt.f64 (/.f64 2 im)) re)) 2)))
(+.f64 (*.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 2 im)))) (sqrt.f64 (+.f64 im im)))
(+.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)) (sqrt.f64 (+.f64 im im)))
(-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 re (*.f64 1/2 (sqrt.f64 (/.f64 2 im)))))
(+.f64 (-.f64 (/.f64 (sqrt.f64 (+.f64 im im)) 2) (-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -1/2))) (-.f64 (/.f64 (sqrt.f64 (+.f64 im im)) 2) (neg.f64 (sqrt.f64 (+.f64 im im)))))
(+.f64 (*.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 2 im)))) (sqrt.f64 (+.f64 im im)))
(+.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)) (sqrt.f64 (+.f64 im im)))
(-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 re (*.f64 1/2 (sqrt.f64 (/.f64 2 im)))))
(+.f64 (-.f64 (*.f64 2 (sqrt.f64 (+.f64 im im))) (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/4))) (neg.f64 (+.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/4)))))
(+.f64 (*.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 2 im)))) (sqrt.f64 (+.f64 im im)))
(+.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)) (sqrt.f64 (+.f64 im im)))
(-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 re (*.f64 1/2 (sqrt.f64 (/.f64 2 im)))))
(+.f64 (-.f64 (*.f64 2 (sqrt.f64 (+.f64 im im))) (sqrt.f64 (+.f64 im im))) (*.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -1/2))
(+.f64 (*.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 2 im)))) (sqrt.f64 (+.f64 im im)))
(+.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)) (sqrt.f64 (+.f64 im im)))
(-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 re (*.f64 1/2 (sqrt.f64 (/.f64 2 im)))))
(+.f64 (-.f64 (*.f64 2 (sqrt.f64 (+.f64 im im))) (/.f64 (sqrt.f64 (+.f64 im im)) 2)) (neg.f64 (/.f64 (+.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (sqrt.f64 (/.f64 2 im)) re)) 2)))
(+.f64 (*.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 2 im)))) (sqrt.f64 (+.f64 im im)))
(+.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)) (sqrt.f64 (+.f64 im im)))
(-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 re (*.f64 1/2 (sqrt.f64 (/.f64 2 im)))))
(+.f64 (-.f64 (-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -1/2)) (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/4))) (neg.f64 (*.f64 3 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/4)))))
(+.f64 (*.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 2 im)))) (sqrt.f64 (+.f64 im im)))
(+.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)) (sqrt.f64 (+.f64 im im)))
(-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 re (*.f64 1/2 (sqrt.f64 (/.f64 2 im)))))
(+.f64 (/.f64 (-.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/4)) (sqrt.f64 (+.f64 im im))) -1) (/.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -4))
(+.f64 (*.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 2 im)))) (sqrt.f64 (+.f64 im im)))
(+.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)) (sqrt.f64 (+.f64 im im)))
(-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 re (*.f64 1/2 (sqrt.f64 (/.f64 2 im)))))
(+.f64 (/.f64 (/.f64 (-.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) (sqrt.f64 (+.f64 im im))) 2) -1) (/.f64 (/.f64 (sqrt.f64 (+.f64 im im)) -2) -1))
(+.f64 (*.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 2 im)))) (sqrt.f64 (+.f64 im im)))
(+.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)) (sqrt.f64 (+.f64 im im)))
(-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 re (*.f64 1/2 (sqrt.f64 (/.f64 2 im)))))
(+.f64 (/.f64 (+.f64 (*.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -1/2) (*.f64 2 (sqrt.f64 (+.f64 im im)))) 4) (/.f64 (+.f64 (*.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -1/2) (-.f64 (*.f64 2 (sqrt.f64 (+.f64 im im))) (*.f64 (sqrt.f64 (/.f64 2 im)) re))) 4))
(+.f64 (*.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 2 im)))) (sqrt.f64 (+.f64 im im)))
(+.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)) (sqrt.f64 (+.f64 im im)))
(-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 re (*.f64 1/2 (sqrt.f64 (/.f64 2 im)))))
(*.f64 1/2 (-.f64 (*.f64 2 (sqrt.f64 (+.f64 im im))) (*.f64 (sqrt.f64 (/.f64 2 im)) re)))
(+.f64 (*.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 2 im)))) (sqrt.f64 (+.f64 im im)))
(+.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)) (sqrt.f64 (+.f64 im im)))
(-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 re (*.f64 1/2 (sqrt.f64 (/.f64 2 im)))))
(*.f64 1/2 (-.f64 (*.f64 (sqrt.f64 (+.f64 im im)) 4) (+.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) (*.f64 2 (sqrt.f64 (+.f64 im im))))))
(+.f64 (*.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 2 im)))) (sqrt.f64 (+.f64 im im)))
(+.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)) (sqrt.f64 (+.f64 im im)))
(-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 re (*.f64 1/2 (sqrt.f64 (/.f64 2 im)))))
(*.f64 (+.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -1/2)) 1)
(+.f64 (*.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 2 im)))) (sqrt.f64 (+.f64 im im)))
(+.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)) (sqrt.f64 (+.f64 im im)))
(-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 re (*.f64 1/2 (sqrt.f64 (/.f64 2 im)))))
(*.f64 1 (+.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -1/2)))
(+.f64 (*.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 2 im)))) (sqrt.f64 (+.f64 im im)))
(+.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)) (sqrt.f64 (+.f64 im im)))
(-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 re (*.f64 1/2 (sqrt.f64 (/.f64 2 im)))))
(*.f64 (-.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)) (sqrt.f64 (+.f64 im im))) -1)
(+.f64 (*.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 2 im)))) (sqrt.f64 (+.f64 im im)))
(+.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)) (sqrt.f64 (+.f64 im im)))
(-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 re (*.f64 1/2 (sqrt.f64 (/.f64 2 im)))))
(*.f64 (-.f64 (*.f64 2 (sqrt.f64 (+.f64 im im))) (*.f64 (sqrt.f64 (/.f64 2 im)) re)) 1/2)
(+.f64 (*.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 2 im)))) (sqrt.f64 (+.f64 im im)))
(+.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)) (sqrt.f64 (+.f64 im im)))
(-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 re (*.f64 1/2 (sqrt.f64 (/.f64 2 im)))))
(*.f64 -1 (-.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)) (sqrt.f64 (+.f64 im im))))
(+.f64 (*.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 2 im)))) (sqrt.f64 (+.f64 im im)))
(+.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)) (sqrt.f64 (+.f64 im im)))
(-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 re (*.f64 1/2 (sqrt.f64 (/.f64 2 im)))))
(*.f64 1/4 (-.f64 (*.f64 (sqrt.f64 (+.f64 im im)) 4) (*.f64 2 (*.f64 (sqrt.f64 (/.f64 2 im)) re))))
(+.f64 (*.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 2 im)))) (sqrt.f64 (+.f64 im im)))
(+.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)) (sqrt.f64 (+.f64 im im)))
(-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 re (*.f64 1/2 (sqrt.f64 (/.f64 2 im)))))
(*.f64 (-.f64 (*.f64 (sqrt.f64 (+.f64 im im)) 4) (*.f64 2 (*.f64 (sqrt.f64 (/.f64 2 im)) re))) 1/4)
(+.f64 (*.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 2 im)))) (sqrt.f64 (+.f64 im im)))
(+.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)) (sqrt.f64 (+.f64 im im)))
(-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 re (*.f64 1/2 (sqrt.f64 (/.f64 2 im)))))
(*.f64 (*.f64 (-.f64 (*.f64 2 (sqrt.f64 (+.f64 im im))) (*.f64 (sqrt.f64 (/.f64 2 im)) re)) 4) 1/8)
(+.f64 (*.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 2 im)))) (sqrt.f64 (+.f64 im im)))
(+.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)) (sqrt.f64 (+.f64 im im)))
(-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 re (*.f64 1/2 (sqrt.f64 (/.f64 2 im)))))
(/.f64 (+.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -1/2)) 1)
(+.f64 (*.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 2 im)))) (sqrt.f64 (+.f64 im im)))
(+.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)) (sqrt.f64 (+.f64 im im)))
(-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 re (*.f64 1/2 (sqrt.f64 (/.f64 2 im)))))
(/.f64 (-.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)) (sqrt.f64 (+.f64 im im))) -1)
(+.f64 (*.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 2 im)))) (sqrt.f64 (+.f64 im im)))
(+.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)) (sqrt.f64 (+.f64 im im)))
(-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 re (*.f64 1/2 (sqrt.f64 (/.f64 2 im)))))
(/.f64 (-.f64 (*.f64 2 (sqrt.f64 (+.f64 im im))) (*.f64 (sqrt.f64 (/.f64 2 im)) re)) 2)
(+.f64 (*.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 2 im)))) (sqrt.f64 (+.f64 im im)))
(+.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)) (sqrt.f64 (+.f64 im im)))
(-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 re (*.f64 1/2 (sqrt.f64 (/.f64 2 im)))))
(/.f64 (-.f64 (*.f64 (sqrt.f64 (+.f64 im im)) 4) (*.f64 2 (*.f64 (sqrt.f64 (/.f64 2 im)) re))) 4)
(+.f64 (*.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 2 im)))) (sqrt.f64 (+.f64 im im)))
(+.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)) (sqrt.f64 (+.f64 im im)))
(-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 re (*.f64 1/2 (sqrt.f64 (/.f64 2 im)))))
(/.f64 (+.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) (*.f64 -2 (sqrt.f64 (+.f64 im im)))) -2)
(+.f64 (*.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 2 im)))) (sqrt.f64 (+.f64 im im)))
(+.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)) (sqrt.f64 (+.f64 im im)))
(-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 re (*.f64 1/2 (sqrt.f64 (/.f64 2 im)))))
(/.f64 (*.f64 (-.f64 (*.f64 2 (sqrt.f64 (+.f64 im im))) (*.f64 (sqrt.f64 (/.f64 2 im)) re)) 4) 8)
(+.f64 (*.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 2 im)))) (sqrt.f64 (+.f64 im im)))
(+.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)) (sqrt.f64 (+.f64 im im)))
(-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 re (*.f64 1/2 (sqrt.f64 (/.f64 2 im)))))
(/.f64 (-.f64 (*.f64 2 (*.f64 (sqrt.f64 (/.f64 2 im)) re)) (*.f64 (sqrt.f64 (+.f64 im im)) 4)) -4)
(+.f64 (*.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 2 im)))) (sqrt.f64 (+.f64 im im)))
(+.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)) (sqrt.f64 (+.f64 im im)))
(-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 re (*.f64 1/2 (sqrt.f64 (/.f64 2 im)))))
(/.f64 (/.f64 (-.f64 (*.f64 2 (*.f64 (sqrt.f64 (/.f64 2 im)) re)) (*.f64 (sqrt.f64 (+.f64 im im)) 4)) -1) 4)
(+.f64 (*.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 2 im)))) (sqrt.f64 (+.f64 im im)))
(+.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)) (sqrt.f64 (+.f64 im im)))
(-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 re (*.f64 1/2 (sqrt.f64 (/.f64 2 im)))))
(/.f64 (-.f64 (*.f64 (sqrt.f64 (+.f64 im im)) 4) (+.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) (*.f64 2 (sqrt.f64 (+.f64 im im))))) 2)
(+.f64 (*.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 2 im)))) (sqrt.f64 (+.f64 im im)))
(+.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)) (sqrt.f64 (+.f64 im im)))
(-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 re (*.f64 1/2 (sqrt.f64 (/.f64 2 im)))))
(/.f64 (+.f64 (neg.f64 (*.f64 2 (*.f64 (sqrt.f64 (/.f64 2 im)) re))) (*.f64 (sqrt.f64 (+.f64 im im)) 4)) 4)
(+.f64 (*.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 2 im)))) (sqrt.f64 (+.f64 im im)))
(+.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)) (sqrt.f64 (+.f64 im im)))
(-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 re (*.f64 1/2 (sqrt.f64 (/.f64 2 im)))))
(/.f64 (-.f64 (*.f64 2 (*.f64 (sqrt.f64 (+.f64 im im)) 4)) (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 4))) 8)
(+.f64 (*.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 2 im)))) (sqrt.f64 (+.f64 im im)))
(+.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)) (sqrt.f64 (+.f64 im im)))
(-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 re (*.f64 1/2 (sqrt.f64 (/.f64 2 im)))))
(/.f64 (-.f64 (*.f64 2 (*.f64 (sqrt.f64 (+.f64 im im)) 4)) (+.f64 (*.f64 (sqrt.f64 (+.f64 im im)) 4) (*.f64 2 (*.f64 (sqrt.f64 (/.f64 2 im)) re)))) 4)
(+.f64 (*.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 2 im)))) (sqrt.f64 (+.f64 im im)))
(+.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)) (sqrt.f64 (+.f64 im im)))
(-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 re (*.f64 1/2 (sqrt.f64 (/.f64 2 im)))))
(/.f64 (-.f64 (+.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) (*.f64 2 (sqrt.f64 (+.f64 im im)))) (*.f64 2 (*.f64 (sqrt.f64 (/.f64 2 im)) re))) 2)
(+.f64 (*.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 2 im)))) (sqrt.f64 (+.f64 im im)))
(+.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)) (sqrt.f64 (+.f64 im im)))
(-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 re (*.f64 1/2 (sqrt.f64 (/.f64 2 im)))))
(/.f64 (-.f64 (+.f64 (*.f64 (sqrt.f64 (+.f64 im im)) 4) (*.f64 2 (*.f64 (sqrt.f64 (/.f64 2 im)) re))) (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 4))) 4)
(+.f64 (*.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 2 im)))) (sqrt.f64 (+.f64 im im)))
(+.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)) (sqrt.f64 (+.f64 im im)))
(-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 re (*.f64 1/2 (sqrt.f64 (/.f64 2 im)))))
(pow.f64 (+.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) re) -1/2)) 1)
(+.f64 (*.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 2 im)))) (sqrt.f64 (+.f64 im im)))
(+.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)) (sqrt.f64 (+.f64 im im)))
(-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 re (*.f64 1/2 (sqrt.f64 (/.f64 2 im)))))
(neg.f64 (-.f64 (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2)) (sqrt.f64 (+.f64 im im))))
(+.f64 (*.f64 -1/2 (*.f64 re (sqrt.f64 (/.f64 2 im)))) (sqrt.f64 (+.f64 im im)))
(+.f64 (*.f64 re (*.f64 (sqrt.f64 (/.f64 2 im)) -1/2)) (sqrt.f64 (+.f64 im im)))
(-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 re (*.f64 1/2 (sqrt.f64 (/.f64 2 im)))))

localize135.0ms (0.4%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(*.f64 2 (pow.f64 im 2))
0.1b
(sqrt.f64 (/.f64 1/2 re))
0.1b
(*.f64 (sqrt.f64 (/.f64 1/2 re)) (sqrt.f64 (*.f64 2 (pow.f64 im 2))))
29.4b
(sqrt.f64 (*.f64 2 (pow.f64 im 2)))
Compiler

Compiled 51 to 40 computations (21.6% saved)

series36.0ms (0.1%)

Counts
4 → 24
Calls

15 calls:

TimeVariablePointExpression
24.0ms
im
@-inf
(*.f64 2 (pow.f64 im 2))
3.0ms
re
@-inf
(sqrt.f64 (/.f64 1/2 re))
2.0ms
im
@0
(*.f64 (sqrt.f64 (/.f64 1/2 re)) (sqrt.f64 (*.f64 2 (pow.f64 im 2))))
1.0ms
im
@inf
(*.f64 (sqrt.f64 (/.f64 1/2 re)) (sqrt.f64 (*.f64 2 (pow.f64 im 2))))
1.0ms
re
@-inf
(*.f64 (sqrt.f64 (/.f64 1/2 re)) (sqrt.f64 (*.f64 2 (pow.f64 im 2))))

rewrite394.0ms (1.1%)

Algorithm
batch-egg-rewrite
Rules
664×rational_best-simplify-63
616×rational_best-simplify-67
608×rational_best-4
608×rational_best-2
608×rational_best-3
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01370
19070
218564
348358
4169858
5745658
Stop Event
node limit
Counts
4 → 124
Calls
Call 1
Inputs
(sqrt.f64 (*.f64 2 (pow.f64 im 2)))
(*.f64 (sqrt.f64 (/.f64 1/2 re)) (sqrt.f64 (*.f64 2 (pow.f64 im 2))))
(sqrt.f64 (/.f64 1/2 re))
(*.f64 2 (pow.f64 im 2))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (sqrt.f64 (*.f64 2 (pow.f64 im 2))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (sqrt.f64 (*.f64 2 (pow.f64 im 2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 im 2))) 2) (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 im 2))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 im 2))) 4) (+.f64 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 im 2))) 4) (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 im 2))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 im 2))) 4) (/.f64 (/.f64 (*.f64 (sqrt.f64 (*.f64 2 (pow.f64 im 2))) 3) 2) 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 im 2))) 4) (/.f64 (*.f64 (sqrt.f64 (*.f64 2 (pow.f64 im 2))) 3) 4))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (sqrt.f64 (*.f64 2 (pow.f64 im 2))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 im 2))) 2) (neg.f64 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 im 2))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 im 2))) 4) (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 im 2))) 2)) (neg.f64 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 im 2))) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (/.f64 (*.f64 (sqrt.f64 (*.f64 2 (pow.f64 im 2))) 3) 2) 2) (/.f64 (neg.f64 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 im 2))) 2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 (sqrt.f64 (*.f64 2 (pow.f64 im 2))) 3) 4) (/.f64 (neg.f64 (sqrt.f64 (*.f64 2 (pow.f64 im 2)))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 im 2))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (pow.f64 (sqrt.f64 im) 2) (/.f64 (sqrt.f64 2) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (sqrt.f64 2) (/.f64 (pow.f64 (sqrt.f64 im) 2) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 2 (pow.f64 im 2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 2 (sqrt.f64 (*.f64 2 (pow.f64 im 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 im 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 2) (pow.f64 (sqrt.f64 im) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 im) 2) (sqrt.f64 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (sqrt.f64 (*.f64 2 (pow.f64 im 2)))) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (sqrt.f64 (*.f64 2 (pow.f64 im 2)))) (*.f64 (sqrt.f64 1/2) (/.f64 (sqrt.f64 2) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 2) 2) (sqrt.f64 (pow.f64 (+.f64 im im) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 im 2))) 2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (pow.f64 (+.f64 im im) 2)) (/.f64 (sqrt.f64 2) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (pow.f64 (+.f64 im im) 2)) (sqrt.f64 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (sqrt.f64 2)) (/.f64 (pow.f64 (sqrt.f64 im) 2) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (sqrt.f64 2)) (*.f64 1 (/.f64 (pow.f64 (sqrt.f64 im) 2) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (*.f64 2 (pow.f64 im 2))) 4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 (sqrt.f64 (*.f64 2 (pow.f64 im 2))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (sqrt.f64 im) 2) 2) (*.f64 2 (sqrt.f64 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (sqrt.f64 (pow.f64 (+.f64 im im) 2))) (*.f64 1/2 (/.f64 (sqrt.f64 2) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (*.f64 2 (sqrt.f64 2))) (*.f64 1/2 (/.f64 (pow.f64 (sqrt.f64 im) 2) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 1/2) (sqrt.f64 (pow.f64 (+.f64 im im) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (pow.f64 im 2) 8)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (*.f64 2 (pow.f64 im 2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (sqrt.f64 (*.f64 2 (pow.f64 im 2)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 (*.f64 2 (pow.f64 im 2))) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (sqrt.f64 (*.f64 2 (pow.f64 im 2))) 4)) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 (sqrt.f64 (*.f64 2 (pow.f64 im 2))) 4)) (*.f64 2 (*.f64 (sqrt.f64 (*.f64 2 (pow.f64 im 2))) 4))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 2 (*.f64 2 (sqrt.f64 2))) (*.f64 2 (sqrt.f64 (pow.f64 (+.f64 im im) 2)))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 2 (sqrt.f64 (pow.f64 (+.f64 im im) 2))) (*.f64 2 (*.f64 2 (sqrt.f64 2)))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 2 (pow.f64 im 2))) 1)))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (sqrt.f64 (/.f64 (pow.f64 im 2) re)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 2) (/.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 4) (+.f64 (/.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 4) (/.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 4) (/.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 3) 2) 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 4) (/.f64 (*.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 3) 4))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 2) (/.f64 (neg.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (/.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 4) (/.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 2)) (neg.f64 (/.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 3) 2) 2) (/.f64 (/.f64 (neg.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re))) 2) 2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 3) 4) (/.f64 (neg.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (sqrt.f64 (/.f64 (pow.f64 im 2) re))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 4)) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 4 (*.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 4)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 4)) (*.f64 2 (*.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 4))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 4 (*.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 4)) (*.f64 4 (*.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 4))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 2 (*.f64 (sqrt.f64 (*.f64 2 (pow.f64 im 2))) 4)) (*.f64 (sqrt.f64 (/.f64 2 re)) 4)) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (sqrt.f64 (/.f64 2 re)) 4) (*.f64 2 (*.f64 (sqrt.f64 (*.f64 2 (pow.f64 im 2))) 4))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 4 (sqrt.f64 (/.f64 1 re))) (*.f64 2 (sqrt.f64 (pow.f64 (+.f64 im im) 2)))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 2 (sqrt.f64 (*.f64 (pow.f64 im 2) (/.f64 2 re)))) (*.f64 2 (*.f64 2 (sqrt.f64 2)))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (/.f64 (pow.f64 im 2) re))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (sqrt.f64 (/.f64 1/2 re)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (sqrt.f64 (/.f64 1/2 re)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (sqrt.f64 (/.f64 1/2 re)) 2) (/.f64 (sqrt.f64 (/.f64 1/2 re)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (sqrt.f64 (/.f64 1/2 re)) 4) (+.f64 (/.f64 (sqrt.f64 (/.f64 1/2 re)) 4) (/.f64 (sqrt.f64 (/.f64 1/2 re)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (sqrt.f64 (/.f64 1/2 re)) 4) (/.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 1/2 re)) 3) 2) 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (sqrt.f64 (/.f64 1/2 re)) 4) (/.f64 (*.f64 (sqrt.f64 (/.f64 1/2 re)) 3) 4))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (sqrt.f64 (/.f64 1/2 re)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (sqrt.f64 (/.f64 1/2 re)) 2) (/.f64 (neg.f64 (sqrt.f64 (/.f64 1/2 re))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (/.f64 (sqrt.f64 (/.f64 1/2 re)) 4) (/.f64 (sqrt.f64 (/.f64 1/2 re)) 2)) (neg.f64 (/.f64 (sqrt.f64 (/.f64 1/2 re)) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 1/2 re)) 3) 2) 2) (/.f64 (/.f64 (neg.f64 (sqrt.f64 (/.f64 1/2 re))) 2) 2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 1/2 re)) 3) 4) (/.f64 (neg.f64 (sqrt.f64 (/.f64 1/2 re))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (/.f64 (sqrt.f64 (/.f64 1/2 re)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (sqrt.f64 (/.f64 (/.f64 1/2 re) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (sqrt.f64 (/.f64 2 re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 1/2 re)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (sqrt.f64 (/.f64 1/2 re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 1/4 re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 2) (sqrt.f64 (*.f64 1/2 (/.f64 1/2 re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 1 re)) (sqrt.f64 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 2 re)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (/.f64 1/2 re)) 2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (/.f64 1/2 re)) 4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 (sqrt.f64 (/.f64 1/2 re)) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 1/2) (sqrt.f64 (/.f64 1 re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 1/4 re)) (sqrt.f64 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (/.f64 1/2 re)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (/.f64 2 re)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 (/.f64 1/2 re)) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 (/.f64 2 re)) 4) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 (sqrt.f64 (/.f64 2 re)) 4) (*.f64 (sqrt.f64 (/.f64 2 re)) 4)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 1/2 re)) 1)))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (pow.f64 im 2) (pow.f64 im 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 2 (pow.f64 im 2)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 2 (pow.f64 im 2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (pow.f64 im 2) 2) (/.f64 (*.f64 (pow.f64 im 2) 6) 4))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (pow.f64 im 2) 2) (*.f64 3 (/.f64 (pow.f64 im 2) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (*.f64 (pow.f64 im 2) 6) 4) (/.f64 (pow.f64 im 2) 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 3 (/.f64 (pow.f64 im 2) 2)) (/.f64 (pow.f64 im 2) 2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (pow.f64 im 2) (neg.f64 (pow.f64 im 2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 2 (pow.f64 im 2)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 2 (pow.f64 im 2)) (+.f64 (neg.f64 (pow.f64 im 2)) (pow.f64 im 2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (*.f64 -2 (pow.f64 im 2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 im 2) 2) (+.f64 (neg.f64 (pow.f64 im 2)) (/.f64 (neg.f64 (pow.f64 im 2)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 im 2) 2) (*.f64 -3 (/.f64 (pow.f64 im 2) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 im 2) 2) (neg.f64 (/.f64 (*.f64 (pow.f64 im 2) 6) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 im 2) 2) (/.f64 (*.f64 -3 (pow.f64 im 2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 (pow.f64 im 2) 6) 4) (/.f64 (neg.f64 (pow.f64 im 2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 3 (/.f64 (pow.f64 im 2) 2)) (/.f64 (neg.f64 (pow.f64 im 2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 im 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (pow.f64 im 2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (+.f64 im im) 2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 -2 (pow.f64 im 2)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (pow.f64 im 2)) -1/2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 im 2) 8) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 (+.f64 im im) 2) 4) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 (pow.f64 (+.f64 im im) 2) 4) (*.f64 (pow.f64 (+.f64 im im) 2) 4)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 2 (pow.f64 im 2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (*.f64 -2 (pow.f64 im 2)))))))

simplify429.0ms (1.2%)

Algorithm
egg-herbie
Rules
1092×rational_best-simplify-56
974×rational_best-simplify-3
780×rational_best-simplify-1
676×rational_best-simplify-63
508×rational_best-simplify-49
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
02612950
16212604
216592504
359482498
Stop Event
node limit
Counts
148 → 162
Calls
Call 1
Inputs
(*.f64 (sqrt.f64 2) im)
(*.f64 (sqrt.f64 2) im)
(*.f64 (sqrt.f64 2) im)
(*.f64 (sqrt.f64 2) im)
(*.f64 (sqrt.f64 2) im)
(*.f64 (sqrt.f64 2) im)
(*.f64 (sqrt.f64 2) im)
(*.f64 (sqrt.f64 2) im)
(*.f64 -1 (*.f64 (sqrt.f64 2) im))
(*.f64 -1 (*.f64 (sqrt.f64 2) im))
(*.f64 -1 (*.f64 (sqrt.f64 2) im))
(*.f64 -1 (*.f64 (sqrt.f64 2) im))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 -1 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re))))
(*.f64 -1 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re))))
(*.f64 -1 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re))))
(*.f64 -1 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re))))
(+.f64 (sqrt.f64 (*.f64 2 (pow.f64 im 2))) 0)
(+.f64 0 (sqrt.f64 (*.f64 2 (pow.f64 im 2))))
(+.f64 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 im 2))) 2) (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 im 2))) 2))
(+.f64 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 im 2))) 4) (+.f64 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 im 2))) 4) (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 im 2))) 2)))
(+.f64 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 im 2))) 4) (/.f64 (/.f64 (*.f64 (sqrt.f64 (*.f64 2 (pow.f64 im 2))) 3) 2) 2))
(+.f64 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 im 2))) 4) (/.f64 (*.f64 (sqrt.f64 (*.f64 2 (pow.f64 im 2))) 3) 4))
(-.f64 (sqrt.f64 (*.f64 2 (pow.f64 im 2))) 0)
(-.f64 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 im 2))) 2) (neg.f64 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 im 2))) 2)))
(-.f64 (+.f64 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 im 2))) 4) (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 im 2))) 2)) (neg.f64 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 im 2))) 4)))
(-.f64 (/.f64 (/.f64 (*.f64 (sqrt.f64 (*.f64 2 (pow.f64 im 2))) 3) 2) 2) (/.f64 (neg.f64 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 im 2))) 2)) 2))
(-.f64 (/.f64 (*.f64 (sqrt.f64 (*.f64 2 (pow.f64 im 2))) 3) 4) (/.f64 (neg.f64 (sqrt.f64 (*.f64 2 (pow.f64 im 2)))) 4))
(*.f64 2 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 im 2))) 2))
(*.f64 2 (*.f64 (pow.f64 (sqrt.f64 im) 2) (/.f64 (sqrt.f64 2) 2)))
(*.f64 2 (*.f64 (sqrt.f64 2) (/.f64 (pow.f64 (sqrt.f64 im) 2) 2)))
(*.f64 (sqrt.f64 (*.f64 2 (pow.f64 im 2))) 1)
(*.f64 1/2 (*.f64 2 (sqrt.f64 (*.f64 2 (pow.f64 im 2)))))
(*.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 im 2))))
(*.f64 (sqrt.f64 2) (pow.f64 (sqrt.f64 im) 2))
(*.f64 (pow.f64 (sqrt.f64 im) 2) (sqrt.f64 2))
(*.f64 (*.f64 2 (sqrt.f64 (*.f64 2 (pow.f64 im 2)))) 1/2)
(*.f64 (*.f64 2 (sqrt.f64 (*.f64 2 (pow.f64 im 2)))) (*.f64 (sqrt.f64 1/2) (/.f64 (sqrt.f64 2) 2)))
(*.f64 (/.f64 (sqrt.f64 2) 2) (sqrt.f64 (pow.f64 (+.f64 im im) 2)))
(*.f64 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 im 2))) 2) 2)
(*.f64 (sqrt.f64 (pow.f64 (+.f64 im im) 2)) (/.f64 (sqrt.f64 2) 2))
(*.f64 (sqrt.f64 (pow.f64 (+.f64 im im) 2)) (sqrt.f64 1/2))
(*.f64 (*.f64 2 (sqrt.f64 2)) (/.f64 (pow.f64 (sqrt.f64 im) 2) 2))
(*.f64 (*.f64 2 (sqrt.f64 2)) (*.f64 1 (/.f64 (pow.f64 (sqrt.f64 im) 2) 2)))
(*.f64 (*.f64 (sqrt.f64 (*.f64 2 (pow.f64 im 2))) 4) 1/4)
(*.f64 1/4 (*.f64 (sqrt.f64 (*.f64 2 (pow.f64 im 2))) 4))
(*.f64 (/.f64 (pow.f64 (sqrt.f64 im) 2) 2) (*.f64 2 (sqrt.f64 2)))
(*.f64 (*.f64 2 (sqrt.f64 (pow.f64 (+.f64 im im) 2))) (*.f64 1/2 (/.f64 (sqrt.f64 2) 2)))
(*.f64 (*.f64 2 (*.f64 2 (sqrt.f64 2))) (*.f64 1/2 (/.f64 (pow.f64 (sqrt.f64 im) 2) 2)))
(*.f64 (sqrt.f64 1/2) (sqrt.f64 (pow.f64 (+.f64 im im) 2)))
(*.f64 (sqrt.f64 (*.f64 (pow.f64 im 2) 8)) 1/2)
(/.f64 (sqrt.f64 (*.f64 2 (pow.f64 im 2))) 1)
(/.f64 (*.f64 2 (sqrt.f64 (*.f64 2 (pow.f64 im 2)))) 2)
(/.f64 (*.f64 (sqrt.f64 (*.f64 2 (pow.f64 im 2))) 4) 4)
(/.f64 (*.f64 2 (*.f64 (sqrt.f64 (*.f64 2 (pow.f64 im 2))) 4)) 8)
(/.f64 (+.f64 (*.f64 2 (*.f64 (sqrt.f64 (*.f64 2 (pow.f64 im 2))) 4)) (*.f64 2 (*.f64 (sqrt.f64 (*.f64 2 (pow.f64 im 2))) 4))) 16)
(/.f64 (*.f64 (*.f64 2 (*.f64 2 (sqrt.f64 2))) (*.f64 2 (sqrt.f64 (pow.f64 (+.f64 im im) 2)))) 16)
(/.f64 (*.f64 (*.f64 2 (sqrt.f64 (pow.f64 (+.f64 im im) 2))) (*.f64 2 (*.f64 2 (sqrt.f64 2)))) 16)
(pow.f64 (sqrt.f64 (*.f64 2 (pow.f64 im 2))) 1)
(+.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 0)
(+.f64 0 (sqrt.f64 (/.f64 (pow.f64 im 2) re)))
(+.f64 (/.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 2) (/.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 2))
(+.f64 (/.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 4) (+.f64 (/.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 4) (/.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 2)))
(+.f64 (/.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 4) (/.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 3) 2) 2))
(+.f64 (/.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 4) (/.f64 (*.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 3) 4))
(-.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 0)
(-.f64 (/.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 2) (/.f64 (neg.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re))) 2))
(-.f64 (+.f64 (/.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 4) (/.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 2)) (neg.f64 (/.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 4)))
(-.f64 (/.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 3) 2) 2) (/.f64 (/.f64 (neg.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re))) 2) 2))
(-.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 3) 4) (/.f64 (neg.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re))) 4))
(/.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 1)
(/.f64 (*.f64 2 (sqrt.f64 (/.f64 (pow.f64 im 2) re))) 2)
(/.f64 (*.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 4) 4)
(/.f64 (*.f64 2 (*.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 4)) 8)
(/.f64 (*.f64 4 (*.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 4)) 16)
(/.f64 (+.f64 (*.f64 2 (*.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 4)) (*.f64 2 (*.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 4))) 16)
(/.f64 (+.f64 (*.f64 4 (*.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 4)) (*.f64 4 (*.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 4))) 32)
(/.f64 (*.f64 (*.f64 2 (*.f64 (sqrt.f64 (*.f64 2 (pow.f64 im 2))) 4)) (*.f64 (sqrt.f64 (/.f64 2 re)) 4)) 64)
(/.f64 (*.f64 (*.f64 (sqrt.f64 (/.f64 2 re)) 4) (*.f64 2 (*.f64 (sqrt.f64 (*.f64 2 (pow.f64 im 2))) 4))) 64)
(/.f64 (*.f64 (*.f64 4 (sqrt.f64 (/.f64 1 re))) (*.f64 2 (sqrt.f64 (pow.f64 (+.f64 im im) 2)))) 16)
(/.f64 (*.f64 (*.f64 2 (sqrt.f64 (*.f64 (pow.f64 im 2) (/.f64 2 re)))) (*.f64 2 (*.f64 2 (sqrt.f64 2)))) 16)
(pow.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 1)
(sqrt.f64 (/.f64 (pow.f64 im 2) re))
(+.f64 (sqrt.f64 (/.f64 1/2 re)) 0)
(+.f64 0 (sqrt.f64 (/.f64 1/2 re)))
(+.f64 (/.f64 (sqrt.f64 (/.f64 1/2 re)) 2) (/.f64 (sqrt.f64 (/.f64 1/2 re)) 2))
(+.f64 (/.f64 (sqrt.f64 (/.f64 1/2 re)) 4) (+.f64 (/.f64 (sqrt.f64 (/.f64 1/2 re)) 4) (/.f64 (sqrt.f64 (/.f64 1/2 re)) 2)))
(+.f64 (/.f64 (sqrt.f64 (/.f64 1/2 re)) 4) (/.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 1/2 re)) 3) 2) 2))
(+.f64 (/.f64 (sqrt.f64 (/.f64 1/2 re)) 4) (/.f64 (*.f64 (sqrt.f64 (/.f64 1/2 re)) 3) 4))
(-.f64 (sqrt.f64 (/.f64 1/2 re)) 0)
(-.f64 (/.f64 (sqrt.f64 (/.f64 1/2 re)) 2) (/.f64 (neg.f64 (sqrt.f64 (/.f64 1/2 re))) 2))
(-.f64 (+.f64 (/.f64 (sqrt.f64 (/.f64 1/2 re)) 4) (/.f64 (sqrt.f64 (/.f64 1/2 re)) 2)) (neg.f64 (/.f64 (sqrt.f64 (/.f64 1/2 re)) 4)))
(-.f64 (/.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 1/2 re)) 3) 2) 2) (/.f64 (/.f64 (neg.f64 (sqrt.f64 (/.f64 1/2 re))) 2) 2))
(-.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 1/2 re)) 3) 4) (/.f64 (neg.f64 (sqrt.f64 (/.f64 1/2 re))) 4))
(*.f64 2 (/.f64 (sqrt.f64 (/.f64 1/2 re)) 2))
(*.f64 2 (sqrt.f64 (/.f64 (/.f64 1/2 re) 4)))
(*.f64 1/2 (sqrt.f64 (/.f64 2 re)))
(*.f64 (sqrt.f64 (/.f64 1/2 re)) 1)
(*.f64 1 (sqrt.f64 (/.f64 1/2 re)))
(*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 1/4 re)))
(*.f64 (sqrt.f64 2) (sqrt.f64 (*.f64 1/2 (/.f64 1/2 re))))
(*.f64 (sqrt.f64 (/.f64 1 re)) (sqrt.f64 1/2))
(*.f64 (sqrt.f64 (/.f64 2 re)) 1/2)
(*.f64 (/.f64 (sqrt.f64 (/.f64 1/2 re)) 2) 2)
(*.f64 (*.f64 (sqrt.f64 (/.f64 1/2 re)) 4) 1/4)
(*.f64 1/4 (*.f64 (sqrt.f64 (/.f64 1/2 re)) 4))
(*.f64 (sqrt.f64 1/2) (sqrt.f64 (/.f64 1 re)))
(*.f64 (sqrt.f64 (/.f64 1/4 re)) (sqrt.f64 2))
(/.f64 (sqrt.f64 (/.f64 1/2 re)) 1)
(/.f64 (sqrt.f64 (/.f64 2 re)) 2)
(/.f64 (*.f64 (sqrt.f64 (/.f64 1/2 re)) 4) 4)
(/.f64 (*.f64 (sqrt.f64 (/.f64 2 re)) 4) 8)
(/.f64 (+.f64 (*.f64 (sqrt.f64 (/.f64 2 re)) 4) (*.f64 (sqrt.f64 (/.f64 2 re)) 4)) 16)
(pow.f64 (sqrt.f64 (/.f64 1/2 re)) 1)
(+.f64 (pow.f64 im 2) (pow.f64 im 2))
(+.f64 (*.f64 2 (pow.f64 im 2)) 0)
(+.f64 0 (*.f64 2 (pow.f64 im 2)))
(+.f64 (/.f64 (pow.f64 im 2) 2) (/.f64 (*.f64 (pow.f64 im 2) 6) 4))
(+.f64 (/.f64 (pow.f64 im 2) 2) (*.f64 3 (/.f64 (pow.f64 im 2) 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 im 2) 6) 4) (/.f64 (pow.f64 im 2) 2))
(+.f64 (*.f64 3 (/.f64 (pow.f64 im 2) 2)) (/.f64 (pow.f64 im 2) 2))
(-.f64 (pow.f64 im 2) (neg.f64 (pow.f64 im 2)))
(-.f64 (*.f64 2 (pow.f64 im 2)) 0)
(-.f64 (*.f64 2 (pow.f64 im 2)) (+.f64 (neg.f64 (pow.f64 im 2)) (pow.f64 im 2)))
(-.f64 0 (*.f64 -2 (pow.f64 im 2)))
(-.f64 (/.f64 (pow.f64 im 2) 2) (+.f64 (neg.f64 (pow.f64 im 2)) (/.f64 (neg.f64 (pow.f64 im 2)) 2)))
(-.f64 (/.f64 (pow.f64 im 2) 2) (*.f64 -3 (/.f64 (pow.f64 im 2) 2)))
(-.f64 (/.f64 (pow.f64 im 2) 2) (neg.f64 (/.f64 (*.f64 (pow.f64 im 2) 6) 4)))
(-.f64 (/.f64 (pow.f64 im 2) 2) (/.f64 (*.f64 -3 (pow.f64 im 2)) 2))
(-.f64 (/.f64 (*.f64 (pow.f64 im 2) 6) 4) (/.f64 (neg.f64 (pow.f64 im 2)) 2))
(-.f64 (*.f64 3 (/.f64 (pow.f64 im 2) 2)) (/.f64 (neg.f64 (pow.f64 im 2)) 2))
(/.f64 (pow.f64 im 2) 1/2)
(/.f64 (*.f64 2 (pow.f64 im 2)) 1)
(/.f64 (pow.f64 (+.f64 im im) 2) 2)
(/.f64 (*.f64 -2 (pow.f64 im 2)) -1)
(/.f64 (neg.f64 (pow.f64 im 2)) -1/2)
(/.f64 (*.f64 (pow.f64 im 2) 8) 4)
(/.f64 (*.f64 (pow.f64 (+.f64 im im) 2) 4) 8)
(/.f64 (+.f64 (*.f64 (pow.f64 (+.f64 im im) 2) 4) (*.f64 (pow.f64 (+.f64 im im) 2) 4)) 16)
(pow.f64 (*.f64 2 (pow.f64 im 2)) 1)
(neg.f64 (*.f64 -2 (pow.f64 im 2)))
Outputs
(*.f64 (sqrt.f64 2) im)
(*.f64 (sqrt.f64 2) im)
(*.f64 (sqrt.f64 2) im)
(*.f64 (sqrt.f64 2) im)
(*.f64 (sqrt.f64 2) im)
(*.f64 (sqrt.f64 2) im)
(*.f64 (sqrt.f64 2) im)
(*.f64 (sqrt.f64 2) im)
(*.f64 -1 (*.f64 (sqrt.f64 2) im))
(*.f64 im (*.f64 (sqrt.f64 2) -1))
(*.f64 im (neg.f64 (sqrt.f64 2)))
(*.f64 (sqrt.f64 2) (neg.f64 im))
(*.f64 -1 (*.f64 (sqrt.f64 2) im))
(*.f64 im (*.f64 (sqrt.f64 2) -1))
(*.f64 im (neg.f64 (sqrt.f64 2)))
(*.f64 (sqrt.f64 2) (neg.f64 im))
(*.f64 -1 (*.f64 (sqrt.f64 2) im))
(*.f64 im (*.f64 (sqrt.f64 2) -1))
(*.f64 im (neg.f64 (sqrt.f64 2)))
(*.f64 (sqrt.f64 2) (neg.f64 im))
(*.f64 -1 (*.f64 (sqrt.f64 2) im))
(*.f64 im (*.f64 (sqrt.f64 2) -1))
(*.f64 im (neg.f64 (sqrt.f64 2)))
(*.f64 (sqrt.f64 2) (neg.f64 im))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 im (sqrt.f64 1/2))) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 im 1) (sqrt.f64 (/.f64 1 re)))
(*.f64 im (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 im (sqrt.f64 1/2))) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 im 1) (sqrt.f64 (/.f64 1 re)))
(*.f64 im (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 im (sqrt.f64 1/2))) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 im 1) (sqrt.f64 (/.f64 1 re)))
(*.f64 im (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 im (sqrt.f64 1/2))) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 im 1) (sqrt.f64 (/.f64 1 re)))
(*.f64 im (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 im (sqrt.f64 1/2))) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 im 1) (sqrt.f64 (/.f64 1 re)))
(*.f64 im (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 im (sqrt.f64 1/2))) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 im 1) (sqrt.f64 (/.f64 1 re)))
(*.f64 im (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 im (sqrt.f64 1/2))) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 im 1) (sqrt.f64 (/.f64 1 re)))
(*.f64 im (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 im (sqrt.f64 1/2))) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 im 1) (sqrt.f64 (/.f64 1 re)))
(*.f64 im (sqrt.f64 (/.f64 1 re)))
(*.f64 -1 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re))))
(*.f64 -1 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 im (sqrt.f64 1/2))) (sqrt.f64 (/.f64 1 re))))
(*.f64 (sqrt.f64 (/.f64 1 re)) (neg.f64 (*.f64 im 1)))
(*.f64 (sqrt.f64 (/.f64 1 re)) (neg.f64 im))
(*.f64 -1 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re))))
(*.f64 -1 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 im (sqrt.f64 1/2))) (sqrt.f64 (/.f64 1 re))))
(*.f64 (sqrt.f64 (/.f64 1 re)) (neg.f64 (*.f64 im 1)))
(*.f64 (sqrt.f64 (/.f64 1 re)) (neg.f64 im))
(*.f64 -1 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re))))
(*.f64 -1 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 im (sqrt.f64 1/2))) (sqrt.f64 (/.f64 1 re))))
(*.f64 (sqrt.f64 (/.f64 1 re)) (neg.f64 (*.f64 im 1)))
(*.f64 (sqrt.f64 (/.f64 1 re)) (neg.f64 im))
(*.f64 -1 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re))))
(*.f64 -1 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 im (sqrt.f64 1/2))) (sqrt.f64 (/.f64 1 re))))
(*.f64 (sqrt.f64 (/.f64 1 re)) (neg.f64 (*.f64 im 1)))
(*.f64 (sqrt.f64 (/.f64 1 re)) (neg.f64 im))
(+.f64 (sqrt.f64 (*.f64 2 (pow.f64 im 2))) 0)
(sqrt.f64 (*.f64 2 (pow.f64 im 2)))
(+.f64 0 (sqrt.f64 (*.f64 2 (pow.f64 im 2))))
(sqrt.f64 (*.f64 2 (pow.f64 im 2)))
(+.f64 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 im 2))) 2) (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 im 2))) 2))
(sqrt.f64 (*.f64 2 (pow.f64 im 2)))
(+.f64 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 im 2))) 4) (+.f64 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 im 2))) 4) (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 im 2))) 2)))
(sqrt.f64 (*.f64 2 (pow.f64 im 2)))
(+.f64 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 im 2))) 4) (/.f64 (/.f64 (*.f64 (sqrt.f64 (*.f64 2 (pow.f64 im 2))) 3) 2) 2))
(sqrt.f64 (*.f64 2 (pow.f64 im 2)))
(+.f64 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 im 2))) 4) (/.f64 (*.f64 (sqrt.f64 (*.f64 2 (pow.f64 im 2))) 3) 4))
(sqrt.f64 (*.f64 2 (pow.f64 im 2)))
(-.f64 (sqrt.f64 (*.f64 2 (pow.f64 im 2))) 0)
(sqrt.f64 (*.f64 2 (pow.f64 im 2)))
(-.f64 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 im 2))) 2) (neg.f64 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 im 2))) 2)))
(sqrt.f64 (*.f64 2 (pow.f64 im 2)))
(-.f64 (+.f64 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 im 2))) 4) (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 im 2))) 2)) (neg.f64 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 im 2))) 4)))
(sqrt.f64 (*.f64 2 (pow.f64 im 2)))
(-.f64 (/.f64 (/.f64 (*.f64 (sqrt.f64 (*.f64 2 (pow.f64 im 2))) 3) 2) 2) (/.f64 (neg.f64 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 im 2))) 2)) 2))
(sqrt.f64 (*.f64 2 (pow.f64 im 2)))
(-.f64 (/.f64 (*.f64 (sqrt.f64 (*.f64 2 (pow.f64 im 2))) 3) 4) (/.f64 (neg.f64 (sqrt.f64 (*.f64 2 (pow.f64 im 2)))) 4))
(sqrt.f64 (*.f64 2 (pow.f64 im 2)))
(*.f64 2 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 im 2))) 2))
(sqrt.f64 (*.f64 2 (pow.f64 im 2)))
(*.f64 2 (*.f64 (pow.f64 (sqrt.f64 im) 2) (/.f64 (sqrt.f64 2) 2)))
(sqrt.f64 (*.f64 2 (pow.f64 im 2)))
(*.f64 2 (*.f64 (sqrt.f64 2) (/.f64 (pow.f64 (sqrt.f64 im) 2) 2)))
(sqrt.f64 (*.f64 2 (pow.f64 im 2)))
(*.f64 (sqrt.f64 (*.f64 2 (pow.f64 im 2))) 1)
(sqrt.f64 (*.f64 2 (pow.f64 im 2)))
(*.f64 1/2 (*.f64 2 (sqrt.f64 (*.f64 2 (pow.f64 im 2)))))
(sqrt.f64 (*.f64 2 (pow.f64 im 2)))
(*.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 im 2))))
(sqrt.f64 (*.f64 2 (pow.f64 im 2)))
(*.f64 (sqrt.f64 2) (pow.f64 (sqrt.f64 im) 2))
(sqrt.f64 (*.f64 2 (pow.f64 im 2)))
(*.f64 (pow.f64 (sqrt.f64 im) 2) (sqrt.f64 2))
(sqrt.f64 (*.f64 2 (pow.f64 im 2)))
(*.f64 (*.f64 2 (sqrt.f64 (*.f64 2 (pow.f64 im 2)))) 1/2)
(sqrt.f64 (*.f64 2 (pow.f64 im 2)))
(*.f64 (*.f64 2 (sqrt.f64 (*.f64 2 (pow.f64 im 2)))) (*.f64 (sqrt.f64 1/2) (/.f64 (sqrt.f64 2) 2)))
(*.f64 (/.f64 (sqrt.f64 2) 2) (*.f64 (sqrt.f64 1/2) (*.f64 2 (sqrt.f64 (*.f64 2 (pow.f64 im 2))))))
(*.f64 (sqrt.f64 (*.f64 2 (pow.f64 im 2))) (*.f64 2 (*.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 1/2) 2))))
(/.f64 (*.f64 (sqrt.f64 (*.f64 (*.f64 2 (pow.f64 im 2)) 1/2)) (sqrt.f64 2)) 1)
(*.f64 (sqrt.f64 (*.f64 (*.f64 2 (pow.f64 im 2)) 1/2)) (sqrt.f64 2))
(*.f64 (/.f64 (sqrt.f64 2) 2) (sqrt.f64 (pow.f64 (+.f64 im im) 2)))
(*.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 (pow.f64 (+.f64 im im) 2)) 2))
(*.f64 (sqrt.f64 2) (/.f64 (pow.f64 (sqrt.f64 (+.f64 im im)) 2) 2))
(*.f64 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 im 2))) 2) 2)
(sqrt.f64 (*.f64 2 (pow.f64 im 2)))
(*.f64 (sqrt.f64 (pow.f64 (+.f64 im im) 2)) (/.f64 (sqrt.f64 2) 2))
(*.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 (pow.f64 (+.f64 im im) 2)) 2))
(*.f64 (sqrt.f64 2) (/.f64 (pow.f64 (sqrt.f64 (+.f64 im im)) 2) 2))
(*.f64 (/.f64 (sqrt.f64 2) 2) (sqrt.f64 (pow.f64 (+.f64 im im) 2)))
(*.f64 (sqrt.f64 (pow.f64 (+.f64 im im) 2)) (sqrt.f64 1/2))
(sqrt.f64 (*.f64 1/2 (pow.f64 (+.f64 im im) 2)))
(*.f64 (*.f64 2 (sqrt.f64 2)) (/.f64 (pow.f64 (sqrt.f64 im) 2) 2))
(sqrt.f64 (*.f64 2 (pow.f64 im 2)))
(*.f64 (*.f64 2 (sqrt.f64 2)) (*.f64 1 (/.f64 (pow.f64 (sqrt.f64 im) 2) 2)))
(sqrt.f64 (*.f64 2 (pow.f64 im 2)))
(*.f64 (*.f64 (sqrt.f64 (*.f64 2 (pow.f64 im 2))) 4) 1/4)
(sqrt.f64 (*.f64 2 (pow.f64 im 2)))
(*.f64 1/4 (*.f64 (sqrt.f64 (*.f64 2 (pow.f64 im 2))) 4))
(sqrt.f64 (*.f64 2 (pow.f64 im 2)))
(*.f64 (/.f64 (pow.f64 (sqrt.f64 im) 2) 2) (*.f64 2 (sqrt.f64 2)))
(sqrt.f64 (*.f64 2 (pow.f64 im 2)))
(*.f64 (*.f64 2 (sqrt.f64 (pow.f64 (+.f64 im im) 2))) (*.f64 1/2 (/.f64 (sqrt.f64 2) 2)))
(*.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 (pow.f64 (+.f64 im im) 2)) 2))
(*.f64 (sqrt.f64 2) (/.f64 (pow.f64 (sqrt.f64 (+.f64 im im)) 2) 2))
(*.f64 (/.f64 (sqrt.f64 2) 2) (sqrt.f64 (pow.f64 (+.f64 im im) 2)))
(*.f64 (*.f64 2 (*.f64 2 (sqrt.f64 2))) (*.f64 1/2 (/.f64 (pow.f64 (sqrt.f64 im) 2) 2)))
(sqrt.f64 (*.f64 2 (pow.f64 im 2)))
(*.f64 (sqrt.f64 1/2) (sqrt.f64 (pow.f64 (+.f64 im im) 2)))
(sqrt.f64 (*.f64 1/2 (pow.f64 (+.f64 im im) 2)))
(*.f64 (sqrt.f64 (*.f64 (pow.f64 im 2) 8)) 1/2)
(*.f64 1/2 (sqrt.f64 (*.f64 (pow.f64 im 2) 8)))
(/.f64 (sqrt.f64 (*.f64 2 (pow.f64 im 2))) 1)
(sqrt.f64 (*.f64 2 (pow.f64 im 2)))
(/.f64 (*.f64 2 (sqrt.f64 (*.f64 2 (pow.f64 im 2)))) 2)
(sqrt.f64 (*.f64 2 (pow.f64 im 2)))
(/.f64 (*.f64 (sqrt.f64 (*.f64 2 (pow.f64 im 2))) 4) 4)
(sqrt.f64 (*.f64 2 (pow.f64 im 2)))
(/.f64 (*.f64 2 (*.f64 (sqrt.f64 (*.f64 2 (pow.f64 im 2))) 4)) 8)
(sqrt.f64 (*.f64 2 (pow.f64 im 2)))
(/.f64 (+.f64 (*.f64 2 (*.f64 (sqrt.f64 (*.f64 2 (pow.f64 im 2))) 4)) (*.f64 2 (*.f64 (sqrt.f64 (*.f64 2 (pow.f64 im 2))) 4))) 16)
(sqrt.f64 (*.f64 2 (pow.f64 im 2)))
(/.f64 (*.f64 (*.f64 2 (*.f64 2 (sqrt.f64 2))) (*.f64 2 (sqrt.f64 (pow.f64 (+.f64 im im) 2)))) 16)
(/.f64 (*.f64 (*.f64 2 (sqrt.f64 (pow.f64 (+.f64 im im) 2))) (*.f64 (sqrt.f64 2) 4)) 16)
(/.f64 (*.f64 (pow.f64 (sqrt.f64 (+.f64 im im)) 2) (*.f64 2 (*.f64 (sqrt.f64 2) 4))) 16)
(/.f64 (*.f64 (sqrt.f64 (pow.f64 (+.f64 im im) 2)) (*.f64 (sqrt.f64 2) 8)) 16)
(/.f64 (*.f64 (*.f64 2 (sqrt.f64 (pow.f64 (+.f64 im im) 2))) (*.f64 2 (*.f64 2 (sqrt.f64 2)))) 16)
(/.f64 (*.f64 (*.f64 2 (sqrt.f64 (pow.f64 (+.f64 im im) 2))) (*.f64 (sqrt.f64 2) 4)) 16)
(/.f64 (*.f64 (pow.f64 (sqrt.f64 (+.f64 im im)) 2) (*.f64 2 (*.f64 (sqrt.f64 2) 4))) 16)
(/.f64 (*.f64 (sqrt.f64 (pow.f64 (+.f64 im im) 2)) (*.f64 (sqrt.f64 2) 8)) 16)
(pow.f64 (sqrt.f64 (*.f64 2 (pow.f64 im 2))) 1)
(sqrt.f64 (*.f64 2 (pow.f64 im 2)))
(+.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 0)
(sqrt.f64 (/.f64 (pow.f64 im 2) re))
(+.f64 0 (sqrt.f64 (/.f64 (pow.f64 im 2) re)))
(sqrt.f64 (/.f64 (pow.f64 im 2) re))
(+.f64 (/.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 2) (/.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 2))
(sqrt.f64 (/.f64 (pow.f64 im 2) re))
(+.f64 (/.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 4) (+.f64 (/.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 4) (/.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 2)))
(sqrt.f64 (/.f64 (pow.f64 im 2) re))
(+.f64 (/.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 4) (/.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 3) 2) 2))
(sqrt.f64 (/.f64 (pow.f64 im 2) re))
(+.f64 (/.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 4) (/.f64 (*.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 3) 4))
(sqrt.f64 (/.f64 (pow.f64 im 2) re))
(-.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 0)
(sqrt.f64 (/.f64 (pow.f64 im 2) re))
(-.f64 (/.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 2) (/.f64 (neg.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re))) 2))
(sqrt.f64 (/.f64 (pow.f64 im 2) re))
(-.f64 (+.f64 (/.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 4) (/.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 2)) (neg.f64 (/.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 4)))
(sqrt.f64 (/.f64 (pow.f64 im 2) re))
(-.f64 (/.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 3) 2) 2) (/.f64 (/.f64 (neg.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re))) 2) 2))
(sqrt.f64 (/.f64 (pow.f64 im 2) re))
(-.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 3) 4) (/.f64 (neg.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re))) 4))
(sqrt.f64 (/.f64 (pow.f64 im 2) re))
(/.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 1)
(sqrt.f64 (/.f64 (pow.f64 im 2) re))
(/.f64 (*.f64 2 (sqrt.f64 (/.f64 (pow.f64 im 2) re))) 2)
(sqrt.f64 (/.f64 (pow.f64 im 2) re))
(/.f64 (*.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 4) 4)
(sqrt.f64 (/.f64 (pow.f64 im 2) re))
(/.f64 (*.f64 2 (*.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 4)) 8)
(sqrt.f64 (/.f64 (pow.f64 im 2) re))
(/.f64 (*.f64 4 (*.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 4)) 16)
(sqrt.f64 (/.f64 (pow.f64 im 2) re))
(/.f64 (+.f64 (*.f64 2 (*.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 4)) (*.f64 2 (*.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 4))) 16)
(sqrt.f64 (/.f64 (pow.f64 im 2) re))
(/.f64 (+.f64 (*.f64 4 (*.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 4)) (*.f64 4 (*.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 4))) 32)
(sqrt.f64 (/.f64 (pow.f64 im 2) re))
(/.f64 (*.f64 (*.f64 2 (*.f64 (sqrt.f64 (*.f64 2 (pow.f64 im 2))) 4)) (*.f64 (sqrt.f64 (/.f64 2 re)) 4)) 64)
(/.f64 (*.f64 4 (*.f64 (sqrt.f64 (/.f64 2 re)) (*.f64 2 (*.f64 (sqrt.f64 (*.f64 2 (pow.f64 im 2))) 4)))) 64)
(/.f64 (*.f64 4 (*.f64 (*.f64 (sqrt.f64 (*.f64 2 (pow.f64 im 2))) 8) (sqrt.f64 (/.f64 2 re)))) 64)
(/.f64 (*.f64 (*.f64 (sqrt.f64 (/.f64 2 re)) 4) (*.f64 2 (*.f64 (sqrt.f64 (*.f64 2 (pow.f64 im 2))) 4))) 64)
(/.f64 (*.f64 4 (*.f64 (sqrt.f64 (/.f64 2 re)) (*.f64 2 (*.f64 (sqrt.f64 (*.f64 2 (pow.f64 im 2))) 4)))) 64)
(/.f64 (*.f64 4 (*.f64 (*.f64 (sqrt.f64 (*.f64 2 (pow.f64 im 2))) 8) (sqrt.f64 (/.f64 2 re)))) 64)
(/.f64 (*.f64 (*.f64 4 (sqrt.f64 (/.f64 1 re))) (*.f64 2 (sqrt.f64 (pow.f64 (+.f64 im im) 2)))) 16)
(/.f64 (*.f64 (sqrt.f64 (pow.f64 (+.f64 im im) 2)) (*.f64 2 (*.f64 (sqrt.f64 (/.f64 1 re)) 4))) 16)
(/.f64 (*.f64 (pow.f64 (sqrt.f64 (+.f64 im im)) 2) (*.f64 (sqrt.f64 (/.f64 1 re)) 8)) 16)
(/.f64 (*.f64 (sqrt.f64 (pow.f64 (+.f64 im im) 2)) (*.f64 (sqrt.f64 (/.f64 1 re)) 8)) 16)
(/.f64 (*.f64 (*.f64 2 (sqrt.f64 (*.f64 (pow.f64 im 2) (/.f64 2 re)))) (*.f64 2 (*.f64 2 (sqrt.f64 2)))) 16)
(/.f64 (*.f64 (*.f64 (sqrt.f64 2) 4) (*.f64 2 (sqrt.f64 (*.f64 2 (/.f64 (pow.f64 im 2) re))))) 16)
(/.f64 (*.f64 (sqrt.f64 (*.f64 2 (/.f64 (pow.f64 im 2) re))) (*.f64 2 (*.f64 (sqrt.f64 2) 4))) 16)
(/.f64 (*.f64 (sqrt.f64 (*.f64 2 (/.f64 (pow.f64 im 2) re))) (*.f64 (sqrt.f64 2) 8)) 16)
(pow.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 1)
(sqrt.f64 (/.f64 (pow.f64 im 2) re))
(sqrt.f64 (/.f64 (pow.f64 im 2) re))
(+.f64 (sqrt.f64 (/.f64 1/2 re)) 0)
(sqrt.f64 (/.f64 1/2 re))
(+.f64 0 (sqrt.f64 (/.f64 1/2 re)))
(sqrt.f64 (/.f64 1/2 re))
(+.f64 (/.f64 (sqrt.f64 (/.f64 1/2 re)) 2) (/.f64 (sqrt.f64 (/.f64 1/2 re)) 2))
(sqrt.f64 (/.f64 1/2 re))
(+.f64 (/.f64 (sqrt.f64 (/.f64 1/2 re)) 4) (+.f64 (/.f64 (sqrt.f64 (/.f64 1/2 re)) 4) (/.f64 (sqrt.f64 (/.f64 1/2 re)) 2)))
(sqrt.f64 (/.f64 1/2 re))
(+.f64 (/.f64 (sqrt.f64 (/.f64 1/2 re)) 4) (/.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 1/2 re)) 3) 2) 2))
(sqrt.f64 (/.f64 1/2 re))
(+.f64 (/.f64 (sqrt.f64 (/.f64 1/2 re)) 4) (/.f64 (*.f64 (sqrt.f64 (/.f64 1/2 re)) 3) 4))
(sqrt.f64 (/.f64 1/2 re))
(-.f64 (sqrt.f64 (/.f64 1/2 re)) 0)
(sqrt.f64 (/.f64 1/2 re))
(-.f64 (/.f64 (sqrt.f64 (/.f64 1/2 re)) 2) (/.f64 (neg.f64 (sqrt.f64 (/.f64 1/2 re))) 2))
(sqrt.f64 (/.f64 1/2 re))
(-.f64 (+.f64 (/.f64 (sqrt.f64 (/.f64 1/2 re)) 4) (/.f64 (sqrt.f64 (/.f64 1/2 re)) 2)) (neg.f64 (/.f64 (sqrt.f64 (/.f64 1/2 re)) 4)))
(sqrt.f64 (/.f64 1/2 re))
(-.f64 (/.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 1/2 re)) 3) 2) 2) (/.f64 (/.f64 (neg.f64 (sqrt.f64 (/.f64 1/2 re))) 2) 2))
(sqrt.f64 (/.f64 1/2 re))
(-.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 1/2 re)) 3) 4) (/.f64 (neg.f64 (sqrt.f64 (/.f64 1/2 re))) 4))
(sqrt.f64 (/.f64 1/2 re))
(*.f64 2 (/.f64 (sqrt.f64 (/.f64 1/2 re)) 2))
(sqrt.f64 (/.f64 1/2 re))
(*.f64 2 (sqrt.f64 (/.f64 (/.f64 1/2 re) 4)))
(*.f64 2 (sqrt.f64 (/.f64 1/8 re)))
(*.f64 1/2 (sqrt.f64 (/.f64 2 re)))
(sqrt.f64 (/.f64 1/2 re))
(*.f64 (sqrt.f64 (/.f64 1/2 re)) 1)
(sqrt.f64 (/.f64 1/2 re))
(*.f64 1 (sqrt.f64 (/.f64 1/2 re)))
(sqrt.f64 (/.f64 1/2 re))
(*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 1/4 re)))
(sqrt.f64 (/.f64 1/2 re))
(*.f64 (sqrt.f64 2) (sqrt.f64 (*.f64 1/2 (/.f64 1/2 re))))
(sqrt.f64 (/.f64 1/2 re))
(*.f64 (sqrt.f64 (/.f64 1 re)) (sqrt.f64 1/2))
(sqrt.f64 (/.f64 1/2 re))
(*.f64 (sqrt.f64 (/.f64 2 re)) 1/2)
(sqrt.f64 (/.f64 1/2 re))
(*.f64 (/.f64 (sqrt.f64 (/.f64 1/2 re)) 2) 2)
(sqrt.f64 (/.f64 1/2 re))
(*.f64 (*.f64 (sqrt.f64 (/.f64 1/2 re)) 4) 1/4)
(sqrt.f64 (/.f64 1/2 re))
(*.f64 1/4 (*.f64 (sqrt.f64 (/.f64 1/2 re)) 4))
(sqrt.f64 (/.f64 1/2 re))
(*.f64 (sqrt.f64 1/2) (sqrt.f64 (/.f64 1 re)))
(sqrt.f64 (/.f64 1/2 re))
(*.f64 (sqrt.f64 (/.f64 1/4 re)) (sqrt.f64 2))
(sqrt.f64 (/.f64 1/2 re))
(/.f64 (sqrt.f64 (/.f64 1/2 re)) 1)
(sqrt.f64 (/.f64 1/2 re))
(/.f64 (sqrt.f64 (/.f64 2 re)) 2)
(/.f64 (*.f64 (sqrt.f64 (/.f64 1/2 re)) 4) 4)
(sqrt.f64 (/.f64 1/2 re))
(/.f64 (*.f64 (sqrt.f64 (/.f64 2 re)) 4) 8)
(/.f64 (*.f64 4 (sqrt.f64 (/.f64 2 re))) 8)
(/.f64 (+.f64 (*.f64 (sqrt.f64 (/.f64 2 re)) 4) (*.f64 (sqrt.f64 (/.f64 2 re)) 4)) 16)
(/.f64 (*.f64 4 (sqrt.f64 (/.f64 2 re))) 8)
(pow.f64 (sqrt.f64 (/.f64 1/2 re)) 1)
(sqrt.f64 (/.f64 1/2 re))
(+.f64 (pow.f64 im 2) (pow.f64 im 2))
(/.f64 (pow.f64 im 2) 1/2)
(*.f64 2 (pow.f64 im 2))
(+.f64 (*.f64 2 (pow.f64 im 2)) 0)
(+.f64 (pow.f64 im 2) (pow.f64 im 2))
(/.f64 (pow.f64 im 2) 1/2)
(*.f64 2 (pow.f64 im 2))
(+.f64 0 (*.f64 2 (pow.f64 im 2)))
(+.f64 (pow.f64 im 2) (pow.f64 im 2))
(/.f64 (pow.f64 im 2) 1/2)
(*.f64 2 (pow.f64 im 2))
(+.f64 (/.f64 (pow.f64 im 2) 2) (/.f64 (*.f64 (pow.f64 im 2) 6) 4))
(+.f64 (pow.f64 im 2) (pow.f64 im 2))
(/.f64 (pow.f64 im 2) 1/2)
(*.f64 2 (pow.f64 im 2))
(+.f64 (/.f64 (pow.f64 im 2) 2) (*.f64 3 (/.f64 (pow.f64 im 2) 2)))
(+.f64 (pow.f64 im 2) (pow.f64 im 2))
(/.f64 (pow.f64 im 2) 1/2)
(*.f64 2 (pow.f64 im 2))
(+.f64 (/.f64 (*.f64 (pow.f64 im 2) 6) 4) (/.f64 (pow.f64 im 2) 2))
(+.f64 (pow.f64 im 2) (pow.f64 im 2))
(/.f64 (pow.f64 im 2) 1/2)
(*.f64 2 (pow.f64 im 2))
(+.f64 (*.f64 3 (/.f64 (pow.f64 im 2) 2)) (/.f64 (pow.f64 im 2) 2))
(+.f64 (pow.f64 im 2) (pow.f64 im 2))
(/.f64 (pow.f64 im 2) 1/2)
(*.f64 2 (pow.f64 im 2))
(-.f64 (pow.f64 im 2) (neg.f64 (pow.f64 im 2)))
(+.f64 (pow.f64 im 2) (pow.f64 im 2))
(/.f64 (pow.f64 im 2) 1/2)
(*.f64 2 (pow.f64 im 2))
(-.f64 (*.f64 2 (pow.f64 im 2)) 0)
(+.f64 (pow.f64 im 2) (pow.f64 im 2))
(/.f64 (pow.f64 im 2) 1/2)
(*.f64 2 (pow.f64 im 2))
(-.f64 (*.f64 2 (pow.f64 im 2)) (+.f64 (neg.f64 (pow.f64 im 2)) (pow.f64 im 2)))
(+.f64 (pow.f64 im 2) (pow.f64 im 2))
(/.f64 (pow.f64 im 2) 1/2)
(*.f64 2 (pow.f64 im 2))
(-.f64 0 (*.f64 -2 (pow.f64 im 2)))
(+.f64 (pow.f64 im 2) (pow.f64 im 2))
(/.f64 (pow.f64 im 2) 1/2)
(*.f64 2 (pow.f64 im 2))
(-.f64 (/.f64 (pow.f64 im 2) 2) (+.f64 (neg.f64 (pow.f64 im 2)) (/.f64 (neg.f64 (pow.f64 im 2)) 2)))
(+.f64 (pow.f64 im 2) (pow.f64 im 2))
(/.f64 (pow.f64 im 2) 1/2)
(*.f64 2 (pow.f64 im 2))
(-.f64 (/.f64 (pow.f64 im 2) 2) (*.f64 -3 (/.f64 (pow.f64 im 2) 2)))
(+.f64 (pow.f64 im 2) (pow.f64 im 2))
(/.f64 (pow.f64 im 2) 1/2)
(*.f64 2 (pow.f64 im 2))
(-.f64 (/.f64 (pow.f64 im 2) 2) (neg.f64 (/.f64 (*.f64 (pow.f64 im 2) 6) 4)))
(+.f64 (pow.f64 im 2) (pow.f64 im 2))
(/.f64 (pow.f64 im 2) 1/2)
(*.f64 2 (pow.f64 im 2))
(-.f64 (/.f64 (pow.f64 im 2) 2) (/.f64 (*.f64 -3 (pow.f64 im 2)) 2))
(+.f64 (pow.f64 im 2) (pow.f64 im 2))
(/.f64 (pow.f64 im 2) 1/2)
(*.f64 2 (pow.f64 im 2))
(-.f64 (/.f64 (*.f64 (pow.f64 im 2) 6) 4) (/.f64 (neg.f64 (pow.f64 im 2)) 2))
(+.f64 (pow.f64 im 2) (pow.f64 im 2))
(/.f64 (pow.f64 im 2) 1/2)
(*.f64 2 (pow.f64 im 2))
(-.f64 (*.f64 3 (/.f64 (pow.f64 im 2) 2)) (/.f64 (neg.f64 (pow.f64 im 2)) 2))
(+.f64 (pow.f64 im 2) (pow.f64 im 2))
(/.f64 (pow.f64 im 2) 1/2)
(*.f64 2 (pow.f64 im 2))
(/.f64 (pow.f64 im 2) 1/2)
(+.f64 (pow.f64 im 2) (pow.f64 im 2))
(*.f64 2 (pow.f64 im 2))
(/.f64 (*.f64 2 (pow.f64 im 2)) 1)
(+.f64 (pow.f64 im 2) (pow.f64 im 2))
(/.f64 (pow.f64 im 2) 1/2)
(*.f64 2 (pow.f64 im 2))
(/.f64 (pow.f64 (+.f64 im im) 2) 2)
(/.f64 (*.f64 -2 (pow.f64 im 2)) -1)
(+.f64 (pow.f64 im 2) (pow.f64 im 2))
(/.f64 (pow.f64 im 2) 1/2)
(*.f64 2 (pow.f64 im 2))
(/.f64 (neg.f64 (pow.f64 im 2)) -1/2)
(+.f64 (pow.f64 im 2) (pow.f64 im 2))
(/.f64 (pow.f64 im 2) 1/2)
(*.f64 2 (pow.f64 im 2))
(/.f64 (*.f64 (pow.f64 im 2) 8) 4)
(+.f64 (pow.f64 im 2) (pow.f64 im 2))
(/.f64 (pow.f64 im 2) 1/2)
(*.f64 2 (pow.f64 im 2))
(/.f64 (*.f64 (pow.f64 (+.f64 im im) 2) 4) 8)
(/.f64 (*.f64 4 (pow.f64 (+.f64 im im) 2)) 8)
(/.f64 (+.f64 (*.f64 (pow.f64 (+.f64 im im) 2) 4) (*.f64 (pow.f64 (+.f64 im im) 2) 4)) 16)
(/.f64 (*.f64 4 (pow.f64 (+.f64 im im) 2)) 8)
(pow.f64 (*.f64 2 (pow.f64 im 2)) 1)
(+.f64 (pow.f64 im 2) (pow.f64 im 2))
(/.f64 (pow.f64 im 2) 1/2)
(*.f64 2 (pow.f64 im 2))
(neg.f64 (*.f64 -2 (pow.f64 im 2)))
(+.f64 (pow.f64 im 2) (pow.f64 im 2))
(/.f64 (pow.f64 im 2) 1/2)
(*.f64 2 (pow.f64 im 2))

localize85.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(sqrt.f64 (/.f64 1/2 re))
0.1b
(*.f64 (pow.f64 (sqrt.f64 im) 2) (*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 1/2 re))))
0.2b
(*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 1/2 re)))
0.5b
(pow.f64 (sqrt.f64 im) 2)
Compiler

Compiled 54 to 40 computations (25.9% saved)

series31.0ms (0.1%)

Counts
3 → 12
Calls

12 calls:

TimeVariablePointExpression
17.0ms
re
@-inf
(*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 1/2 re)))
9.0ms
im
@-inf
(*.f64 (pow.f64 (sqrt.f64 im) 2) (*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 1/2 re))))
1.0ms
im
@-inf
(pow.f64 (sqrt.f64 im) 2)
1.0ms
re
@0
(*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 1/2 re)))
1.0ms
im
@0
(pow.f64 (sqrt.f64 im) 2)

rewrite489.0ms (1.4%)

Algorithm
batch-egg-rewrite
Rules
804×rational_best-simplify-80
798×rational_best-simplify-63
654×rational_best-simplify-54
628×rational_best-2
628×rational_best-3
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01461
19757
220145
350339
4172239
5730139
Stop Event
node limit
Counts
3 → 81
Calls
Call 1
Inputs
(pow.f64 (sqrt.f64 im) 2)
(*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 1/2 re)))
(*.f64 (pow.f64 (sqrt.f64 im) 2) (*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 1/2 re))))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (pow.f64 (sqrt.f64 im) 2) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (pow.f64 (sqrt.f64 im) 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (pow.f64 (sqrt.f64 im) 2) 2) (/.f64 (pow.f64 (sqrt.f64 im) 2) 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (pow.f64 (sqrt.f64 im) 2) 4) (/.f64 (/.f64 (*.f64 (pow.f64 (sqrt.f64 im) 2) 3) 2) 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (pow.f64 (sqrt.f64 im) 2) 4) (/.f64 (*.f64 (pow.f64 (sqrt.f64 im) 2) 3) 4))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (pow.f64 (sqrt.f64 im) 2) 4) (+.f64 (/.f64 (pow.f64 (sqrt.f64 im) 2) 4) (/.f64 (pow.f64 (sqrt.f64 im) 2) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (pow.f64 (sqrt.f64 im) 2) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 (sqrt.f64 im) 2) 2) (/.f64 (pow.f64 (sqrt.f64 im) 2) -2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (/.f64 (*.f64 (pow.f64 (sqrt.f64 im) 2) 3) 2) 2) (/.f64 (/.f64 (pow.f64 (sqrt.f64 im) 2) -2) 2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 (pow.f64 (sqrt.f64 im) 2) 3) 4) (/.f64 (neg.f64 (pow.f64 (sqrt.f64 im) 2)) 4))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (/.f64 (pow.f64 (sqrt.f64 im) 2) 4) (/.f64 (pow.f64 (sqrt.f64 im) 2) 2)) (neg.f64 (/.f64 (pow.f64 (sqrt.f64 im) 2) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (/.f64 (pow.f64 (sqrt.f64 im) 2) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 im) 2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 2 (pow.f64 (sqrt.f64 im) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (pow.f64 (sqrt.f64 im) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 2 (pow.f64 im 2))) (sqrt.f64 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (pow.f64 (sqrt.f64 im) 2)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (sqrt.f64 im) 2) 2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 (sqrt.f64 im) 2) 4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -2 (/.f64 (pow.f64 (sqrt.f64 im) 2) -2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 (pow.f64 (sqrt.f64 im) 2) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (pow.f64 (+.f64 im im) 2)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 (sqrt.f64 im) 4) 2) 1/16)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (+.f64 im im)) 2) (pow.f64 (sqrt.f64 1/2) 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (sqrt.f64 im) 2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (pow.f64 (sqrt.f64 im) 2)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 (sqrt.f64 im) 2) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (pow.f64 (sqrt.f64 im) 2) 4)) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 (pow.f64 (sqrt.f64 im) 2) 4)) (*.f64 2 (*.f64 (pow.f64 (sqrt.f64 im) 2) 4))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 im 2))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (sqrt.f64 (/.f64 1 re)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (sqrt.f64 (/.f64 1 re)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (sqrt.f64 (/.f64 1 re)) 2) (/.f64 (sqrt.f64 (/.f64 1 re)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (sqrt.f64 (/.f64 1 re)) 4) (+.f64 (/.f64 (sqrt.f64 (/.f64 1 re)) 4) (/.f64 (sqrt.f64 (/.f64 1 re)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (sqrt.f64 (/.f64 1 re)) 4) (/.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) 3) 2) 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (sqrt.f64 (/.f64 1 re)) 4) (/.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) 3) 4))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (sqrt.f64 (/.f64 1 re)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (sqrt.f64 (/.f64 1 re)) 2) (/.f64 (sqrt.f64 (/.f64 1 re)) -2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (/.f64 (sqrt.f64 (/.f64 1 re)) 4) (/.f64 (sqrt.f64 (/.f64 1 re)) 2)) (neg.f64 (/.f64 (sqrt.f64 (/.f64 1 re)) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) 3) 2) 2) (/.f64 (/.f64 (sqrt.f64 (/.f64 1 re)) -2) 2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) 3) 4) (/.f64 (neg.f64 (sqrt.f64 (/.f64 1 re))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (/.f64 1 re)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (sqrt.f64 (/.f64 1 re))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (sqrt.f64 (/.f64 1 re)) 4)) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 4 (*.f64 (sqrt.f64 (/.f64 1 re)) 4)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 (sqrt.f64 (/.f64 1 re)) 4)) (*.f64 2 (*.f64 (sqrt.f64 (/.f64 1 re)) 4))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 4 (*.f64 (sqrt.f64 (/.f64 1 re)) 4)) (*.f64 4 (*.f64 (sqrt.f64 (/.f64 1 re)) 4))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 2 (*.f64 (sqrt.f64 2) 4)) (*.f64 (sqrt.f64 (/.f64 2 re)) 4)) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (sqrt.f64 (/.f64 2 re)) 4) (*.f64 2 (*.f64 (sqrt.f64 2) 4))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 1 re)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (/.f64 1 re))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (sqrt.f64 (/.f64 (pow.f64 im 2) re)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 2) (/.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 4) (+.f64 (/.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 4) (/.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 4) (/.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 3) 2) 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 4) (/.f64 (*.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 3) 4))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 2) (/.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) -2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (/.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 4) (/.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 2)) (neg.f64 (/.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 3) 2) 2) (/.f64 (/.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) -2) 2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 3) 4) (/.f64 (neg.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (sqrt.f64 (/.f64 (pow.f64 im 2) re))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 2 (sqrt.f64 (/.f64 (pow.f64 im 2) re))) 4) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 4 (*.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 4)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 (*.f64 2 (sqrt.f64 (/.f64 (pow.f64 im 2) re))) 4) (*.f64 (*.f64 2 (sqrt.f64 (/.f64 (pow.f64 im 2) re))) 4)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 4 (*.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 4)) (*.f64 4 (*.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 4))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 2 (*.f64 (sqrt.f64 (/.f64 1 re)) 4)) (*.f64 2 (*.f64 (pow.f64 (sqrt.f64 im) 2) 4))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 2 (*.f64 (pow.f64 (sqrt.f64 im) 2) 4)) (*.f64 2 (*.f64 (sqrt.f64 (/.f64 1 re)) 4))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (sqrt.f64 (/.f64 2 re)) 4) (*.f64 (*.f64 4 (sqrt.f64 (*.f64 2 (pow.f64 im 2)))) 2)) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (*.f64 4 (sqrt.f64 (*.f64 2 (pow.f64 im 2)))) 2) (*.f64 (sqrt.f64 (/.f64 2 re)) 4)) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 2 (*.f64 (sqrt.f64 2) 4)) (*.f64 (sqrt.f64 (/.f64 2 re)) (*.f64 (pow.f64 (sqrt.f64 im) 2) 4))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (sqrt.f64 (/.f64 2 re)) (*.f64 (pow.f64 (sqrt.f64 im) 2) 4)) (*.f64 2 (*.f64 (sqrt.f64 2) 4))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 4 (*.f64 4 (sqrt.f64 (*.f64 2 (pow.f64 im 2))))) (sqrt.f64 (/.f64 1/2 re))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 4 (*.f64 4 (sqrt.f64 (*.f64 (/.f64 1/2 re) (pow.f64 im 2))))) (sqrt.f64 2)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 4 (*.f64 (sqrt.f64 (/.f64 1 re)) 4)) (pow.f64 (sqrt.f64 im) 2)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (/.f64 (pow.f64 im 2) re))))))

simplify299.0ms (0.8%)

Algorithm
egg-herbie
Rules
1146×rational_best-simplify-50
988×rational_best-simplify-56
880×rational_best-simplify-3
650×rational_best-simplify-1
532×rational_best-simplify-79
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
02051985
14861641
213901591
357151555
Stop Event
node limit
Counts
93 → 105
Calls
Call 1
Inputs
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 -1 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) (*.f64 (pow.f64 (sqrt.f64 -1) 2) im))) (sqrt.f64 (/.f64 1 re))))
(*.f64 -1 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) (*.f64 (pow.f64 (sqrt.f64 -1) 2) im))) (sqrt.f64 (/.f64 1 re))))
(*.f64 -1 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) (*.f64 (pow.f64 (sqrt.f64 -1) 2) im))) (sqrt.f64 (/.f64 1 re))))
(*.f64 -1 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) (*.f64 (pow.f64 (sqrt.f64 -1) 2) im))) (sqrt.f64 (/.f64 1 re))))
(+.f64 (pow.f64 (sqrt.f64 im) 2) 0)
(+.f64 0 (pow.f64 (sqrt.f64 im) 2))
(+.f64 (/.f64 (pow.f64 (sqrt.f64 im) 2) 2) (/.f64 (pow.f64 (sqrt.f64 im) 2) 2))
(+.f64 (/.f64 (pow.f64 (sqrt.f64 im) 2) 4) (/.f64 (/.f64 (*.f64 (pow.f64 (sqrt.f64 im) 2) 3) 2) 2))
(+.f64 (/.f64 (pow.f64 (sqrt.f64 im) 2) 4) (/.f64 (*.f64 (pow.f64 (sqrt.f64 im) 2) 3) 4))
(+.f64 (/.f64 (pow.f64 (sqrt.f64 im) 2) 4) (+.f64 (/.f64 (pow.f64 (sqrt.f64 im) 2) 4) (/.f64 (pow.f64 (sqrt.f64 im) 2) 2)))
(-.f64 (pow.f64 (sqrt.f64 im) 2) 0)
(-.f64 (/.f64 (pow.f64 (sqrt.f64 im) 2) 2) (/.f64 (pow.f64 (sqrt.f64 im) 2) -2))
(-.f64 (/.f64 (/.f64 (*.f64 (pow.f64 (sqrt.f64 im) 2) 3) 2) 2) (/.f64 (/.f64 (pow.f64 (sqrt.f64 im) 2) -2) 2))
(-.f64 (/.f64 (*.f64 (pow.f64 (sqrt.f64 im) 2) 3) 4) (/.f64 (neg.f64 (pow.f64 (sqrt.f64 im) 2)) 4))
(-.f64 (+.f64 (/.f64 (pow.f64 (sqrt.f64 im) 2) 4) (/.f64 (pow.f64 (sqrt.f64 im) 2) 2)) (neg.f64 (/.f64 (pow.f64 (sqrt.f64 im) 2) 4)))
(*.f64 2 (/.f64 (pow.f64 (sqrt.f64 im) 2) 2))
(*.f64 (pow.f64 (sqrt.f64 im) 2) 1)
(*.f64 1/2 (*.f64 2 (pow.f64 (sqrt.f64 im) 2)))
(*.f64 1 (pow.f64 (sqrt.f64 im) 2))
(*.f64 (sqrt.f64 (*.f64 2 (pow.f64 im 2))) (sqrt.f64 1/2))
(*.f64 (*.f64 2 (pow.f64 (sqrt.f64 im) 2)) 1/2)
(*.f64 (/.f64 (pow.f64 (sqrt.f64 im) 2) 2) 2)
(*.f64 (*.f64 (pow.f64 (sqrt.f64 im) 2) 4) 1/4)
(*.f64 -2 (/.f64 (pow.f64 (sqrt.f64 im) 2) -2))
(*.f64 1/4 (*.f64 (pow.f64 (sqrt.f64 im) 2) 4))
(*.f64 (sqrt.f64 (pow.f64 (+.f64 im im) 2)) 1/2)
(*.f64 (pow.f64 (*.f64 (sqrt.f64 im) 4) 2) 1/16)
(*.f64 (pow.f64 (sqrt.f64 (+.f64 im im)) 2) (pow.f64 (sqrt.f64 1/2) 2))
(/.f64 (pow.f64 (sqrt.f64 im) 2) 1)
(/.f64 (*.f64 2 (pow.f64 (sqrt.f64 im) 2)) 2)
(/.f64 (*.f64 (pow.f64 (sqrt.f64 im) 2) 4) 4)
(/.f64 (*.f64 2 (*.f64 (pow.f64 (sqrt.f64 im) 2) 4)) 8)
(/.f64 (+.f64 (*.f64 2 (*.f64 (pow.f64 (sqrt.f64 im) 2) 4)) (*.f64 2 (*.f64 (pow.f64 (sqrt.f64 im) 2) 4))) 16)
(sqrt.f64 (pow.f64 im 2))
(+.f64 (sqrt.f64 (/.f64 1 re)) 0)
(+.f64 0 (sqrt.f64 (/.f64 1 re)))
(+.f64 (/.f64 (sqrt.f64 (/.f64 1 re)) 2) (/.f64 (sqrt.f64 (/.f64 1 re)) 2))
(+.f64 (/.f64 (sqrt.f64 (/.f64 1 re)) 4) (+.f64 (/.f64 (sqrt.f64 (/.f64 1 re)) 4) (/.f64 (sqrt.f64 (/.f64 1 re)) 2)))
(+.f64 (/.f64 (sqrt.f64 (/.f64 1 re)) 4) (/.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) 3) 2) 2))
(+.f64 (/.f64 (sqrt.f64 (/.f64 1 re)) 4) (/.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) 3) 4))
(-.f64 (sqrt.f64 (/.f64 1 re)) 0)
(-.f64 (/.f64 (sqrt.f64 (/.f64 1 re)) 2) (/.f64 (sqrt.f64 (/.f64 1 re)) -2))
(-.f64 (+.f64 (/.f64 (sqrt.f64 (/.f64 1 re)) 4) (/.f64 (sqrt.f64 (/.f64 1 re)) 2)) (neg.f64 (/.f64 (sqrt.f64 (/.f64 1 re)) 4)))
(-.f64 (/.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) 3) 2) 2) (/.f64 (/.f64 (sqrt.f64 (/.f64 1 re)) -2) 2))
(-.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) 3) 4) (/.f64 (neg.f64 (sqrt.f64 (/.f64 1 re))) 4))
(/.f64 (sqrt.f64 (/.f64 1 re)) 1)
(/.f64 (*.f64 2 (sqrt.f64 (/.f64 1 re))) 2)
(/.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) 4) 4)
(/.f64 (*.f64 2 (*.f64 (sqrt.f64 (/.f64 1 re)) 4)) 8)
(/.f64 (*.f64 4 (*.f64 (sqrt.f64 (/.f64 1 re)) 4)) 16)
(/.f64 (+.f64 (*.f64 2 (*.f64 (sqrt.f64 (/.f64 1 re)) 4)) (*.f64 2 (*.f64 (sqrt.f64 (/.f64 1 re)) 4))) 16)
(/.f64 (+.f64 (*.f64 4 (*.f64 (sqrt.f64 (/.f64 1 re)) 4)) (*.f64 4 (*.f64 (sqrt.f64 (/.f64 1 re)) 4))) 32)
(/.f64 (*.f64 (*.f64 2 (*.f64 (sqrt.f64 2) 4)) (*.f64 (sqrt.f64 (/.f64 2 re)) 4)) 64)
(/.f64 (*.f64 (*.f64 (sqrt.f64 (/.f64 2 re)) 4) (*.f64 2 (*.f64 (sqrt.f64 2) 4))) 64)
(pow.f64 (sqrt.f64 (/.f64 1 re)) 1)
(sqrt.f64 (/.f64 1 re))
(+.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 0)
(+.f64 0 (sqrt.f64 (/.f64 (pow.f64 im 2) re)))
(+.f64 (/.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 2) (/.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 2))
(+.f64 (/.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 4) (+.f64 (/.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 4) (/.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 2)))
(+.f64 (/.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 4) (/.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 3) 2) 2))
(+.f64 (/.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 4) (/.f64 (*.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 3) 4))
(-.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 0)
(-.f64 (/.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 2) (/.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) -2))
(-.f64 (+.f64 (/.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 4) (/.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 2)) (neg.f64 (/.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 4)))
(-.f64 (/.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 3) 2) 2) (/.f64 (/.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) -2) 2))
(-.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 3) 4) (/.f64 (neg.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re))) 4))
(/.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 1)
(/.f64 (*.f64 2 (sqrt.f64 (/.f64 (pow.f64 im 2) re))) 2)
(/.f64 (*.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 4) 4)
(/.f64 (*.f64 (*.f64 2 (sqrt.f64 (/.f64 (pow.f64 im 2) re))) 4) 8)
(/.f64 (*.f64 4 (*.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 4)) 16)
(/.f64 (+.f64 (*.f64 (*.f64 2 (sqrt.f64 (/.f64 (pow.f64 im 2) re))) 4) (*.f64 (*.f64 2 (sqrt.f64 (/.f64 (pow.f64 im 2) re))) 4)) 16)
(/.f64 (+.f64 (*.f64 4 (*.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 4)) (*.f64 4 (*.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 4))) 32)
(/.f64 (*.f64 (*.f64 2 (*.f64 (sqrt.f64 (/.f64 1 re)) 4)) (*.f64 2 (*.f64 (pow.f64 (sqrt.f64 im) 2) 4))) 64)
(/.f64 (*.f64 (*.f64 2 (*.f64 (pow.f64 (sqrt.f64 im) 2) 4)) (*.f64 2 (*.f64 (sqrt.f64 (/.f64 1 re)) 4))) 64)
(/.f64 (*.f64 (*.f64 (sqrt.f64 (/.f64 2 re)) 4) (*.f64 (*.f64 4 (sqrt.f64 (*.f64 2 (pow.f64 im 2)))) 2)) 64)
(/.f64 (*.f64 (*.f64 (*.f64 4 (sqrt.f64 (*.f64 2 (pow.f64 im 2)))) 2) (*.f64 (sqrt.f64 (/.f64 2 re)) 4)) 64)
(/.f64 (*.f64 (*.f64 2 (*.f64 (sqrt.f64 2) 4)) (*.f64 (sqrt.f64 (/.f64 2 re)) (*.f64 (pow.f64 (sqrt.f64 im) 2) 4))) 64)
(/.f64 (*.f64 (*.f64 (sqrt.f64 (/.f64 2 re)) (*.f64 (pow.f64 (sqrt.f64 im) 2) 4)) (*.f64 2 (*.f64 (sqrt.f64 2) 4))) 64)
(/.f64 (*.f64 (*.f64 4 (*.f64 4 (sqrt.f64 (*.f64 2 (pow.f64 im 2))))) (sqrt.f64 (/.f64 1/2 re))) 16)
(/.f64 (*.f64 (*.f64 4 (*.f64 4 (sqrt.f64 (*.f64 (/.f64 1/2 re) (pow.f64 im 2))))) (sqrt.f64 2)) 16)
(/.f64 (*.f64 (*.f64 4 (*.f64 (sqrt.f64 (/.f64 1 re)) 4)) (pow.f64 (sqrt.f64 im) 2)) 16)
(pow.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 1)
(sqrt.f64 (/.f64 (pow.f64 im 2) re))
Outputs
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 im (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 im (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 im (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 im (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 im (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 im (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 im (sqrt.f64 (/.f64 1 re)))
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) im)) (sqrt.f64 (/.f64 1 re)))
(*.f64 im (sqrt.f64 (/.f64 1 re)))
(*.f64 -1 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) (*.f64 (pow.f64 (sqrt.f64 -1) 2) im))) (sqrt.f64 (/.f64 1 re))))
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) (*.f64 im 1)))))
(*.f64 im (neg.f64 (sqrt.f64 (/.f64 1 re))))
(*.f64 -1 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) (*.f64 (pow.f64 (sqrt.f64 -1) 2) im))) (sqrt.f64 (/.f64 1 re))))
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) (*.f64 im 1)))))
(*.f64 im (neg.f64 (sqrt.f64 (/.f64 1 re))))
(*.f64 -1 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) (*.f64 (pow.f64 (sqrt.f64 -1) 2) im))) (sqrt.f64 (/.f64 1 re))))
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) (*.f64 im 1)))))
(*.f64 im (neg.f64 (sqrt.f64 (/.f64 1 re))))
(*.f64 -1 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) (*.f64 (pow.f64 (sqrt.f64 -1) 2) im))) (sqrt.f64 (/.f64 1 re))))
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) (*.f64 im 1)))))
(*.f64 im (neg.f64 (sqrt.f64 (/.f64 1 re))))
(+.f64 (pow.f64 (sqrt.f64 im) 2) 0)
(pow.f64 (sqrt.f64 im) 2)
(+.f64 0 (pow.f64 (sqrt.f64 im) 2))
(pow.f64 (sqrt.f64 im) 2)
(+.f64 (/.f64 (pow.f64 (sqrt.f64 im) 2) 2) (/.f64 (pow.f64 (sqrt.f64 im) 2) 2))
(pow.f64 (sqrt.f64 im) 2)
(+.f64 (/.f64 (pow.f64 (sqrt.f64 im) 2) 4) (/.f64 (/.f64 (*.f64 (pow.f64 (sqrt.f64 im) 2) 3) 2) 2))
(pow.f64 (sqrt.f64 im) 2)
(+.f64 (/.f64 (pow.f64 (sqrt.f64 im) 2) 4) (/.f64 (*.f64 (pow.f64 (sqrt.f64 im) 2) 3) 4))
(pow.f64 (sqrt.f64 im) 2)
(+.f64 (/.f64 (pow.f64 (sqrt.f64 im) 2) 4) (+.f64 (/.f64 (pow.f64 (sqrt.f64 im) 2) 4) (/.f64 (pow.f64 (sqrt.f64 im) 2) 2)))
(pow.f64 (sqrt.f64 im) 2)
(-.f64 (pow.f64 (sqrt.f64 im) 2) 0)
(pow.f64 (sqrt.f64 im) 2)
(-.f64 (/.f64 (pow.f64 (sqrt.f64 im) 2) 2) (/.f64 (pow.f64 (sqrt.f64 im) 2) -2))
(pow.f64 (sqrt.f64 im) 2)
(-.f64 (/.f64 (/.f64 (*.f64 (pow.f64 (sqrt.f64 im) 2) 3) 2) 2) (/.f64 (/.f64 (pow.f64 (sqrt.f64 im) 2) -2) 2))
(pow.f64 (sqrt.f64 im) 2)
(-.f64 (/.f64 (*.f64 (pow.f64 (sqrt.f64 im) 2) 3) 4) (/.f64 (neg.f64 (pow.f64 (sqrt.f64 im) 2)) 4))
(pow.f64 (sqrt.f64 im) 2)
(-.f64 (+.f64 (/.f64 (pow.f64 (sqrt.f64 im) 2) 4) (/.f64 (pow.f64 (sqrt.f64 im) 2) 2)) (neg.f64 (/.f64 (pow.f64 (sqrt.f64 im) 2) 4)))
(pow.f64 (sqrt.f64 im) 2)
(*.f64 2 (/.f64 (pow.f64 (sqrt.f64 im) 2) 2))
(pow.f64 (sqrt.f64 im) 2)
(*.f64 (pow.f64 (sqrt.f64 im) 2) 1)
(pow.f64 (sqrt.f64 im) 2)
(*.f64 1/2 (*.f64 2 (pow.f64 (sqrt.f64 im) 2)))
(pow.f64 (sqrt.f64 im) 2)
(*.f64 1 (pow.f64 (sqrt.f64 im) 2))
(pow.f64 (sqrt.f64 im) 2)
(*.f64 (sqrt.f64 (*.f64 2 (pow.f64 im 2))) (sqrt.f64 1/2))
(pow.f64 (sqrt.f64 im) 2)
(*.f64 (*.f64 2 (pow.f64 (sqrt.f64 im) 2)) 1/2)
(pow.f64 (sqrt.f64 im) 2)
(*.f64 (/.f64 (pow.f64 (sqrt.f64 im) 2) 2) 2)
(pow.f64 (sqrt.f64 im) 2)
(*.f64 (*.f64 (pow.f64 (sqrt.f64 im) 2) 4) 1/4)
(pow.f64 (sqrt.f64 im) 2)
(*.f64 -2 (/.f64 (pow.f64 (sqrt.f64 im) 2) -2))
(pow.f64 (sqrt.f64 im) 2)
(*.f64 1/4 (*.f64 (pow.f64 (sqrt.f64 im) 2) 4))
(pow.f64 (sqrt.f64 im) 2)
(*.f64 (sqrt.f64 (pow.f64 (+.f64 im im) 2)) 1/2)
(*.f64 1/2 (pow.f64 (sqrt.f64 (+.f64 im im)) 2))
(*.f64 (pow.f64 (*.f64 (sqrt.f64 im) 4) 2) 1/16)
(pow.f64 (sqrt.f64 im) 2)
(*.f64 (pow.f64 (sqrt.f64 (+.f64 im im)) 2) (pow.f64 (sqrt.f64 1/2) 2))
(*.f64 1/2 (pow.f64 (sqrt.f64 (+.f64 im im)) 2))
(/.f64 (pow.f64 (sqrt.f64 im) 2) 1)
(pow.f64 (sqrt.f64 im) 2)
(/.f64 (*.f64 2 (pow.f64 (sqrt.f64 im) 2)) 2)
(pow.f64 (sqrt.f64 im) 2)
(/.f64 (*.f64 (pow.f64 (sqrt.f64 im) 2) 4) 4)
(pow.f64 (sqrt.f64 im) 2)
(/.f64 (*.f64 2 (*.f64 (pow.f64 (sqrt.f64 im) 2) 4)) 8)
(pow.f64 (sqrt.f64 im) 2)
(/.f64 (+.f64 (*.f64 2 (*.f64 (pow.f64 (sqrt.f64 im) 2) 4)) (*.f64 2 (*.f64 (pow.f64 (sqrt.f64 im) 2) 4))) 16)
(pow.f64 (sqrt.f64 im) 2)
(sqrt.f64 (pow.f64 im 2))
(pow.f64 (sqrt.f64 im) 2)
(+.f64 (sqrt.f64 (/.f64 1 re)) 0)
(sqrt.f64 (/.f64 1 re))
(+.f64 0 (sqrt.f64 (/.f64 1 re)))
(sqrt.f64 (/.f64 1 re))
(+.f64 (/.f64 (sqrt.f64 (/.f64 1 re)) 2) (/.f64 (sqrt.f64 (/.f64 1 re)) 2))
(sqrt.f64 (/.f64 1 re))
(+.f64 (/.f64 (sqrt.f64 (/.f64 1 re)) 4) (+.f64 (/.f64 (sqrt.f64 (/.f64 1 re)) 4) (/.f64 (sqrt.f64 (/.f64 1 re)) 2)))
(sqrt.f64 (/.f64 1 re))
(+.f64 (/.f64 (sqrt.f64 (/.f64 1 re)) 4) (/.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) 3) 2) 2))
(sqrt.f64 (/.f64 1 re))
(+.f64 (/.f64 (sqrt.f64 (/.f64 1 re)) 4) (/.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) 3) 4))
(sqrt.f64 (/.f64 1 re))
(-.f64 (sqrt.f64 (/.f64 1 re)) 0)
(sqrt.f64 (/.f64 1 re))
(-.f64 (/.f64 (sqrt.f64 (/.f64 1 re)) 2) (/.f64 (sqrt.f64 (/.f64 1 re)) -2))
(sqrt.f64 (/.f64 1 re))
(-.f64 (+.f64 (/.f64 (sqrt.f64 (/.f64 1 re)) 4) (/.f64 (sqrt.f64 (/.f64 1 re)) 2)) (neg.f64 (/.f64 (sqrt.f64 (/.f64 1 re)) 4)))
(sqrt.f64 (/.f64 1 re))
(-.f64 (/.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) 3) 2) 2) (/.f64 (/.f64 (sqrt.f64 (/.f64 1 re)) -2) 2))
(sqrt.f64 (/.f64 1 re))
(-.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) 3) 4) (/.f64 (neg.f64 (sqrt.f64 (/.f64 1 re))) 4))
(sqrt.f64 (/.f64 1 re))
(/.f64 (sqrt.f64 (/.f64 1 re)) 1)
(sqrt.f64 (/.f64 1 re))
(/.f64 (*.f64 2 (sqrt.f64 (/.f64 1 re))) 2)
(sqrt.f64 (/.f64 1 re))
(/.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) 4) 4)
(sqrt.f64 (/.f64 1 re))
(/.f64 (*.f64 2 (*.f64 (sqrt.f64 (/.f64 1 re)) 4)) 8)
(sqrt.f64 (/.f64 1 re))
(/.f64 (*.f64 4 (*.f64 (sqrt.f64 (/.f64 1 re)) 4)) 16)
(sqrt.f64 (/.f64 1 re))
(/.f64 (+.f64 (*.f64 2 (*.f64 (sqrt.f64 (/.f64 1 re)) 4)) (*.f64 2 (*.f64 (sqrt.f64 (/.f64 1 re)) 4))) 16)
(sqrt.f64 (/.f64 1 re))
(/.f64 (+.f64 (*.f64 4 (*.f64 (sqrt.f64 (/.f64 1 re)) 4)) (*.f64 4 (*.f64 (sqrt.f64 (/.f64 1 re)) 4))) 32)
(sqrt.f64 (/.f64 1 re))
(/.f64 (*.f64 (*.f64 2 (*.f64 (sqrt.f64 2) 4)) (*.f64 (sqrt.f64 (/.f64 2 re)) 4)) 64)
(/.f64 (*.f64 (*.f64 4 (*.f64 (sqrt.f64 2) 2)) (*.f64 4 (sqrt.f64 (/.f64 2 re)))) 64)
(/.f64 (*.f64 (sqrt.f64 (/.f64 2 re)) (*.f64 4 (*.f64 (sqrt.f64 2) 8))) 64)
(/.f64 (*.f64 (*.f64 (sqrt.f64 2) 8) (*.f64 4 (sqrt.f64 (/.f64 2 re)))) 64)
(/.f64 (*.f64 (*.f64 (sqrt.f64 (/.f64 2 re)) 4) (*.f64 2 (*.f64 (sqrt.f64 2) 4))) 64)
(/.f64 (*.f64 (*.f64 4 (*.f64 (sqrt.f64 2) 2)) (*.f64 4 (sqrt.f64 (/.f64 2 re)))) 64)
(/.f64 (*.f64 (sqrt.f64 (/.f64 2 re)) (*.f64 4 (*.f64 (sqrt.f64 2) 8))) 64)
(/.f64 (*.f64 (*.f64 (sqrt.f64 2) 8) (*.f64 4 (sqrt.f64 (/.f64 2 re)))) 64)
(pow.f64 (sqrt.f64 (/.f64 1 re)) 1)
(sqrt.f64 (/.f64 1 re))
(sqrt.f64 (/.f64 1 re))
(+.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 0)
(sqrt.f64 (/.f64 (pow.f64 im 2) re))
(+.f64 0 (sqrt.f64 (/.f64 (pow.f64 im 2) re)))
(sqrt.f64 (/.f64 (pow.f64 im 2) re))
(+.f64 (/.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 2) (/.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 2))
(sqrt.f64 (/.f64 (pow.f64 im 2) re))
(+.f64 (/.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 4) (+.f64 (/.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 4) (/.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 2)))
(sqrt.f64 (/.f64 (pow.f64 im 2) re))
(+.f64 (/.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 4) (/.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 3) 2) 2))
(sqrt.f64 (/.f64 (pow.f64 im 2) re))
(+.f64 (/.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 4) (/.f64 (*.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 3) 4))
(sqrt.f64 (/.f64 (pow.f64 im 2) re))
(-.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 0)
(sqrt.f64 (/.f64 (pow.f64 im 2) re))
(-.f64 (/.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 2) (/.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) -2))
(sqrt.f64 (/.f64 (pow.f64 im 2) re))
(-.f64 (+.f64 (/.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 4) (/.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 2)) (neg.f64 (/.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 4)))
(sqrt.f64 (/.f64 (pow.f64 im 2) re))
(-.f64 (/.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 3) 2) 2) (/.f64 (/.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) -2) 2))
(sqrt.f64 (/.f64 (pow.f64 im 2) re))
(-.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 3) 4) (/.f64 (neg.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re))) 4))
(sqrt.f64 (/.f64 (pow.f64 im 2) re))
(/.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 1)
(sqrt.f64 (/.f64 (pow.f64 im 2) re))
(/.f64 (*.f64 2 (sqrt.f64 (/.f64 (pow.f64 im 2) re))) 2)
(sqrt.f64 (/.f64 (pow.f64 im 2) re))
(/.f64 (*.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 4) 4)
(sqrt.f64 (/.f64 (pow.f64 im 2) re))
(/.f64 (*.f64 (*.f64 2 (sqrt.f64 (/.f64 (pow.f64 im 2) re))) 4) 8)
(sqrt.f64 (/.f64 (pow.f64 im 2) re))
(/.f64 (*.f64 4 (*.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 4)) 16)
(sqrt.f64 (/.f64 (pow.f64 im 2) re))
(/.f64 (+.f64 (*.f64 (*.f64 2 (sqrt.f64 (/.f64 (pow.f64 im 2) re))) 4) (*.f64 (*.f64 2 (sqrt.f64 (/.f64 (pow.f64 im 2) re))) 4)) 16)
(sqrt.f64 (/.f64 (pow.f64 im 2) re))
(/.f64 (+.f64 (*.f64 4 (*.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 4)) (*.f64 4 (*.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 4))) 32)
(sqrt.f64 (/.f64 (pow.f64 im 2) re))
(/.f64 (*.f64 (*.f64 2 (*.f64 (sqrt.f64 (/.f64 1 re)) 4)) (*.f64 2 (*.f64 (pow.f64 (sqrt.f64 im) 2) 4))) 64)
(/.f64 (*.f64 (*.f64 2 (*.f64 (pow.f64 (sqrt.f64 im) 2) 4)) (*.f64 4 (*.f64 2 (sqrt.f64 (/.f64 1 re))))) 64)
(/.f64 (*.f64 (*.f64 (pow.f64 (sqrt.f64 im) 2) 4) (*.f64 (sqrt.f64 (/.f64 1 re)) 16)) 64)
(/.f64 (*.f64 (pow.f64 (sqrt.f64 im) 2) (*.f64 (sqrt.f64 (/.f64 1 re)) 16)) 16)
(*.f64 (sqrt.f64 (/.f64 1 re)) (pow.f64 (sqrt.f64 im) 2))
(/.f64 (*.f64 (*.f64 2 (*.f64 (pow.f64 (sqrt.f64 im) 2) 4)) (*.f64 2 (*.f64 (sqrt.f64 (/.f64 1 re)) 4))) 64)
(/.f64 (*.f64 (*.f64 2 (*.f64 (pow.f64 (sqrt.f64 im) 2) 4)) (*.f64 4 (*.f64 2 (sqrt.f64 (/.f64 1 re))))) 64)
(/.f64 (*.f64 (*.f64 (pow.f64 (sqrt.f64 im) 2) 4) (*.f64 (sqrt.f64 (/.f64 1 re)) 16)) 64)
(/.f64 (*.f64 (pow.f64 (sqrt.f64 im) 2) (*.f64 (sqrt.f64 (/.f64 1 re)) 16)) 16)
(*.f64 (sqrt.f64 (/.f64 1 re)) (pow.f64 (sqrt.f64 im) 2))
(/.f64 (*.f64 (*.f64 (sqrt.f64 (/.f64 2 re)) 4) (*.f64 (*.f64 4 (sqrt.f64 (*.f64 2 (pow.f64 im 2)))) 2)) 64)
(/.f64 (*.f64 2 (*.f64 (*.f64 4 (sqrt.f64 (*.f64 2 (pow.f64 im 2)))) (*.f64 4 (sqrt.f64 (/.f64 2 re))))) 64)
(/.f64 (*.f64 2 (*.f64 (sqrt.f64 (/.f64 2 re)) (*.f64 (sqrt.f64 (*.f64 2 (pow.f64 im 2))) 16))) 64)
(/.f64 (*.f64 (sqrt.f64 (/.f64 2 re)) (*.f64 (sqrt.f64 (*.f64 2 (pow.f64 im 2))) 32)) 64)
(/.f64 (*.f64 (*.f64 (*.f64 4 (sqrt.f64 (*.f64 2 (pow.f64 im 2)))) 2) (*.f64 (sqrt.f64 (/.f64 2 re)) 4)) 64)
(/.f64 (*.f64 2 (*.f64 (*.f64 4 (sqrt.f64 (*.f64 2 (pow.f64 im 2)))) (*.f64 4 (sqrt.f64 (/.f64 2 re))))) 64)
(/.f64 (*.f64 2 (*.f64 (sqrt.f64 (/.f64 2 re)) (*.f64 (sqrt.f64 (*.f64 2 (pow.f64 im 2))) 16))) 64)
(/.f64 (*.f64 (sqrt.f64 (/.f64 2 re)) (*.f64 (sqrt.f64 (*.f64 2 (pow.f64 im 2))) 32)) 64)
(/.f64 (*.f64 (*.f64 2 (*.f64 (sqrt.f64 2) 4)) (*.f64 (sqrt.f64 (/.f64 2 re)) (*.f64 (pow.f64 (sqrt.f64 im) 2) 4))) 64)
(/.f64 (*.f64 2 (*.f64 (*.f64 4 (sqrt.f64 (*.f64 2 (pow.f64 im 2)))) (*.f64 4 (sqrt.f64 (/.f64 2 re))))) 64)
(/.f64 (*.f64 2 (*.f64 (sqrt.f64 (/.f64 2 re)) (*.f64 (sqrt.f64 (*.f64 2 (pow.f64 im 2))) 16))) 64)
(/.f64 (*.f64 (sqrt.f64 (/.f64 2 re)) (*.f64 (sqrt.f64 (*.f64 2 (pow.f64 im 2))) 32)) 64)
(/.f64 (*.f64 (*.f64 (sqrt.f64 (/.f64 2 re)) (*.f64 (pow.f64 (sqrt.f64 im) 2) 4)) (*.f64 2 (*.f64 (sqrt.f64 2) 4))) 64)
(/.f64 (*.f64 2 (*.f64 (*.f64 4 (sqrt.f64 (*.f64 2 (pow.f64 im 2)))) (*.f64 4 (sqrt.f64 (/.f64 2 re))))) 64)
(/.f64 (*.f64 2 (*.f64 (sqrt.f64 (/.f64 2 re)) (*.f64 (sqrt.f64 (*.f64 2 (pow.f64 im 2))) 16))) 64)
(/.f64 (*.f64 (sqrt.f64 (/.f64 2 re)) (*.f64 (sqrt.f64 (*.f64 2 (pow.f64 im 2))) 32)) 64)
(/.f64 (*.f64 (*.f64 4 (*.f64 4 (sqrt.f64 (*.f64 2 (pow.f64 im 2))))) (sqrt.f64 (/.f64 1/2 re))) 16)
(/.f64 (*.f64 (*.f64 (sqrt.f64 (*.f64 2 (pow.f64 im 2))) 16) (sqrt.f64 (/.f64 1/2 re))) 16)
(/.f64 (*.f64 16 (*.f64 (sqrt.f64 (*.f64 2 (pow.f64 im 2))) (sqrt.f64 (/.f64 1/2 re)))) 16)
(/.f64 (*.f64 16 (sqrt.f64 (*.f64 (*.f64 2 (pow.f64 im 2)) (/.f64 1/2 re)))) 16)
(/.f64 (*.f64 (*.f64 4 (*.f64 4 (sqrt.f64 (*.f64 (/.f64 1/2 re) (pow.f64 im 2))))) (sqrt.f64 2)) 16)
(/.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 (*.f64 (pow.f64 im 2) (/.f64 1/2 re))) 16)) 16)
(/.f64 (*.f64 (sqrt.f64 2) (*.f64 16 (sqrt.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re))))) 16)
(/.f64 (*.f64 16 (sqrt.f64 (*.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) 2))) 16)
(/.f64 (*.f64 (sqrt.f64 (*.f64 (*.f64 (pow.f64 im 2) (/.f64 1/2 re)) 2)) 32) 32)
(/.f64 (*.f64 (*.f64 4 (*.f64 (sqrt.f64 (/.f64 1 re)) 4)) (pow.f64 (sqrt.f64 im) 2)) 16)
(/.f64 (*.f64 (*.f64 2 (*.f64 (pow.f64 (sqrt.f64 im) 2) 4)) (*.f64 4 (*.f64 2 (sqrt.f64 (/.f64 1 re))))) 64)
(/.f64 (*.f64 (*.f64 (pow.f64 (sqrt.f64 im) 2) 4) (*.f64 (sqrt.f64 (/.f64 1 re)) 16)) 64)
(/.f64 (*.f64 (pow.f64 (sqrt.f64 im) 2) (*.f64 (sqrt.f64 (/.f64 1 re)) 16)) 16)
(*.f64 (sqrt.f64 (/.f64 1 re)) (pow.f64 (sqrt.f64 im) 2))
(pow.f64 (sqrt.f64 (/.f64 (pow.f64 im 2) re)) 1)
(sqrt.f64 (/.f64 (pow.f64 im 2) re))
(sqrt.f64 (/.f64 (pow.f64 im 2) re))

eval813.0ms (2.3%)

Compiler

Compiled 10037 to 7820 computations (22.1% saved)

prune449.0ms (1.3%)

Pruning

14 alts after pruning (4 fresh and 10 done)

PrunedKeptTotal
New5232525
Fresh123
Picked101
Done11011
Total52614540
Error
0.0b
Counts
540 → 14
Alt Table
Click to see full alt table
StatusErrorProgram
32.1b
(*.f64 1/2 (-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 re (sqrt.f64 (/.f64 1/2 im)))))
32.3b
(*.f64 1/2 (*.f64 (+.f64 (sqrt.f64 im) (*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 re -1/2))) (sqrt.f64 2)))
46.0b
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
46.0b
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1/2 re)) (*.f64 (sqrt.f64 2) im)))
51.4b
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1/2 re)) (sqrt.f64 (*.f64 2 (pow.f64 im 2)))))
30.3b
(*.f64 1/2 (*.f64 (sqrt.f64 (-.f64 im re)) (sqrt.f64 2)))
54.5b
(*.f64 1/2 (sqrt.f64 (/.f64 (pow.f64 im 2) re)))
34.3b
(*.f64 1/2 (sqrt.f64 (-.f64 (/.f64 (pow.f64 re 2) im) (*.f64 2 (-.f64 re im)))))
59.7b
(*.f64 1/2 (sqrt.f64 (*.f64 re -2)))
39.8b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
30.0b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 im re))))
47.1b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 re -2))))
31.7b
(*.f64 1/2 (sqrt.f64 (*.f64 2 im)))
58.5b
(*.f64 1/2 (sqrt.f64 (*.f64 2 0)))
Compiler

Compiled 169 to 138 computations (18.3% saved)

regimes1.6s (4.4%)

Counts
25 → 6
Calls
Call 1
Inputs
(*.f64 1/2 (sqrt.f64 (*.f64 2 0)))
(*.f64 1/2 (sqrt.f64 (*.f64 2 im)))
(*.f64 1/2 (sqrt.f64 (*.f64 re -2)))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 re -2))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 im re))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 re re))))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (sqrt.f64 (/.f64 (pow.f64 im 2) re)))
(*.f64 1/2 (*.f64 (sqrt.f64 (-.f64 im re)) (sqrt.f64 2)))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1/2 re)) (*.f64 (sqrt.f64 2) im)))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 (pow.f64 im 2) (/.f64 1/2 re)))))
(*.f64 1/2 (-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 re (sqrt.f64 (/.f64 1/2 im)))))
(*.f64 1/2 (sqrt.f64 (-.f64 (/.f64 (pow.f64 re 2) im) (*.f64 2 (-.f64 re im)))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
(*.f64 1/2 (-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 (sqrt.f64 (/.f64 2 im)) (*.f64 re 1/2))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) im) re))))
(*.f64 1/2 (+.f64 (sqrt.f64 (*.f64 2 im)) (*.f64 -1/2 (*.f64 re (sqrt.f64 (*.f64 2 (/.f64 1 im)))))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 (-.f64 (+.f64 re (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) (+.f64 re (*.f64 re 1/2))) (/.f64 re -2)))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (-.f64 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 re 1/2)) (+.f64 (/.f64 re -2) re)) re))))
(*.f64 1/2 (*.f64 (pow.f64 (sqrt.f64 im) 2) (sqrt.f64 (/.f64 1 re))))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1/2 re)) (sqrt.f64 (*.f64 2 (pow.f64 im 2)))))
(*.f64 1/2 (*.f64 (+.f64 (sqrt.f64 im) (*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 re -1/2))) (sqrt.f64 2)))
(*.f64 1/2 (*.f64 (pow.f64 (sqrt.f64 im) 2) (*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 1/2 re)))))
(*.f64 1/2 (+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im))))
Outputs
(*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 re -2))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 im re))))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (sqrt.f64 (*.f64 2 im)))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
Calls

7 calls:

484.0ms
re
271.0ms
(*.f64 2 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
247.0ms
im
243.0ms
(sqrt.f64 (*.f64 2 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))
106.0ms
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
Results
ErrorSegmentsBranch
10.8b6re
21.1b5im
16.6b4(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
16.6b4(sqrt.f64 (*.f64 2 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))
16.5b4(*.f64 2 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
16.5b4(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
22.8b3(*.f64 im im)
Compiler

Compiled 386 to 277 computations (28.2% saved)

bsearch480.0ms (1.3%)

Algorithm
binary-search
Steps
TimeLeftRight
100.0ms
2.106716549003919e+66
4.4909344806764825e+66
188.0ms
5.94810291238381e-48
1.7770791325469562e-44
86.0ms
1.7907421156997438e-149
3.077410231782649e-146
29.0ms
-4.652813647265717e-117
-2.2370178650013952e-117
76.0ms
-3.042489874963502e+114
-1.6704789032286984e+108
Results
183.0ms432×body256valid
54.0ms47×body1024valid
47.0ms48×body2048valid
27.0ms11×body4096valid
8.0ms22×body512valid
Compiler

Compiled 864 to 698 computations (19.2% saved)

regimes412.0ms (1.2%)

Counts
14 → 7
Calls
Call 1
Inputs
(*.f64 1/2 (sqrt.f64 (*.f64 2 0)))
(*.f64 1/2 (sqrt.f64 (*.f64 2 im)))
(*.f64 1/2 (sqrt.f64 (*.f64 re -2)))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 re -2))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 im re))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 re re))))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (sqrt.f64 (/.f64 (pow.f64 im 2) re)))
(*.f64 1/2 (*.f64 (sqrt.f64 (-.f64 im re)) (sqrt.f64 2)))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1/2 re)) (*.f64 (sqrt.f64 2) im)))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 (pow.f64 im 2) (/.f64 1/2 re)))))
(*.f64 1/2 (-.f64 (sqrt.f64 (+.f64 im im)) (*.f64 re (sqrt.f64 (/.f64 1/2 im)))))
(*.f64 1/2 (sqrt.f64 (-.f64 (/.f64 (pow.f64 re 2) im) (*.f64 2 (-.f64 re im)))))
Outputs
(*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 re -2))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 im re))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 re -2))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 im re))))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (sqrt.f64 (*.f64 2 im)))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
Calls

2 calls:

211.0ms
re
194.0ms
im
Results
ErrorSegmentsBranch
10.9b7re
21.9b6im
Compiler

Compiled 137 to 107 computations (21.9% saved)

bsearch373.0ms (1%)

Algorithm
binary-search
Steps
TimeLeftRight
78.0ms
2.106716549003919e+66
4.4909344806764825e+66
86.0ms
5.94810291238381e-48
1.7770791325469562e-44
61.0ms
1.7907421156997438e-149
3.077410231782649e-146
27.0ms
-4.652813647265717e-117
-2.2370178650013952e-117
61.0ms
-9.692880056966687e-72
-6.59066436960403e-75
58.0ms
-1.5968156758779714e+81
-4.589812607799787e+73
Results
213.0ms556×body256valid
46.0ms47×body2048valid
42.0ms56×body1024valid
16.0ms20×body512valid
7.0msbody4096valid
Compiler

Compiled 942 to 799 computations (15.2% saved)

regimes190.0ms (0.5%)

Counts
6 → 5
Calls
Call 1
Inputs
(*.f64 1/2 (sqrt.f64 (*.f64 2 0)))
(*.f64 1/2 (sqrt.f64 (*.f64 2 im)))
(*.f64 1/2 (sqrt.f64 (*.f64 re -2)))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 re -2))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 im re))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 re re))))
Outputs
(*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 re -2))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 im re))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 re -2))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 im)))
(*.f64 1/2 (sqrt.f64 (*.f64 2 0)))
Calls

2 calls:

99.0ms
re
86.0ms
im
Results
ErrorSegmentsBranch
19.5b5re
25.8b4im
Compiler

Compiled 50 to 41 computations (18% saved)

bsearch203.0ms (0.6%)

Algorithm
binary-search
Steps
TimeLeftRight
57.0ms
3.0786018204956058e+137
3.787190037795962e+137
28.0ms
-4.652813647265717e-117
-2.2370178650013952e-117
62.0ms
-9.692880056966687e-72
-6.59066436960403e-75
55.0ms
-1.5968156758779714e+81
-4.589812607799787e+73
Results
132.0ms363×body256valid
29.0ms16×body2048valid
15.0ms12×body4096valid
5.0msbody1024valid
3.0msbody512valid
Compiler

Compiled 550 to 480 computations (12.7% saved)

regimes129.0ms (0.4%)

Counts
4 → 5
Calls
Call 1
Inputs
(*.f64 1/2 (sqrt.f64 (*.f64 2 0)))
(*.f64 1/2 (sqrt.f64 (*.f64 2 im)))
(*.f64 1/2 (sqrt.f64 (*.f64 re -2)))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 re -2))))
Outputs
(*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 re -2))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 im)))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 re -2))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 im)))
(*.f64 1/2 (sqrt.f64 (*.f64 2 0)))
Calls

2 calls:

71.0ms
re
54.0ms
im
Results
ErrorSegmentsBranch
19.9b5re
26.5b4im
Compiler

Compiled 34 to 29 computations (14.7% saved)

bsearch272.0ms (0.8%)

Algorithm
binary-search
Steps
TimeLeftRight
58.0ms
3.0786018204956058e+137
3.787190037795962e+137
48.0ms
-4.652813647265717e-117
-2.2370178650013952e-117
74.0ms
-9.692880056966687e-72
-6.59066436960403e-75
92.0ms
-1.3068842591753653e+52
-8.675788083528958e+38
Results
203.0ms380×body256valid
26.0ms16×body2048valid
9.0ms12×body4096valid
2.0msbody1024valid
1.0msbody512valid
Compiler

Compiled 536 to 481 computations (10.3% saved)

regimes142.0ms (0.4%)

Accuracy

Total -34.0b remaining (-117%)

Threshold costs -34.0b (-117%)

Counts
3 → 2
Calls
Call 1
Inputs
(*.f64 1/2 (sqrt.f64 (*.f64 2 0)))
(*.f64 1/2 (sqrt.f64 (*.f64 2 im)))
(*.f64 1/2 (sqrt.f64 (*.f64 re -2)))
Outputs
(*.f64 1/2 (sqrt.f64 (*.f64 2 im)))
(*.f64 1/2 (sqrt.f64 (*.f64 2 0)))
Calls

2 calls:

111.0ms
im
29.0ms
re
Results
ErrorSegmentsBranch
29.1b2re
29.3b2im
Compiler

Compiled 26 to 22 computations (15.4% saved)

bsearch61.0ms (0.2%)

Algorithm
binary-search
Steps
TimeLeftRight
61.0ms
3.0786018204956058e+137
3.787190037795962e+137
Results
30.0ms12×body4096valid
5.0msbody2048valid
3.0ms15×body256valid
3.0msbody1024valid
2.0msbody512valid
Compiler

Compiled 76 to 67 computations (11.8% saved)

simplify299.0ms (0.8%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
094716
Stop Event
fuel
saturated
Calls
Call 1
Inputs
(if (<=.f64 re -9500000000000000974841933700562381257870380128273542989747477764059415284935351709683061279884713714939592704) (*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 re -2)))) (if (<=.f64 re -8659601988678129/2839213766779714416208296124562517712318911565184836172974571090549372219192960637992933791850638927971728600024477257552869537611776) (*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))) (if (<=.f64 re 6523425002087635/224945689727159819140526925384299092943484855915095831655037778630591879033574393515952034305194542857496045531676044756160413302774714984450425759043258192756736) (*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 im re)))) (if (<=.f64 re 7070527394739557/12855504354071922204335696738729300820177623950262342682411008) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im)) (if (<=.f64 re 2150000000000000134990500747512031285872479218919388834576702898176) (*.f64 1/2 (sqrt.f64 (*.f64 2 im))) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im)))))))
(if (<=.f64 re -48000000000000000441037793235479791072641469796819633565295669050727202816) (*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 re -2)))) (if (<=.f64 re -7320598039952059/7957171782556586274486115970349133441607298412757563479047423630290551952200534008528896) (*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 im re)))) (if (<=.f64 re -6530191663593343/1419606883389857208104148062281258856159455782592418086487285545274686109596480318996466895925319463985864300012238628776434768805888) (*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 re -2)))) (if (<=.f64 re 8322990519904913/449891379454319638281053850768598185886969711830191663310075557261183758067148787031904068610389085714992091063352089512320826605549429968900851518086516385513472) (*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 im re)))) (if (<=.f64 re 3454916795156829/803469022129495137770981046170581301261101496891396417650688) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im)) (if (<=.f64 re 2600000000000000119739161467141160268945403104813161726474299899904) (*.f64 1/2 (sqrt.f64 (*.f64 2 im))) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))))))))
(if (<=.f64 re -399999999999999980659275247211168791540784363212053420668827279054600142848) (*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 re -2)))) (if (<=.f64 re -5219904689357121/127314748520905380391777855525586135065716774604121015664758778084648831235208544136462336) (*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 im re)))) (if (<=.f64 re -5820388221898415/1419606883389857208104148062281258856159455782592418086487285545274686109596480318996466895925319463985864300012238628776434768805888) (*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 re -2)))) (if (<=.f64 re 370000000000000020414577730883930136124135999962694325194614504769251633610661499281352877236150965507926447266640361758990091847450230784) (*.f64 1/2 (sqrt.f64 (*.f64 2 im))) (*.f64 1/2 (sqrt.f64 (*.f64 2 0)))))))
(if (<=.f64 re -1750000000000000117235623414300987965308928) (*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 re -2)))) (if (<=.f64 re -2132522037725165/31828687130226345097944463881396533766429193651030253916189694521162207808802136034115584) (*.f64 1/2 (sqrt.f64 (*.f64 2 im))) (if (<=.f64 re -8659601988678129/2839213766779714416208296124562517712318911565184836172974571090549372219192960637992933791850638927971728600024477257552869537611776) (*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 re -2)))) (if (<=.f64 re 370000000000000020414577730883930136124135999962694325194614504769251633610661499281352877236150965507926447266640361758990091847450230784) (*.f64 1/2 (sqrt.f64 (*.f64 2 im))) (*.f64 1/2 (sqrt.f64 (*.f64 2 0)))))))
(if (<=.f64 re 355000000000000003395555073789641271141448110648024154051812729268339946390959797488048076593951408687936943701993404035530063862353100800) (*.f64 1/2 (sqrt.f64 (*.f64 2 im))) (*.f64 1/2 (sqrt.f64 (*.f64 2 0))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 0)))
Outputs
(if (<=.f64 re -9500000000000000974841933700562381257870380128273542989747477764059415284935351709683061279884713714939592704) (*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 re -2)))) (if (<=.f64 re -8659601988678129/2839213766779714416208296124562517712318911565184836172974571090549372219192960637992933791850638927971728600024477257552869537611776) (*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))) (if (<=.f64 re 6523425002087635/224945689727159819140526925384299092943484855915095831655037778630591879033574393515952034305194542857496045531676044756160413302774714984450425759043258192756736) (*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 im re)))) (if (<=.f64 re 7070527394739557/12855504354071922204335696738729300820177623950262342682411008) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im)) (if (<=.f64 re 2150000000000000134990500747512031285872479218919388834576702898176) (*.f64 1/2 (sqrt.f64 (*.f64 2 im))) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im)))))))
(if (<=.f64 re -48000000000000000441037793235479791072641469796819633565295669050727202816) (*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 re -2)))) (if (<=.f64 re -7320598039952059/7957171782556586274486115970349133441607298412757563479047423630290551952200534008528896) (*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 im re)))) (if (<=.f64 re -6530191663593343/1419606883389857208104148062281258856159455782592418086487285545274686109596480318996466895925319463985864300012238628776434768805888) (*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 re -2)))) (if (<=.f64 re 8322990519904913/449891379454319638281053850768598185886969711830191663310075557261183758067148787031904068610389085714992091063352089512320826605549429968900851518086516385513472) (*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 im re)))) (if (<=.f64 re 3454916795156829/803469022129495137770981046170581301261101496891396417650688) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im)) (if (<=.f64 re 2600000000000000119739161467141160268945403104813161726474299899904) (*.f64 1/2 (sqrt.f64 (*.f64 2 im))) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))))))))
(if (<=.f64 re -399999999999999980659275247211168791540784363212053420668827279054600142848) (*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 re -2)))) (if (<=.f64 re -5219904689357121/127314748520905380391777855525586135065716774604121015664758778084648831235208544136462336) (*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 im re)))) (if (<=.f64 re -5820388221898415/1419606883389857208104148062281258856159455782592418086487285545274686109596480318996466895925319463985864300012238628776434768805888) (*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 re -2)))) (if (<=.f64 re 370000000000000020414577730883930136124135999962694325194614504769251633610661499281352877236150965507926447266640361758990091847450230784) (*.f64 1/2 (sqrt.f64 (*.f64 2 im))) (*.f64 1/2 (sqrt.f64 (*.f64 2 0)))))))
(if (<=.f64 re -399999999999999980659275247211168791540784363212053420668827279054600142848) (*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 re -2)))) (if (<=.f64 re -5219904689357121/127314748520905380391777855525586135065716774604121015664758778084648831235208544136462336) (*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 im re)))) (if (<=.f64 re -5820388221898415/1419606883389857208104148062281258856159455782592418086487285545274686109596480318996466895925319463985864300012238628776434768805888) (*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 re -2)))) (if (<=.f64 re 370000000000000020414577730883930136124135999962694325194614504769251633610661499281352877236150965507926447266640361758990091847450230784) (*.f64 1/2 (sqrt.f64 (*.f64 2 im))) (*.f64 1/2 (sqrt.f64 0))))))
(if (<=.f64 re -1750000000000000117235623414300987965308928) (*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 re -2)))) (if (<=.f64 re -2132522037725165/31828687130226345097944463881396533766429193651030253916189694521162207808802136034115584) (*.f64 1/2 (sqrt.f64 (*.f64 2 im))) (if (<=.f64 re -8659601988678129/2839213766779714416208296124562517712318911565184836172974571090549372219192960637992933791850638927971728600024477257552869537611776) (*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 re -2)))) (if (<=.f64 re 370000000000000020414577730883930136124135999962694325194614504769251633610661499281352877236150965507926447266640361758990091847450230784) (*.f64 1/2 (sqrt.f64 (*.f64 2 im))) (*.f64 1/2 (sqrt.f64 (*.f64 2 0)))))))
(if (<=.f64 re -1750000000000000117235623414300987965308928) (*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 re -2)))) (if (<=.f64 re -2132522037725165/31828687130226345097944463881396533766429193651030253916189694521162207808802136034115584) (*.f64 1/2 (sqrt.f64 (*.f64 2 im))) (if (<=.f64 re -8659601988678129/2839213766779714416208296124562517712318911565184836172974571090549372219192960637992933791850638927971728600024477257552869537611776) (*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 re -2)))) (if (<=.f64 re 370000000000000020414577730883930136124135999962694325194614504769251633610661499281352877236150965507926447266640361758990091847450230784) (*.f64 1/2 (sqrt.f64 (*.f64 2 im))) (*.f64 1/2 (sqrt.f64 0))))))
(if (<=.f64 re 355000000000000003395555073789641271141448110648024154051812729268339946390959797488048076593951408687936943701993404035530063862353100800) (*.f64 1/2 (sqrt.f64 (*.f64 2 im))) (*.f64 1/2 (sqrt.f64 (*.f64 2 0))))
(if (<=.f64 re 355000000000000003395555073789641271141448110648024154051812729268339946390959797488048076593951408687936943701993404035530063862353100800) (*.f64 1/2 (sqrt.f64 (*.f64 2 im))) (*.f64 1/2 (sqrt.f64 0)))
(*.f64 1/2 (sqrt.f64 (*.f64 2 0)))
(*.f64 1/2 (sqrt.f64 0))
Compiler

Compiled 279 to 224 computations (19.7% saved)

soundness861.0ms (2.4%)

Algorithm
egg-herbie
Rules
1424×rational_best-simplify-51
1210×rational_best-simplify-80
1202×rational_best-simplify-1
1028×rational_best-simplify-65
998×rational_best-simplify-57
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
04317411
111727137
229866735
02292424
15662346
215762244
354512242
Stop Event
node limit
node limit
Compiler

Compiled 33 to 29 computations (12.1% saved)

end695.0ms (2%)

Compiler

Compiled 269 to 212 computations (21.2% saved)

Profiling

Loading profile data...