Details

Time bar (total: 28.0s)

analyze444.0ms (1.6%)

Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%99.8%0.2%0%0%0%0
0%0%99.8%0.2%0%0%0%1
0%0%99.8%0.2%0%0%0%2
0%0%99.8%0.2%0%0%0%3
0%0%99.8%0.2%0%0%0%4
0%0%99.8%0.2%0%0%0%5
15.6%15.6%84.2%0.2%0%0%0%6
23.4%23.4%76.4%0.2%0%0%0%7
26.6%26.5%73.3%0.2%0%0%0%8
35.5%35.5%64.3%0.2%0%0%0%9
40.6%40.5%59.3%0.2%0%0%0%10
46.4%46.3%53.5%0.2%0%0%0%11
46.9%46.8%53%0.2%0%0%0%12
Compiler

Compiled 42 to 20 computations (52.4% saved)

sample12.0s (43%)

Results
7.9s7903×body256valid
2.9s2456×body1024infinite
596.0ms1042×body512infinite
246.0ms1024×body256infinite
153.0ms143×body512valid
119.0ms188×body1024valid
67.0ms22×body2048valid
46.0ms49×body2048infinite
Bogosity

preprocess74.0ms (0.3%)

Algorithm
egg-herbie
Rules
1812×rational.json-simplify-51
1318×rational.json-simplify-46
1240×rational.json-simplify-49
848×rational.json-simplify-19
834×rational.json-simplify-37
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
094805
1168805
2251805
3439805
41231805
55092805
044
Stop Event
saturated
node limit
Calls
Call 1
Inputs
0
1
2
3
Outputs
0
1
2
3
Call 2
Inputs
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (cos.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))))
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.im x.im) (*.f64 x.re x.re)))) y.re) (*.f64 (atan2.f64 x.re x.im) y.im))) (cos.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.im x.im) (*.f64 x.re x.re)))) y.im) (*.f64 (atan2.f64 x.re x.im) y.re))))
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 y.re y.re) (*.f64 x.im x.im)))) x.re) (*.f64 (atan2.f64 x.im y.re) y.im))) (cos.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 y.re y.re) (*.f64 x.im x.im)))) y.im) (*.f64 (atan2.f64 x.im y.re) x.re))))
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 y.im y.im) (*.f64 x.im x.im)))) y.re) (*.f64 (atan2.f64 x.im y.im) x.re))) (cos.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 y.im y.im) (*.f64 x.im x.im)))) x.re) (*.f64 (atan2.f64 x.im y.im) y.re))))
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 y.re y.re)))) x.im) (*.f64 (atan2.f64 y.re x.re) y.im))) (cos.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 y.re y.re)))) y.im) (*.f64 (atan2.f64 y.re x.re) x.im))))
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 y.im y.im)))) y.re) (*.f64 (atan2.f64 y.im x.re) x.im))) (cos.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 y.im y.im)))) x.im) (*.f64 (atan2.f64 y.im x.re) y.re))))
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) (cos.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))))
Outputs
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (cos.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))))
(*.f64 (exp.f64 (-.f64 (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))))) (*.f64 (atan2.f64 x.im x.re) y.im))) (cos.f64 (+.f64 (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))))) (*.f64 y.re (atan2.f64 x.im x.re)))))
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.im x.im) (*.f64 x.re x.re)))) y.re) (*.f64 (atan2.f64 x.re x.im) y.im))) (cos.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.im x.im) (*.f64 x.re x.re)))) y.im) (*.f64 (atan2.f64 x.re x.im) y.re))))
(*.f64 (exp.f64 (-.f64 (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))))) (*.f64 y.im (atan2.f64 x.re x.im)))) (cos.f64 (+.f64 (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))))) (*.f64 y.re (atan2.f64 x.re x.im)))))
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 y.re y.re) (*.f64 x.im x.im)))) x.re) (*.f64 (atan2.f64 x.im y.re) y.im))) (cos.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 y.re y.re) (*.f64 x.im x.im)))) y.im) (*.f64 (atan2.f64 x.im y.re) x.re))))
(*.f64 (exp.f64 (-.f64 (*.f64 x.re (log.f64 (sqrt.f64 (+.f64 (*.f64 x.im x.im) (*.f64 y.re y.re))))) (*.f64 y.im (atan2.f64 x.im y.re)))) (cos.f64 (+.f64 (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (*.f64 x.im x.im) (*.f64 y.re y.re))))) (*.f64 x.re (atan2.f64 x.im y.re)))))
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 y.im y.im) (*.f64 x.im x.im)))) y.re) (*.f64 (atan2.f64 x.im y.im) x.re))) (cos.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 y.im y.im) (*.f64 x.im x.im)))) x.re) (*.f64 (atan2.f64 x.im y.im) y.re))))
(*.f64 (exp.f64 (-.f64 (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (*.f64 x.im x.im) (*.f64 y.im y.im))))) (*.f64 x.re (atan2.f64 x.im y.im)))) (cos.f64 (+.f64 (*.f64 x.re (log.f64 (sqrt.f64 (+.f64 (*.f64 x.im x.im) (*.f64 y.im y.im))))) (*.f64 y.re (atan2.f64 x.im y.im)))))
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 y.re y.re)))) x.im) (*.f64 (atan2.f64 y.re x.re) y.im))) (cos.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 y.re y.re)))) y.im) (*.f64 (atan2.f64 y.re x.re) x.im))))
(*.f64 (exp.f64 (-.f64 (*.f64 x.im (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 y.re y.re))))) (*.f64 y.im (atan2.f64 y.re x.re)))) (cos.f64 (+.f64 (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 y.re y.re))))) (*.f64 x.im (atan2.f64 y.re x.re)))))
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 y.im y.im)))) y.re) (*.f64 (atan2.f64 y.im x.re) x.im))) (cos.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 y.im y.im)))) x.im) (*.f64 (atan2.f64 y.im x.re) y.re))))
(*.f64 (exp.f64 (-.f64 (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 y.im y.im))))) (*.f64 x.im (atan2.f64 y.im x.re)))) (cos.f64 (+.f64 (*.f64 x.im (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 y.im y.im))))) (*.f64 y.re (atan2.f64 y.im x.re)))))
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) (cos.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))))
(*.f64 (exp.f64 (-.f64 (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))))) (*.f64 y.re (atan2.f64 x.im x.re)))) (cos.f64 (+.f64 (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))))) (*.f64 (atan2.f64 x.im x.re) y.im))))
Compiler

Compiled 45 to 23 computations (48.9% saved)

simplify121.0ms (0.4%)

Algorithm
egg-herbie
Rules
1136×rational.json-simplify-2
928×rational.json-simplify-44
836×rational.json-simplify-39
830×rational.json-simplify-47
730×rational.json-simplify-51
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
022115
136115
257115
3117115
4452115
54122115
66462115
77609115
Stop Event
node limit
Counts
1 → 2
Calls
Call 1
Inputs
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (cos.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))))
Outputs
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (cos.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))))
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (cos.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.im) (*.f64 y.re (atan2.f64 x.im x.re)))))

eval1.0ms (0%)

Compiler

Compiled 78 to 23 computations (70.5% saved)

prune1.0ms (0%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New112
Fresh011
Picked000
Done000
Total123
Error
31.4b
Counts
3 → 1
Alt Table
Click to see full alt table
StatusErrorProgram
31.4b
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (cos.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))))
Compiler

Compiled 41 to 19 computations (53.7% saved)

localize32.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
1.1b
(*.f64 (atan2.f64 x.im x.re) y.re)
2.6b
(*.f64 (atan2.f64 x.im x.re) y.im)
28.5b
(sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))
33.7b
(cos.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))
Compiler

Compiled 180 to 19 computations (89.4% saved)

series90.0ms (0.3%)

Counts
4 → 120
Calls

36 calls:

TimeVariablePointExpression
69.0ms
y.im
@-inf
(cos.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))
3.0ms
x.im
@0
(cos.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))
2.0ms
x.re
@inf
(cos.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))
2.0ms
x.re
@0
(cos.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))
2.0ms
x.im
@inf
(cos.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))

rewrite373.0ms (1.3%)

Algorithm
batch-egg-rewrite
Rules
1474×rational.json-simplify-35
1060×rational.json-1
1060×rational.json-2
1060×rational.json-3
1046×exponential.json-3
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
018104
1122104
2267104
3700104
42581104
Stop Event
node limit
Counts
4 → 48
Calls
Call 1
Inputs
(cos.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))
(sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))
(*.f64 (atan2.f64 x.im x.re) y.im)
(*.f64 (atan2.f64 x.im x.re) y.re)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (cos.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (cos.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (cos.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cos.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (cos.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 (cos.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (/.f64 (cos.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cos.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cos.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cos.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cos.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cos.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (cos.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 4)) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 (cos.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 4)) (*.f64 2 (*.f64 (cos.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 4))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cos.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 1)))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (/.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) 2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) 2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) 4)) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) 4)) (*.f64 2 (*.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) 4))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) 1)))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y.im (atan2.f64 x.im x.re)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 y.im (atan2.f64 x.im x.re)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 y.im (atan2.f64 x.im x.re)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y.im (atan2.f64 x.im x.re)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (atan2.f64 x.im x.re) (+.f64 y.im y.im)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y.im (*.f64 (atan2.f64 x.im x.re) 4)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 y.im (*.f64 (atan2.f64 x.im x.re) 4))) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 y.im (*.f64 (atan2.f64 x.im x.re) 4))) (*.f64 2 (*.f64 y.im (*.f64 (atan2.f64 x.im x.re) 4)))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 y.im (atan2.f64 x.im x.re)) 1)))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (atan2.f64 x.im x.re) y.re) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (atan2.f64 x.im x.re) y.re))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (atan2.f64 x.im x.re) y.re) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (atan2.f64 x.im x.re) y.re) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (atan2.f64 x.im x.re) (+.f64 y.re y.re)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (atan2.f64 x.im x.re) (*.f64 y.re 4)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (atan2.f64 x.im x.re) (*.f64 y.re 4))) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 (atan2.f64 x.im x.re) (*.f64 y.re 4))) (*.f64 2 (*.f64 (atan2.f64 x.im x.re) (*.f64 y.re 4)))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (atan2.f64 x.im x.re) y.re) 1)))))

simplify1.3s (4.5%)

Algorithm
egg-herbie
Rules
1414×rational.json-simplify-51
1310×rational.json-simplify-35
1146×rational.json-simplify-2
924×rational.json-simplify-43
702×rational.json-simplify-49
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
040710744
1102610540
2214710464
3450010088
4696810088
Stop Event
node limit
Counts
168 → 240
Calls
Call 1
Inputs
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 y.re (atan2.f64 x.im x.re)))) (*.f64 (pow.f64 x.re 2) y.im)) (pow.f64 x.im 2))) (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im)))))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 y.re (atan2.f64 x.im x.re)))) (*.f64 (pow.f64 x.re 2) y.im)) (pow.f64 x.im 2))) (+.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im)))) (*.f64 (pow.f64 x.re 4) (-.f64 (*.f64 -1/8 (/.f64 (*.f64 (pow.f64 y.im 2) (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))) (pow.f64 x.im 4))) (*.f64 -1/4 (/.f64 (*.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 y.re (atan2.f64 x.im x.re)))) y.im) (pow.f64 x.im 4)))))))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 y.re (atan2.f64 x.im x.re)))) (*.f64 (pow.f64 x.re 2) y.im)) (pow.f64 x.im 2))) (+.f64 (*.f64 (pow.f64 x.re 6) (-.f64 (*.f64 1/8 (/.f64 (*.f64 (pow.f64 y.im 2) (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))) (pow.f64 x.im 6))) (*.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 y.re (atan2.f64 x.im x.re)))) (+.f64 (*.f64 1/6 (/.f64 y.im (pow.f64 x.im 6))) (*.f64 -1/48 (/.f64 (pow.f64 y.im 3) (pow.f64 x.im 6))))))) (+.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im)))) (*.f64 (pow.f64 x.re 4) (-.f64 (*.f64 -1/8 (/.f64 (*.f64 (pow.f64 y.im 2) (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))) (pow.f64 x.im 4))) (*.f64 -1/4 (/.f64 (*.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 y.re (atan2.f64 x.im x.re)))) y.im) (pow.f64 x.im 4))))))))
(cos.f64 (+.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.re)) y.im)) (*.f64 y.re (atan2.f64 x.im x.re))))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 (+.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.re)) y.im)) (*.f64 y.re (atan2.f64 x.im x.re)))) (*.f64 y.im (pow.f64 x.im 2))) (pow.f64 x.re 2))) (cos.f64 (+.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.re)) y.im)) (*.f64 y.re (atan2.f64 x.im x.re)))))
(-.f64 (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 (+.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.re)) y.im)) (*.f64 y.re (atan2.f64 x.im x.re)))) (*.f64 y.im (pow.f64 x.im 2))) (pow.f64 x.re 2))) (+.f64 (*.f64 -1/8 (/.f64 (*.f64 (pow.f64 y.im 2) (*.f64 (pow.f64 x.im 4) (cos.f64 (+.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.re)) y.im)) (*.f64 y.re (atan2.f64 x.im x.re)))))) (pow.f64 x.re 4))) (cos.f64 (+.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.re)) y.im)) (*.f64 y.re (atan2.f64 x.im x.re)))))) (*.f64 -1/4 (/.f64 (*.f64 (sin.f64 (+.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.re)) y.im)) (*.f64 y.re (atan2.f64 x.im x.re)))) (*.f64 y.im (pow.f64 x.im 4))) (pow.f64 x.re 4))))
(-.f64 (+.f64 (*.f64 1/8 (/.f64 (*.f64 (pow.f64 y.im 2) (*.f64 (pow.f64 x.im 6) (cos.f64 (+.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.re)) y.im)) (*.f64 y.re (atan2.f64 x.im x.re)))))) (pow.f64 x.re 6))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 (+.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.re)) y.im)) (*.f64 y.re (atan2.f64 x.im x.re)))) (*.f64 y.im (pow.f64 x.im 2))) (pow.f64 x.re 2))) (+.f64 (*.f64 -1/8 (/.f64 (*.f64 (pow.f64 y.im 2) (*.f64 (pow.f64 x.im 4) (cos.f64 (+.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.re)) y.im)) (*.f64 y.re (atan2.f64 x.im x.re)))))) (pow.f64 x.re 4))) (cos.f64 (+.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.re)) y.im)) (*.f64 y.re (atan2.f64 x.im x.re))))))) (+.f64 (/.f64 (*.f64 (+.f64 (*.f64 -1/48 (*.f64 (pow.f64 y.im 3) (pow.f64 x.im 6))) (*.f64 1/720 (*.f64 (+.f64 (*.f64 30 (pow.f64 x.im 6)) (*.f64 90 (pow.f64 x.im 6))) y.im))) (sin.f64 (+.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.re)) y.im)) (*.f64 y.re (atan2.f64 x.im x.re))))) (pow.f64 x.re 6)) (*.f64 -1/4 (/.f64 (*.f64 (sin.f64 (+.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.re)) y.im)) (*.f64 y.re (atan2.f64 x.im x.re)))) (*.f64 y.im (pow.f64 x.im 4))) (pow.f64 x.re 4)))))
(cos.f64 (+.f64 (*.f64 -1 (*.f64 y.im (log.f64 (/.f64 -1 x.re)))) (*.f64 y.re (atan2.f64 x.im x.re))))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 (+.f64 (*.f64 -1 (*.f64 y.im (log.f64 (/.f64 -1 x.re)))) (*.f64 y.re (atan2.f64 x.im x.re)))) (*.f64 y.im (pow.f64 x.im 2))) (pow.f64 x.re 2))) (cos.f64 (+.f64 (*.f64 -1 (*.f64 y.im (log.f64 (/.f64 -1 x.re)))) (*.f64 y.re (atan2.f64 x.im x.re)))))
(-.f64 (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 (+.f64 (*.f64 -1 (*.f64 y.im (log.f64 (/.f64 -1 x.re)))) (*.f64 y.re (atan2.f64 x.im x.re)))) (*.f64 y.im (pow.f64 x.im 2))) (pow.f64 x.re 2))) (+.f64 (*.f64 -1/8 (/.f64 (*.f64 (cos.f64 (+.f64 (*.f64 -1 (*.f64 y.im (log.f64 (/.f64 -1 x.re)))) (*.f64 y.re (atan2.f64 x.im x.re)))) (*.f64 (pow.f64 y.im 2) (pow.f64 x.im 4))) (pow.f64 x.re 4))) (cos.f64 (+.f64 (*.f64 -1 (*.f64 y.im (log.f64 (/.f64 -1 x.re)))) (*.f64 y.re (atan2.f64 x.im x.re)))))) (*.f64 -1/4 (/.f64 (*.f64 (sin.f64 (+.f64 (*.f64 -1 (*.f64 y.im (log.f64 (/.f64 -1 x.re)))) (*.f64 y.re (atan2.f64 x.im x.re)))) (*.f64 y.im (pow.f64 x.im 4))) (pow.f64 x.re 4))))
(-.f64 (+.f64 (*.f64 1/8 (/.f64 (*.f64 (cos.f64 (+.f64 (*.f64 -1 (*.f64 y.im (log.f64 (/.f64 -1 x.re)))) (*.f64 y.re (atan2.f64 x.im x.re)))) (*.f64 (pow.f64 y.im 2) (pow.f64 x.im 6))) (pow.f64 x.re 6))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 (+.f64 (*.f64 -1 (*.f64 y.im (log.f64 (/.f64 -1 x.re)))) (*.f64 y.re (atan2.f64 x.im x.re)))) (*.f64 y.im (pow.f64 x.im 2))) (pow.f64 x.re 2))) (+.f64 (*.f64 -1/8 (/.f64 (*.f64 (cos.f64 (+.f64 (*.f64 -1 (*.f64 y.im (log.f64 (/.f64 -1 x.re)))) (*.f64 y.re (atan2.f64 x.im x.re)))) (*.f64 (pow.f64 y.im 2) (pow.f64 x.im 4))) (pow.f64 x.re 4))) (cos.f64 (+.f64 (*.f64 -1 (*.f64 y.im (log.f64 (/.f64 -1 x.re)))) (*.f64 y.re (atan2.f64 x.im x.re))))))) (+.f64 (/.f64 (*.f64 (+.f64 (*.f64 -1/48 (*.f64 (pow.f64 y.im 3) (pow.f64 x.im 6))) (*.f64 1/720 (*.f64 (+.f64 (*.f64 30 (pow.f64 x.im 6)) (*.f64 90 (pow.f64 x.im 6))) y.im))) (sin.f64 (+.f64 (*.f64 -1 (*.f64 y.im (log.f64 (/.f64 -1 x.re)))) (*.f64 y.re (atan2.f64 x.im x.re))))) (pow.f64 x.re 6)) (*.f64 -1/4 (/.f64 (*.f64 (sin.f64 (+.f64 (*.f64 -1 (*.f64 y.im (log.f64 (/.f64 -1 x.re)))) (*.f64 y.re (atan2.f64 x.im x.re)))) (*.f64 y.im (pow.f64 x.im 4))) (pow.f64 x.re 4)))))
(cos.f64 (+.f64 (*.f64 y.im (log.f64 x.re)) (*.f64 y.re (atan2.f64 x.im x.re))))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 y.im (*.f64 (pow.f64 x.im 2) (sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 y.re (atan2.f64 x.im x.re)))))) (pow.f64 x.re 2))) (cos.f64 (+.f64 (*.f64 y.im (log.f64 x.re)) (*.f64 y.re (atan2.f64 x.im x.re)))))
(+.f64 (*.f64 (pow.f64 x.im 4) (-.f64 (*.f64 -1/8 (/.f64 (*.f64 (pow.f64 y.im 2) (cos.f64 (+.f64 (*.f64 y.im (log.f64 x.re)) (*.f64 y.re (atan2.f64 x.im x.re))))) (pow.f64 x.re 4))) (*.f64 -1/4 (/.f64 (*.f64 y.im (sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 y.re (atan2.f64 x.im x.re))))) (pow.f64 x.re 4))))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 y.im (*.f64 (pow.f64 x.im 2) (sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 y.re (atan2.f64 x.im x.re)))))) (pow.f64 x.re 2))) (cos.f64 (+.f64 (*.f64 y.im (log.f64 x.re)) (*.f64 y.re (atan2.f64 x.im x.re))))))
(+.f64 (*.f64 (pow.f64 x.im 6) (-.f64 (*.f64 1/8 (/.f64 (*.f64 (pow.f64 y.im 2) (cos.f64 (+.f64 (*.f64 y.im (log.f64 x.re)) (*.f64 y.re (atan2.f64 x.im x.re))))) (pow.f64 x.re 6))) (*.f64 (+.f64 (*.f64 -1/48 (/.f64 (pow.f64 y.im 3) (pow.f64 x.re 6))) (*.f64 1/6 (/.f64 y.im (pow.f64 x.re 6)))) (sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 y.re (atan2.f64 x.im x.re))))))) (+.f64 (*.f64 (pow.f64 x.im 4) (-.f64 (*.f64 -1/8 (/.f64 (*.f64 (pow.f64 y.im 2) (cos.f64 (+.f64 (*.f64 y.im (log.f64 x.re)) (*.f64 y.re (atan2.f64 x.im x.re))))) (pow.f64 x.re 4))) (*.f64 -1/4 (/.f64 (*.f64 y.im (sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 y.re (atan2.f64 x.im x.re))))) (pow.f64 x.re 4))))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 y.im (*.f64 (pow.f64 x.im 2) (sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 y.re (atan2.f64 x.im x.re)))))) (pow.f64 x.re 2))) (cos.f64 (+.f64 (*.f64 y.im (log.f64 x.re)) (*.f64 y.re (atan2.f64 x.im x.re)))))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.im)) y.im))))
(+.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.im)) y.im)))) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 x.re 2) (*.f64 y.im (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.im)) y.im)))))) (pow.f64 x.im 2))))
(-.f64 (+.f64 (*.f64 -1/8 (/.f64 (*.f64 (pow.f64 x.re 4) (*.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.im)) y.im)))) (pow.f64 y.im 2))) (pow.f64 x.im 4))) (+.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.im)) y.im)))) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 x.re 2) (*.f64 y.im (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.im)) y.im)))))) (pow.f64 x.im 2))))) (*.f64 -1/4 (/.f64 (*.f64 (pow.f64 x.re 4) (*.f64 y.im (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.im)) y.im)))))) (pow.f64 x.im 4))))
(-.f64 (+.f64 (*.f64 -1/8 (/.f64 (*.f64 (pow.f64 x.re 4) (*.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.im)) y.im)))) (pow.f64 y.im 2))) (pow.f64 x.im 4))) (+.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.im)) y.im)))) (+.f64 (*.f64 1/8 (/.f64 (*.f64 (pow.f64 x.re 6) (*.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.im)) y.im)))) (pow.f64 y.im 2))) (pow.f64 x.im 6))) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 x.re 2) (*.f64 y.im (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.im)) y.im)))))) (pow.f64 x.im 2)))))) (+.f64 (/.f64 (*.f64 (+.f64 (*.f64 -1/48 (*.f64 (pow.f64 x.re 6) (pow.f64 y.im 3))) (*.f64 1/720 (*.f64 y.im (+.f64 (*.f64 30 (pow.f64 x.re 6)) (*.f64 90 (pow.f64 x.re 6)))))) (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.im)) y.im))))) (pow.f64 x.im 6)) (*.f64 -1/4 (/.f64 (*.f64 (pow.f64 x.re 4) (*.f64 y.im (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.im)) y.im)))))) (pow.f64 x.im 4)))))
(cos.f64 (+.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 -1 x.im)) y.im)) (*.f64 y.re (atan2.f64 x.im x.re))))
(+.f64 (cos.f64 (+.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 -1 x.im)) y.im)) (*.f64 y.re (atan2.f64 x.im x.re)))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 (+.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 -1 x.im)) y.im)) (*.f64 y.re (atan2.f64 x.im x.re)))) (*.f64 (pow.f64 x.re 2) y.im)) (pow.f64 x.im 2))))
(-.f64 (+.f64 (*.f64 -1/8 (/.f64 (*.f64 (pow.f64 x.re 4) (*.f64 (cos.f64 (+.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 -1 x.im)) y.im)) (*.f64 y.re (atan2.f64 x.im x.re)))) (pow.f64 y.im 2))) (pow.f64 x.im 4))) (+.f64 (cos.f64 (+.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 -1 x.im)) y.im)) (*.f64 y.re (atan2.f64 x.im x.re)))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 (+.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 -1 x.im)) y.im)) (*.f64 y.re (atan2.f64 x.im x.re)))) (*.f64 (pow.f64 x.re 2) y.im)) (pow.f64 x.im 2))))) (*.f64 -1/4 (/.f64 (*.f64 (sin.f64 (+.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 -1 x.im)) y.im)) (*.f64 y.re (atan2.f64 x.im x.re)))) (*.f64 (pow.f64 x.re 4) y.im)) (pow.f64 x.im 4))))
(-.f64 (+.f64 (*.f64 1/8 (/.f64 (*.f64 (pow.f64 x.re 6) (*.f64 (cos.f64 (+.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 -1 x.im)) y.im)) (*.f64 y.re (atan2.f64 x.im x.re)))) (pow.f64 y.im 2))) (pow.f64 x.im 6))) (+.f64 (*.f64 -1/8 (/.f64 (*.f64 (pow.f64 x.re 4) (*.f64 (cos.f64 (+.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 -1 x.im)) y.im)) (*.f64 y.re (atan2.f64 x.im x.re)))) (pow.f64 y.im 2))) (pow.f64 x.im 4))) (+.f64 (cos.f64 (+.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 -1 x.im)) y.im)) (*.f64 y.re (atan2.f64 x.im x.re)))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 (+.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 -1 x.im)) y.im)) (*.f64 y.re (atan2.f64 x.im x.re)))) (*.f64 (pow.f64 x.re 2) y.im)) (pow.f64 x.im 2)))))) (+.f64 (/.f64 (*.f64 (sin.f64 (+.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 -1 x.im)) y.im)) (*.f64 y.re (atan2.f64 x.im x.re)))) (+.f64 (*.f64 -1/48 (*.f64 (pow.f64 x.re 6) (pow.f64 y.im 3))) (*.f64 1/720 (*.f64 y.im (+.f64 (*.f64 30 (pow.f64 x.re 6)) (*.f64 90 (pow.f64 x.re 6))))))) (pow.f64 x.im 6)) (*.f64 -1/4 (/.f64 (*.f64 (sin.f64 (+.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 -1 x.im)) y.im)) (*.f64 y.re (atan2.f64 x.im x.re)))) (*.f64 (pow.f64 x.re 4) y.im)) (pow.f64 x.im 4)))))
(cos.f64 (*.f64 y.re (atan2.f64 x.im x.re)))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))))))) (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 y.im 2) (*.f64 (pow.f64 (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)))) 2) (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re)))))) (+.f64 (*.f64 -1 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))))))) (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re)))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 y.im 2) (*.f64 (pow.f64 (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)))) 2) (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re)))))) (+.f64 (*.f64 -1 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))))))) (+.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 1/6 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 (pow.f64 y.im 3) (pow.f64 (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)))) 3)))))))
(cos.f64 (+.f64 (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))))) (*.f64 y.re (atan2.f64 x.im x.re))))
(cos.f64 (+.f64 (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))))) (*.f64 y.re (atan2.f64 x.im x.re))))
(cos.f64 (+.f64 (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))))) (*.f64 y.re (atan2.f64 x.im x.re))))
(cos.f64 (+.f64 (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))))) (*.f64 y.re (atan2.f64 x.im x.re))))
(cos.f64 (+.f64 (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))))) (*.f64 y.re (atan2.f64 x.im x.re))))
(cos.f64 (+.f64 (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))))) (*.f64 y.re (atan2.f64 x.im x.re))))
(cos.f64 (+.f64 (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))))) (*.f64 y.re (atan2.f64 x.im x.re))))
(cos.f64 (+.f64 (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))))) (*.f64 y.re (atan2.f64 x.im x.re))))
(cos.f64 (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))))))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)))))) (*.f64 y.re (atan2.f64 x.im x.re)))) (cos.f64 (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)))))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 y.re 2) (*.f64 (pow.f64 (atan2.f64 x.im x.re) 2) (cos.f64 (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))))))))) (+.f64 (*.f64 -1 (*.f64 (sin.f64 (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)))))) (*.f64 y.re (atan2.f64 x.im x.re)))) (cos.f64 (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))))))))
(+.f64 (*.f64 1/6 (*.f64 (sin.f64 (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)))))) (*.f64 (pow.f64 y.re 3) (pow.f64 (atan2.f64 x.im x.re) 3)))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 y.re 2) (*.f64 (pow.f64 (atan2.f64 x.im x.re) 2) (cos.f64 (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))))))))) (+.f64 (*.f64 -1 (*.f64 (sin.f64 (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)))))) (*.f64 y.re (atan2.f64 x.im x.re)))) (cos.f64 (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)))))))))
(cos.f64 (+.f64 (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))))) (*.f64 y.re (atan2.f64 x.im x.re))))
(cos.f64 (+.f64 (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))))) (*.f64 y.re (atan2.f64 x.im x.re))))
(cos.f64 (+.f64 (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))))) (*.f64 y.re (atan2.f64 x.im x.re))))
(cos.f64 (+.f64 (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))))) (*.f64 y.re (atan2.f64 x.im x.re))))
(cos.f64 (+.f64 (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))))) (*.f64 y.re (atan2.f64 x.im x.re))))
(cos.f64 (+.f64 (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))))) (*.f64 y.re (atan2.f64 x.im x.re))))
(cos.f64 (+.f64 (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))))) (*.f64 y.re (atan2.f64 x.im x.re))))
(cos.f64 (+.f64 (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))))) (*.f64 y.re (atan2.f64 x.im x.re))))
x.im
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 x.re 2) x.im)) x.im)
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 x.re 2) x.im)) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 3))) x.im))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 x.re 2) x.im)) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 3))) (+.f64 x.im (*.f64 1/16 (/.f64 (pow.f64 x.re 6) (pow.f64 x.im 5))))))
x.re
(+.f64 x.re (*.f64 1/2 (/.f64 (pow.f64 x.im 2) x.re)))
(+.f64 (*.f64 -1/8 (/.f64 (pow.f64 x.im 4) (pow.f64 x.re 3))) (+.f64 x.re (*.f64 1/2 (/.f64 (pow.f64 x.im 2) x.re))))
(+.f64 (*.f64 -1/8 (/.f64 (pow.f64 x.im 4) (pow.f64 x.re 3))) (+.f64 x.re (+.f64 (*.f64 1/2 (/.f64 (pow.f64 x.im 2) x.re)) (*.f64 1/16 (/.f64 (pow.f64 x.im 6) (pow.f64 x.re 5))))))
(*.f64 -1 x.re)
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 x.im 2) x.re)) (*.f64 -1 x.re))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 x.im 2) x.re)) (+.f64 (*.f64 -1 x.re) (*.f64 1/8 (/.f64 (pow.f64 x.im 4) (pow.f64 x.re 3)))))
(+.f64 (*.f64 -1/16 (/.f64 (pow.f64 x.im 6) (pow.f64 x.re 5))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 x.im 2) x.re)) (+.f64 (*.f64 -1 x.re) (*.f64 1/8 (/.f64 (pow.f64 x.im 4) (pow.f64 x.re 3))))))
x.re
(+.f64 x.re (*.f64 1/2 (/.f64 (pow.f64 x.im 2) x.re)))
(+.f64 (*.f64 -1/8 (/.f64 (pow.f64 x.im 4) (pow.f64 x.re 3))) (+.f64 x.re (*.f64 1/2 (/.f64 (pow.f64 x.im 2) x.re))))
(+.f64 (*.f64 -1/8 (/.f64 (pow.f64 x.im 4) (pow.f64 x.re 3))) (+.f64 x.re (+.f64 (*.f64 1/2 (/.f64 (pow.f64 x.im 2) x.re)) (*.f64 1/16 (/.f64 (pow.f64 x.im 6) (pow.f64 x.re 5))))))
x.im
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 x.re 2) x.im)) x.im)
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 x.re 2) x.im)) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 3))) x.im))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 x.re 2) x.im)) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 3))) (+.f64 x.im (*.f64 1/16 (/.f64 (pow.f64 x.re 6) (pow.f64 x.im 5))))))
(*.f64 -1 x.im)
(+.f64 (*.f64 -1 x.im) (*.f64 -1/2 (/.f64 (pow.f64 x.re 2) x.im)))
(+.f64 (*.f64 -1 x.im) (+.f64 (*.f64 1/8 (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 3))) (*.f64 -1/2 (/.f64 (pow.f64 x.re 2) x.im))))
(+.f64 (*.f64 -1 x.im) (+.f64 (*.f64 -1/16 (/.f64 (pow.f64 x.re 6) (pow.f64 x.im 5))) (+.f64 (*.f64 1/8 (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 3))) (*.f64 -1/2 (/.f64 (pow.f64 x.re 2) x.im)))))
(*.f64 y.im (atan2.f64 x.im x.re))
(*.f64 y.im (atan2.f64 x.im x.re))
(*.f64 y.im (atan2.f64 x.im x.re))
(*.f64 y.im (atan2.f64 x.im x.re))
(*.f64 y.im (atan2.f64 x.im x.re))
(*.f64 y.im (atan2.f64 x.im x.re))
(*.f64 y.im (atan2.f64 x.im x.re))
(*.f64 y.im (atan2.f64 x.im x.re))
(*.f64 y.im (atan2.f64 x.im x.re))
(*.f64 y.im (atan2.f64 x.im x.re))
(*.f64 y.im (atan2.f64 x.im x.re))
(*.f64 y.im (atan2.f64 x.im x.re))
(*.f64 y.re (atan2.f64 x.im x.re))
(*.f64 y.re (atan2.f64 x.im x.re))
(*.f64 y.re (atan2.f64 x.im x.re))
(*.f64 y.re (atan2.f64 x.im x.re))
(*.f64 y.re (atan2.f64 x.im x.re))
(*.f64 y.re (atan2.f64 x.im x.re))
(*.f64 y.re (atan2.f64 x.im x.re))
(*.f64 y.re (atan2.f64 x.im x.re))
(*.f64 y.re (atan2.f64 x.im x.re))
(*.f64 y.re (atan2.f64 x.im x.re))
(*.f64 y.re (atan2.f64 x.im x.re))
(*.f64 y.re (atan2.f64 x.im x.re))
(*.f64 y.re (atan2.f64 x.im x.re))
(*.f64 y.re (atan2.f64 x.im x.re))
(*.f64 y.re (atan2.f64 x.im x.re))
(*.f64 y.re (atan2.f64 x.im x.re))
(*.f64 y.re (atan2.f64 x.im x.re))
(*.f64 y.re (atan2.f64 x.im x.re))
(*.f64 y.re (atan2.f64 x.im x.re))
(*.f64 y.re (atan2.f64 x.im x.re))
(*.f64 y.re (atan2.f64 x.im x.re))
(*.f64 y.re (atan2.f64 x.im x.re))
(*.f64 y.re (atan2.f64 x.im x.re))
(*.f64 y.re (atan2.f64 x.im x.re))
(*.f64 y.re (atan2.f64 x.im x.re))
(*.f64 y.re (atan2.f64 x.im x.re))
(*.f64 y.re (atan2.f64 x.im x.re))
(*.f64 y.re (atan2.f64 x.im x.re))
(*.f64 y.re (atan2.f64 x.im x.re))
(*.f64 y.re (atan2.f64 x.im x.re))
(*.f64 y.re (atan2.f64 x.im x.re))
(*.f64 y.re (atan2.f64 x.im x.re))
(*.f64 y.re (atan2.f64 x.im x.re))
(*.f64 y.re (atan2.f64 x.im x.re))
(*.f64 y.re (atan2.f64 x.im x.re))
(*.f64 y.re (atan2.f64 x.im x.re))
(+.f64 (cos.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 0)
(+.f64 0 (cos.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))))
(-.f64 (cos.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 0)
(*.f64 (cos.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 1)
(*.f64 1 (cos.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))))
(*.f64 1/2 (*.f64 (cos.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 2))
(*.f64 2 (/.f64 (cos.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 2))
(*.f64 (*.f64 (cos.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 2) 1/2)
(*.f64 (/.f64 (cos.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 2) 2)
(/.f64 (cos.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 1)
(/.f64 (*.f64 (cos.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 2) 2)
(/.f64 (*.f64 (cos.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 4) 4)
(/.f64 (*.f64 2 (*.f64 (cos.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 4)) 8)
(/.f64 (+.f64 (*.f64 2 (*.f64 (cos.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 4)) (*.f64 2 (*.f64 (cos.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 4))) 16)
(pow.f64 (cos.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 1)
(+.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) 0)
(+.f64 0 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))))
(-.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) 0)
(*.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) 1)
(*.f64 1 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))))
(*.f64 1/2 (*.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) 2))
(*.f64 2 (/.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) 2))
(*.f64 (*.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) 2) 1/2)
(*.f64 (/.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) 2) 2)
(/.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) 1)
(/.f64 (*.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) 2) 2)
(/.f64 (*.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) 4) 4)
(/.f64 (*.f64 2 (*.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) 4)) 8)
(/.f64 (+.f64 (*.f64 2 (*.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) 4)) (*.f64 2 (*.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) 4))) 16)
(pow.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) 1)
(+.f64 (*.f64 y.im (atan2.f64 x.im x.re)) 0)
(+.f64 0 (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (*.f64 y.im (atan2.f64 x.im x.re)) 0)
(/.f64 (*.f64 y.im (atan2.f64 x.im x.re)) 1)
(/.f64 (*.f64 (atan2.f64 x.im x.re) (+.f64 y.im y.im)) 2)
(/.f64 (*.f64 y.im (*.f64 (atan2.f64 x.im x.re) 4)) 4)
(/.f64 (*.f64 2 (*.f64 y.im (*.f64 (atan2.f64 x.im x.re) 4))) 8)
(/.f64 (+.f64 (*.f64 2 (*.f64 y.im (*.f64 (atan2.f64 x.im x.re) 4))) (*.f64 2 (*.f64 y.im (*.f64 (atan2.f64 x.im x.re) 4)))) 16)
(pow.f64 (*.f64 y.im (atan2.f64 x.im x.re)) 1)
(+.f64 (*.f64 (atan2.f64 x.im x.re) y.re) 0)
(+.f64 0 (*.f64 (atan2.f64 x.im x.re) y.re))
(-.f64 (*.f64 (atan2.f64 x.im x.re) y.re) 0)
(/.f64 (*.f64 (atan2.f64 x.im x.re) y.re) 1)
(/.f64 (*.f64 (atan2.f64 x.im x.re) (+.f64 y.re y.re)) 2)
(/.f64 (*.f64 (atan2.f64 x.im x.re) (*.f64 y.re 4)) 4)
(/.f64 (*.f64 2 (*.f64 (atan2.f64 x.im x.re) (*.f64 y.re 4))) 8)
(/.f64 (+.f64 (*.f64 2 (*.f64 (atan2.f64 x.im x.re) (*.f64 y.re 4))) (*.f64 2 (*.f64 (atan2.f64 x.im x.re) (*.f64 y.re 4)))) 16)
(pow.f64 (*.f64 (atan2.f64 x.im x.re) y.re) 1)
Outputs
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 y.re (atan2.f64 x.im x.re)))) (*.f64 (pow.f64 x.re 2) y.im)) (pow.f64 x.im 2))) (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im)))))
(+.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im)))) (*.f64 -1/2 (*.f64 (*.f64 y.im (pow.f64 x.re 2)) (/.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im)))) (pow.f64 x.im 2)))))
(+.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im)))) (*.f64 -1/2 (*.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im)))) (/.f64 (*.f64 y.im (pow.f64 x.re 2)) (pow.f64 x.im 2)))))
(+.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im)))) (*.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im)))) (*.f64 (*.f64 y.im (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2))) -1/2)))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 y.re (atan2.f64 x.im x.re)))) (*.f64 (pow.f64 x.re 2) y.im)) (pow.f64 x.im 2))) (+.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im)))) (*.f64 (pow.f64 x.re 4) (-.f64 (*.f64 -1/8 (/.f64 (*.f64 (pow.f64 y.im 2) (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))) (pow.f64 x.im 4))) (*.f64 -1/4 (/.f64 (*.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 y.re (atan2.f64 x.im x.re)))) y.im) (pow.f64 x.im 4)))))))
(+.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im)))) (+.f64 (*.f64 (pow.f64 x.re 4) (-.f64 (*.f64 -1/8 (*.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im)))) (/.f64 (pow.f64 y.im 2) (pow.f64 x.im 4)))) (*.f64 -1/4 (*.f64 y.im (/.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im)))) (pow.f64 x.im 4)))))) (*.f64 -1/2 (*.f64 (*.f64 y.im (pow.f64 x.re 2)) (/.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im)))) (pow.f64 x.im 2))))))
(+.f64 (*.f64 (pow.f64 x.re 4) (-.f64 (*.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im)))) (*.f64 (/.f64 (pow.f64 y.im 2) (pow.f64 x.im 4)) -1/8)) (*.f64 -1/4 (*.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im)))) (/.f64 y.im (pow.f64 x.im 4)))))) (+.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im)))) (*.f64 -1/2 (*.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im)))) (/.f64 (*.f64 y.im (pow.f64 x.re 2)) (pow.f64 x.im 2))))))
(+.f64 (*.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im)))) (*.f64 (*.f64 y.im (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2))) -1/2)) (+.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im)))) (*.f64 (pow.f64 x.re 4) (-.f64 (*.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im)))) (*.f64 -1/8 (/.f64 (pow.f64 y.im 2) (pow.f64 x.im 4)))) (*.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im)))) (*.f64 (/.f64 y.im (pow.f64 x.im 4)) -1/4))))))
(+.f64 (+.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im)))) (*.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im)))) (*.f64 (*.f64 y.im (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2))) -1/2))) (*.f64 (pow.f64 x.re 4) (-.f64 (*.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im)))) (*.f64 -1/8 (/.f64 (pow.f64 y.im 2) (pow.f64 x.im 4)))) (*.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im)))) (*.f64 (/.f64 y.im (pow.f64 x.im 4)) -1/4)))))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 y.re (atan2.f64 x.im x.re)))) (*.f64 (pow.f64 x.re 2) y.im)) (pow.f64 x.im 2))) (+.f64 (*.f64 (pow.f64 x.re 6) (-.f64 (*.f64 1/8 (/.f64 (*.f64 (pow.f64 y.im 2) (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))) (pow.f64 x.im 6))) (*.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 y.re (atan2.f64 x.im x.re)))) (+.f64 (*.f64 1/6 (/.f64 y.im (pow.f64 x.im 6))) (*.f64 -1/48 (/.f64 (pow.f64 y.im 3) (pow.f64 x.im 6))))))) (+.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im)))) (*.f64 (pow.f64 x.re 4) (-.f64 (*.f64 -1/8 (/.f64 (*.f64 (pow.f64 y.im 2) (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))) (pow.f64 x.im 4))) (*.f64 -1/4 (/.f64 (*.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 y.re (atan2.f64 x.im x.re)))) y.im) (pow.f64 x.im 4))))))))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 y.im (pow.f64 x.re 2)) (/.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im)))) (pow.f64 x.im 2)))) (+.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im)))) (+.f64 (*.f64 (pow.f64 x.re 4) (-.f64 (*.f64 -1/8 (*.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im)))) (/.f64 (pow.f64 y.im 2) (pow.f64 x.im 4)))) (*.f64 -1/4 (*.f64 y.im (/.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im)))) (pow.f64 x.im 4)))))) (*.f64 (pow.f64 x.re 6) (-.f64 (*.f64 1/8 (*.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im)))) (/.f64 (pow.f64 y.im 2) (pow.f64 x.im 6)))) (*.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im)))) (+.f64 (*.f64 1/6 (/.f64 y.im (pow.f64 x.im 6))) (*.f64 -1/48 (/.f64 (pow.f64 y.im 3) (pow.f64 x.im 6))))))))))
(+.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im)))) (+.f64 (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im)))) (/.f64 (*.f64 y.im (pow.f64 x.re 2)) (pow.f64 x.im 2)))) (*.f64 (pow.f64 x.re 4) (-.f64 (*.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im)))) (*.f64 (/.f64 (pow.f64 y.im 2) (pow.f64 x.im 4)) -1/8)) (*.f64 -1/4 (*.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im)))) (/.f64 y.im (pow.f64 x.im 4))))))) (*.f64 (pow.f64 x.re 6) (-.f64 (*.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im)))) (*.f64 (/.f64 (pow.f64 y.im 2) (pow.f64 x.im 6)) 1/8)) (*.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im)))) (+.f64 (*.f64 1/6 (/.f64 y.im (pow.f64 x.im 6))) (*.f64 -1/48 (/.f64 (pow.f64 y.im 3) (pow.f64 x.im 6)))))))))
(+.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im)))) (+.f64 (*.f64 (pow.f64 x.re 6) (-.f64 (*.f64 (pow.f64 y.im 2) (*.f64 (/.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im)))) (pow.f64 x.im 6)) 1/8)) (*.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im)))) (+.f64 (*.f64 1/6 (/.f64 y.im (pow.f64 x.im 6))) (*.f64 -1/48 (/.f64 (pow.f64 y.im 3) (pow.f64 x.im 6))))))) (+.f64 (*.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im)))) (*.f64 (*.f64 y.im (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2))) -1/2)) (*.f64 (pow.f64 x.re 4) (-.f64 (*.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im)))) (*.f64 -1/8 (/.f64 (pow.f64 y.im 2) (pow.f64 x.im 4)))) (*.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im)))) (*.f64 (/.f64 y.im (pow.f64 x.im 4)) -1/4)))))))
(+.f64 (+.f64 (+.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im)))) (*.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im)))) (*.f64 (*.f64 y.im (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2))) -1/2))) (*.f64 (pow.f64 x.re 4) (-.f64 (*.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im)))) (*.f64 -1/8 (/.f64 (pow.f64 y.im 2) (pow.f64 x.im 4)))) (*.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im)))) (*.f64 (/.f64 y.im (pow.f64 x.im 4)) -1/4))))) (*.f64 (pow.f64 x.re 6) (-.f64 (*.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im)))) (*.f64 1/8 (/.f64 (pow.f64 y.im 2) (pow.f64 x.im 6)))) (*.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im)))) (+.f64 (*.f64 1/6 (/.f64 y.im (pow.f64 x.im 6))) (*.f64 -1/48 (/.f64 (pow.f64 y.im 3) (pow.f64 x.im 6))))))))
(cos.f64 (+.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.re)) y.im)) (*.f64 y.re (atan2.f64 x.im x.re))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 1 x.re)) (*.f64 y.im -1))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 1 x.re)) (neg.f64 y.im))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (neg.f64 (log.f64 (/.f64 1 x.re))))))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 (+.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.re)) y.im)) (*.f64 y.re (atan2.f64 x.im x.re)))) (*.f64 y.im (pow.f64 x.im 2))) (pow.f64 x.re 2))) (cos.f64 (+.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.re)) y.im)) (*.f64 y.re (atan2.f64 x.im x.re)))))
(+.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 1 x.re)) (*.f64 y.im -1)))) (*.f64 -1/2 (*.f64 (*.f64 y.im (pow.f64 x.im 2)) (/.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 1 x.re)) (*.f64 y.im -1)))) (pow.f64 x.re 2)))))
(+.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 1 x.re)) (neg.f64 y.im)))) (*.f64 -1/2 (*.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 1 x.re)) (neg.f64 y.im)))) (/.f64 (*.f64 y.im (pow.f64 x.im 2)) (pow.f64 x.re 2)))))
(+.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (neg.f64 (log.f64 (/.f64 1 x.re)))))) (*.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (neg.f64 (log.f64 (/.f64 1 x.re)))))) (*.f64 (*.f64 (pow.f64 x.im 2) (/.f64 y.im (pow.f64 x.re 2))) -1/2)))
(+.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 1 x.re)) (neg.f64 y.im)))) (*.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 1 x.re)) (neg.f64 y.im)))) (*.f64 (*.f64 (pow.f64 x.im 2) (/.f64 y.im (pow.f64 x.re 2))) -1/2)))
(-.f64 (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 (+.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.re)) y.im)) (*.f64 y.re (atan2.f64 x.im x.re)))) (*.f64 y.im (pow.f64 x.im 2))) (pow.f64 x.re 2))) (+.f64 (*.f64 -1/8 (/.f64 (*.f64 (pow.f64 y.im 2) (*.f64 (pow.f64 x.im 4) (cos.f64 (+.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.re)) y.im)) (*.f64 y.re (atan2.f64 x.im x.re)))))) (pow.f64 x.re 4))) (cos.f64 (+.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.re)) y.im)) (*.f64 y.re (atan2.f64 x.im x.re)))))) (*.f64 -1/4 (/.f64 (*.f64 (sin.f64 (+.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.re)) y.im)) (*.f64 y.re (atan2.f64 x.im x.re)))) (*.f64 y.im (pow.f64 x.im 4))) (pow.f64 x.re 4))))
(+.f64 (+.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 1 x.re)) (*.f64 y.im -1)))) (*.f64 -1/8 (*.f64 (*.f64 (pow.f64 x.im 4) (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 1 x.re)) (*.f64 y.im -1))))) (/.f64 (pow.f64 y.im 2) (pow.f64 x.re 4))))) (-.f64 (*.f64 -1/2 (*.f64 (*.f64 y.im (pow.f64 x.im 2)) (/.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 1 x.re)) (*.f64 y.im -1)))) (pow.f64 x.re 2)))) (*.f64 -1/4 (*.f64 (*.f64 y.im (pow.f64 x.im 4)) (/.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 1 x.re)) (*.f64 y.im -1)))) (pow.f64 x.re 4))))))
(+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 1 x.re)) (neg.f64 y.im)))) (/.f64 (*.f64 y.im (pow.f64 x.im 2)) (pow.f64 x.re 2)))) (-.f64 (+.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 1 x.re)) (neg.f64 y.im)))) (*.f64 -1/8 (*.f64 (pow.f64 y.im 2) (/.f64 (*.f64 (pow.f64 x.im 4) (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 1 x.re)) (neg.f64 y.im))))) (pow.f64 x.re 4))))) (*.f64 -1/4 (*.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 1 x.re)) (neg.f64 y.im)))) (/.f64 (*.f64 y.im (pow.f64 x.im 4)) (pow.f64 x.re 4))))))
(+.f64 (+.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (neg.f64 (log.f64 (/.f64 1 x.re)))))) (*.f64 (*.f64 (pow.f64 y.im 2) (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (neg.f64 (log.f64 (/.f64 1 x.re))))))) (*.f64 (/.f64 (pow.f64 x.im 4) (pow.f64 x.re 4)) -1/8))) (-.f64 (*.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (neg.f64 (log.f64 (/.f64 1 x.re)))))) (*.f64 (*.f64 (pow.f64 x.im 2) (/.f64 y.im (pow.f64 x.re 2))) -1/2)) (*.f64 -1/4 (*.f64 y.im (/.f64 (*.f64 (pow.f64 x.im 4) (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (neg.f64 (log.f64 (/.f64 1 x.re))))))) (pow.f64 x.re 4))))))
(+.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 1 x.re)) (neg.f64 y.im)))) (+.f64 (*.f64 (*.f64 (pow.f64 y.im 2) (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 1 x.re)) (neg.f64 y.im))))) (*.f64 (/.f64 (pow.f64 x.im 4) (pow.f64 x.re 4)) -1/8)) (-.f64 (*.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 1 x.re)) (neg.f64 y.im)))) (*.f64 (*.f64 (pow.f64 x.im 2) (/.f64 y.im (pow.f64 x.re 2))) -1/2)) (*.f64 -1/4 (*.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 1 x.re)) (neg.f64 y.im)))) (*.f64 y.im (/.f64 (pow.f64 x.im 4) (pow.f64 x.re 4))))))))
(-.f64 (+.f64 (*.f64 1/8 (/.f64 (*.f64 (pow.f64 y.im 2) (*.f64 (pow.f64 x.im 6) (cos.f64 (+.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.re)) y.im)) (*.f64 y.re (atan2.f64 x.im x.re)))))) (pow.f64 x.re 6))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 (+.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.re)) y.im)) (*.f64 y.re (atan2.f64 x.im x.re)))) (*.f64 y.im (pow.f64 x.im 2))) (pow.f64 x.re 2))) (+.f64 (*.f64 -1/8 (/.f64 (*.f64 (pow.f64 y.im 2) (*.f64 (pow.f64 x.im 4) (cos.f64 (+.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.re)) y.im)) (*.f64 y.re (atan2.f64 x.im x.re)))))) (pow.f64 x.re 4))) (cos.f64 (+.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.re)) y.im)) (*.f64 y.re (atan2.f64 x.im x.re))))))) (+.f64 (/.f64 (*.f64 (+.f64 (*.f64 -1/48 (*.f64 (pow.f64 y.im 3) (pow.f64 x.im 6))) (*.f64 1/720 (*.f64 (+.f64 (*.f64 30 (pow.f64 x.im 6)) (*.f64 90 (pow.f64 x.im 6))) y.im))) (sin.f64 (+.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.re)) y.im)) (*.f64 y.re (atan2.f64 x.im x.re))))) (pow.f64 x.re 6)) (*.f64 -1/4 (/.f64 (*.f64 (sin.f64 (+.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.re)) y.im)) (*.f64 y.re (atan2.f64 x.im x.re)))) (*.f64 y.im (pow.f64 x.im 4))) (pow.f64 x.re 4)))))
(+.f64 (+.f64 (*.f64 -1/2 (*.f64 (*.f64 y.im (pow.f64 x.im 2)) (/.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 1 x.re)) (*.f64 y.im -1)))) (pow.f64 x.re 2)))) (+.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 1 x.re)) (*.f64 y.im -1)))) (*.f64 -1/8 (*.f64 (*.f64 (pow.f64 x.im 4) (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 1 x.re)) (*.f64 y.im -1))))) (/.f64 (pow.f64 y.im 2) (pow.f64 x.re 4)))))) (-.f64 (*.f64 1/8 (*.f64 (*.f64 (pow.f64 x.im 6) (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 1 x.re)) (*.f64 y.im -1))))) (/.f64 (pow.f64 y.im 2) (pow.f64 x.re 6)))) (+.f64 (*.f64 -1/4 (*.f64 (*.f64 y.im (pow.f64 x.im 4)) (/.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 1 x.re)) (*.f64 y.im -1)))) (pow.f64 x.re 4)))) (*.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 1 x.re)) (*.f64 y.im -1)))) (/.f64 (+.f64 (*.f64 -1/48 (*.f64 (pow.f64 x.im 6) (pow.f64 y.im 3))) (*.f64 (+.f64 (*.f64 (pow.f64 x.im 6) 30) (*.f64 (pow.f64 x.im 6) 90)) (*.f64 y.im 1/720))) (pow.f64 x.re 6))))))
(+.f64 (+.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 1 x.re)) (neg.f64 y.im)))) (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 y.im 2) (/.f64 (*.f64 (pow.f64 x.im 4) (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 1 x.re)) (neg.f64 y.im))))) (pow.f64 x.re 4)))) (*.f64 -1/2 (*.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 1 x.re)) (neg.f64 y.im)))) (/.f64 (*.f64 y.im (pow.f64 x.im 2)) (pow.f64 x.re 2)))))) (-.f64 (*.f64 1/8 (*.f64 (*.f64 (pow.f64 x.im 6) (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 1 x.re)) (neg.f64 y.im))))) (/.f64 (pow.f64 y.im 2) (pow.f64 x.re 6)))) (+.f64 (*.f64 -1/4 (*.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 1 x.re)) (neg.f64 y.im)))) (/.f64 (*.f64 y.im (pow.f64 x.im 4)) (pow.f64 x.re 4)))) (*.f64 (+.f64 (*.f64 (pow.f64 x.im 6) (*.f64 -1/48 (pow.f64 y.im 3))) (*.f64 y.im (*.f64 (*.f64 (pow.f64 x.im 6) 120) 1/720))) (/.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 1 x.re)) (neg.f64 y.im)))) (pow.f64 x.re 6))))))
(+.f64 (*.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (neg.f64 (log.f64 (/.f64 1 x.re)))))) (*.f64 (*.f64 (pow.f64 x.im 2) (/.f64 y.im (pow.f64 x.re 2))) -1/2)) (-.f64 (+.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (neg.f64 (log.f64 (/.f64 1 x.re)))))) (+.f64 (*.f64 (*.f64 (pow.f64 y.im 2) (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (neg.f64 (log.f64 (/.f64 1 x.re))))))) (*.f64 (/.f64 (pow.f64 x.im 4) (pow.f64 x.re 4)) -1/8)) (*.f64 1/8 (*.f64 (pow.f64 y.im 2) (*.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (neg.f64 (log.f64 (/.f64 1 x.re)))))) (/.f64 (pow.f64 x.im 6) (pow.f64 x.re 6))))))) (+.f64 (*.f64 -1/4 (*.f64 y.im (/.f64 (*.f64 (pow.f64 x.im 4) (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (neg.f64 (log.f64 (/.f64 1 x.re))))))) (pow.f64 x.re 4)))) (*.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (neg.f64 (log.f64 (/.f64 1 x.re)))))) (/.f64 (+.f64 (*.f64 (pow.f64 x.im 6) (*.f64 -1/48 (pow.f64 y.im 3))) (*.f64 y.im (*.f64 (pow.f64 x.im 6) 1/6))) (pow.f64 x.re 6))))))
(+.f64 (*.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 1 x.re)) (neg.f64 y.im)))) (*.f64 (*.f64 (pow.f64 x.im 2) (/.f64 y.im (pow.f64 x.re 2))) -1/2)) (+.f64 (+.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 1 x.re)) (neg.f64 y.im)))) (*.f64 (*.f64 (pow.f64 y.im 2) (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 1 x.re)) (neg.f64 y.im))))) (*.f64 (/.f64 (pow.f64 x.im 4) (pow.f64 x.re 4)) -1/8))) (-.f64 (*.f64 (pow.f64 y.im 2) (*.f64 (*.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 1 x.re)) (neg.f64 y.im)))) (/.f64 (pow.f64 x.im 6) (pow.f64 x.re 6))) 1/8)) (*.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 1 x.re)) (neg.f64 y.im)))) (+.f64 (/.f64 (*.f64 (pow.f64 x.im 6) (+.f64 (*.f64 -1/48 (pow.f64 y.im 3)) (*.f64 120 (*.f64 y.im 1/720)))) (pow.f64 x.re 6)) (*.f64 (*.f64 y.im (/.f64 (pow.f64 x.im 4) (pow.f64 x.re 4))) -1/4))))))
(cos.f64 (+.f64 (*.f64 -1 (*.f64 y.im (log.f64 (/.f64 -1 x.re)))) (*.f64 y.re (atan2.f64 x.im x.re))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (*.f64 (log.f64 (/.f64 -1 x.re)) -1))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 -1 x.re)) (neg.f64 y.im))))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 (+.f64 (*.f64 -1 (*.f64 y.im (log.f64 (/.f64 -1 x.re)))) (*.f64 y.re (atan2.f64 x.im x.re)))) (*.f64 y.im (pow.f64 x.im 2))) (pow.f64 x.re 2))) (cos.f64 (+.f64 (*.f64 -1 (*.f64 y.im (log.f64 (/.f64 -1 x.re)))) (*.f64 y.re (atan2.f64 x.im x.re)))))
(+.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (*.f64 (log.f64 (/.f64 -1 x.re)) -1)))) (*.f64 -1/2 (*.f64 (*.f64 y.im (pow.f64 x.im 2)) (/.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (*.f64 (log.f64 (/.f64 -1 x.re)) -1)))) (pow.f64 x.re 2)))))
(+.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 -1 x.re)) (neg.f64 y.im)))) (*.f64 -1/2 (*.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 -1 x.re)) (neg.f64 y.im)))) (/.f64 (*.f64 y.im (pow.f64 x.im 2)) (pow.f64 x.re 2)))))
(+.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 -1 x.re)) (neg.f64 y.im)))) (*.f64 -1/2 (*.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 -1 x.re)) (neg.f64 y.im)))) (*.f64 (pow.f64 x.im 2) (/.f64 y.im (pow.f64 x.re 2))))))
(-.f64 (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 (+.f64 (*.f64 -1 (*.f64 y.im (log.f64 (/.f64 -1 x.re)))) (*.f64 y.re (atan2.f64 x.im x.re)))) (*.f64 y.im (pow.f64 x.im 2))) (pow.f64 x.re 2))) (+.f64 (*.f64 -1/8 (/.f64 (*.f64 (cos.f64 (+.f64 (*.f64 -1 (*.f64 y.im (log.f64 (/.f64 -1 x.re)))) (*.f64 y.re (atan2.f64 x.im x.re)))) (*.f64 (pow.f64 y.im 2) (pow.f64 x.im 4))) (pow.f64 x.re 4))) (cos.f64 (+.f64 (*.f64 -1 (*.f64 y.im (log.f64 (/.f64 -1 x.re)))) (*.f64 y.re (atan2.f64 x.im x.re)))))) (*.f64 -1/4 (/.f64 (*.f64 (sin.f64 (+.f64 (*.f64 -1 (*.f64 y.im (log.f64 (/.f64 -1 x.re)))) (*.f64 y.re (atan2.f64 x.im x.re)))) (*.f64 y.im (pow.f64 x.im 4))) (pow.f64 x.re 4))))
(+.f64 (+.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (*.f64 (log.f64 (/.f64 -1 x.re)) -1)))) (*.f64 -1/8 (*.f64 (*.f64 (pow.f64 y.im 2) (pow.f64 x.im 4)) (/.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (*.f64 (log.f64 (/.f64 -1 x.re)) -1)))) (pow.f64 x.re 4))))) (-.f64 (*.f64 -1/2 (*.f64 (*.f64 y.im (pow.f64 x.im 2)) (/.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (*.f64 (log.f64 (/.f64 -1 x.re)) -1)))) (pow.f64 x.re 2)))) (*.f64 -1/4 (*.f64 (*.f64 y.im (pow.f64 x.im 4)) (/.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (*.f64 (log.f64 (/.f64 -1 x.re)) -1)))) (pow.f64 x.re 4))))))
(+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 -1 x.re)) (neg.f64 y.im)))) (/.f64 (*.f64 y.im (pow.f64 x.im 2)) (pow.f64 x.re 2)))) (-.f64 (+.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 -1 x.re)) (neg.f64 y.im)))) (*.f64 -1/8 (*.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 -1 x.re)) (neg.f64 y.im)))) (/.f64 (*.f64 (pow.f64 y.im 2) (pow.f64 x.im 4)) (pow.f64 x.re 4))))) (*.f64 -1/4 (*.f64 (*.f64 y.im (pow.f64 x.im 4)) (/.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 -1 x.re)) (neg.f64 y.im)))) (pow.f64 x.re 4))))))
(+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 -1 x.re)) (neg.f64 y.im)))) (*.f64 (pow.f64 x.im 2) (/.f64 y.im (pow.f64 x.re 2))))) (-.f64 (+.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 -1 x.re)) (neg.f64 y.im)))) (*.f64 -1/8 (*.f64 (pow.f64 y.im 2) (*.f64 (pow.f64 x.im 4) (/.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 -1 x.re)) (neg.f64 y.im)))) (pow.f64 x.re 4)))))) (*.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 -1 x.re)) (neg.f64 y.im)))) (*.f64 (*.f64 y.im (/.f64 (pow.f64 x.im 4) (pow.f64 x.re 4))) -1/4))))
(+.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 -1 x.re)) (neg.f64 y.im)))) (+.f64 (*.f64 -1/8 (*.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 -1 x.re)) (neg.f64 y.im)))) (*.f64 (pow.f64 y.im 2) (/.f64 (pow.f64 x.im 4) (pow.f64 x.re 4))))) (-.f64 (*.f64 -1/2 (*.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 -1 x.re)) (neg.f64 y.im)))) (*.f64 (pow.f64 x.im 2) (/.f64 y.im (pow.f64 x.re 2))))) (*.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 -1 x.re)) (neg.f64 y.im)))) (*.f64 (*.f64 y.im (/.f64 (pow.f64 x.im 4) (pow.f64 x.re 4))) -1/4)))))
(-.f64 (+.f64 (*.f64 1/8 (/.f64 (*.f64 (cos.f64 (+.f64 (*.f64 -1 (*.f64 y.im (log.f64 (/.f64 -1 x.re)))) (*.f64 y.re (atan2.f64 x.im x.re)))) (*.f64 (pow.f64 y.im 2) (pow.f64 x.im 6))) (pow.f64 x.re 6))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 (+.f64 (*.f64 -1 (*.f64 y.im (log.f64 (/.f64 -1 x.re)))) (*.f64 y.re (atan2.f64 x.im x.re)))) (*.f64 y.im (pow.f64 x.im 2))) (pow.f64 x.re 2))) (+.f64 (*.f64 -1/8 (/.f64 (*.f64 (cos.f64 (+.f64 (*.f64 -1 (*.f64 y.im (log.f64 (/.f64 -1 x.re)))) (*.f64 y.re (atan2.f64 x.im x.re)))) (*.f64 (pow.f64 y.im 2) (pow.f64 x.im 4))) (pow.f64 x.re 4))) (cos.f64 (+.f64 (*.f64 -1 (*.f64 y.im (log.f64 (/.f64 -1 x.re)))) (*.f64 y.re (atan2.f64 x.im x.re))))))) (+.f64 (/.f64 (*.f64 (+.f64 (*.f64 -1/48 (*.f64 (pow.f64 y.im 3) (pow.f64 x.im 6))) (*.f64 1/720 (*.f64 (+.f64 (*.f64 30 (pow.f64 x.im 6)) (*.f64 90 (pow.f64 x.im 6))) y.im))) (sin.f64 (+.f64 (*.f64 -1 (*.f64 y.im (log.f64 (/.f64 -1 x.re)))) (*.f64 y.re (atan2.f64 x.im x.re))))) (pow.f64 x.re 6)) (*.f64 -1/4 (/.f64 (*.f64 (sin.f64 (+.f64 (*.f64 -1 (*.f64 y.im (log.f64 (/.f64 -1 x.re)))) (*.f64 y.re (atan2.f64 x.im x.re)))) (*.f64 y.im (pow.f64 x.im 4))) (pow.f64 x.re 4)))))
(+.f64 (+.f64 (*.f64 -1/2 (*.f64 (*.f64 y.im (pow.f64 x.im 2)) (/.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (*.f64 (log.f64 (/.f64 -1 x.re)) -1)))) (pow.f64 x.re 2)))) (+.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (*.f64 (log.f64 (/.f64 -1 x.re)) -1)))) (*.f64 -1/8 (*.f64 (*.f64 (pow.f64 y.im 2) (pow.f64 x.im 4)) (/.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (*.f64 (log.f64 (/.f64 -1 x.re)) -1)))) (pow.f64 x.re 4)))))) (-.f64 (*.f64 1/8 (*.f64 (*.f64 (pow.f64 y.im 2) (pow.f64 x.im 6)) (/.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (*.f64 (log.f64 (/.f64 -1 x.re)) -1)))) (pow.f64 x.re 6)))) (+.f64 (*.f64 -1/4 (*.f64 (*.f64 y.im (pow.f64 x.im 4)) (/.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (*.f64 (log.f64 (/.f64 -1 x.re)) -1)))) (pow.f64 x.re 4)))) (/.f64 (*.f64 (+.f64 (*.f64 -1/48 (*.f64 (pow.f64 x.im 6) (pow.f64 y.im 3))) (*.f64 (+.f64 (*.f64 (pow.f64 x.im 6) 30) (*.f64 (pow.f64 x.im 6) 90)) (*.f64 y.im 1/720))) (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (*.f64 (log.f64 (/.f64 -1 x.re)) -1))))) (pow.f64 x.re 6)))))
(+.f64 (+.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 -1 x.re)) (neg.f64 y.im)))) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 -1 x.re)) (neg.f64 y.im)))) (/.f64 (*.f64 y.im (pow.f64 x.im 2)) (pow.f64 x.re 2)))) (*.f64 -1/8 (*.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 -1 x.re)) (neg.f64 y.im)))) (/.f64 (*.f64 (pow.f64 y.im 2) (pow.f64 x.im 4)) (pow.f64 x.re 4)))))) (-.f64 (*.f64 1/8 (*.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 -1 x.re)) (neg.f64 y.im)))) (/.f64 (*.f64 (pow.f64 y.im 2) (pow.f64 x.im 6)) (pow.f64 x.re 6)))) (+.f64 (*.f64 -1/4 (*.f64 (*.f64 y.im (pow.f64 x.im 4)) (/.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 -1 x.re)) (neg.f64 y.im)))) (pow.f64 x.re 4)))) (*.f64 (+.f64 (*.f64 (pow.f64 x.im 6) (*.f64 -1/48 (pow.f64 y.im 3))) (*.f64 y.im (*.f64 (*.f64 (pow.f64 x.im 6) 120) 1/720))) (/.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 -1 x.re)) (neg.f64 y.im)))) (pow.f64 x.re 6))))))
(+.f64 (*.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 -1 x.re)) (neg.f64 y.im)))) (*.f64 (*.f64 (pow.f64 x.im 6) (/.f64 (pow.f64 y.im 2) (pow.f64 x.re 6))) 1/8)) (-.f64 (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 -1 x.re)) (neg.f64 y.im)))) (*.f64 (pow.f64 x.im 2) (/.f64 y.im (pow.f64 x.re 2))))) (+.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 -1 x.re)) (neg.f64 y.im)))) (*.f64 -1/8 (*.f64 (pow.f64 y.im 2) (*.f64 (pow.f64 x.im 4) (/.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 -1 x.re)) (neg.f64 y.im)))) (pow.f64 x.re 4))))))) (+.f64 (*.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 -1 x.re)) (neg.f64 y.im)))) (*.f64 (*.f64 y.im (/.f64 (pow.f64 x.im 4) (pow.f64 x.re 4))) -1/4)) (*.f64 (+.f64 (*.f64 (pow.f64 x.im 6) (*.f64 -1/48 (pow.f64 y.im 3))) (*.f64 y.im (*.f64 (pow.f64 x.im 6) 1/6))) (/.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 -1 x.re)) (neg.f64 y.im)))) (pow.f64 x.re 6))))))
(+.f64 (+.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 -1 x.re)) (neg.f64 y.im)))) (*.f64 -1/2 (*.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 -1 x.re)) (neg.f64 y.im)))) (*.f64 (pow.f64 x.im 2) (/.f64 y.im (pow.f64 x.re 2)))))) (+.f64 (*.f64 -1/8 (*.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 -1 x.re)) (neg.f64 y.im)))) (*.f64 (pow.f64 y.im 2) (/.f64 (pow.f64 x.im 4) (pow.f64 x.re 4))))) (-.f64 (*.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 -1 x.re)) (neg.f64 y.im)))) (*.f64 (*.f64 (pow.f64 x.im 6) (/.f64 (pow.f64 y.im 2) (pow.f64 x.re 6))) 1/8)) (*.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 -1 x.re)) (neg.f64 y.im)))) (+.f64 (/.f64 (*.f64 (pow.f64 x.im 6) (+.f64 (*.f64 -1/48 (pow.f64 y.im 3)) (*.f64 120 (*.f64 y.im 1/720)))) (pow.f64 x.re 6)) (*.f64 (*.f64 y.im (/.f64 (pow.f64 x.im 4) (pow.f64 x.re 4))) -1/4))))))
(cos.f64 (+.f64 (*.f64 y.im (log.f64 x.re)) (*.f64 y.re (atan2.f64 x.im x.re))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.re))))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 y.im (*.f64 (pow.f64 x.im 2) (sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 y.re (atan2.f64 x.im x.re)))))) (pow.f64 x.re 2))) (cos.f64 (+.f64 (*.f64 y.im (log.f64 x.re)) (*.f64 y.re (atan2.f64 x.im x.re)))))
(+.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.re)))) (*.f64 -1/2 (*.f64 (*.f64 (pow.f64 x.im 2) (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.re))))) (/.f64 y.im (pow.f64 x.re 2)))))
(+.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.re)))) (*.f64 -1/2 (*.f64 y.im (/.f64 (*.f64 (pow.f64 x.im 2) (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.re))))) (pow.f64 x.re 2)))))
(+.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.re)))) (*.f64 -1/2 (*.f64 y.im (*.f64 (pow.f64 x.im 2) (/.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.re)))) (pow.f64 x.re 2))))))
(+.f64 (*.f64 (pow.f64 x.im 4) (-.f64 (*.f64 -1/8 (/.f64 (*.f64 (pow.f64 y.im 2) (cos.f64 (+.f64 (*.f64 y.im (log.f64 x.re)) (*.f64 y.re (atan2.f64 x.im x.re))))) (pow.f64 x.re 4))) (*.f64 -1/4 (/.f64 (*.f64 y.im (sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 y.re (atan2.f64 x.im x.re))))) (pow.f64 x.re 4))))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 y.im (*.f64 (pow.f64 x.im 2) (sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 y.re (atan2.f64 x.im x.re)))))) (pow.f64 x.re 2))) (cos.f64 (+.f64 (*.f64 y.im (log.f64 x.re)) (*.f64 y.re (atan2.f64 x.im x.re))))))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (pow.f64 x.im 2) (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.re))))) (/.f64 y.im (pow.f64 x.re 2)))) (+.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.re)))) (*.f64 (pow.f64 x.im 4) (-.f64 (*.f64 -1/8 (*.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.re)))) (/.f64 (pow.f64 y.im 2) (pow.f64 x.re 4)))) (*.f64 -1/4 (*.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.re)))) (/.f64 y.im (pow.f64 x.re 4))))))))
(+.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.re)))) (+.f64 (*.f64 (pow.f64 x.im 4) (-.f64 (*.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.re)))) (*.f64 (/.f64 (pow.f64 y.im 2) (pow.f64 x.re 4)) -1/8)) (*.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.re)))) (*.f64 (/.f64 y.im (pow.f64 x.re 4)) -1/4)))) (*.f64 -1/2 (*.f64 y.im (/.f64 (*.f64 (pow.f64 x.im 2) (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.re))))) (pow.f64 x.re 2))))))
(+.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.re)))) (+.f64 (*.f64 -1/2 (*.f64 y.im (*.f64 (pow.f64 x.im 2) (/.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.re)))) (pow.f64 x.re 2))))) (*.f64 (pow.f64 x.im 4) (-.f64 (*.f64 -1/8 (*.f64 (pow.f64 y.im 2) (/.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.re)))) (pow.f64 x.re 4)))) (*.f64 -1/4 (*.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.re)))) (/.f64 y.im (pow.f64 x.re 4))))))))
(+.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.re)))) (+.f64 (*.f64 -1/2 (*.f64 y.im (*.f64 (pow.f64 x.im 2) (/.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.re)))) (pow.f64 x.re 2))))) (*.f64 (pow.f64 x.im 4) (-.f64 (*.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.re)))) (*.f64 -1/8 (/.f64 (pow.f64 y.im 2) (pow.f64 x.re 4)))) (*.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.re)))) (*.f64 -1/4 (/.f64 y.im (pow.f64 x.re 4))))))))
(+.f64 (*.f64 (pow.f64 x.im 6) (-.f64 (*.f64 1/8 (/.f64 (*.f64 (pow.f64 y.im 2) (cos.f64 (+.f64 (*.f64 y.im (log.f64 x.re)) (*.f64 y.re (atan2.f64 x.im x.re))))) (pow.f64 x.re 6))) (*.f64 (+.f64 (*.f64 -1/48 (/.f64 (pow.f64 y.im 3) (pow.f64 x.re 6))) (*.f64 1/6 (/.f64 y.im (pow.f64 x.re 6)))) (sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 y.re (atan2.f64 x.im x.re))))))) (+.f64 (*.f64 (pow.f64 x.im 4) (-.f64 (*.f64 -1/8 (/.f64 (*.f64 (pow.f64 y.im 2) (cos.f64 (+.f64 (*.f64 y.im (log.f64 x.re)) (*.f64 y.re (atan2.f64 x.im x.re))))) (pow.f64 x.re 4))) (*.f64 -1/4 (/.f64 (*.f64 y.im (sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 y.re (atan2.f64 x.im x.re))))) (pow.f64 x.re 4))))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 y.im (*.f64 (pow.f64 x.im 2) (sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 y.re (atan2.f64 x.im x.re)))))) (pow.f64 x.re 2))) (cos.f64 (+.f64 (*.f64 y.im (log.f64 x.re)) (*.f64 y.re (atan2.f64 x.im x.re)))))))
(+.f64 (*.f64 (pow.f64 x.im 4) (-.f64 (*.f64 -1/8 (*.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.re)))) (/.f64 (pow.f64 y.im 2) (pow.f64 x.re 4)))) (*.f64 -1/4 (*.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.re)))) (/.f64 y.im (pow.f64 x.re 4)))))) (+.f64 (+.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.re)))) (*.f64 -1/2 (*.f64 (*.f64 (pow.f64 x.im 2) (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.re))))) (/.f64 y.im (pow.f64 x.re 2))))) (*.f64 (pow.f64 x.im 6) (-.f64 (*.f64 1/8 (*.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.re)))) (/.f64 (pow.f64 y.im 2) (pow.f64 x.re 6)))) (*.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.re)))) (+.f64 (*.f64 -1/48 (/.f64 (pow.f64 y.im 3) (pow.f64 x.re 6))) (*.f64 1/6 (/.f64 y.im (pow.f64 x.re 6)))))))))
(+.f64 (*.f64 (pow.f64 x.im 4) (-.f64 (*.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.re)))) (*.f64 (/.f64 (pow.f64 y.im 2) (pow.f64 x.re 4)) -1/8)) (*.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.re)))) (*.f64 (/.f64 y.im (pow.f64 x.re 4)) -1/4)))) (+.f64 (+.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.re)))) (*.f64 -1/2 (*.f64 y.im (/.f64 (*.f64 (pow.f64 x.im 2) (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.re))))) (pow.f64 x.re 2))))) (*.f64 (pow.f64 x.im 6) (-.f64 (*.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.re)))) (*.f64 (/.f64 (pow.f64 y.im 2) (pow.f64 x.re 6)) 1/8)) (*.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.re)))) (+.f64 (*.f64 -1/48 (/.f64 (pow.f64 y.im 3) (pow.f64 x.re 6))) (*.f64 1/6 (/.f64 y.im (pow.f64 x.re 6)))))))))
(+.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.re)))) (+.f64 (+.f64 (*.f64 -1/2 (*.f64 y.im (*.f64 (pow.f64 x.im 2) (/.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.re)))) (pow.f64 x.re 2))))) (*.f64 (pow.f64 x.im 4) (-.f64 (*.f64 -1/8 (*.f64 (pow.f64 y.im 2) (/.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.re)))) (pow.f64 x.re 4)))) (*.f64 -1/4 (*.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.re)))) (/.f64 y.im (pow.f64 x.re 4))))))) (*.f64 (pow.f64 x.im 6) (-.f64 (*.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.re)))) (*.f64 1/8 (/.f64 (pow.f64 y.im 2) (pow.f64 x.re 6)))) (*.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.re)))) (+.f64 (*.f64 -1/48 (/.f64 (pow.f64 y.im 3) (pow.f64 x.re 6))) (*.f64 1/6 (/.f64 y.im (pow.f64 x.re 6)))))))))
(+.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.re)))) (+.f64 (+.f64 (*.f64 -1/2 (*.f64 y.im (*.f64 (pow.f64 x.im 2) (/.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.re)))) (pow.f64 x.re 2))))) (*.f64 (pow.f64 x.im 4) (-.f64 (*.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.re)))) (*.f64 -1/8 (/.f64 (pow.f64 y.im 2) (pow.f64 x.re 4)))) (*.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.re)))) (*.f64 -1/4 (/.f64 y.im (pow.f64 x.re 4))))))) (*.f64 (pow.f64 x.im 6) (-.f64 (*.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.re)))) (*.f64 1/8 (/.f64 (pow.f64 y.im 2) (pow.f64 x.re 6)))) (*.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.re)))) (+.f64 (*.f64 -1/48 (/.f64 (pow.f64 y.im 3) (pow.f64 x.re 6))) (*.f64 1/6 (/.f64 y.im (pow.f64 x.re 6)))))))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.im)) y.im))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 1 x.im)) (*.f64 y.im -1))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 1 x.im)) (neg.f64 y.im))))
(+.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.im)) y.im)))) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 x.re 2) (*.f64 y.im (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.im)) y.im)))))) (pow.f64 x.im 2))))
(+.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 1 x.im)) (*.f64 y.im -1)))) (*.f64 -1/2 (*.f64 (*.f64 y.im (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 1 x.im)) (*.f64 y.im -1))))) (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))))
(+.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 1 x.im)) (neg.f64 y.im)))) (*.f64 -1/2 (*.f64 (pow.f64 x.re 2) (/.f64 (*.f64 y.im (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 1 x.im)) (neg.f64 y.im))))) (pow.f64 x.im 2)))))
(+.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 1 x.im)) (neg.f64 y.im)))) (*.f64 -1/2 (*.f64 y.im (*.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 1 x.im)) (neg.f64 y.im)))) (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2))))))
(-.f64 (+.f64 (*.f64 -1/8 (/.f64 (*.f64 (pow.f64 x.re 4) (*.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.im)) y.im)))) (pow.f64 y.im 2))) (pow.f64 x.im 4))) (+.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.im)) y.im)))) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 x.re 2) (*.f64 y.im (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.im)) y.im)))))) (pow.f64 x.im 2))))) (*.f64 -1/4 (/.f64 (*.f64 (pow.f64 x.re 4) (*.f64 y.im (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.im)) y.im)))))) (pow.f64 x.im 4))))
(+.f64 (+.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 1 x.im)) (*.f64 y.im -1)))) (*.f64 -1/2 (*.f64 (*.f64 y.im (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 1 x.im)) (*.f64 y.im -1))))) (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2))))) (-.f64 (*.f64 -1/8 (*.f64 (*.f64 (pow.f64 y.im 2) (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 1 x.im)) (*.f64 y.im -1))))) (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4)))) (*.f64 -1/4 (*.f64 (*.f64 y.im (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 1 x.im)) (*.f64 y.im -1))))) (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4))))))
(+.f64 (+.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 1 x.im)) (neg.f64 y.im)))) (*.f64 -1/2 (*.f64 (pow.f64 x.re 2) (/.f64 (*.f64 y.im (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 1 x.im)) (neg.f64 y.im))))) (pow.f64 x.im 2))))) (-.f64 (*.f64 -1/8 (*.f64 (*.f64 (pow.f64 y.im 2) (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 1 x.im)) (neg.f64 y.im))))) (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4)))) (*.f64 -1/4 (*.f64 (*.f64 y.im (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 1 x.im)) (neg.f64 y.im))))) (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4))))))
(+.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 1 x.im)) (neg.f64 y.im)))) (-.f64 (+.f64 (*.f64 -1/2 (*.f64 y.im (*.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 1 x.im)) (neg.f64 y.im)))) (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2))))) (*.f64 (pow.f64 x.re 4) (*.f64 (*.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 1 x.im)) (neg.f64 y.im)))) (/.f64 (pow.f64 y.im 2) (pow.f64 x.im 4))) -1/8))) (*.f64 (pow.f64 x.re 4) (*.f64 (*.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 1 x.im)) (neg.f64 y.im)))) (/.f64 y.im (pow.f64 x.im 4))) -1/4))))
(+.f64 (*.f64 (pow.f64 x.re 4) (*.f64 (*.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 1 x.im)) (neg.f64 y.im)))) (/.f64 (pow.f64 y.im 2) (pow.f64 x.im 4))) -1/8)) (+.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 1 x.im)) (neg.f64 y.im)))) (*.f64 (*.f64 y.im (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 1 x.im)) (neg.f64 y.im))))) (-.f64 (*.f64 -1/2 (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2))) (*.f64 -1/4 (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4)))))))
(-.f64 (+.f64 (*.f64 -1/8 (/.f64 (*.f64 (pow.f64 x.re 4) (*.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.im)) y.im)))) (pow.f64 y.im 2))) (pow.f64 x.im 4))) (+.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.im)) y.im)))) (+.f64 (*.f64 1/8 (/.f64 (*.f64 (pow.f64 x.re 6) (*.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.im)) y.im)))) (pow.f64 y.im 2))) (pow.f64 x.im 6))) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 x.re 2) (*.f64 y.im (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.im)) y.im)))))) (pow.f64 x.im 2)))))) (+.f64 (/.f64 (*.f64 (+.f64 (*.f64 -1/48 (*.f64 (pow.f64 x.re 6) (pow.f64 y.im 3))) (*.f64 1/720 (*.f64 y.im (+.f64 (*.f64 30 (pow.f64 x.re 6)) (*.f64 90 (pow.f64 x.re 6)))))) (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.im)) y.im))))) (pow.f64 x.im 6)) (*.f64 -1/4 (/.f64 (*.f64 (pow.f64 x.re 4) (*.f64 y.im (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.im)) y.im)))))) (pow.f64 x.im 4)))))
(+.f64 (+.f64 (*.f64 1/8 (*.f64 (*.f64 (pow.f64 y.im 2) (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 1 x.im)) (*.f64 y.im -1))))) (/.f64 (pow.f64 x.re 6) (pow.f64 x.im 6)))) (+.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 1 x.im)) (*.f64 y.im -1)))) (*.f64 -1/2 (*.f64 (*.f64 y.im (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 1 x.im)) (*.f64 y.im -1))))) (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))))) (-.f64 (*.f64 -1/8 (*.f64 (*.f64 (pow.f64 y.im 2) (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 1 x.im)) (*.f64 y.im -1))))) (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4)))) (+.f64 (*.f64 -1/4 (*.f64 (*.f64 y.im (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 1 x.im)) (*.f64 y.im -1))))) (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4)))) (*.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 1 x.im)) (*.f64 y.im -1)))) (/.f64 (+.f64 (*.f64 (pow.f64 x.re 6) (*.f64 (pow.f64 y.im 3) -1/48)) (*.f64 y.im (*.f64 (+.f64 (*.f64 (pow.f64 x.re 6) 30) (*.f64 (pow.f64 x.re 6) 90)) 1/720))) (pow.f64 x.im 6))))))
(+.f64 (*.f64 -1/8 (*.f64 (*.f64 (pow.f64 y.im 2) (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 1 x.im)) (neg.f64 y.im))))) (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4)))) (-.f64 (+.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 1 x.im)) (neg.f64 y.im)))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x.re 2) (/.f64 (*.f64 y.im (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 1 x.im)) (neg.f64 y.im))))) (pow.f64 x.im 2)))) (*.f64 (*.f64 (pow.f64 y.im 2) (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 1 x.im)) (neg.f64 y.im))))) (*.f64 (/.f64 (pow.f64 x.re 6) (pow.f64 x.im 6)) 1/8)))) (+.f64 (*.f64 -1/4 (*.f64 (*.f64 y.im (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 1 x.im)) (neg.f64 y.im))))) (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4)))) (*.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 1 x.im)) (neg.f64 y.im)))) (/.f64 (+.f64 (*.f64 (pow.f64 x.re 6) (*.f64 -1/48 (pow.f64 y.im 3))) (*.f64 y.im (*.f64 1/720 (*.f64 (pow.f64 x.re 6) 120)))) (pow.f64 x.im 6))))))
(-.f64 (+.f64 (+.f64 (*.f64 -1/2 (*.f64 y.im (*.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 1 x.im)) (neg.f64 y.im)))) (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2))))) (*.f64 (pow.f64 x.re 4) (*.f64 (*.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 1 x.im)) (neg.f64 y.im)))) (/.f64 (pow.f64 y.im 2) (pow.f64 x.im 4))) -1/8))) (+.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 1 x.im)) (neg.f64 y.im)))) (*.f64 (pow.f64 x.re 6) (*.f64 (*.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 1 x.im)) (neg.f64 y.im)))) (/.f64 (pow.f64 y.im 2) (pow.f64 x.im 6))) 1/8)))) (+.f64 (*.f64 (pow.f64 x.re 4) (*.f64 (*.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 1 x.im)) (neg.f64 y.im)))) (/.f64 y.im (pow.f64 x.im 4))) -1/4)) (/.f64 (*.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 1 x.im)) (neg.f64 y.im)))) (+.f64 (*.f64 (pow.f64 x.re 6) (*.f64 -1/48 (pow.f64 y.im 3))) (*.f64 y.im (*.f64 (pow.f64 x.re 6) 1/6)))) (pow.f64 x.im 6))))
(+.f64 (+.f64 (*.f64 -1/2 (*.f64 y.im (*.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 1 x.im)) (neg.f64 y.im)))) (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2))))) (*.f64 (*.f64 (pow.f64 y.im 2) (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 1 x.im)) (neg.f64 y.im))))) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4))) (*.f64 1/8 (/.f64 (pow.f64 x.re 6) (pow.f64 x.im 6)))))) (-.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 1 x.im)) (neg.f64 y.im)))) (+.f64 (*.f64 (pow.f64 x.re 4) (*.f64 (*.f64 y.im (/.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 1 x.im)) (neg.f64 y.im)))) (pow.f64 x.im 4))) -1/4)) (*.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 1 x.im)) (neg.f64 y.im)))) (/.f64 (+.f64 (*.f64 (pow.f64 y.im 3) (*.f64 (pow.f64 x.re 6) -1/48)) (*.f64 y.im (*.f64 (pow.f64 x.re 6) 1/6))) (pow.f64 x.im 6))))))
(cos.f64 (+.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 -1 x.im)) y.im)) (*.f64 y.re (atan2.f64 x.im x.re))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 -1 x.im)) (*.f64 y.im -1))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 -1 x.im)) (neg.f64 y.im))))
(+.f64 (cos.f64 (+.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 -1 x.im)) y.im)) (*.f64 y.re (atan2.f64 x.im x.re)))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 (+.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 -1 x.im)) y.im)) (*.f64 y.re (atan2.f64 x.im x.re)))) (*.f64 (pow.f64 x.re 2) y.im)) (pow.f64 x.im 2))))
(+.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 -1 x.im)) (*.f64 y.im -1)))) (*.f64 -1/2 (*.f64 (*.f64 y.im (pow.f64 x.re 2)) (/.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 -1 x.im)) (*.f64 y.im -1)))) (pow.f64 x.im 2)))))
(+.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 -1 x.im)) (neg.f64 y.im)))) (*.f64 -1/2 (*.f64 (*.f64 y.im (pow.f64 x.re 2)) (/.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 -1 x.im)) (neg.f64 y.im)))) (pow.f64 x.im 2)))))
(+.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 -1 x.im)) (neg.f64 y.im)))) (*.f64 -1/2 (*.f64 y.im (*.f64 (pow.f64 x.re 2) (/.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 -1 x.im)) (neg.f64 y.im)))) (pow.f64 x.im 2))))))
(+.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 -1 x.im)) (neg.f64 y.im)))) (*.f64 -1/2 (*.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 -1 x.im)) (neg.f64 y.im)))) (*.f64 y.im (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2))))))
(-.f64 (+.f64 (*.f64 -1/8 (/.f64 (*.f64 (pow.f64 x.re 4) (*.f64 (cos.f64 (+.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 -1 x.im)) y.im)) (*.f64 y.re (atan2.f64 x.im x.re)))) (pow.f64 y.im 2))) (pow.f64 x.im 4))) (+.f64 (cos.f64 (+.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 -1 x.im)) y.im)) (*.f64 y.re (atan2.f64 x.im x.re)))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 (+.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 -1 x.im)) y.im)) (*.f64 y.re (atan2.f64 x.im x.re)))) (*.f64 (pow.f64 x.re 2) y.im)) (pow.f64 x.im 2))))) (*.f64 -1/4 (/.f64 (*.f64 (sin.f64 (+.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 -1 x.im)) y.im)) (*.f64 y.re (atan2.f64 x.im x.re)))) (*.f64 (pow.f64 x.re 4) y.im)) (pow.f64 x.im 4))))
(+.f64 (+.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 -1 x.im)) (*.f64 y.im -1)))) (*.f64 -1/2 (*.f64 (*.f64 y.im (pow.f64 x.re 2)) (/.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 -1 x.im)) (*.f64 y.im -1)))) (pow.f64 x.im 2))))) (-.f64 (*.f64 -1/8 (*.f64 (*.f64 (pow.f64 y.im 2) (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 -1 x.im)) (*.f64 y.im -1))))) (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4)))) (*.f64 -1/4 (*.f64 (*.f64 y.im (pow.f64 x.re 4)) (/.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 -1 x.im)) (*.f64 y.im -1)))) (pow.f64 x.im 4))))))
(+.f64 (+.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 -1 x.im)) (neg.f64 y.im)))) (*.f64 -1/2 (*.f64 (*.f64 y.im (pow.f64 x.re 2)) (/.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 -1 x.im)) (neg.f64 y.im)))) (pow.f64 x.im 2))))) (-.f64 (*.f64 -1/8 (*.f64 (*.f64 (pow.f64 x.re 4) (pow.f64 y.im 2)) (/.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 -1 x.im)) (neg.f64 y.im)))) (pow.f64 x.im 4)))) (*.f64 -1/4 (*.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 -1 x.im)) (neg.f64 y.im)))) (/.f64 (*.f64 y.im (pow.f64 x.re 4)) (pow.f64 x.im 4))))))
(+.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 -1 x.im)) (neg.f64 y.im)))) (+.f64 (*.f64 -1/2 (*.f64 y.im (*.f64 (pow.f64 x.re 2) (/.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 -1 x.im)) (neg.f64 y.im)))) (pow.f64 x.im 2))))) (-.f64 (*.f64 -1/8 (*.f64 (pow.f64 x.re 4) (*.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 -1 x.im)) (neg.f64 y.im)))) (/.f64 (pow.f64 y.im 2) (pow.f64 x.im 4))))) (*.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 -1 x.im)) (neg.f64 y.im)))) (*.f64 (*.f64 y.im (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4))) -1/4)))))
(+.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 -1 x.im)) (neg.f64 y.im)))) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 -1 x.im)) (neg.f64 y.im)))) (*.f64 y.im (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2))))) (-.f64 (*.f64 (pow.f64 x.re 4) (*.f64 (*.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 -1 x.im)) (neg.f64 y.im)))) (/.f64 (pow.f64 y.im 2) (pow.f64 x.im 4))) -1/8)) (*.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 -1 x.im)) (neg.f64 y.im)))) (*.f64 (*.f64 y.im (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4))) -1/4)))))
(-.f64 (+.f64 (*.f64 1/8 (/.f64 (*.f64 (pow.f64 x.re 6) (*.f64 (cos.f64 (+.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 -1 x.im)) y.im)) (*.f64 y.re (atan2.f64 x.im x.re)))) (pow.f64 y.im 2))) (pow.f64 x.im 6))) (+.f64 (*.f64 -1/8 (/.f64 (*.f64 (pow.f64 x.re 4) (*.f64 (cos.f64 (+.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 -1 x.im)) y.im)) (*.f64 y.re (atan2.f64 x.im x.re)))) (pow.f64 y.im 2))) (pow.f64 x.im 4))) (+.f64 (cos.f64 (+.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 -1 x.im)) y.im)) (*.f64 y.re (atan2.f64 x.im x.re)))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 (+.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 -1 x.im)) y.im)) (*.f64 y.re (atan2.f64 x.im x.re)))) (*.f64 (pow.f64 x.re 2) y.im)) (pow.f64 x.im 2)))))) (+.f64 (/.f64 (*.f64 (sin.f64 (+.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 -1 x.im)) y.im)) (*.f64 y.re (atan2.f64 x.im x.re)))) (+.f64 (*.f64 -1/48 (*.f64 (pow.f64 x.re 6) (pow.f64 y.im 3))) (*.f64 1/720 (*.f64 y.im (+.f64 (*.f64 30 (pow.f64 x.re 6)) (*.f64 90 (pow.f64 x.re 6))))))) (pow.f64 x.im 6)) (*.f64 -1/4 (/.f64 (*.f64 (sin.f64 (+.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 -1 x.im)) y.im)) (*.f64 y.re (atan2.f64 x.im x.re)))) (*.f64 (pow.f64 x.re 4) y.im)) (pow.f64 x.im 4)))))
(+.f64 (+.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 -1 x.im)) (*.f64 y.im -1)))) (+.f64 (*.f64 -1/2 (*.f64 (*.f64 y.im (pow.f64 x.re 2)) (/.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 -1 x.im)) (*.f64 y.im -1)))) (pow.f64 x.im 2)))) (*.f64 -1/8 (*.f64 (*.f64 (pow.f64 y.im 2) (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 -1 x.im)) (*.f64 y.im -1))))) (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4)))))) (-.f64 (*.f64 1/8 (*.f64 (*.f64 (pow.f64 y.im 2) (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 -1 x.im)) (*.f64 y.im -1))))) (/.f64 (pow.f64 x.re 6) (pow.f64 x.im 6)))) (+.f64 (*.f64 -1/4 (*.f64 (*.f64 y.im (pow.f64 x.re 4)) (/.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 -1 x.im)) (*.f64 y.im -1)))) (pow.f64 x.im 4)))) (*.f64 (+.f64 (*.f64 (pow.f64 x.re 6) (*.f64 (pow.f64 y.im 3) -1/48)) (*.f64 y.im (*.f64 (+.f64 (*.f64 (pow.f64 x.re 6) 30) (*.f64 (pow.f64 x.re 6) 90)) 1/720))) (/.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 -1 x.im)) (*.f64 y.im -1)))) (pow.f64 x.im 6))))))
(+.f64 (+.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 -1 x.im)) (neg.f64 y.im)))) (+.f64 (*.f64 -1/2 (*.f64 (*.f64 y.im (pow.f64 x.re 2)) (/.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 -1 x.im)) (neg.f64 y.im)))) (pow.f64 x.im 2)))) (*.f64 -1/8 (*.f64 (*.f64 (pow.f64 x.re 4) (pow.f64 y.im 2)) (/.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 -1 x.im)) (neg.f64 y.im)))) (pow.f64 x.im 4)))))) (-.f64 (*.f64 1/8 (*.f64 (*.f64 (pow.f64 y.im 2) (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 -1 x.im)) (neg.f64 y.im))))) (/.f64 (pow.f64 x.re 6) (pow.f64 x.im 6)))) (+.f64 (*.f64 -1/4 (*.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 -1 x.im)) (neg.f64 y.im)))) (/.f64 (*.f64 y.im (pow.f64 x.re 4)) (pow.f64 x.im 4)))) (*.f64 (+.f64 (*.f64 (pow.f64 x.re 6) (*.f64 -1/48 (pow.f64 y.im 3))) (*.f64 y.im (*.f64 1/720 (*.f64 (pow.f64 x.re 6) 120)))) (/.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 -1 x.im)) (neg.f64 y.im)))) (pow.f64 x.im 6))))))
(+.f64 (+.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 -1 x.im)) (neg.f64 y.im)))) (+.f64 (*.f64 -1/2 (*.f64 y.im (*.f64 (pow.f64 x.re 2) (/.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 -1 x.im)) (neg.f64 y.im)))) (pow.f64 x.im 2))))) (*.f64 -1/8 (*.f64 (pow.f64 x.re 4) (*.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 -1 x.im)) (neg.f64 y.im)))) (/.f64 (pow.f64 y.im 2) (pow.f64 x.im 4))))))) (-.f64 (*.f64 (pow.f64 x.re 6) (*.f64 (*.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 -1 x.im)) (neg.f64 y.im)))) (/.f64 (pow.f64 y.im 2) (pow.f64 x.im 6))) 1/8)) (+.f64 (*.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 -1 x.im)) (neg.f64 y.im)))) (*.f64 (*.f64 y.im (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4))) -1/4)) (*.f64 (+.f64 (*.f64 (pow.f64 x.re 6) (*.f64 -1/48 (pow.f64 y.im 3))) (*.f64 y.im (*.f64 (pow.f64 x.re 6) 1/6))) (/.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 -1 x.im)) (neg.f64 y.im)))) (pow.f64 x.im 6))))))
(+.f64 (+.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 -1 x.im)) (neg.f64 y.im)))) (*.f64 -1/2 (*.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 -1 x.im)) (neg.f64 y.im)))) (*.f64 y.im (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))))) (-.f64 (*.f64 (*.f64 (pow.f64 y.im 2) (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 -1 x.im)) (neg.f64 y.im))))) (+.f64 (*.f64 1/8 (/.f64 (pow.f64 x.re 6) (pow.f64 x.im 6))) (*.f64 -1/8 (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4))))) (*.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 -1 x.im)) (neg.f64 y.im)))) (+.f64 (/.f64 (+.f64 (*.f64 (pow.f64 y.im 3) (*.f64 (pow.f64 x.re 6) -1/48)) (*.f64 y.im (*.f64 (pow.f64 x.re 6) 1/6))) (pow.f64 x.im 6)) (*.f64 (*.f64 y.im (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4))) -1/4)))))
(cos.f64 (*.f64 y.re (atan2.f64 x.im x.re)))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))))))) (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))))
(+.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 -1 (*.f64 y.im (*.f64 (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))))))
(+.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (neg.f64 (*.f64 y.im (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2))))))))
(+.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 (*.f64 y.im (log.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))) -1/2)))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 y.im 2) (*.f64 (pow.f64 (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)))) 2) (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re)))))) (+.f64 (*.f64 -1 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))))))) (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re)))))
(+.f64 (*.f64 -1 (*.f64 y.im (*.f64 (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))))) (+.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 -1/2 (*.f64 (pow.f64 (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))) 2) (*.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (pow.f64 y.im 2))))))
(+.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 (pow.f64 y.im 2) (pow.f64 (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))) 2)))) (neg.f64 (*.f64 y.im (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))))))))
(+.f64 (+.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 (*.f64 y.im (log.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))) -1/2))) (*.f64 -1/2 (*.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (pow.f64 (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2))))) 2))))
(+.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (+.f64 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 (*.f64 y.im (log.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))) -1/2)) (*.f64 -1/2 (*.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (pow.f64 (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2))))) 2)))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 y.im 2) (*.f64 (pow.f64 (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)))) 2) (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re)))))) (+.f64 (*.f64 -1 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))))))) (+.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 1/6 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 (pow.f64 y.im 3) (pow.f64 (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)))) 3)))))))
(+.f64 (*.f64 -1 (*.f64 y.im (*.f64 (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))))) (+.f64 (+.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 1/6 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (pow.f64 (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2))))) 3)))) (*.f64 -1/2 (*.f64 (pow.f64 (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))) 2) (*.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (pow.f64 y.im 2))))))
(+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 (pow.f64 y.im 2) (pow.f64 (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))) 2)))) (+.f64 (*.f64 (pow.f64 (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2))))) 3) (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 1/6)) (+.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (neg.f64 (*.f64 y.im (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2))))))))))
(+.f64 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (+.f64 (*.f64 1/6 (pow.f64 (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2))))) 3)) (*.f64 (*.f64 y.im (log.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))) -1/2))) (+.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 -1/2 (*.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (pow.f64 (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2))))) 2)))))
(+.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (pow.f64 (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2))))) 2))) (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (+.f64 (*.f64 1/6 (pow.f64 (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2))))) 3)) (*.f64 (*.f64 y.im (log.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))) -1/2)))))
(cos.f64 (+.f64 (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))))) (*.f64 y.re (atan2.f64 x.im x.re))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))))))
(cos.f64 (+.f64 (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))))) (*.f64 y.re (atan2.f64 x.im x.re))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))))))
(cos.f64 (+.f64 (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))))) (*.f64 y.re (atan2.f64 x.im x.re))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))))))
(cos.f64 (+.f64 (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))))) (*.f64 y.re (atan2.f64 x.im x.re))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))))))
(cos.f64 (+.f64 (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))))) (*.f64 y.re (atan2.f64 x.im x.re))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))))))
(cos.f64 (+.f64 (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))))) (*.f64 y.re (atan2.f64 x.im x.re))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))))))
(cos.f64 (+.f64 (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))))) (*.f64 y.re (atan2.f64 x.im x.re))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))))))
(cos.f64 (+.f64 (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))))) (*.f64 y.re (atan2.f64 x.im x.re))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))))))
(cos.f64 (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))))))
(cos.f64 (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2))))))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)))))) (*.f64 y.re (atan2.f64 x.im x.re)))) (cos.f64 (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)))))))
(+.f64 (cos.f64 (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))))) (*.f64 (sin.f64 (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))))) (*.f64 (*.f64 y.re (atan2.f64 x.im x.re)) -1)))
(+.f64 (cos.f64 (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))))) (*.f64 (sin.f64 (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))))) (neg.f64 (*.f64 y.re (atan2.f64 x.im x.re)))))
(+.f64 (cos.f64 (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))))) (*.f64 y.re (neg.f64 (*.f64 (atan2.f64 x.im x.re) (sin.f64 (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2))))))))))
(+.f64 (cos.f64 (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))))) (*.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (sin.f64 (*.f64 (*.f64 y.im (log.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))) -1/2))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 y.re 2) (*.f64 (pow.f64 (atan2.f64 x.im x.re) 2) (cos.f64 (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))))))))) (+.f64 (*.f64 -1 (*.f64 (sin.f64 (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)))))) (*.f64 y.re (atan2.f64 x.im x.re)))) (cos.f64 (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))))))))
(+.f64 (+.f64 (cos.f64 (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))))) (*.f64 (sin.f64 (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))))) (*.f64 (*.f64 y.re (atan2.f64 x.im x.re)) -1))) (*.f64 -1/2 (*.f64 (pow.f64 y.re 2) (*.f64 (cos.f64 (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))))) (pow.f64 (atan2.f64 x.im x.re) 2)))))
(+.f64 (cos.f64 (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))))) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))))) (*.f64 (pow.f64 (atan2.f64 x.im x.re) 2) (pow.f64 y.re 2)))) (*.f64 (sin.f64 (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))))) (neg.f64 (*.f64 y.re (atan2.f64 x.im x.re))))))
(+.f64 (cos.f64 (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))))) (+.f64 (*.f64 y.re (neg.f64 (*.f64 (atan2.f64 x.im x.re) (sin.f64 (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2))))))))) (*.f64 -1/2 (*.f64 (cos.f64 (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))))) (pow.f64 (*.f64 y.re (atan2.f64 x.im x.re)) 2)))))
(+.f64 (cos.f64 (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))))) (+.f64 (*.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (sin.f64 (*.f64 (*.f64 y.im (log.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))) -1/2))) (*.f64 -1/2 (*.f64 (cos.f64 (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))))) (pow.f64 (*.f64 y.re (atan2.f64 x.im x.re)) 2)))))
(+.f64 (*.f64 1/6 (*.f64 (sin.f64 (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)))))) (*.f64 (pow.f64 y.re 3) (pow.f64 (atan2.f64 x.im x.re) 3)))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 y.re 2) (*.f64 (pow.f64 (atan2.f64 x.im x.re) 2) (cos.f64 (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))))))))) (+.f64 (*.f64 -1 (*.f64 (sin.f64 (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)))))) (*.f64 y.re (atan2.f64 x.im x.re)))) (cos.f64 (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)))))))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 y.re 2) (*.f64 (cos.f64 (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))))) (pow.f64 (atan2.f64 x.im x.re) 2)))) (+.f64 (+.f64 (cos.f64 (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))))) (*.f64 (sin.f64 (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))))) (*.f64 (*.f64 y.re (atan2.f64 x.im x.re)) -1))) (*.f64 (sin.f64 (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))))) (*.f64 (pow.f64 (*.f64 y.re (atan2.f64 x.im x.re)) 3) 1/6))))
(+.f64 (+.f64 (cos.f64 (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))))) (*.f64 (sin.f64 (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))))) (neg.f64 (*.f64 y.re (atan2.f64 x.im x.re))))) (+.f64 (*.f64 (sin.f64 (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))))) (*.f64 1/6 (pow.f64 (*.f64 y.re (atan2.f64 x.im x.re)) 3))) (*.f64 -1/2 (*.f64 (cos.f64 (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))))) (*.f64 (pow.f64 (atan2.f64 x.im x.re) 2) (pow.f64 y.re 2))))))
(+.f64 (+.f64 (cos.f64 (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))))) (*.f64 y.re (neg.f64 (*.f64 (atan2.f64 x.im x.re) (sin.f64 (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))))))))) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))))) (pow.f64 (*.f64 y.re (atan2.f64 x.im x.re)) 2))) (*.f64 1/6 (*.f64 (sin.f64 (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))))) (pow.f64 (*.f64 y.re (atan2.f64 x.im x.re)) 3)))))
(+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))))) (pow.f64 (*.f64 y.re (atan2.f64 x.im x.re)) 2))) (+.f64 (cos.f64 (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))))) (*.f64 (sin.f64 (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))))) (+.f64 (*.f64 1/6 (pow.f64 (*.f64 y.re (atan2.f64 x.im x.re)) 3)) (*.f64 y.re (neg.f64 (atan2.f64 x.im x.re)))))))
(cos.f64 (+.f64 (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))))) (*.f64 y.re (atan2.f64 x.im x.re))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))))))
(cos.f64 (+.f64 (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))))) (*.f64 y.re (atan2.f64 x.im x.re))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))))))
(cos.f64 (+.f64 (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))))) (*.f64 y.re (atan2.f64 x.im x.re))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))))))
(cos.f64 (+.f64 (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))))) (*.f64 y.re (atan2.f64 x.im x.re))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))))))
(cos.f64 (+.f64 (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))))) (*.f64 y.re (atan2.f64 x.im x.re))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))))))
(cos.f64 (+.f64 (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))))) (*.f64 y.re (atan2.f64 x.im x.re))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))))))
(cos.f64 (+.f64 (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))))) (*.f64 y.re (atan2.f64 x.im x.re))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))))))
(cos.f64 (+.f64 (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))))) (*.f64 y.re (atan2.f64 x.im x.re))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))))))
x.im
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 x.re 2) x.im)) x.im)
(+.f64 x.im (*.f64 1/2 (/.f64 (pow.f64 x.re 2) x.im)))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 x.re 2) x.im)) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 3))) x.im))
(+.f64 (*.f64 -1/8 (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 3))) (+.f64 x.im (*.f64 1/2 (/.f64 (pow.f64 x.re 2) x.im))))
(+.f64 (+.f64 x.im (*.f64 1/2 (/.f64 (pow.f64 x.re 2) x.im))) (*.f64 -1/8 (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 3))))
(+.f64 x.im (+.f64 (*.f64 1/2 (/.f64 (pow.f64 x.re 2) x.im)) (*.f64 -1/8 (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 3)))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 x.re 2) x.im)) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 3))) (+.f64 x.im (*.f64 1/16 (/.f64 (pow.f64 x.re 6) (pow.f64 x.im 5))))))
(+.f64 (*.f64 -1/8 (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 3))) (+.f64 (+.f64 x.im (*.f64 1/16 (/.f64 (pow.f64 x.re 6) (pow.f64 x.im 5)))) (*.f64 1/2 (/.f64 (pow.f64 x.re 2) x.im))))
(+.f64 (*.f64 -1/8 (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 3))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 x.re 2) x.im)) (+.f64 x.im (*.f64 1/16 (/.f64 (pow.f64 x.re 6) (pow.f64 x.im 5))))))
(+.f64 x.im (+.f64 (*.f64 1/2 (/.f64 (pow.f64 x.re 2) x.im)) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 3))) (*.f64 1/16 (/.f64 (pow.f64 x.re 6) (pow.f64 x.im 5))))))
(+.f64 (*.f64 -1/8 (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 3))) (+.f64 x.im (+.f64 (*.f64 1/16 (/.f64 (pow.f64 x.re 6) (pow.f64 x.im 5))) (*.f64 1/2 (/.f64 (pow.f64 x.re 2) x.im)))))
x.re
(+.f64 x.re (*.f64 1/2 (/.f64 (pow.f64 x.im 2) x.re)))
(+.f64 (*.f64 -1/8 (/.f64 (pow.f64 x.im 4) (pow.f64 x.re 3))) (+.f64 x.re (*.f64 1/2 (/.f64 (pow.f64 x.im 2) x.re))))
(+.f64 x.re (+.f64 (*.f64 1/2 (/.f64 (pow.f64 x.im 2) x.re)) (*.f64 -1/8 (/.f64 (pow.f64 x.im 4) (pow.f64 x.re 3)))))
(+.f64 (+.f64 x.re (*.f64 1/2 (/.f64 (pow.f64 x.im 2) x.re))) (*.f64 -1/8 (/.f64 (pow.f64 x.im 4) (pow.f64 x.re 3))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 x.im 2) x.re)) (+.f64 x.re (*.f64 -1/8 (/.f64 (pow.f64 x.im 4) (pow.f64 x.re 3)))))
(+.f64 (*.f64 -1/8 (/.f64 (pow.f64 x.im 4) (pow.f64 x.re 3))) (+.f64 x.re (+.f64 (*.f64 1/2 (/.f64 (pow.f64 x.im 2) x.re)) (*.f64 1/16 (/.f64 (pow.f64 x.im 6) (pow.f64 x.re 5))))))
(+.f64 x.re (+.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 x.im 2) x.re)) (*.f64 1/16 (/.f64 (pow.f64 x.im 6) (pow.f64 x.re 5)))) (*.f64 -1/8 (/.f64 (pow.f64 x.im 4) (pow.f64 x.re 3)))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 x.im 2) x.re)) (+.f64 (+.f64 x.re (*.f64 1/16 (/.f64 (pow.f64 x.im 6) (pow.f64 x.re 5)))) (*.f64 -1/8 (/.f64 (pow.f64 x.im 4) (pow.f64 x.re 3)))))
(+.f64 x.re (+.f64 (*.f64 1/2 (/.f64 (pow.f64 x.im 2) x.re)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 x.im 6) (pow.f64 x.re 5))) (*.f64 -1/8 (/.f64 (pow.f64 x.im 4) (pow.f64 x.re 3))))))
(*.f64 -1 x.re)
(*.f64 x.re -1)
(neg.f64 x.re)
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 x.im 2) x.re)) (*.f64 -1 x.re))
(+.f64 (*.f64 x.re -1) (*.f64 -1/2 (/.f64 (pow.f64 x.im 2) x.re)))
(+.f64 (neg.f64 x.re) (*.f64 -1/2 (/.f64 (pow.f64 x.im 2) x.re)))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 x.im 2) x.re)) (+.f64 (*.f64 -1 x.re) (*.f64 1/8 (/.f64 (pow.f64 x.im 4) (pow.f64 x.re 3)))))
(+.f64 (*.f64 x.re -1) (+.f64 (*.f64 1/8 (/.f64 (pow.f64 x.im 4) (pow.f64 x.re 3))) (*.f64 -1/2 (/.f64 (pow.f64 x.im 2) x.re))))
(+.f64 (neg.f64 x.re) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 x.im 2) x.re)) (*.f64 1/8 (/.f64 (pow.f64 x.im 4) (pow.f64 x.re 3)))))
(+.f64 (*.f64 -1/16 (/.f64 (pow.f64 x.im 6) (pow.f64 x.re 5))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 x.im 2) x.re)) (+.f64 (*.f64 -1 x.re) (*.f64 1/8 (/.f64 (pow.f64 x.im 4) (pow.f64 x.re 3))))))
(+.f64 (+.f64 (*.f64 x.re -1) (+.f64 (*.f64 1/8 (/.f64 (pow.f64 x.im 4) (pow.f64 x.re 3))) (*.f64 -1/2 (/.f64 (pow.f64 x.im 2) x.re)))) (*.f64 (/.f64 (pow.f64 x.im 6) (pow.f64 x.re 5)) -1/16))
(+.f64 (neg.f64 x.re) (+.f64 (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 x.im 2) x.re)) (*.f64 1/8 (/.f64 (pow.f64 x.im 4) (pow.f64 x.re 3)))) (*.f64 (/.f64 (pow.f64 x.im 6) (pow.f64 x.re 5)) -1/16)))
(+.f64 (neg.f64 x.re) (+.f64 (*.f64 (/.f64 (pow.f64 x.im 6) (pow.f64 x.re 5)) -1/16) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 x.im 2) x.re)) (*.f64 1/8 (/.f64 (pow.f64 x.im 4) (pow.f64 x.re 3))))))
x.re
(+.f64 x.re (*.f64 1/2 (/.f64 (pow.f64 x.im 2) x.re)))
(+.f64 (*.f64 -1/8 (/.f64 (pow.f64 x.im 4) (pow.f64 x.re 3))) (+.f64 x.re (*.f64 1/2 (/.f64 (pow.f64 x.im 2) x.re))))
(+.f64 x.re (+.f64 (*.f64 1/2 (/.f64 (pow.f64 x.im 2) x.re)) (*.f64 -1/8 (/.f64 (pow.f64 x.im 4) (pow.f64 x.re 3)))))
(+.f64 (+.f64 x.re (*.f64 1/2 (/.f64 (pow.f64 x.im 2) x.re))) (*.f64 -1/8 (/.f64 (pow.f64 x.im 4) (pow.f64 x.re 3))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 x.im 2) x.re)) (+.f64 x.re (*.f64 -1/8 (/.f64 (pow.f64 x.im 4) (pow.f64 x.re 3)))))
(+.f64 (*.f64 -1/8 (/.f64 (pow.f64 x.im 4) (pow.f64 x.re 3))) (+.f64 x.re (+.f64 (*.f64 1/2 (/.f64 (pow.f64 x.im 2) x.re)) (*.f64 1/16 (/.f64 (pow.f64 x.im 6) (pow.f64 x.re 5))))))
(+.f64 x.re (+.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 x.im 2) x.re)) (*.f64 1/16 (/.f64 (pow.f64 x.im 6) (pow.f64 x.re 5)))) (*.f64 -1/8 (/.f64 (pow.f64 x.im 4) (pow.f64 x.re 3)))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 x.im 2) x.re)) (+.f64 (+.f64 x.re (*.f64 1/16 (/.f64 (pow.f64 x.im 6) (pow.f64 x.re 5)))) (*.f64 -1/8 (/.f64 (pow.f64 x.im 4) (pow.f64 x.re 3)))))
(+.f64 x.re (+.f64 (*.f64 1/2 (/.f64 (pow.f64 x.im 2) x.re)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 x.im 6) (pow.f64 x.re 5))) (*.f64 -1/8 (/.f64 (pow.f64 x.im 4) (pow.f64 x.re 3))))))
x.im
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 x.re 2) x.im)) x.im)
(+.f64 x.im (*.f64 1/2 (/.f64 (pow.f64 x.re 2) x.im)))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 x.re 2) x.im)) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 3))) x.im))
(+.f64 (*.f64 -1/8 (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 3))) (+.f64 x.im (*.f64 1/2 (/.f64 (pow.f64 x.re 2) x.im))))
(+.f64 (+.f64 x.im (*.f64 1/2 (/.f64 (pow.f64 x.re 2) x.im))) (*.f64 -1/8 (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 3))))
(+.f64 x.im (+.f64 (*.f64 1/2 (/.f64 (pow.f64 x.re 2) x.im)) (*.f64 -1/8 (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 3)))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 x.re 2) x.im)) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 3))) (+.f64 x.im (*.f64 1/16 (/.f64 (pow.f64 x.re 6) (pow.f64 x.im 5))))))
(+.f64 (*.f64 -1/8 (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 3))) (+.f64 (+.f64 x.im (*.f64 1/16 (/.f64 (pow.f64 x.re 6) (pow.f64 x.im 5)))) (*.f64 1/2 (/.f64 (pow.f64 x.re 2) x.im))))
(+.f64 (*.f64 -1/8 (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 3))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 x.re 2) x.im)) (+.f64 x.im (*.f64 1/16 (/.f64 (pow.f64 x.re 6) (pow.f64 x.im 5))))))
(+.f64 x.im (+.f64 (*.f64 1/2 (/.f64 (pow.f64 x.re 2) x.im)) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 3))) (*.f64 1/16 (/.f64 (pow.f64 x.re 6) (pow.f64 x.im 5))))))
(+.f64 (*.f64 -1/8 (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 3))) (+.f64 x.im (+.f64 (*.f64 1/16 (/.f64 (pow.f64 x.re 6) (pow.f64 x.im 5))) (*.f64 1/2 (/.f64 (pow.f64 x.re 2) x.im)))))
(*.f64 -1 x.im)
(*.f64 x.im -1)
(neg.f64 x.im)
(+.f64 (*.f64 -1 x.im) (*.f64 -1/2 (/.f64 (pow.f64 x.re 2) x.im)))
(+.f64 (*.f64 x.im -1) (*.f64 -1/2 (/.f64 (pow.f64 x.re 2) x.im)))
(+.f64 (neg.f64 x.im) (*.f64 -1/2 (/.f64 (pow.f64 x.re 2) x.im)))
(+.f64 (*.f64 -1 x.im) (+.f64 (*.f64 1/8 (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 3))) (*.f64 -1/2 (/.f64 (pow.f64 x.re 2) x.im))))
(+.f64 (*.f64 1/8 (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 3))) (+.f64 (*.f64 x.im -1) (*.f64 -1/2 (/.f64 (pow.f64 x.re 2) x.im))))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 x.re 2) x.im)) (+.f64 (*.f64 1/8 (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 3))) (neg.f64 x.im)))
(+.f64 (neg.f64 x.im) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 x.re 2) x.im)) (*.f64 1/8 (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 3)))))
(+.f64 (*.f64 -1 x.im) (+.f64 (*.f64 -1/16 (/.f64 (pow.f64 x.re 6) (pow.f64 x.im 5))) (+.f64 (*.f64 1/8 (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 3))) (*.f64 -1/2 (/.f64 (pow.f64 x.re 2) x.im)))))
(+.f64 (*.f64 x.im -1) (+.f64 (*.f64 1/8 (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 3))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 x.re 2) x.im)) (*.f64 (/.f64 (pow.f64 x.re 6) (pow.f64 x.im 5)) -1/16))))
(+.f64 (*.f64 1/8 (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 3))) (+.f64 (+.f64 (neg.f64 x.im) (*.f64 -1/2 (/.f64 (pow.f64 x.re 2) x.im))) (*.f64 (/.f64 (pow.f64 x.re 6) (pow.f64 x.im 5)) -1/16)))
(+.f64 (neg.f64 x.im) (+.f64 (*.f64 1/8 (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 3))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 x.re 2) x.im)) (*.f64 (/.f64 (pow.f64 x.re 6) (pow.f64 x.im 5)) -1/16))))
(+.f64 (neg.f64 x.im) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 x.re 2) x.im)) (+.f64 (*.f64 1/8 (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 3))) (*.f64 (/.f64 (pow.f64 x.re 6) (pow.f64 x.im 5)) -1/16))))
(*.f64 y.im (atan2.f64 x.im x.re))
(*.f64 (atan2.f64 x.im x.re) y.im)
(*.f64 y.im (atan2.f64 x.im x.re))
(*.f64 (atan2.f64 x.im x.re) y.im)
(*.f64 y.im (atan2.f64 x.im x.re))
(*.f64 (atan2.f64 x.im x.re) y.im)
(*.f64 y.im (atan2.f64 x.im x.re))
(*.f64 (atan2.f64 x.im x.re) y.im)
(*.f64 y.im (atan2.f64 x.im x.re))
(*.f64 (atan2.f64 x.im x.re) y.im)
(*.f64 y.im (atan2.f64 x.im x.re))
(*.f64 (atan2.f64 x.im x.re) y.im)
(*.f64 y.im (atan2.f64 x.im x.re))
(*.f64 (atan2.f64 x.im x.re) y.im)
(*.f64 y.im (atan2.f64 x.im x.re))
(*.f64 (atan2.f64 x.im x.re) y.im)
(*.f64 y.im (atan2.f64 x.im x.re))
(*.f64 (atan2.f64 x.im x.re) y.im)
(*.f64 y.im (atan2.f64 x.im x.re))
(*.f64 (atan2.f64 x.im x.re) y.im)
(*.f64 y.im (atan2.f64 x.im x.re))
(*.f64 (atan2.f64 x.im x.re) y.im)
(*.f64 y.im (atan2.f64 x.im x.re))
(*.f64 (atan2.f64 x.im x.re) y.im)
(*.f64 y.re (atan2.f64 x.im x.re))
(*.f64 y.re (atan2.f64 x.im x.re))
(*.f64 y.re (atan2.f64 x.im x.re))
(*.f64 y.re (atan2.f64 x.im x.re))
(*.f64 y.re (atan2.f64 x.im x.re))
(*.f64 y.re (atan2.f64 x.im x.re))
(*.f64 y.re (atan2.f64 x.im x.re))
(*.f64 y.re (atan2.f64 x.im x.re))
(*.f64 y.re (atan2.f64 x.im x.re))
(*.f64 y.re (atan2.f64 x.im x.re))
(*.f64 y.re (atan2.f64 x.im x.re))
(*.f64 y.re (atan2.f64 x.im x.re))
(*.f64 y.re (atan2.f64 x.im x.re))
(*.f64 y.re (atan2.f64 x.im x.re))
(*.f64 y.re (atan2.f64 x.im x.re))
(*.f64 y.re (atan2.f64 x.im x.re))
(*.f64 y.re (atan2.f64 x.im x.re))
(*.f64 y.re (atan2.f64 x.im x.re))
(*.f64 y.re (atan2.f64 x.im x.re))
(*.f64 y.re (atan2.f64 x.im x.re))
(*.f64 y.re (atan2.f64 x.im x.re))
(*.f64 y.re (atan2.f64 x.im x.re))
(*.f64 y.re (atan2.f64 x.im x.re))
(*.f64 y.re (atan2.f64 x.im x.re))
(*.f64 y.re (atan2.f64 x.im x.re))
(*.f64 y.re (atan2.f64 x.im x.re))
(*.f64 y.re (atan2.f64 x.im x.re))
(*.f64 y.re (atan2.f64 x.im x.re))
(*.f64 y.re (atan2.f64 x.im x.re))
(*.f64 y.re (atan2.f64 x.im x.re))
(*.f64 y.re (atan2.f64 x.im x.re))
(*.f64 y.re (atan2.f64 x.im x.re))
(*.f64 y.re (atan2.f64 x.im x.re))
(*.f64 y.re (atan2.f64 x.im x.re))
(*.f64 y.re (atan2.f64 x.im x.re))
(*.f64 y.re (atan2.f64 x.im x.re))
(+.f64 (cos.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 0)
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (log.f64 (pow.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) y.im))))
(+.f64 0 (cos.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (log.f64 (pow.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) y.im))))
(-.f64 (cos.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 0)
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (log.f64 (pow.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) y.im))))
(*.f64 (cos.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 1)
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (log.f64 (pow.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) y.im))))
(*.f64 1 (cos.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (log.f64 (pow.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) y.im))))
(*.f64 1/2 (*.f64 (cos.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 2))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (log.f64 (pow.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) y.im))))
(*.f64 2 (/.f64 (cos.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 2))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (log.f64 (pow.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) y.im))))
(*.f64 (*.f64 (cos.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 2) 1/2)
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (log.f64 (pow.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) y.im))))
(*.f64 (/.f64 (cos.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 2) 2)
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (log.f64 (pow.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) y.im))))
(/.f64 (cos.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 1)
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (log.f64 (pow.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) y.im))))
(/.f64 (*.f64 (cos.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 2) 2)
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (log.f64 (pow.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) y.im))))
(/.f64 (*.f64 (cos.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 4) 4)
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (log.f64 (pow.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) y.im))))
(/.f64 (*.f64 2 (*.f64 (cos.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 4)) 8)
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (log.f64 (pow.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) y.im))))
(/.f64 (+.f64 (*.f64 2 (*.f64 (cos.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 4)) (*.f64 2 (*.f64 (cos.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 4))) 16)
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (log.f64 (pow.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) y.im))))
(pow.f64 (cos.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 1)
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (log.f64 (pow.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) y.im))))
(+.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) 0)
(sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))
(+.f64 0 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))))
(sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))
(-.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) 0)
(sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))
(*.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) 1)
(sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))
(*.f64 1 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))))
(sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))
(*.f64 1/2 (*.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) 2))
(sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))
(*.f64 2 (/.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) 2))
(sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))
(*.f64 (*.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) 2) 1/2)
(sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))
(*.f64 (/.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) 2) 2)
(sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))
(/.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) 1)
(sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))
(/.f64 (*.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) 2) 2)
(sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))
(/.f64 (*.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) 4) 4)
(sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))
(/.f64 (*.f64 2 (*.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) 4)) 8)
(sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))
(/.f64 (+.f64 (*.f64 2 (*.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) 4)) (*.f64 2 (*.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) 4))) 16)
(sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))
(pow.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) 1)
(sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))
(+.f64 (*.f64 y.im (atan2.f64 x.im x.re)) 0)
(*.f64 (atan2.f64 x.im x.re) y.im)
(+.f64 0 (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 (atan2.f64 x.im x.re) y.im)
(-.f64 (*.f64 y.im (atan2.f64 x.im x.re)) 0)
(*.f64 (atan2.f64 x.im x.re) y.im)
(/.f64 (*.f64 y.im (atan2.f64 x.im x.re)) 1)
(*.f64 (atan2.f64 x.im x.re) y.im)
(/.f64 (*.f64 (atan2.f64 x.im x.re) (+.f64 y.im y.im)) 2)
(*.f64 (atan2.f64 x.im x.re) y.im)
(/.f64 (*.f64 y.im (*.f64 (atan2.f64 x.im x.re) 4)) 4)
(*.f64 (atan2.f64 x.im x.re) y.im)
(/.f64 (*.f64 2 (*.f64 y.im (*.f64 (atan2.f64 x.im x.re) 4))) 8)
(*.f64 (atan2.f64 x.im x.re) y.im)
(/.f64 (+.f64 (*.f64 2 (*.f64 y.im (*.f64 (atan2.f64 x.im x.re) 4))) (*.f64 2 (*.f64 y.im (*.f64 (atan2.f64 x.im x.re) 4)))) 16)
(*.f64 (atan2.f64 x.im x.re) y.im)
(pow.f64 (*.f64 y.im (atan2.f64 x.im x.re)) 1)
(*.f64 (atan2.f64 x.im x.re) y.im)
(+.f64 (*.f64 (atan2.f64 x.im x.re) y.re) 0)
(*.f64 y.re (atan2.f64 x.im x.re))
(+.f64 0 (*.f64 (atan2.f64 x.im x.re) y.re))
(*.f64 y.re (atan2.f64 x.im x.re))
(-.f64 (*.f64 (atan2.f64 x.im x.re) y.re) 0)
(*.f64 y.re (atan2.f64 x.im x.re))
(/.f64 (*.f64 (atan2.f64 x.im x.re) y.re) 1)
(*.f64 y.re (atan2.f64 x.im x.re))
(/.f64 (*.f64 (atan2.f64 x.im x.re) (+.f64 y.re y.re)) 2)
(*.f64 y.re (atan2.f64 x.im x.re))
(/.f64 (*.f64 (atan2.f64 x.im x.re) (*.f64 y.re 4)) 4)
(*.f64 y.re (atan2.f64 x.im x.re))
(/.f64 (*.f64 2 (*.f64 (atan2.f64 x.im x.re) (*.f64 y.re 4))) 8)
(*.f64 y.re (atan2.f64 x.im x.re))
(/.f64 (+.f64 (*.f64 2 (*.f64 (atan2.f64 x.im x.re) (*.f64 y.re 4))) (*.f64 2 (*.f64 (atan2.f64 x.im x.re) (*.f64 y.re 4)))) 16)
(*.f64 y.re (atan2.f64 x.im x.re))
(pow.f64 (*.f64 (atan2.f64 x.im x.re) y.re) 1)
(*.f64 y.re (atan2.f64 x.im x.re))

eval419.0ms (1.5%)

Compiler

Compiled 20535 to 8228 computations (59.9% saved)

prune549.0ms (2%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New3033306
Fresh000
Picked101
Done000
Total3043307
Error
17.4b
Counts
307 → 3
Alt Table
Click to see full alt table
StatusErrorProgram
40.1b
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (cos.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.im)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))))
17.7b
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))))
50.8b
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (cos.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))))
Compiler

Compiled 98 to 58 computations (40.8% saved)

localize85.0ms (0.3%)

Local error

Found 4 expressions with local error:

NewErrorProgram
1.1b
(*.f64 (atan2.f64 x.im x.re) y.re)
2.6b
(*.f64 (atan2.f64 x.im x.re) y.im)
28.5b
(sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))
33.7b
(cos.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))
Compiler

Compiled 154 to 20 computations (87% saved)

localize29.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
1.1b
(*.f64 y.re (atan2.f64 x.im x.re))
2.6b
(*.f64 (atan2.f64 x.im x.re) y.im)
19.3b
(cos.f64 (*.f64 y.re (atan2.f64 x.im x.re)))
28.5b
(sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))
Compiler

Compiled 128 to 17 computations (86.7% saved)

series4.0ms (0%)

Counts
2 → 4
Calls

18 calls:

TimeVariablePointExpression
0.0ms
x.im
@0
(cos.f64 (*.f64 y.re (atan2.f64 x.im x.re)))
0.0ms
x.re
@-inf
(cos.f64 (*.f64 y.re (atan2.f64 x.im x.re)))
0.0ms
x.im
@-inf
(cos.f64 (*.f64 y.re (atan2.f64 x.im x.re)))
0.0ms
x.im
@inf
(cos.f64 (*.f64 y.re (atan2.f64 x.im x.re)))
0.0ms
x.re
@inf
(cos.f64 (*.f64 y.re (atan2.f64 x.im x.re)))

rewrite161.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
1446×rational.json-1
1174×rational.json-simplify-2
1142×exponential.json-3
1142×rational.json-2
1142×rational.json-4
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0930
15930
213330
329130
460230
5150730
6325830
7553330
8682530
9786930
Stop Event
node limit
Counts
2 → 60
Calls
Call 1
Inputs
(cos.f64 (*.f64 y.re (atan2.f64 x.im x.re)))
(*.f64 y.re (atan2.f64 x.im x.re))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 1/2) (*.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (/.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 1/2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 8) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 8)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 8))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 8)))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 1)))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y.re (atan2.f64 x.im x.re)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 y.re (atan2.f64 x.im x.re)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 1 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) -1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 -1 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 -2 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (atan2.f64 x.im x.re) (*.f64 y.re 1/2)) (*.f64 (atan2.f64 x.im x.re) (*.f64 y.re 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) 2) -2)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (*.f64 (atan2.f64 x.im x.re) (*.f64 y.re 1/2)) -1) (-.f64 1 (*.f64 (*.f64 y.re (atan2.f64 x.im x.re)) -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 y.re (atan2.f64 x.im x.re)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (*.f64 y.re (neg.f64 (atan2.f64 x.im x.re))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 1 (-.f64 1 (*.f64 y.re (atan2.f64 x.im x.re))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 y.re (neg.f64 (atan2.f64 x.im x.re))) (*.f64 y.re (*.f64 (atan2.f64 x.im x.re) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 -1 (-.f64 -1 (*.f64 y.re (atan2.f64 x.im x.re))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 2 (-.f64 2 (*.f64 y.re (atan2.f64 x.im x.re))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 -2 (-.f64 -2 (*.f64 y.re (atan2.f64 x.im x.re))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) 1) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) -1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (atan2.f64 x.im x.re) (*.f64 y.re 1/2)) (*.f64 (*.f64 y.re (atan2.f64 x.im x.re)) -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 3 (-.f64 3 (*.f64 y.re (atan2.f64 x.im x.re))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) 2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 -3 (+.f64 -3 (*.f64 y.re (neg.f64 (atan2.f64 x.im x.re)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 -2 (*.f64 y.re (atan2.f64 x.im x.re))) -2)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 -3 (*.f64 y.re (atan2.f64 x.im x.re))) -3)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y.re (atan2.f64 x.im x.re)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y.re (neg.f64 (atan2.f64 x.im x.re))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y.re (*.f64 (atan2.f64 x.im x.re) 2)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y.re (*.f64 (atan2.f64 x.im x.re) 4)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y.re (*.f64 (atan2.f64 x.im x.re) -2)) -2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y.re (*.f64 (atan2.f64 x.im x.re) -4)) -4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y.re (*.f64 (atan2.f64 x.im x.re) 8)) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 y.re (*.f64 (atan2.f64 x.im x.re) 8))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 y.re (atan2.f64 x.im x.re)) -8) -8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 y.re (*.f64 (atan2.f64 x.im x.re) 8)))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (*.f64 y.re (atan2.f64 x.im x.re)) -8)) -16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 y.re (*.f64 (atan2.f64 x.im x.re) 8))))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 y.re (atan2.f64 x.im x.re)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (*.f64 y.re (neg.f64 (atan2.f64 x.im x.re))))))))

simplify254.0ms (0.9%)

Algorithm
egg-herbie
Rules
1538×rational.json-simplify-52
1236×rational.json-simplify-35
1000×rational.json-simplify-2
878×rational.json-simplify-51
832×exponential.json-simplify-26
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01471094
13411094
29571094
328641094
456151094
569951094
Stop Event
node limit
Counts
64 → 77
Calls
Call 1
Inputs
1
(+.f64 1 (*.f64 -1/2 (*.f64 (pow.f64 y.re 2) (pow.f64 (atan2.f64 x.im x.re) 2))))
(+.f64 1 (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 y.re 2) (pow.f64 (atan2.f64 x.im x.re) 2))) (*.f64 1/24 (*.f64 (pow.f64 y.re 4) (pow.f64 (atan2.f64 x.im x.re) 4)))))
(+.f64 (*.f64 -1/720 (*.f64 (pow.f64 y.re 6) (pow.f64 (atan2.f64 x.im x.re) 6))) (+.f64 1 (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 y.re 2) (pow.f64 (atan2.f64 x.im x.re) 2))) (*.f64 1/24 (*.f64 (pow.f64 y.re 4) (pow.f64 (atan2.f64 x.im x.re) 4))))))
(+.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 0)
(+.f64 0 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))))
(+.f64 (*.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 1/2) (*.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 1/2))
(-.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 0)
(*.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 1)
(*.f64 1 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))))
(*.f64 2 (*.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 1/2))
(*.f64 (*.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 2) 1/2)
(*.f64 4 (/.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 4))
(*.f64 (*.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 4) 1/4)
(*.f64 1/2 (*.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 2))
(*.f64 (*.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 1/2) 2)
(*.f64 1/4 (*.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 4))
(*.f64 (/.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 4) 4)
(/.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 1)
(/.f64 (*.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 2) 2)
(/.f64 (*.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 4) 4)
(/.f64 (*.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 8) 8)
(/.f64 (*.f64 2 (*.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 8)) 16)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 8))) 32)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 8)))) 64)
(pow.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 1)
(+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) 0)
(+.f64 0 (*.f64 y.re (atan2.f64 x.im x.re)))
(+.f64 1 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) -1))
(+.f64 -1 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) 1))
(+.f64 -2 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) 2))
(+.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) 1) -1)
(+.f64 (*.f64 (atan2.f64 x.im x.re) (*.f64 y.re 1/2)) (*.f64 (atan2.f64 x.im x.re) (*.f64 y.re 1/2)))
(+.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) 2) -2)
(+.f64 (+.f64 (*.f64 (atan2.f64 x.im x.re) (*.f64 y.re 1/2)) -1) (-.f64 1 (*.f64 (*.f64 y.re (atan2.f64 x.im x.re)) -1/2)))
(-.f64 (*.f64 y.re (atan2.f64 x.im x.re)) 0)
(-.f64 0 (*.f64 y.re (neg.f64 (atan2.f64 x.im x.re))))
(-.f64 1 (-.f64 1 (*.f64 y.re (atan2.f64 x.im x.re))))
(-.f64 (*.f64 y.re (neg.f64 (atan2.f64 x.im x.re))) (*.f64 y.re (*.f64 (atan2.f64 x.im x.re) -2)))
(-.f64 -1 (-.f64 -1 (*.f64 y.re (atan2.f64 x.im x.re))))
(-.f64 2 (-.f64 2 (*.f64 y.re (atan2.f64 x.im x.re))))
(-.f64 -2 (-.f64 -2 (*.f64 y.re (atan2.f64 x.im x.re))))
(-.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) 1) 1)
(-.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) -1) -1)
(-.f64 (*.f64 (atan2.f64 x.im x.re) (*.f64 y.re 1/2)) (*.f64 (*.f64 y.re (atan2.f64 x.im x.re)) -1/2))
(-.f64 3 (-.f64 3 (*.f64 y.re (atan2.f64 x.im x.re))))
(-.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) 2) 2)
(-.f64 -3 (+.f64 -3 (*.f64 y.re (neg.f64 (atan2.f64 x.im x.re)))))
(-.f64 (+.f64 -2 (*.f64 y.re (atan2.f64 x.im x.re))) -2)
(-.f64 (+.f64 -3 (*.f64 y.re (atan2.f64 x.im x.re))) -3)
(/.f64 (*.f64 y.re (atan2.f64 x.im x.re)) 1)
(/.f64 (*.f64 y.re (neg.f64 (atan2.f64 x.im x.re))) -1)
(/.f64 (*.f64 y.re (*.f64 (atan2.f64 x.im x.re) 2)) 2)
(/.f64 (*.f64 y.re (*.f64 (atan2.f64 x.im x.re) 4)) 4)
(/.f64 (*.f64 y.re (*.f64 (atan2.f64 x.im x.re) -2)) -2)
(/.f64 (*.f64 y.re (*.f64 (atan2.f64 x.im x.re) -4)) -4)
(/.f64 (*.f64 y.re (*.f64 (atan2.f64 x.im x.re) 8)) 8)
(/.f64 (*.f64 2 (*.f64 y.re (*.f64 (atan2.f64 x.im x.re) 8))) 16)
(/.f64 (*.f64 (*.f64 y.re (atan2.f64 x.im x.re)) -8) -8)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 y.re (*.f64 (atan2.f64 x.im x.re) 8)))) 32)
(/.f64 (*.f64 2 (*.f64 (*.f64 y.re (atan2.f64 x.im x.re)) -8)) -16)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 y.re (*.f64 (atan2.f64 x.im x.re) 8))))) 64)
(pow.f64 (*.f64 y.re (atan2.f64 x.im x.re)) 1)
(neg.f64 (*.f64 y.re (neg.f64 (atan2.f64 x.im x.re))))
Outputs
1
(+.f64 1 (*.f64 -1/2 (*.f64 (pow.f64 y.re 2) (pow.f64 (atan2.f64 x.im x.re) 2))))
(+.f64 1 (*.f64 -1/2 (pow.f64 (*.f64 y.re (atan2.f64 x.im x.re)) 2)))
(+.f64 1 (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 y.re 2) (pow.f64 (atan2.f64 x.im x.re) 2))) (*.f64 1/24 (*.f64 (pow.f64 y.re 4) (pow.f64 (atan2.f64 x.im x.re) 4)))))
(+.f64 (*.f64 -1/2 (pow.f64 (*.f64 y.re (atan2.f64 x.im x.re)) 2)) (+.f64 (*.f64 1/24 (pow.f64 (*.f64 y.re (atan2.f64 x.im x.re)) 4)) 1))
(+.f64 1 (+.f64 (*.f64 -1/2 (pow.f64 (*.f64 y.re (atan2.f64 x.im x.re)) 2)) (*.f64 1/24 (pow.f64 (*.f64 y.re (atan2.f64 x.im x.re)) 4))))
(+.f64 (*.f64 -1/720 (*.f64 (pow.f64 y.re 6) (pow.f64 (atan2.f64 x.im x.re) 6))) (+.f64 1 (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 y.re 2) (pow.f64 (atan2.f64 x.im x.re) 2))) (*.f64 1/24 (*.f64 (pow.f64 y.re 4) (pow.f64 (atan2.f64 x.im x.re) 4))))))
(+.f64 (+.f64 (*.f64 -1/2 (pow.f64 (*.f64 y.re (atan2.f64 x.im x.re)) 2)) (+.f64 (*.f64 1/24 (pow.f64 (*.f64 y.re (atan2.f64 x.im x.re)) 4)) 1)) (*.f64 -1/720 (pow.f64 (*.f64 y.re (atan2.f64 x.im x.re)) 6)))
(+.f64 1 (+.f64 (+.f64 (*.f64 -1/2 (pow.f64 (*.f64 y.re (atan2.f64 x.im x.re)) 2)) (*.f64 1/24 (pow.f64 (*.f64 y.re (atan2.f64 x.im x.re)) 4))) (*.f64 -1/720 (pow.f64 (*.f64 y.re (atan2.f64 x.im x.re)) 6))))
(+.f64 (+.f64 (*.f64 -1/2 (pow.f64 (*.f64 y.re (atan2.f64 x.im x.re)) 2)) (*.f64 1/24 (pow.f64 (*.f64 y.re (atan2.f64 x.im x.re)) 4))) (+.f64 1 (*.f64 -1/720 (pow.f64 (*.f64 y.re (atan2.f64 x.im x.re)) 6))))
(+.f64 (*.f64 -1/2 (pow.f64 (*.f64 y.re (atan2.f64 x.im x.re)) 2)) (+.f64 (*.f64 -1/720 (pow.f64 (*.f64 y.re (atan2.f64 x.im x.re)) 6)) (+.f64 1 (*.f64 1/24 (pow.f64 (*.f64 y.re (atan2.f64 x.im x.re)) 4)))))
(+.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 0)
(cos.f64 (*.f64 y.re (atan2.f64 x.im x.re)))
(+.f64 0 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))))
(cos.f64 (*.f64 y.re (atan2.f64 x.im x.re)))
(+.f64 (*.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 1/2) (*.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 1/2))
(cos.f64 (*.f64 y.re (atan2.f64 x.im x.re)))
(-.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 0)
(cos.f64 (*.f64 y.re (atan2.f64 x.im x.re)))
(*.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 1)
(cos.f64 (*.f64 y.re (atan2.f64 x.im x.re)))
(*.f64 1 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))))
(cos.f64 (*.f64 y.re (atan2.f64 x.im x.re)))
(*.f64 2 (*.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 1/2))
(cos.f64 (*.f64 y.re (atan2.f64 x.im x.re)))
(*.f64 (*.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 2) 1/2)
(cos.f64 (*.f64 y.re (atan2.f64 x.im x.re)))
(*.f64 4 (/.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 4))
(cos.f64 (*.f64 y.re (atan2.f64 x.im x.re)))
(*.f64 (*.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 4) 1/4)
(cos.f64 (*.f64 y.re (atan2.f64 x.im x.re)))
(*.f64 1/2 (*.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 2))
(cos.f64 (*.f64 y.re (atan2.f64 x.im x.re)))
(*.f64 (*.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 1/2) 2)
(cos.f64 (*.f64 y.re (atan2.f64 x.im x.re)))
(*.f64 1/4 (*.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 4))
(cos.f64 (*.f64 y.re (atan2.f64 x.im x.re)))
(*.f64 (/.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 4) 4)
(cos.f64 (*.f64 y.re (atan2.f64 x.im x.re)))
(/.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 1)
(cos.f64 (*.f64 y.re (atan2.f64 x.im x.re)))
(/.f64 (*.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 2) 2)
(cos.f64 (*.f64 y.re (atan2.f64 x.im x.re)))
(/.f64 (*.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 4) 4)
(cos.f64 (*.f64 y.re (atan2.f64 x.im x.re)))
(/.f64 (*.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 8) 8)
(cos.f64 (*.f64 y.re (atan2.f64 x.im x.re)))
(/.f64 (*.f64 2 (*.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 8)) 16)
(cos.f64 (*.f64 y.re (atan2.f64 x.im x.re)))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 8))) 32)
(cos.f64 (*.f64 y.re (atan2.f64 x.im x.re)))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 8)))) 64)
(cos.f64 (*.f64 y.re (atan2.f64 x.im x.re)))
(pow.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 1)
(cos.f64 (*.f64 y.re (atan2.f64 x.im x.re)))
(+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) 0)
(*.f64 y.re (atan2.f64 x.im x.re))
(+.f64 0 (*.f64 y.re (atan2.f64 x.im x.re)))
(*.f64 y.re (atan2.f64 x.im x.re))
(+.f64 1 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) -1))
(*.f64 y.re (atan2.f64 x.im x.re))
(+.f64 -1 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) 1))
(*.f64 y.re (atan2.f64 x.im x.re))
(+.f64 -2 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) 2))
(*.f64 y.re (atan2.f64 x.im x.re))
(+.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) 1) -1)
(*.f64 y.re (atan2.f64 x.im x.re))
(+.f64 (*.f64 (atan2.f64 x.im x.re) (*.f64 y.re 1/2)) (*.f64 (atan2.f64 x.im x.re) (*.f64 y.re 1/2)))
(*.f64 y.re (atan2.f64 x.im x.re))
(+.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) 2) -2)
(*.f64 y.re (atan2.f64 x.im x.re))
(+.f64 (+.f64 (*.f64 (atan2.f64 x.im x.re) (*.f64 y.re 1/2)) -1) (-.f64 1 (*.f64 (*.f64 y.re (atan2.f64 x.im x.re)) -1/2)))
(+.f64 (+.f64 -1 (*.f64 y.re (*.f64 1/2 (atan2.f64 x.im x.re)))) (-.f64 1 (*.f64 -1/2 (*.f64 y.re (atan2.f64 x.im x.re)))))
(+.f64 -1 (+.f64 (*.f64 y.re (*.f64 (atan2.f64 x.im x.re) 1/2)) (-.f64 1 (*.f64 -1/2 (*.f64 y.re (atan2.f64 x.im x.re))))))
(+.f64 -1 (+.f64 (*.f64 (atan2.f64 x.im x.re) (*.f64 y.re 1/2)) (-.f64 1 (*.f64 (atan2.f64 x.im x.re) (*.f64 -1/2 y.re)))))
(+.f64 -1 (+.f64 (*.f64 (atan2.f64 x.im x.re) (*.f64 y.re 1/2)) (-.f64 1 (*.f64 -1/2 (*.f64 y.re (atan2.f64 x.im x.re))))))
(-.f64 (*.f64 y.re (atan2.f64 x.im x.re)) 0)
(*.f64 y.re (atan2.f64 x.im x.re))
(-.f64 0 (*.f64 y.re (neg.f64 (atan2.f64 x.im x.re))))
(*.f64 y.re (atan2.f64 x.im x.re))
(-.f64 1 (-.f64 1 (*.f64 y.re (atan2.f64 x.im x.re))))
(*.f64 y.re (atan2.f64 x.im x.re))
(-.f64 (*.f64 y.re (neg.f64 (atan2.f64 x.im x.re))) (*.f64 y.re (*.f64 (atan2.f64 x.im x.re) -2)))
(*.f64 y.re (atan2.f64 x.im x.re))
(-.f64 -1 (-.f64 -1 (*.f64 y.re (atan2.f64 x.im x.re))))
(*.f64 y.re (atan2.f64 x.im x.re))
(-.f64 2 (-.f64 2 (*.f64 y.re (atan2.f64 x.im x.re))))
(*.f64 y.re (atan2.f64 x.im x.re))
(-.f64 -2 (-.f64 -2 (*.f64 y.re (atan2.f64 x.im x.re))))
(*.f64 y.re (atan2.f64 x.im x.re))
(-.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) 1) 1)
(*.f64 y.re (atan2.f64 x.im x.re))
(-.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) -1) -1)
(*.f64 y.re (atan2.f64 x.im x.re))
(-.f64 (*.f64 (atan2.f64 x.im x.re) (*.f64 y.re 1/2)) (*.f64 (*.f64 y.re (atan2.f64 x.im x.re)) -1/2))
(*.f64 y.re (atan2.f64 x.im x.re))
(-.f64 3 (-.f64 3 (*.f64 y.re (atan2.f64 x.im x.re))))
(*.f64 y.re (atan2.f64 x.im x.re))
(-.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) 2) 2)
(*.f64 y.re (atan2.f64 x.im x.re))
(-.f64 -3 (+.f64 -3 (*.f64 y.re (neg.f64 (atan2.f64 x.im x.re)))))
(*.f64 y.re (atan2.f64 x.im x.re))
(-.f64 (+.f64 -2 (*.f64 y.re (atan2.f64 x.im x.re))) -2)
(*.f64 y.re (atan2.f64 x.im x.re))
(-.f64 (+.f64 -3 (*.f64 y.re (atan2.f64 x.im x.re))) -3)
(*.f64 y.re (atan2.f64 x.im x.re))
(/.f64 (*.f64 y.re (atan2.f64 x.im x.re)) 1)
(*.f64 y.re (atan2.f64 x.im x.re))
(/.f64 (*.f64 y.re (neg.f64 (atan2.f64 x.im x.re))) -1)
(*.f64 y.re (atan2.f64 x.im x.re))
(/.f64 (*.f64 y.re (*.f64 (atan2.f64 x.im x.re) 2)) 2)
(*.f64 y.re (atan2.f64 x.im x.re))
(/.f64 (*.f64 y.re (*.f64 (atan2.f64 x.im x.re) 4)) 4)
(*.f64 y.re (atan2.f64 x.im x.re))
(/.f64 (*.f64 y.re (*.f64 (atan2.f64 x.im x.re) -2)) -2)
(*.f64 y.re (atan2.f64 x.im x.re))
(/.f64 (*.f64 y.re (*.f64 (atan2.f64 x.im x.re) -4)) -4)
(*.f64 y.re (atan2.f64 x.im x.re))
(/.f64 (*.f64 y.re (*.f64 (atan2.f64 x.im x.re) 8)) 8)
(*.f64 y.re (atan2.f64 x.im x.re))
(/.f64 (*.f64 2 (*.f64 y.re (*.f64 (atan2.f64 x.im x.re) 8))) 16)
(*.f64 y.re (atan2.f64 x.im x.re))
(/.f64 (*.f64 (*.f64 y.re (atan2.f64 x.im x.re)) -8) -8)
(*.f64 y.re (atan2.f64 x.im x.re))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 y.re (*.f64 (atan2.f64 x.im x.re) 8)))) 32)
(*.f64 y.re (atan2.f64 x.im x.re))
(/.f64 (*.f64 2 (*.f64 (*.f64 y.re (atan2.f64 x.im x.re)) -8)) -16)
(*.f64 y.re (atan2.f64 x.im x.re))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 y.re (*.f64 (atan2.f64 x.im x.re) 8))))) 64)
(*.f64 y.re (atan2.f64 x.im x.re))
(pow.f64 (*.f64 y.re (atan2.f64 x.im x.re)) 1)
(*.f64 y.re (atan2.f64 x.im x.re))
(neg.f64 (*.f64 y.re (neg.f64 (atan2.f64 x.im x.re))))
(*.f64 y.re (atan2.f64 x.im x.re))

localize37.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
1.1b
(*.f64 (atan2.f64 x.im x.re) y.re)
2.6b
(*.f64 (atan2.f64 x.im x.re) y.im)
17.3b
(cos.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.im)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))
28.5b
(sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))
Compiler

Compiled 161 to 21 computations (87% saved)

series127.0ms (0.5%)

Counts
1 → 48
Calls

12 calls:

TimeVariablePointExpression
74.0ms
x.im
@inf
(cos.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.im)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))
26.0ms
x.im
@0
(cos.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.im)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))
15.0ms
x.re
@0
(cos.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.im)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))
10.0ms
x.im
@-inf
(cos.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.im)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))
1.0ms
y.im
@0
(cos.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.im)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))

rewrite286.0ms (1%)

Algorithm
batch-egg-rewrite
Rules
1230×rational.json-simplify-35
1002×rational.json-1
1002×rational.json-2
1002×rational.json-3
976×exponential.json-3
Iterations

Useful iterations: 5 (0.0ms)

IterNodesCost
01437
19537
220537
344437
491337
5216433
6450733
Stop Event
node limit
Counts
1 → 22
Calls
Call 1
Inputs
(cos.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.im)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 1/2) (*.f64 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (/.f64 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 1/2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 8) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 8)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 8))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 8))) (*.f64 2 (*.f64 2 (*.f64 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 8)))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 1)))))

simplify296.0ms (1.1%)

Algorithm
egg-herbie
Rules
1842×rational.json-simplify-35
1712×rational.json-simplify-2
1238×rational.json-simplify-51
1058×rational.json-simplify-1
1046×rational.json-simplify-26
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
01213120
12683080
26183040
313353040
420923016
537753016
645333016
752023016
865193016
972983016
1078113016
Stop Event
node limit
Counts
70 → 71
Calls
Call 1
Inputs
(cos.f64 (+.f64 (*.f64 y.im (+.f64 (log.f64 -1) (log.f64 x.im))) (*.f64 y.re (atan2.f64 x.im x.re))))
(cos.f64 (+.f64 (*.f64 y.im (+.f64 (log.f64 -1) (log.f64 x.im))) (*.f64 y.re (atan2.f64 x.im x.re))))
(cos.f64 (+.f64 (*.f64 y.im (+.f64 (log.f64 -1) (log.f64 x.im))) (*.f64 y.re (atan2.f64 x.im x.re))))
(cos.f64 (+.f64 (*.f64 y.im (+.f64 (log.f64 -1) (log.f64 x.im))) (*.f64 y.re (atan2.f64 x.im x.re))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 1 x.im)))) y.im)))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 1 x.im)))) y.im)))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 1 x.im)))) y.im)))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 1 x.im)))) y.im)))
(cos.f64 (+.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 -1 x.im)) y.im)) (*.f64 y.re (atan2.f64 x.im x.re))))
(cos.f64 (+.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 -1 x.im)) y.im)) (*.f64 y.re (atan2.f64 x.im x.re))))
(cos.f64 (+.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 -1 x.im)) y.im)) (*.f64 y.re (atan2.f64 x.im x.re))))
(cos.f64 (+.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 -1 x.im)) y.im)) (*.f64 y.re (atan2.f64 x.im x.re))))
(cos.f64 (*.f64 y.re (atan2.f64 x.im x.re)))
(+.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 -1 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 y.im (log.f64 (neg.f64 x.im))))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 y.im 2) (*.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (pow.f64 (log.f64 (neg.f64 x.im)) 2)))) (+.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 -1 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 y.im (log.f64 (neg.f64 x.im)))))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 y.im 2) (*.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (pow.f64 (log.f64 (neg.f64 x.im)) 2)))) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 (pow.f64 y.im 3) (pow.f64 (log.f64 (neg.f64 x.im)) 3)))) (+.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 -1 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 y.im (log.f64 (neg.f64 x.im))))))))
(cos.f64 (+.f64 (*.f64 y.im (log.f64 (neg.f64 x.im))) (*.f64 y.re (atan2.f64 x.im x.re))))
(cos.f64 (+.f64 (*.f64 y.im (log.f64 (neg.f64 x.im))) (*.f64 y.re (atan2.f64 x.im x.re))))
(cos.f64 (+.f64 (*.f64 y.im (log.f64 (neg.f64 x.im))) (*.f64 y.re (atan2.f64 x.im x.re))))
(cos.f64 (+.f64 (*.f64 y.im (log.f64 (neg.f64 x.im))) (*.f64 y.re (atan2.f64 x.im x.re))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (neg.f64 x.im)))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (neg.f64 x.im)))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (neg.f64 x.im)))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (neg.f64 x.im)))))
(cos.f64 (+.f64 (*.f64 y.im (log.f64 (neg.f64 x.im))) (*.f64 y.re (atan2.f64 x.im x.re))))
(cos.f64 (+.f64 (*.f64 y.im (log.f64 (neg.f64 x.im))) (*.f64 y.re (atan2.f64 x.im x.re))))
(cos.f64 (+.f64 (*.f64 y.im (log.f64 (neg.f64 x.im))) (*.f64 y.re (atan2.f64 x.im x.re))))
(cos.f64 (+.f64 (*.f64 y.im (log.f64 (neg.f64 x.im))) (*.f64 y.re (atan2.f64 x.im x.re))))
(cos.f64 (+.f64 (*.f64 y.im (log.f64 (neg.f64 x.im))) (*.f64 y.re (atan2.f64 x.im x.re))))
(cos.f64 (+.f64 (*.f64 y.im (log.f64 (neg.f64 x.im))) (*.f64 y.re (atan2.f64 x.im x.re))))
(cos.f64 (+.f64 (*.f64 y.im (log.f64 (neg.f64 x.im))) (*.f64 y.re (atan2.f64 x.im x.re))))
(cos.f64 (+.f64 (*.f64 y.im (log.f64 (neg.f64 x.im))) (*.f64 y.re (atan2.f64 x.im x.re))))
(cos.f64 (+.f64 (*.f64 y.im (log.f64 (neg.f64 x.im))) (*.f64 y.re (atan2.f64 x.im x.re))))
(cos.f64 (+.f64 (*.f64 y.im (log.f64 (neg.f64 x.im))) (*.f64 y.re (atan2.f64 x.im x.re))))
(cos.f64 (+.f64 (*.f64 y.im (log.f64 (neg.f64 x.im))) (*.f64 y.re (atan2.f64 x.im x.re))))
(cos.f64 (+.f64 (*.f64 y.im (log.f64 (neg.f64 x.im))) (*.f64 y.re (atan2.f64 x.im x.re))))
(cos.f64 (*.f64 y.im (log.f64 (neg.f64 x.im))))
(+.f64 (*.f64 -1 (*.f64 y.re (*.f64 (atan2.f64 x.im x.re) (sin.f64 (*.f64 y.im (log.f64 (neg.f64 x.im))))))) (cos.f64 (*.f64 y.im (log.f64 (neg.f64 x.im)))))
(+.f64 (*.f64 -1 (*.f64 y.re (*.f64 (atan2.f64 x.im x.re) (sin.f64 (*.f64 y.im (log.f64 (neg.f64 x.im))))))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 y.re 2) (*.f64 (pow.f64 (atan2.f64 x.im x.re) 2) (cos.f64 (*.f64 y.im (log.f64 (neg.f64 x.im))))))) (cos.f64 (*.f64 y.im (log.f64 (neg.f64 x.im))))))
(+.f64 (*.f64 -1 (*.f64 y.re (*.f64 (atan2.f64 x.im x.re) (sin.f64 (*.f64 y.im (log.f64 (neg.f64 x.im))))))) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 y.re 3) (*.f64 (pow.f64 (atan2.f64 x.im x.re) 3) (sin.f64 (*.f64 y.im (log.f64 (neg.f64 x.im))))))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 y.re 2) (*.f64 (pow.f64 (atan2.f64 x.im x.re) 2) (cos.f64 (*.f64 y.im (log.f64 (neg.f64 x.im))))))) (cos.f64 (*.f64 y.im (log.f64 (neg.f64 x.im)))))))
(cos.f64 (+.f64 (*.f64 y.im (log.f64 (neg.f64 x.im))) (*.f64 y.re (atan2.f64 x.im x.re))))
(cos.f64 (+.f64 (*.f64 y.im (log.f64 (neg.f64 x.im))) (*.f64 y.re (atan2.f64 x.im x.re))))
(cos.f64 (+.f64 (*.f64 y.im (log.f64 (neg.f64 x.im))) (*.f64 y.re (atan2.f64 x.im x.re))))
(cos.f64 (+.f64 (*.f64 y.im (log.f64 (neg.f64 x.im))) (*.f64 y.re (atan2.f64 x.im x.re))))
(cos.f64 (+.f64 (*.f64 y.im (log.f64 (neg.f64 x.im))) (*.f64 y.re (atan2.f64 x.im x.re))))
(cos.f64 (+.f64 (*.f64 y.im (log.f64 (neg.f64 x.im))) (*.f64 y.re (atan2.f64 x.im x.re))))
(cos.f64 (+.f64 (*.f64 y.im (log.f64 (neg.f64 x.im))) (*.f64 y.re (atan2.f64 x.im x.re))))
(cos.f64 (+.f64 (*.f64 y.im (log.f64 (neg.f64 x.im))) (*.f64 y.re (atan2.f64 x.im x.re))))
(+.f64 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 0)
(+.f64 0 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))))
(+.f64 (*.f64 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 1/2) (*.f64 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 1/2))
(-.f64 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 0)
(*.f64 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 1)
(*.f64 1 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))))
(*.f64 2 (*.f64 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 1/2))
(*.f64 (*.f64 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 2) 1/2)
(*.f64 4 (/.f64 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 4))
(*.f64 (*.f64 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 4) 1/4)
(*.f64 1/2 (*.f64 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 2))
(*.f64 (*.f64 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 1/2) 2)
(*.f64 1/4 (*.f64 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 4))
(*.f64 (/.f64 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 4) 4)
(/.f64 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 1)
(/.f64 (*.f64 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 2) 2)
(/.f64 (*.f64 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 4) 4)
(/.f64 (*.f64 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 8) 8)
(/.f64 (*.f64 2 (*.f64 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 8)) 16)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 8))) 32)
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 8))) (*.f64 2 (*.f64 2 (*.f64 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 8)))) 64)
(pow.f64 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 1)
Outputs
(cos.f64 (+.f64 (*.f64 y.im (+.f64 (log.f64 -1) (log.f64 x.im))) (*.f64 y.re (atan2.f64 x.im x.re))))
(cos.f64 (+.f64 (*.f64 y.im (+.f64 (log.f64 -1) (log.f64 x.im))) (*.f64 y.re (atan2.f64 x.im x.re))))
(cos.f64 (+.f64 (*.f64 y.im (+.f64 (log.f64 -1) (log.f64 x.im))) (*.f64 y.re (atan2.f64 x.im x.re))))
(cos.f64 (+.f64 (*.f64 y.im (+.f64 (log.f64 -1) (log.f64 x.im))) (*.f64 y.re (atan2.f64 x.im x.re))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 1 x.im)))) y.im)))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 1 x.im)))))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 1 x.im)))))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 1 x.im)))) y.im)))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 1 x.im)))))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 1 x.im)))))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 1 x.im)))) y.im)))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 1 x.im)))))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 1 x.im)))))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 1 x.im)))) y.im)))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 1 x.im)))))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 1 x.im)))))))
(cos.f64 (+.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 -1 x.im)) y.im)) (*.f64 y.re (atan2.f64 x.im x.re))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 -1 x.im)) (*.f64 y.im -1))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 -1 x.im)) (neg.f64 y.im))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (neg.f64 (log.f64 (/.f64 -1 x.im))))))
(cos.f64 (+.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 -1 x.im)) y.im)) (*.f64 y.re (atan2.f64 x.im x.re))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 -1 x.im)) (*.f64 y.im -1))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 -1 x.im)) (neg.f64 y.im))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (neg.f64 (log.f64 (/.f64 -1 x.im))))))
(cos.f64 (+.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 -1 x.im)) y.im)) (*.f64 y.re (atan2.f64 x.im x.re))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 -1 x.im)) (*.f64 y.im -1))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 -1 x.im)) (neg.f64 y.im))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (neg.f64 (log.f64 (/.f64 -1 x.im))))))
(cos.f64 (+.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 -1 x.im)) y.im)) (*.f64 y.re (atan2.f64 x.im x.re))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 -1 x.im)) (*.f64 y.im -1))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 -1 x.im)) (neg.f64 y.im))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (neg.f64 (log.f64 (/.f64 -1 x.im))))))
(cos.f64 (*.f64 y.re (atan2.f64 x.im x.re)))
(+.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 -1 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 y.im (log.f64 (neg.f64 x.im))))))
(+.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 -1 (*.f64 y.im (*.f64 (log.f64 (neg.f64 x.im)) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))))))
(+.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (neg.f64 (*.f64 y.im (log.f64 (neg.f64 x.im))))))
(+.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 (log.f64 (neg.f64 x.im)) (neg.f64 y.im))))
(+.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 (*.f64 y.im (log.f64 (neg.f64 x.im))) (sin.f64 (*.f64 (atan2.f64 x.im x.re) (neg.f64 y.re)))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 y.im 2) (*.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (pow.f64 (log.f64 (neg.f64 x.im)) 2)))) (+.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 -1 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 y.im (log.f64 (neg.f64 x.im)))))))
(+.f64 (+.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 -1 (*.f64 y.im (*.f64 (log.f64 (neg.f64 x.im)) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))))))) (*.f64 -1/2 (*.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 (pow.f64 (log.f64 (neg.f64 x.im)) 2) (pow.f64 y.im 2)))))
(+.f64 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (neg.f64 (*.f64 y.im (log.f64 (neg.f64 x.im))))) (+.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 (pow.f64 (*.f64 y.im (log.f64 (neg.f64 x.im))) 2) -1/2))))
(+.f64 (+.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 (log.f64 (neg.f64 x.im)) (neg.f64 y.im)))) (*.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 -1/2 (pow.f64 (*.f64 y.im (log.f64 (neg.f64 x.im))) 2))))
(+.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (+.f64 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 (log.f64 (neg.f64 x.im)) (neg.f64 y.im))) (*.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 -1/2 (pow.f64 (*.f64 y.im (log.f64 (neg.f64 x.im))) 2)))))
(+.f64 (+.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 (*.f64 y.im (log.f64 (neg.f64 x.im))) (sin.f64 (*.f64 (atan2.f64 x.im x.re) (neg.f64 y.re))))) (*.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 -1/2 (pow.f64 (*.f64 y.im (log.f64 (neg.f64 x.im))) 2))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 y.im 2) (*.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (pow.f64 (log.f64 (neg.f64 x.im)) 2)))) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 (pow.f64 y.im 3) (pow.f64 (log.f64 (neg.f64 x.im)) 3)))) (+.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 -1 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 y.im (log.f64 (neg.f64 x.im))))))))
(+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 (pow.f64 (log.f64 (neg.f64 x.im)) 2) (pow.f64 y.im 2)))) (+.f64 (+.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 -1 (*.f64 y.im (*.f64 (log.f64 (neg.f64 x.im)) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))))))) (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 (pow.f64 (*.f64 y.im (log.f64 (neg.f64 x.im))) 3) 1/6))))
(+.f64 (+.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (neg.f64 (*.f64 y.im (log.f64 (neg.f64 x.im)))))) (+.f64 (*.f64 (pow.f64 (*.f64 y.im (log.f64 (neg.f64 x.im))) 3) (*.f64 1/6 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))))) (*.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 (pow.f64 (*.f64 y.im (log.f64 (neg.f64 x.im))) 2) -1/2))))
(+.f64 (*.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 -1/2 (pow.f64 (*.f64 y.im (log.f64 (neg.f64 x.im))) 2))) (+.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (+.f64 (*.f64 1/6 (pow.f64 (*.f64 y.im (log.f64 (neg.f64 x.im))) 3)) (*.f64 (log.f64 (neg.f64 x.im)) (neg.f64 y.im))))))
(+.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (+.f64 (*.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 -1/2 (pow.f64 (*.f64 y.im (log.f64 (neg.f64 x.im))) 2))) (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (+.f64 (*.f64 1/6 (pow.f64 (*.f64 y.im (log.f64 (neg.f64 x.im))) 3)) (*.f64 (log.f64 (neg.f64 x.im)) (neg.f64 y.im))))))
(+.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (+.f64 (*.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 -1/2 (pow.f64 (*.f64 y.im (log.f64 (neg.f64 x.im))) 2))) (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (+.f64 (*.f64 1/6 (pow.f64 (*.f64 y.im (log.f64 (neg.f64 x.im))) 3)) (*.f64 y.im (neg.f64 (log.f64 (neg.f64 x.im))))))))
(cos.f64 (+.f64 (*.f64 y.im (log.f64 (neg.f64 x.im))) (*.f64 y.re (atan2.f64 x.im x.re))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (neg.f64 x.im)))))
(cos.f64 (+.f64 (*.f64 y.im (log.f64 (neg.f64 x.im))) (*.f64 y.re (atan2.f64 x.im x.re))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (neg.f64 x.im)))))
(cos.f64 (+.f64 (*.f64 y.im (log.f64 (neg.f64 x.im))) (*.f64 y.re (atan2.f64 x.im x.re))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (neg.f64 x.im)))))
(cos.f64 (+.f64 (*.f64 y.im (log.f64 (neg.f64 x.im))) (*.f64 y.re (atan2.f64 x.im x.re))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (neg.f64 x.im)))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (neg.f64 x.im)))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (neg.f64 x.im)))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (neg.f64 x.im)))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (neg.f64 x.im)))))
(cos.f64 (+.f64 (*.f64 y.im (log.f64 (neg.f64 x.im))) (*.f64 y.re (atan2.f64 x.im x.re))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (neg.f64 x.im)))))
(cos.f64 (+.f64 (*.f64 y.im (log.f64 (neg.f64 x.im))) (*.f64 y.re (atan2.f64 x.im x.re))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (neg.f64 x.im)))))
(cos.f64 (+.f64 (*.f64 y.im (log.f64 (neg.f64 x.im))) (*.f64 y.re (atan2.f64 x.im x.re))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (neg.f64 x.im)))))
(cos.f64 (+.f64 (*.f64 y.im (log.f64 (neg.f64 x.im))) (*.f64 y.re (atan2.f64 x.im x.re))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (neg.f64 x.im)))))
(cos.f64 (+.f64 (*.f64 y.im (log.f64 (neg.f64 x.im))) (*.f64 y.re (atan2.f64 x.im x.re))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (neg.f64 x.im)))))
(cos.f64 (+.f64 (*.f64 y.im (log.f64 (neg.f64 x.im))) (*.f64 y.re (atan2.f64 x.im x.re))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (neg.f64 x.im)))))
(cos.f64 (+.f64 (*.f64 y.im (log.f64 (neg.f64 x.im))) (*.f64 y.re (atan2.f64 x.im x.re))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (neg.f64 x.im)))))
(cos.f64 (+.f64 (*.f64 y.im (log.f64 (neg.f64 x.im))) (*.f64 y.re (atan2.f64 x.im x.re))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (neg.f64 x.im)))))
(cos.f64 (+.f64 (*.f64 y.im (log.f64 (neg.f64 x.im))) (*.f64 y.re (atan2.f64 x.im x.re))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (neg.f64 x.im)))))
(cos.f64 (+.f64 (*.f64 y.im (log.f64 (neg.f64 x.im))) (*.f64 y.re (atan2.f64 x.im x.re))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (neg.f64 x.im)))))
(cos.f64 (+.f64 (*.f64 y.im (log.f64 (neg.f64 x.im))) (*.f64 y.re (atan2.f64 x.im x.re))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (neg.f64 x.im)))))
(cos.f64 (+.f64 (*.f64 y.im (log.f64 (neg.f64 x.im))) (*.f64 y.re (atan2.f64 x.im x.re))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (neg.f64 x.im)))))
(cos.f64 (*.f64 y.im (log.f64 (neg.f64 x.im))))
(+.f64 (*.f64 -1 (*.f64 y.re (*.f64 (atan2.f64 x.im x.re) (sin.f64 (*.f64 y.im (log.f64 (neg.f64 x.im))))))) (cos.f64 (*.f64 y.im (log.f64 (neg.f64 x.im)))))
(+.f64 (cos.f64 (*.f64 y.im (log.f64 (neg.f64 x.im)))) (*.f64 -1 (*.f64 y.re (*.f64 (atan2.f64 x.im x.re) (sin.f64 (*.f64 y.im (log.f64 (neg.f64 x.im))))))))
(+.f64 (cos.f64 (*.f64 y.im (log.f64 (neg.f64 x.im)))) (neg.f64 (*.f64 (sin.f64 (*.f64 y.im (log.f64 (neg.f64 x.im)))) (*.f64 y.re (atan2.f64 x.im x.re)))))
(+.f64 (cos.f64 (*.f64 y.im (log.f64 (neg.f64 x.im)))) (*.f64 (atan2.f64 x.im x.re) (neg.f64 (*.f64 y.re (sin.f64 (*.f64 y.im (log.f64 (neg.f64 x.im))))))))
(+.f64 (cos.f64 (*.f64 y.im (log.f64 (neg.f64 x.im)))) (*.f64 y.re (*.f64 (atan2.f64 x.im x.re) (sin.f64 (*.f64 (log.f64 (neg.f64 x.im)) (neg.f64 y.im))))))
(+.f64 (cos.f64 (*.f64 y.im (log.f64 (neg.f64 x.im)))) (*.f64 y.re (*.f64 (atan2.f64 x.im x.re) (neg.f64 (sin.f64 (*.f64 y.im (log.f64 (neg.f64 x.im))))))))
(+.f64 (*.f64 -1 (*.f64 y.re (*.f64 (atan2.f64 x.im x.re) (sin.f64 (*.f64 y.im (log.f64 (neg.f64 x.im))))))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 y.re 2) (*.f64 (pow.f64 (atan2.f64 x.im x.re) 2) (cos.f64 (*.f64 y.im (log.f64 (neg.f64 x.im))))))) (cos.f64 (*.f64 y.im (log.f64 (neg.f64 x.im))))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 y.re 2) (*.f64 (cos.f64 (*.f64 y.im (log.f64 (neg.f64 x.im)))) (pow.f64 (atan2.f64 x.im x.re) 2)))) (+.f64 (cos.f64 (*.f64 y.im (log.f64 (neg.f64 x.im)))) (*.f64 -1 (*.f64 y.re (*.f64 (atan2.f64 x.im x.re) (sin.f64 (*.f64 y.im (log.f64 (neg.f64 x.im)))))))))
(+.f64 (+.f64 (cos.f64 (*.f64 y.im (log.f64 (neg.f64 x.im)))) (neg.f64 (*.f64 (sin.f64 (*.f64 y.im (log.f64 (neg.f64 x.im)))) (*.f64 y.re (atan2.f64 x.im x.re))))) (*.f64 -1/2 (*.f64 (cos.f64 (*.f64 y.im (log.f64 (neg.f64 x.im)))) (*.f64 (pow.f64 (atan2.f64 x.im x.re) 2) (pow.f64 y.re 2)))))
(+.f64 (*.f64 (atan2.f64 x.im x.re) (neg.f64 (*.f64 y.re (sin.f64 (*.f64 y.im (log.f64 (neg.f64 x.im))))))) (+.f64 (cos.f64 (*.f64 y.im (log.f64 (neg.f64 x.im)))) (*.f64 -1/2 (*.f64 (cos.f64 (*.f64 y.im (log.f64 (neg.f64 x.im)))) (pow.f64 (*.f64 y.re (atan2.f64 x.im x.re)) 2)))))
(+.f64 (+.f64 (cos.f64 (*.f64 y.im (log.f64 (neg.f64 x.im)))) (*.f64 y.re (*.f64 (atan2.f64 x.im x.re) (sin.f64 (*.f64 (log.f64 (neg.f64 x.im)) (neg.f64 y.im)))))) (*.f64 -1/2 (*.f64 (cos.f64 (*.f64 y.im (log.f64 (neg.f64 x.im)))) (pow.f64 (*.f64 y.re (atan2.f64 x.im x.re)) 2))))
(+.f64 (*.f64 y.re (*.f64 (atan2.f64 x.im x.re) (neg.f64 (sin.f64 (*.f64 y.im (log.f64 (neg.f64 x.im))))))) (+.f64 (cos.f64 (*.f64 y.im (log.f64 (neg.f64 x.im)))) (*.f64 -1/2 (*.f64 (cos.f64 (*.f64 y.im (log.f64 (neg.f64 x.im)))) (pow.f64 (*.f64 y.re (atan2.f64 x.im x.re)) 2)))))
(+.f64 (*.f64 -1 (*.f64 y.re (*.f64 (atan2.f64 x.im x.re) (sin.f64 (*.f64 y.im (log.f64 (neg.f64 x.im))))))) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 y.re 3) (*.f64 (pow.f64 (atan2.f64 x.im x.re) 3) (sin.f64 (*.f64 y.im (log.f64 (neg.f64 x.im))))))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 y.re 2) (*.f64 (pow.f64 (atan2.f64 x.im x.re) 2) (cos.f64 (*.f64 y.im (log.f64 (neg.f64 x.im))))))) (cos.f64 (*.f64 y.im (log.f64 (neg.f64 x.im)))))))
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 y.re 3) (*.f64 (sin.f64 (*.f64 y.im (log.f64 (neg.f64 x.im)))) (pow.f64 (atan2.f64 x.im x.re) 3)))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 y.re 2) (*.f64 (cos.f64 (*.f64 y.im (log.f64 (neg.f64 x.im)))) (pow.f64 (atan2.f64 x.im x.re) 2)))) (+.f64 (cos.f64 (*.f64 y.im (log.f64 (neg.f64 x.im)))) (*.f64 -1 (*.f64 y.re (*.f64 (atan2.f64 x.im x.re) (sin.f64 (*.f64 y.im (log.f64 (neg.f64 x.im))))))))))
(+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (*.f64 y.im (log.f64 (neg.f64 x.im)))) (*.f64 (pow.f64 (atan2.f64 x.im x.re) 2) (pow.f64 y.re 2)))) (+.f64 (+.f64 (cos.f64 (*.f64 y.im (log.f64 (neg.f64 x.im)))) (*.f64 (*.f64 (sin.f64 (*.f64 y.im (log.f64 (neg.f64 x.im)))) (pow.f64 (atan2.f64 x.im x.re) 3)) (*.f64 (pow.f64 y.re 3) 1/6))) (neg.f64 (*.f64 (sin.f64 (*.f64 y.im (log.f64 (neg.f64 x.im)))) (*.f64 y.re (atan2.f64 x.im x.re))))))
(+.f64 (cos.f64 (*.f64 y.im (log.f64 (neg.f64 x.im)))) (+.f64 (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (*.f64 y.im (log.f64 (neg.f64 x.im)))) (pow.f64 (*.f64 y.re (atan2.f64 x.im x.re)) 2))) (*.f64 1/6 (*.f64 (sin.f64 (*.f64 y.im (log.f64 (neg.f64 x.im)))) (pow.f64 (*.f64 y.re (atan2.f64 x.im x.re)) 3)))) (*.f64 (atan2.f64 x.im x.re) (neg.f64 (*.f64 y.re (sin.f64 (*.f64 y.im (log.f64 (neg.f64 x.im)))))))))
(+.f64 (cos.f64 (*.f64 y.im (log.f64 (neg.f64 x.im)))) (+.f64 (*.f64 (atan2.f64 x.im x.re) (neg.f64 (*.f64 y.re (sin.f64 (*.f64 y.im (log.f64 (neg.f64 x.im))))))) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (*.f64 y.im (log.f64 (neg.f64 x.im)))) (pow.f64 (*.f64 y.re (atan2.f64 x.im x.re)) 2))) (*.f64 1/6 (*.f64 (sin.f64 (*.f64 y.im (log.f64 (neg.f64 x.im)))) (pow.f64 (*.f64 y.re (atan2.f64 x.im x.re)) 3))))))
(+.f64 (cos.f64 (*.f64 y.im (log.f64 (neg.f64 x.im)))) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (*.f64 y.im (log.f64 (neg.f64 x.im)))) (pow.f64 (*.f64 y.re (atan2.f64 x.im x.re)) 2))) (*.f64 (sin.f64 (*.f64 y.im (log.f64 (neg.f64 x.im)))) (+.f64 (*.f64 1/6 (pow.f64 (*.f64 y.re (atan2.f64 x.im x.re)) 3)) (*.f64 (atan2.f64 x.im x.re) (neg.f64 y.re))))))
(+.f64 (cos.f64 (*.f64 y.im (log.f64 (neg.f64 x.im)))) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (*.f64 y.im (log.f64 (neg.f64 x.im)))) (pow.f64 (*.f64 y.re (atan2.f64 x.im x.re)) 2))) (*.f64 (sin.f64 (*.f64 y.im (log.f64 (neg.f64 x.im)))) (+.f64 (*.f64 (atan2.f64 x.im x.re) (neg.f64 y.re)) (*.f64 1/6 (pow.f64 (*.f64 y.re (atan2.f64 x.im x.re)) 3))))))
(cos.f64 (+.f64 (*.f64 y.im (log.f64 (neg.f64 x.im))) (*.f64 y.re (atan2.f64 x.im x.re))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (neg.f64 x.im)))))
(cos.f64 (+.f64 (*.f64 y.im (log.f64 (neg.f64 x.im))) (*.f64 y.re (atan2.f64 x.im x.re))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (neg.f64 x.im)))))
(cos.f64 (+.f64 (*.f64 y.im (log.f64 (neg.f64 x.im))) (*.f64 y.re (atan2.f64 x.im x.re))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (neg.f64 x.im)))))
(cos.f64 (+.f64 (*.f64 y.im (log.f64 (neg.f64 x.im))) (*.f64 y.re (atan2.f64 x.im x.re))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (neg.f64 x.im)))))
(cos.f64 (+.f64 (*.f64 y.im (log.f64 (neg.f64 x.im))) (*.f64 y.re (atan2.f64 x.im x.re))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (neg.f64 x.im)))))
(cos.f64 (+.f64 (*.f64 y.im (log.f64 (neg.f64 x.im))) (*.f64 y.re (atan2.f64 x.im x.re))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (neg.f64 x.im)))))
(cos.f64 (+.f64 (*.f64 y.im (log.f64 (neg.f64 x.im))) (*.f64 y.re (atan2.f64 x.im x.re))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (neg.f64 x.im)))))
(cos.f64 (+.f64 (*.f64 y.im (log.f64 (neg.f64 x.im))) (*.f64 y.re (atan2.f64 x.im x.re))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (neg.f64 x.im)))))
(+.f64 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 0)
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(+.f64 0 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(+.f64 (*.f64 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 1/2) (*.f64 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 1/2))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(-.f64 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 0)
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(*.f64 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 1)
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(*.f64 1 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(*.f64 2 (*.f64 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 1/2))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(*.f64 (*.f64 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 2) 1/2)
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(*.f64 4 (/.f64 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 4))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(*.f64 (*.f64 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 4) 1/4)
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(*.f64 1/2 (*.f64 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 2))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(*.f64 (*.f64 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 1/2) 2)
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(*.f64 1/4 (*.f64 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 4))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(*.f64 (/.f64 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 4) 4)
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(/.f64 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 1)
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(/.f64 (*.f64 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 2) 2)
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(/.f64 (*.f64 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 4) 4)
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(/.f64 (*.f64 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 8) 8)
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(/.f64 (*.f64 2 (*.f64 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 8)) 16)
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 8))) 32)
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 8))) (*.f64 2 (*.f64 2 (*.f64 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 8)))) 64)
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(pow.f64 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 1)
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))

eval625.0ms (2.2%)

Compiler

Compiled 27447 to 10627 computations (61.3% saved)

prune391.0ms (1.4%)

Pruning

9 alts after pruning (9 fresh and 0 done)

PrunedKeptTotal
New5439552
Fresh000
Picked101
Done202
Total5469555
Error
3.4b
Counts
555 → 9
Alt Table
Click to see full alt table
StatusErrorProgram
40.1b
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (cos.f64 (*.f64 y.im (log.f64 (neg.f64 x.im)))))
17.8b
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) 1)
33.9b
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))))
34.6b
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.im)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))))
52.0b
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (cos.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.im)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))))
39.4b
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (cos.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))))
51.3b
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))))
39.2b
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))))
37.6b
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 x.im) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))))
Compiler

Compiled 450 to 274 computations (39.1% saved)

localize23.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(-.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))
0.3b
(*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re)
2.6b
(*.f64 (atan2.f64 x.im x.re) y.im)
28.5b
(sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))
Compiler

Compiled 113 to 17 computations (85% saved)

series40.0ms (0.1%)

Counts
2 → 84
Calls

21 calls:

TimeVariablePointExpression
34.0ms
y.re
@0
(*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re)
2.0ms
y.im
@0
(-.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))
0.0ms
x.re
@inf
(*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re)
0.0ms
x.re
@0
(*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re)
0.0ms
x.im
@inf
(*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re)

rewrite725.0ms (2.6%)

Algorithm
batch-egg-rewrite
Rules
1410×rational.json-simplify-35
1014×rational.json-1
1014×rational.json-2
1014×rational.json-3
1000×exponential.json-3
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01684
110684
223484
362284
4238584
5765684
Stop Event
node limit
Counts
2 → 35
Calls
Call 1
Inputs
(*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re)
(-.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y.re (log.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y.re (log.f64 (pow.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) 2))) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 y.re (log.f64 (pow.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) 2)))) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 y.re (log.f64 (pow.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) 2)))) (*.f64 2 (*.f64 y.re (log.f64 (pow.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) 2))))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re) 1)))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) y.re))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) (*.f64 y.re 1/2)))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re) (neg.f64 (*.f64 (atan2.f64 x.im x.re) y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (-.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 (*.f64 (atan2.f64 x.im x.re) y.im)) (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 -1 (-.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re) (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re) (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) 1)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 (-.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (-.f64 (*.f64 y.re (log.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) (*.f64 (atan2.f64 x.im x.re) (+.f64 y.im y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (/.f64 (-.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (-.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (-.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 4)) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re))) -2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 (-.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 4)) (*.f64 2 (*.f64 (-.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 4))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re)))))))

simplify1.1s (3.8%)

Algorithm
egg-herbie
Rules
1210×rational.json-simplify-35
884×rational.json-simplify-1
866×rational.json-simplify-61
850×rational.json-simplify-41
760×rational.json-simplify-54
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
02227385
15197061
29726957
319656729
445806729
579456729
Stop Event
node limit
Counts
119 → 264
Calls
Call 1
Inputs
(*.f64 y.re (log.f64 x.im))
(+.f64 (*.f64 y.re (log.f64 x.im)) (*.f64 1/2 (/.f64 (*.f64 (pow.f64 x.re 2) y.re) (pow.f64 x.im 2))))
(+.f64 (*.f64 y.re (log.f64 x.im)) (+.f64 (*.f64 -1/4 (/.f64 (*.f64 (pow.f64 x.re 4) y.re) (pow.f64 x.im 4))) (*.f64 1/2 (/.f64 (*.f64 (pow.f64 x.re 2) y.re) (pow.f64 x.im 2)))))
(+.f64 (*.f64 y.re (log.f64 x.im)) (+.f64 (*.f64 -1/4 (/.f64 (*.f64 (pow.f64 x.re 4) y.re) (pow.f64 x.im 4))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 x.re 2) y.re) (pow.f64 x.im 2))) (*.f64 1/6 (/.f64 (*.f64 (pow.f64 x.re 6) y.re) (pow.f64 x.im 6))))))
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.re)) y.re))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 y.re (pow.f64 x.im 2)) (pow.f64 x.re 2))) (*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.re)) y.re)))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 y.re (pow.f64 x.im 2)) (pow.f64 x.re 2))) (+.f64 (*.f64 -1/4 (/.f64 (*.f64 y.re (pow.f64 x.im 4)) (pow.f64 x.re 4))) (*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.re)) y.re))))
(+.f64 (*.f64 1/720 (/.f64 (*.f64 (+.f64 (*.f64 30 (pow.f64 x.im 6)) (*.f64 90 (pow.f64 x.im 6))) y.re) (pow.f64 x.re 6))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 y.re (pow.f64 x.im 2)) (pow.f64 x.re 2))) (+.f64 (*.f64 -1/4 (/.f64 (*.f64 y.re (pow.f64 x.im 4)) (pow.f64 x.re 4))) (*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.re)) y.re)))))
(*.f64 -1 (*.f64 y.re (log.f64 (/.f64 -1 x.re))))
(+.f64 (*.f64 -1 (*.f64 y.re (log.f64 (/.f64 -1 x.re)))) (*.f64 1/2 (/.f64 (*.f64 y.re (pow.f64 x.im 2)) (pow.f64 x.re 2))))
(+.f64 (*.f64 -1 (*.f64 y.re (log.f64 (/.f64 -1 x.re)))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 y.re (pow.f64 x.im 2)) (pow.f64 x.re 2))) (*.f64 -1/4 (/.f64 (*.f64 y.re (pow.f64 x.im 4)) (pow.f64 x.re 4)))))
(+.f64 (*.f64 1/720 (/.f64 (*.f64 (+.f64 (*.f64 30 (pow.f64 x.im 6)) (*.f64 90 (pow.f64 x.im 6))) y.re) (pow.f64 x.re 6))) (+.f64 (*.f64 -1 (*.f64 y.re (log.f64 (/.f64 -1 x.re)))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 y.re (pow.f64 x.im 2)) (pow.f64 x.re 2))) (*.f64 -1/4 (/.f64 (*.f64 y.re (pow.f64 x.im 4)) (pow.f64 x.re 4))))))
(*.f64 y.re (log.f64 x.re))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 y.re (pow.f64 x.im 2)) (pow.f64 x.re 2))) (*.f64 y.re (log.f64 x.re)))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 y.re (pow.f64 x.im 2)) (pow.f64 x.re 2))) (+.f64 (*.f64 -1/4 (/.f64 (*.f64 y.re (pow.f64 x.im 4)) (pow.f64 x.re 4))) (*.f64 y.re (log.f64 x.re))))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 y.re (pow.f64 x.im 2)) (pow.f64 x.re 2))) (+.f64 (*.f64 -1/4 (/.f64 (*.f64 y.re (pow.f64 x.im 4)) (pow.f64 x.re 4))) (+.f64 (*.f64 1/6 (/.f64 (*.f64 y.re (pow.f64 x.im 6)) (pow.f64 x.re 6))) (*.f64 y.re (log.f64 x.re)))))
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.im)) y.re))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 x.re 2) y.re) (pow.f64 x.im 2))) (*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.im)) y.re)))
(+.f64 (*.f64 -1/4 (/.f64 (*.f64 (pow.f64 x.re 4) y.re) (pow.f64 x.im 4))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 x.re 2) y.re) (pow.f64 x.im 2))) (*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.im)) y.re))))
(+.f64 (*.f64 -1/4 (/.f64 (*.f64 (pow.f64 x.re 4) y.re) (pow.f64 x.im 4))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 x.re 2) y.re) (pow.f64 x.im 2))) (+.f64 (*.f64 1/720 (/.f64 (*.f64 (+.f64 (*.f64 90 (pow.f64 x.re 6)) (*.f64 30 (pow.f64 x.re 6))) y.re) (pow.f64 x.im 6))) (*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.im)) y.re)))))
(*.f64 -1 (*.f64 (log.f64 (/.f64 -1 x.im)) y.re))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 x.re 2) y.re) (pow.f64 x.im 2))) (*.f64 -1 (*.f64 (log.f64 (/.f64 -1 x.im)) y.re)))
(+.f64 (*.f64 -1/4 (/.f64 (*.f64 (pow.f64 x.re 4) y.re) (pow.f64 x.im 4))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 x.re 2) y.re) (pow.f64 x.im 2))) (*.f64 -1 (*.f64 (log.f64 (/.f64 -1 x.im)) y.re))))
(+.f64 (*.f64 -1/4 (/.f64 (*.f64 (pow.f64 x.re 4) y.re) (pow.f64 x.im 4))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 x.re 2) y.re) (pow.f64 x.im 2))) (+.f64 (*.f64 1/720 (/.f64 (*.f64 (+.f64 (*.f64 90 (pow.f64 x.re 6)) (*.f64 30 (pow.f64 x.re 6))) y.re) (pow.f64 x.im 6))) (*.f64 -1 (*.f64 (log.f64 (/.f64 -1 x.im)) y.re)))))
(*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)))))
(*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)))))
(*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)))))
(*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)))))
(*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)))))
(*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)))))
(*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)))))
(*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)))))
(*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)))))
(*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)))))
(*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)))))
(*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)))))
(-.f64 (*.f64 y.re (log.f64 x.im)) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (+.f64 (*.f64 y.re (log.f64 x.im)) (*.f64 1/2 (/.f64 (*.f64 (pow.f64 x.re 2) y.re) (pow.f64 x.im 2)))) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (+.f64 (*.f64 y.re (log.f64 x.im)) (+.f64 (*.f64 -1/4 (/.f64 (*.f64 (pow.f64 x.re 4) y.re) (pow.f64 x.im 4))) (*.f64 1/2 (/.f64 (*.f64 (pow.f64 x.re 2) y.re) (pow.f64 x.im 2))))) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (+.f64 (*.f64 y.re (log.f64 x.im)) (+.f64 (*.f64 -1/4 (/.f64 (*.f64 (pow.f64 x.re 4) y.re) (pow.f64 x.im 4))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 x.re 2) y.re) (pow.f64 x.im 2))) (*.f64 1/6 (/.f64 (*.f64 (pow.f64 x.re 6) y.re) (pow.f64 x.im 6)))))) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (*.f64 -1 (*.f64 y.re (log.f64 (/.f64 1 x.re)))) (*.f64 (atan2.f64 x.im x.re) y.im))
(-.f64 (+.f64 (*.f64 -1 (*.f64 y.re (log.f64 (/.f64 1 x.re)))) (*.f64 1/2 (/.f64 (*.f64 y.re (pow.f64 x.im 2)) (pow.f64 x.re 2)))) (*.f64 (atan2.f64 x.im x.re) y.im))
(-.f64 (+.f64 (*.f64 -1 (*.f64 y.re (log.f64 (/.f64 1 x.re)))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 y.re (pow.f64 x.im 2)) (pow.f64 x.re 2))) (*.f64 -1/4 (/.f64 (*.f64 y.re (pow.f64 x.im 4)) (pow.f64 x.re 4))))) (*.f64 (atan2.f64 x.im x.re) y.im))
(-.f64 (+.f64 (*.f64 1/720 (/.f64 (*.f64 (+.f64 (*.f64 30 (pow.f64 x.im 6)) (*.f64 90 (pow.f64 x.im 6))) y.re) (pow.f64 x.re 6))) (+.f64 (*.f64 -1 (*.f64 y.re (log.f64 (/.f64 1 x.re)))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 y.re (pow.f64 x.im 2)) (pow.f64 x.re 2))) (*.f64 -1/4 (/.f64 (*.f64 y.re (pow.f64 x.im 4)) (pow.f64 x.re 4)))))) (*.f64 (atan2.f64 x.im x.re) y.im))
(-.f64 (*.f64 -1 (*.f64 y.re (log.f64 (/.f64 -1 x.re)))) (*.f64 (atan2.f64 x.im x.re) y.im))
(-.f64 (+.f64 (*.f64 -1 (*.f64 y.re (log.f64 (/.f64 -1 x.re)))) (*.f64 1/2 (/.f64 (*.f64 y.re (pow.f64 x.im 2)) (pow.f64 x.re 2)))) (*.f64 (atan2.f64 x.im x.re) y.im))
(-.f64 (+.f64 (*.f64 -1 (*.f64 y.re (log.f64 (/.f64 -1 x.re)))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 y.re (pow.f64 x.im 2)) (pow.f64 x.re 2))) (*.f64 -1/4 (/.f64 (*.f64 y.re (pow.f64 x.im 4)) (pow.f64 x.re 4))))) (*.f64 (atan2.f64 x.im x.re) y.im))
(-.f64 (+.f64 (*.f64 1/720 (/.f64 (*.f64 (+.f64 (*.f64 30 (pow.f64 x.im 6)) (*.f64 90 (pow.f64 x.im 6))) y.re) (pow.f64 x.re 6))) (+.f64 (*.f64 -1 (*.f64 y.re (log.f64 (/.f64 -1 x.re)))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 y.re (pow.f64 x.im 2)) (pow.f64 x.re 2))) (*.f64 -1/4 (/.f64 (*.f64 y.re (pow.f64 x.im 4)) (pow.f64 x.re 4)))))) (*.f64 (atan2.f64 x.im x.re) y.im))
(-.f64 (*.f64 y.re (log.f64 x.re)) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (+.f64 (*.f64 1/2 (/.f64 (*.f64 y.re (pow.f64 x.im 2)) (pow.f64 x.re 2))) (*.f64 y.re (log.f64 x.re))) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (+.f64 (*.f64 1/2 (/.f64 (*.f64 y.re (pow.f64 x.im 2)) (pow.f64 x.re 2))) (+.f64 (*.f64 -1/4 (/.f64 (*.f64 y.re (pow.f64 x.im 4)) (pow.f64 x.re 4))) (*.f64 y.re (log.f64 x.re)))) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (+.f64 (*.f64 1/2 (/.f64 (*.f64 y.re (pow.f64 x.im 2)) (pow.f64 x.re 2))) (+.f64 (*.f64 -1/4 (/.f64 (*.f64 y.re (pow.f64 x.im 4)) (pow.f64 x.re 4))) (+.f64 (*.f64 1/6 (/.f64 (*.f64 y.re (pow.f64 x.im 6)) (pow.f64 x.re 6))) (*.f64 y.re (log.f64 x.re))))) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.im)) y.re)) (*.f64 (atan2.f64 x.im x.re) y.im))
(-.f64 (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 x.re 2) y.re) (pow.f64 x.im 2))) (*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.im)) y.re))) (*.f64 (atan2.f64 x.im x.re) y.im))
(-.f64 (+.f64 (*.f64 -1/4 (/.f64 (*.f64 (pow.f64 x.re 4) y.re) (pow.f64 x.im 4))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 x.re 2) y.re) (pow.f64 x.im 2))) (*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.im)) y.re)))) (*.f64 (atan2.f64 x.im x.re) y.im))
(-.f64 (+.f64 (*.f64 1/720 (/.f64 (*.f64 y.re (+.f64 (*.f64 30 (pow.f64 x.re 6)) (*.f64 90 (pow.f64 x.re 6)))) (pow.f64 x.im 6))) (+.f64 (*.f64 -1/4 (/.f64 (*.f64 (pow.f64 x.re 4) y.re) (pow.f64 x.im 4))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 x.re 2) y.re) (pow.f64 x.im 2))) (*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.im)) y.re))))) (*.f64 (atan2.f64 x.im x.re) y.im))
(-.f64 (*.f64 -1 (*.f64 y.re (log.f64 (/.f64 -1 x.im)))) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (+.f64 (*.f64 -1 (*.f64 y.re (log.f64 (/.f64 -1 x.im)))) (*.f64 1/2 (/.f64 (*.f64 (pow.f64 x.re 2) y.re) (pow.f64 x.im 2)))) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (+.f64 (*.f64 -1 (*.f64 y.re (log.f64 (/.f64 -1 x.im)))) (+.f64 (*.f64 -1/4 (/.f64 (*.f64 (pow.f64 x.re 4) y.re) (pow.f64 x.im 4))) (*.f64 1/2 (/.f64 (*.f64 (pow.f64 x.re 2) y.re) (pow.f64 x.im 2))))) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (+.f64 (*.f64 -1 (*.f64 y.re (log.f64 (/.f64 -1 x.im)))) (+.f64 (*.f64 1/720 (/.f64 (*.f64 y.re (+.f64 (*.f64 30 (pow.f64 x.re 6)) (*.f64 90 (pow.f64 x.re 6)))) (pow.f64 x.im 6))) (+.f64 (*.f64 -1/4 (/.f64 (*.f64 (pow.f64 x.re 4) y.re) (pow.f64 x.im 4))) (*.f64 1/2 (/.f64 (*.f64 (pow.f64 x.re 2) y.re) (pow.f64 x.im 2)))))) (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))))))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))))))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))))))
(*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)))))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))))))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))))))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))))))
(*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)))))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))))))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))))))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))))))
(*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)))))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))))))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))))))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))))))
(*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))))))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))))))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))))))
(*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))))))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))))))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))))))
(+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re) 0)
(+.f64 0 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re))
(-.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re) 0)
(/.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re) 1)
(/.f64 (*.f64 y.re (log.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) 2)
(/.f64 (*.f64 y.re (log.f64 (pow.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) 2))) 4)
(/.f64 (*.f64 2 (*.f64 y.re (log.f64 (pow.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) 2)))) 8)
(/.f64 (+.f64 (*.f64 2 (*.f64 y.re (log.f64 (pow.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) 2)))) (*.f64 2 (*.f64 y.re (log.f64 (pow.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) 2))))) 16)
(pow.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re) 1)
(log.f64 (pow.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) y.re))
(log.f64 (pow.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) (*.f64 y.re 1/2)))
(+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re) (neg.f64 (*.f64 (atan2.f64 x.im x.re) y.im)))
(+.f64 (-.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 0)
(+.f64 0 (-.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)))
(+.f64 (neg.f64 (*.f64 (atan2.f64 x.im x.re) y.im)) (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re))
(+.f64 -1 (-.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re) (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) 1)))
(+.f64 (-.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re) (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) 1)) -1)
(*.f64 (-.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 1)
(*.f64 1 (-.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)))
(*.f64 1/2 (*.f64 (-.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 2))
(*.f64 1/2 (-.f64 (*.f64 y.re (log.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) (*.f64 (atan2.f64 x.im x.re) (+.f64 y.im y.im))))
(*.f64 2 (/.f64 (-.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 2))
(*.f64 (*.f64 (-.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 2) 1/2)
(*.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re)) -1)
(*.f64 -1 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re)))
(*.f64 (/.f64 (-.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 2) 2)
(/.f64 (-.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 1)
(/.f64 (*.f64 (-.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 2) 2)
(/.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re)) -1)
(/.f64 (*.f64 (-.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 4) 4)
(/.f64 (*.f64 2 (*.f64 (-.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 4)) 8)
(/.f64 (*.f64 2 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re))) -2)
(/.f64 (+.f64 (*.f64 2 (*.f64 (-.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 4)) (*.f64 2 (*.f64 (-.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 4))) 16)
(pow.f64 (-.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 1)
(neg.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re)))
Outputs
(*.f64 y.re (log.f64 x.im))
(+.f64 (*.f64 y.re (log.f64 x.im)) (*.f64 1/2 (/.f64 (*.f64 (pow.f64 x.re 2) y.re) (pow.f64 x.im 2))))
(+.f64 (*.f64 y.re (log.f64 x.im)) (*.f64 1/2 (/.f64 (*.f64 y.re (pow.f64 x.re 2)) (pow.f64 x.im 2))))
(*.f64 y.re (+.f64 (log.f64 x.im) (*.f64 1/2 (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))))
(+.f64 (*.f64 y.re (log.f64 x.im)) (+.f64 (*.f64 -1/4 (/.f64 (*.f64 (pow.f64 x.re 4) y.re) (pow.f64 x.im 4))) (*.f64 1/2 (/.f64 (*.f64 (pow.f64 x.re 2) y.re) (pow.f64 x.im 2)))))
(+.f64 (*.f64 y.re (log.f64 x.im)) (+.f64 (*.f64 1/2 (/.f64 (*.f64 y.re (pow.f64 x.re 2)) (pow.f64 x.im 2))) (*.f64 -1/4 (*.f64 y.re (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4))))))
(+.f64 (*.f64 y.re (+.f64 (log.f64 x.im) (*.f64 1/2 (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2))))) (*.f64 -1/4 (*.f64 y.re (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4)))))
(*.f64 y.re (+.f64 (*.f64 -1/4 (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4))) (+.f64 (log.f64 x.im) (*.f64 1/2 (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2))))))
(+.f64 (*.f64 y.re (log.f64 x.im)) (+.f64 (*.f64 -1/4 (/.f64 (*.f64 (pow.f64 x.re 4) y.re) (pow.f64 x.im 4))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 x.re 2) y.re) (pow.f64 x.im 2))) (*.f64 1/6 (/.f64 (*.f64 (pow.f64 x.re 6) y.re) (pow.f64 x.im 6))))))
(+.f64 (*.f64 y.re (log.f64 x.im)) (+.f64 (*.f64 -1/4 (*.f64 y.re (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4)))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 y.re (pow.f64 x.re 2)) (pow.f64 x.im 2))) (*.f64 1/6 (/.f64 (*.f64 y.re (pow.f64 x.re 6)) (pow.f64 x.im 6))))))
(+.f64 (*.f64 -1/4 (*.f64 y.re (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4)))) (+.f64 (*.f64 y.re (*.f64 1/6 (/.f64 (pow.f64 x.re 6) (pow.f64 x.im 6)))) (*.f64 y.re (+.f64 (log.f64 x.im) (*.f64 1/2 (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))))))
(+.f64 (*.f64 y.re (+.f64 (log.f64 x.im) (*.f64 1/2 (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2))))) (*.f64 y.re (+.f64 (*.f64 1/6 (/.f64 (pow.f64 x.re 6) (pow.f64 x.im 6))) (*.f64 -1/4 (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4))))))
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.re)) y.re))
(*.f64 y.re (*.f64 (log.f64 (/.f64 1 x.re)) -1))
(*.f64 y.re (neg.f64 (log.f64 (/.f64 1 x.re))))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 y.re (pow.f64 x.im 2)) (pow.f64 x.re 2))) (*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.re)) y.re)))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 x.im 2) (/.f64 y.re (pow.f64 x.re 2)))) (*.f64 y.re (*.f64 (log.f64 (/.f64 1 x.re)) -1)))
(+.f64 (*.f64 1/2 (*.f64 y.re (/.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)))) (*.f64 y.re (neg.f64 (log.f64 (/.f64 1 x.re)))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 x.im 2) (/.f64 y.re (pow.f64 x.re 2)))) (*.f64 y.re (neg.f64 (log.f64 (/.f64 1 x.re)))))
(*.f64 y.re (+.f64 (neg.f64 (log.f64 (/.f64 1 x.re))) (*.f64 1/2 (/.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)))))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 y.re (pow.f64 x.im 2)) (pow.f64 x.re 2))) (+.f64 (*.f64 -1/4 (/.f64 (*.f64 y.re (pow.f64 x.im 4)) (pow.f64 x.re 4))) (*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.re)) y.re))))
(+.f64 (+.f64 (*.f64 1/2 (*.f64 (pow.f64 x.im 2) (/.f64 y.re (pow.f64 x.re 2)))) (*.f64 -1/4 (*.f64 (pow.f64 x.im 4) (/.f64 y.re (pow.f64 x.re 4))))) (*.f64 y.re (*.f64 (log.f64 (/.f64 1 x.re)) -1)))
(+.f64 (+.f64 (*.f64 1/2 (*.f64 y.re (/.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)))) (*.f64 -1/4 (*.f64 y.re (/.f64 (pow.f64 x.im 4) (pow.f64 x.re 4))))) (*.f64 y.re (neg.f64 (log.f64 (/.f64 1 x.re)))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 x.im 2) (/.f64 y.re (pow.f64 x.re 2)))) (+.f64 (*.f64 (pow.f64 x.im 4) (*.f64 -1/4 (/.f64 y.re (pow.f64 x.re 4)))) (*.f64 y.re (neg.f64 (log.f64 (/.f64 1 x.re))))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 x.im 2) (/.f64 y.re (pow.f64 x.re 2)))) (*.f64 y.re (+.f64 (neg.f64 (log.f64 (/.f64 1 x.re))) (*.f64 -1/4 (/.f64 (pow.f64 x.im 4) (pow.f64 x.re 4))))))
(+.f64 (*.f64 (/.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)) (*.f64 y.re 1/2)) (*.f64 y.re (+.f64 (neg.f64 (log.f64 (/.f64 1 x.re))) (*.f64 -1/4 (/.f64 (pow.f64 x.im 4) (pow.f64 x.re 4))))))
(+.f64 (*.f64 1/720 (/.f64 (*.f64 (+.f64 (*.f64 30 (pow.f64 x.im 6)) (*.f64 90 (pow.f64 x.im 6))) y.re) (pow.f64 x.re 6))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 y.re (pow.f64 x.im 2)) (pow.f64 x.re 2))) (+.f64 (*.f64 -1/4 (/.f64 (*.f64 y.re (pow.f64 x.im 4)) (pow.f64 x.re 4))) (*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.re)) y.re)))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 x.im 2) (/.f64 y.re (pow.f64 x.re 2)))) (+.f64 (+.f64 (*.f64 -1/4 (*.f64 (pow.f64 x.im 4) (/.f64 y.re (pow.f64 x.re 4)))) (*.f64 y.re (*.f64 (log.f64 (/.f64 1 x.re)) -1))) (*.f64 1/720 (*.f64 y.re (/.f64 (+.f64 (*.f64 (pow.f64 x.im 6) 30) (*.f64 (pow.f64 x.im 6) 90)) (pow.f64 x.re 6))))))
(+.f64 (*.f64 1/2 (*.f64 y.re (/.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)))) (+.f64 (+.f64 (*.f64 -1/4 (*.f64 y.re (/.f64 (pow.f64 x.im 4) (pow.f64 x.re 4)))) (*.f64 y.re (neg.f64 (log.f64 (/.f64 1 x.re))))) (*.f64 y.re (*.f64 (/.f64 (*.f64 (pow.f64 x.im 6) 120) (pow.f64 x.re 6)) 1/720))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 x.im 2) (/.f64 y.re (pow.f64 x.re 2)))) (+.f64 (*.f64 (pow.f64 x.im 4) (*.f64 -1/4 (/.f64 y.re (pow.f64 x.re 4)))) (*.f64 y.re (+.f64 (neg.f64 (log.f64 (/.f64 1 x.re))) (*.f64 1/720 (*.f64 120 (/.f64 (pow.f64 x.im 6) (pow.f64 x.re 6))))))))
(+.f64 (*.f64 y.re (+.f64 (neg.f64 (log.f64 (/.f64 1 x.re))) (*.f64 -1/4 (/.f64 (pow.f64 x.im 4) (pow.f64 x.re 4))))) (*.f64 y.re (+.f64 (*.f64 1/720 (*.f64 (pow.f64 x.im 6) (/.f64 120 (pow.f64 x.re 6)))) (*.f64 1/2 (/.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))))))
(*.f64 -1 (*.f64 y.re (log.f64 (/.f64 -1 x.re))))
(*.f64 (log.f64 (/.f64 -1 x.re)) (neg.f64 y.re))
(+.f64 (*.f64 -1 (*.f64 y.re (log.f64 (/.f64 -1 x.re)))) (*.f64 1/2 (/.f64 (*.f64 y.re (pow.f64 x.im 2)) (pow.f64 x.re 2))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 x.im 2) (/.f64 y.re (pow.f64 x.re 2)))) (*.f64 -1 (*.f64 y.re (log.f64 (/.f64 -1 x.re)))))
(+.f64 (*.f64 1/2 (*.f64 y.re (/.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)))) (*.f64 (log.f64 (/.f64 -1 x.re)) (neg.f64 y.re)))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 x.im 2) (/.f64 y.re (pow.f64 x.re 2)))) (*.f64 (log.f64 (/.f64 -1 x.re)) (neg.f64 y.re)))
(*.f64 y.re (+.f64 (neg.f64 (log.f64 (/.f64 -1 x.re))) (*.f64 1/2 (/.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)))))
(+.f64 (*.f64 -1 (*.f64 y.re (log.f64 (/.f64 -1 x.re)))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 y.re (pow.f64 x.im 2)) (pow.f64 x.re 2))) (*.f64 -1/4 (/.f64 (*.f64 y.re (pow.f64 x.im 4)) (pow.f64 x.re 4)))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 x.im 2) (/.f64 y.re (pow.f64 x.re 2)))) (+.f64 (*.f64 -1/4 (*.f64 (pow.f64 x.im 4) (/.f64 y.re (pow.f64 x.re 4)))) (*.f64 -1 (*.f64 y.re (log.f64 (/.f64 -1 x.re))))))
(+.f64 (*.f64 1/2 (*.f64 y.re (/.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)))) (+.f64 (*.f64 -1/4 (*.f64 y.re (/.f64 (pow.f64 x.im 4) (pow.f64 x.re 4)))) (*.f64 (log.f64 (/.f64 -1 x.re)) (neg.f64 y.re))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 x.im 2) (/.f64 y.re (pow.f64 x.re 2)))) (+.f64 (*.f64 (pow.f64 x.im 4) (*.f64 -1/4 (/.f64 y.re (pow.f64 x.re 4)))) (*.f64 (log.f64 (/.f64 -1 x.re)) (neg.f64 y.re))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 x.im 2) (/.f64 y.re (pow.f64 x.re 2)))) (*.f64 y.re (+.f64 (neg.f64 (log.f64 (/.f64 -1 x.re))) (*.f64 -1/4 (/.f64 (pow.f64 x.im 4) (pow.f64 x.re 4))))))
(+.f64 (*.f64 (/.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)) (*.f64 y.re 1/2)) (*.f64 y.re (+.f64 (neg.f64 (log.f64 (/.f64 -1 x.re))) (*.f64 -1/4 (/.f64 (pow.f64 x.im 4) (pow.f64 x.re 4))))))
(+.f64 (*.f64 1/720 (/.f64 (*.f64 (+.f64 (*.f64 30 (pow.f64 x.im 6)) (*.f64 90 (pow.f64 x.im 6))) y.re) (pow.f64 x.re 6))) (+.f64 (*.f64 -1 (*.f64 y.re (log.f64 (/.f64 -1 x.re)))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 y.re (pow.f64 x.im 2)) (pow.f64 x.re 2))) (*.f64 -1/4 (/.f64 (*.f64 y.re (pow.f64 x.im 4)) (pow.f64 x.re 4))))))
(+.f64 (*.f64 1/720 (*.f64 y.re (/.f64 (+.f64 (*.f64 (pow.f64 x.im 6) 30) (*.f64 (pow.f64 x.im 6) 90)) (pow.f64 x.re 6)))) (+.f64 (*.f64 1/2 (*.f64 (pow.f64 x.im 2) (/.f64 y.re (pow.f64 x.re 2)))) (+.f64 (*.f64 -1/4 (*.f64 (pow.f64 x.im 4) (/.f64 y.re (pow.f64 x.re 4)))) (*.f64 -1 (*.f64 y.re (log.f64 (/.f64 -1 x.re)))))))
(+.f64 (*.f64 1/2 (*.f64 y.re (/.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)))) (+.f64 (+.f64 (*.f64 -1/4 (*.f64 y.re (/.f64 (pow.f64 x.im 4) (pow.f64 x.re 4)))) (*.f64 (log.f64 (/.f64 -1 x.re)) (neg.f64 y.re))) (*.f64 y.re (*.f64 (/.f64 (*.f64 (pow.f64 x.im 6) 120) (pow.f64 x.re 6)) 1/720))))
(+.f64 (+.f64 (*.f64 1/2 (*.f64 (pow.f64 x.im 2) (/.f64 y.re (pow.f64 x.re 2)))) (*.f64 (pow.f64 x.im 4) (*.f64 -1/4 (/.f64 y.re (pow.f64 x.re 4))))) (*.f64 y.re (+.f64 (neg.f64 (log.f64 (/.f64 -1 x.re))) (*.f64 1/720 (*.f64 120 (/.f64 (pow.f64 x.im 6) (pow.f64 x.re 6)))))))
(+.f64 (*.f64 y.re (+.f64 (neg.f64 (log.f64 (/.f64 -1 x.re))) (*.f64 1/2 (/.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))))) (*.f64 y.re (+.f64 (*.f64 1/720 (*.f64 (pow.f64 x.im 6) (/.f64 120 (pow.f64 x.re 6)))) (*.f64 -1/4 (/.f64 (pow.f64 x.im 4) (pow.f64 x.re 4))))))
(+.f64 (*.f64 y.re (+.f64 (neg.f64 (log.f64 (/.f64 -1 x.re))) (*.f64 -1/4 (/.f64 (pow.f64 x.im 4) (pow.f64 x.re 4))))) (*.f64 y.re (+.f64 (*.f64 1/720 (*.f64 (pow.f64 x.im 6) (/.f64 120 (pow.f64 x.re 6)))) (*.f64 1/2 (/.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))))))
(*.f64 y.re (log.f64 x.re))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 y.re (pow.f64 x.im 2)) (pow.f64 x.re 2))) (*.f64 y.re (log.f64 x.re)))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 x.im 2) (/.f64 y.re (pow.f64 x.re 2)))) (*.f64 y.re (log.f64 x.re)))
(+.f64 (*.f64 1/2 (*.f64 y.re (/.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)))) (*.f64 y.re (log.f64 x.re)))
(*.f64 y.re (+.f64 (log.f64 x.re) (*.f64 1/2 (/.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)))))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 y.re (pow.f64 x.im 2)) (pow.f64 x.re 2))) (+.f64 (*.f64 -1/4 (/.f64 (*.f64 y.re (pow.f64 x.im 4)) (pow.f64 x.re 4))) (*.f64 y.re (log.f64 x.re))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 x.im 2) (/.f64 y.re (pow.f64 x.re 2)))) (+.f64 (*.f64 -1/4 (*.f64 (pow.f64 x.im 4) (/.f64 y.re (pow.f64 x.re 4)))) (*.f64 y.re (log.f64 x.re))))
(+.f64 (*.f64 y.re (log.f64 x.re)) (+.f64 (*.f64 1/2 (*.f64 y.re (/.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)))) (*.f64 -1/4 (*.f64 y.re (/.f64 (pow.f64 x.im 4) (pow.f64 x.re 4))))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 x.im 2) (/.f64 y.re (pow.f64 x.re 2)))) (+.f64 (*.f64 (pow.f64 x.im 4) (*.f64 -1/4 (/.f64 y.re (pow.f64 x.re 4)))) (*.f64 y.re (log.f64 x.re))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 x.im 2) (/.f64 y.re (pow.f64 x.re 2)))) (*.f64 y.re (+.f64 (log.f64 x.re) (*.f64 -1/4 (/.f64 (pow.f64 x.im 4) (pow.f64 x.re 4))))))
(+.f64 (*.f64 -1/4 (*.f64 (pow.f64 x.im 4) (/.f64 y.re (pow.f64 x.re 4)))) (*.f64 y.re (+.f64 (log.f64 x.re) (*.f64 1/2 (/.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))))))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 y.re (pow.f64 x.im 2)) (pow.f64 x.re 2))) (+.f64 (*.f64 -1/4 (/.f64 (*.f64 y.re (pow.f64 x.im 4)) (pow.f64 x.re 4))) (+.f64 (*.f64 1/6 (/.f64 (*.f64 y.re (pow.f64 x.im 6)) (pow.f64 x.re 6))) (*.f64 y.re (log.f64 x.re)))))
(+.f64 (*.f64 -1/4 (*.f64 (pow.f64 x.im 4) (/.f64 y.re (pow.f64 x.re 4)))) (+.f64 (+.f64 (*.f64 y.re (log.f64 x.re)) (*.f64 1/6 (*.f64 (pow.f64 x.im 6) (/.f64 y.re (pow.f64 x.re 6))))) (*.f64 1/2 (*.f64 (pow.f64 x.im 2) (/.f64 y.re (pow.f64 x.re 2))))))
(+.f64 (*.f64 -1/4 (*.f64 y.re (/.f64 (pow.f64 x.im 4) (pow.f64 x.re 4)))) (+.f64 (*.f64 1/2 (*.f64 y.re (/.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)))) (+.f64 (*.f64 y.re (log.f64 x.re)) (*.f64 1/6 (*.f64 (pow.f64 x.im 6) (/.f64 y.re (pow.f64 x.re 6)))))))
(+.f64 (*.f64 (pow.f64 x.im 4) (*.f64 -1/4 (/.f64 y.re (pow.f64 x.re 4)))) (+.f64 (*.f64 1/2 (*.f64 (pow.f64 x.im 2) (/.f64 y.re (pow.f64 x.re 2)))) (+.f64 (*.f64 y.re (log.f64 x.re)) (*.f64 y.re (*.f64 (/.f64 (pow.f64 x.im 6) (pow.f64 x.re 6)) 1/6)))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 x.im 2) (/.f64 y.re (pow.f64 x.re 2)))) (+.f64 (*.f64 -1/4 (*.f64 (pow.f64 x.im 4) (/.f64 y.re (pow.f64 x.re 4)))) (*.f64 y.re (+.f64 (log.f64 x.re) (*.f64 1/6 (/.f64 (pow.f64 x.im 6) (pow.f64 x.re 6)))))))
(+.f64 (*.f64 -1/4 (*.f64 (pow.f64 x.im 4) (/.f64 y.re (pow.f64 x.re 4)))) (+.f64 (*.f64 (/.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)) (*.f64 y.re 1/2)) (*.f64 y.re (+.f64 (log.f64 x.re) (*.f64 1/6 (/.f64 (pow.f64 x.im 6) (pow.f64 x.re 6)))))))
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.im)) y.re))
(*.f64 -1 (*.f64 y.re (log.f64 (/.f64 1 x.im))))
(*.f64 (log.f64 (/.f64 1 x.im)) (neg.f64 y.re))
(*.f64 y.re (neg.f64 (log.f64 (/.f64 1 x.im))))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 x.re 2) y.re) (pow.f64 x.im 2))) (*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.im)) y.re)))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 y.re (pow.f64 x.re 2)) (pow.f64 x.im 2))) (*.f64 -1 (*.f64 y.re (log.f64 (/.f64 1 x.im)))))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 y.re (pow.f64 x.re 2)) (pow.f64 x.im 2))) (*.f64 (log.f64 (/.f64 1 x.im)) (neg.f64 y.re)))
(+.f64 (*.f64 (pow.f64 x.re 2) (*.f64 (/.f64 y.re (pow.f64 x.im 2)) 1/2)) (*.f64 (log.f64 (/.f64 1 x.im)) (neg.f64 y.re)))
(*.f64 y.re (+.f64 (neg.f64 (log.f64 (/.f64 1 x.im))) (*.f64 1/2 (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))))
(+.f64 (*.f64 -1/4 (/.f64 (*.f64 (pow.f64 x.re 4) y.re) (pow.f64 x.im 4))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 x.re 2) y.re) (pow.f64 x.im 2))) (*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.im)) y.re))))
(+.f64 (*.f64 -1/4 (*.f64 y.re (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4)))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 y.re (pow.f64 x.re 2)) (pow.f64 x.im 2))) (*.f64 -1 (*.f64 y.re (log.f64 (/.f64 1 x.im))))))
(+.f64 (*.f64 -1/4 (*.f64 y.re (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4)))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 y.re (pow.f64 x.re 2)) (pow.f64 x.im 2))) (*.f64 (log.f64 (/.f64 1 x.im)) (neg.f64 y.re))))
(+.f64 (*.f64 -1/4 (*.f64 y.re (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4)))) (+.f64 (*.f64 (pow.f64 x.re 2) (*.f64 (/.f64 y.re (pow.f64 x.im 2)) 1/2)) (*.f64 (log.f64 (/.f64 1 x.im)) (neg.f64 y.re))))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 y.re (pow.f64 x.re 2)) (pow.f64 x.im 2))) (*.f64 y.re (+.f64 (neg.f64 (log.f64 (/.f64 1 x.im))) (*.f64 -1/4 (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4))))))
(+.f64 (*.f64 (/.f64 y.re (pow.f64 x.im 2)) (*.f64 (pow.f64 x.re 2) 1/2)) (*.f64 y.re (+.f64 (neg.f64 (log.f64 (/.f64 1 x.im))) (*.f64 -1/4 (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4))))))
(+.f64 (*.f64 -1/4 (/.f64 (*.f64 (pow.f64 x.re 4) y.re) (pow.f64 x.im 4))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 x.re 2) y.re) (pow.f64 x.im 2))) (+.f64 (*.f64 1/720 (/.f64 (*.f64 (+.f64 (*.f64 90 (pow.f64 x.re 6)) (*.f64 30 (pow.f64 x.re 6))) y.re) (pow.f64 x.im 6))) (*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.im)) y.re)))))
(+.f64 (*.f64 -1/4 (*.f64 y.re (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4)))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 y.re (pow.f64 x.re 2)) (pow.f64 x.im 2))) (+.f64 (*.f64 -1 (*.f64 y.re (log.f64 (/.f64 1 x.im)))) (*.f64 1/720 (*.f64 y.re (/.f64 (+.f64 (*.f64 (pow.f64 x.re 6) 90) (*.f64 (pow.f64 x.re 6) 30)) (pow.f64 x.im 6)))))))
(+.f64 (+.f64 (*.f64 -1/4 (*.f64 y.re (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4)))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 y.re (pow.f64 x.re 2)) (pow.f64 x.im 2))) (*.f64 (log.f64 (/.f64 1 x.im)) (neg.f64 y.re)))) (*.f64 1/720 (*.f64 y.re (/.f64 (*.f64 (pow.f64 x.re 6) 120) (pow.f64 x.im 6)))))
(+.f64 (*.f64 (pow.f64 x.re 2) (*.f64 (/.f64 y.re (pow.f64 x.im 2)) 1/2)) (+.f64 (*.f64 1/720 (*.f64 y.re (*.f64 120 (/.f64 (pow.f64 x.re 6) (pow.f64 x.im 6))))) (+.f64 (*.f64 -1/4 (*.f64 y.re (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4)))) (*.f64 (log.f64 (/.f64 1 x.im)) (neg.f64 y.re)))))
(+.f64 (*.f64 y.re (+.f64 (neg.f64 (log.f64 (/.f64 1 x.im))) (*.f64 1/2 (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2))))) (*.f64 y.re (+.f64 (*.f64 1/6 (/.f64 (pow.f64 x.re 6) (pow.f64 x.im 6))) (*.f64 -1/4 (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4))))))
(*.f64 -1 (*.f64 (log.f64 (/.f64 -1 x.im)) y.re))
(*.f64 y.re (*.f64 (log.f64 (/.f64 -1 x.im)) -1))
(*.f64 y.re (neg.f64 (log.f64 (/.f64 -1 x.im))))
(*.f64 (log.f64 (/.f64 -1 x.im)) (neg.f64 y.re))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 x.re 2) y.re) (pow.f64 x.im 2))) (*.f64 -1 (*.f64 (log.f64 (/.f64 -1 x.im)) y.re)))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 y.re (pow.f64 x.re 2)) (pow.f64 x.im 2))) (*.f64 y.re (*.f64 (log.f64 (/.f64 -1 x.im)) -1)))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 y.re (pow.f64 x.re 2)) (pow.f64 x.im 2))) (*.f64 y.re (neg.f64 (log.f64 (/.f64 -1 x.im)))))
(*.f64 y.re (+.f64 (neg.f64 (log.f64 (/.f64 -1 x.im))) (*.f64 1/2 (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))))
(+.f64 (*.f64 -1/4 (/.f64 (*.f64 (pow.f64 x.re 4) y.re) (pow.f64 x.im 4))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 x.re 2) y.re) (pow.f64 x.im 2))) (*.f64 -1 (*.f64 (log.f64 (/.f64 -1 x.im)) y.re))))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 y.re (pow.f64 x.re 2)) (pow.f64 x.im 2))) (+.f64 (*.f64 y.re (*.f64 (log.f64 (/.f64 -1 x.im)) -1)) (*.f64 -1/4 (*.f64 y.re (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4))))))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 y.re (pow.f64 x.re 2)) (pow.f64 x.im 2))) (+.f64 (*.f64 -1/4 (*.f64 y.re (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4)))) (*.f64 y.re (neg.f64 (log.f64 (/.f64 -1 x.im))))))
(+.f64 (*.f64 -1/4 (*.f64 y.re (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4)))) (*.f64 y.re (+.f64 (neg.f64 (log.f64 (/.f64 -1 x.im))) (*.f64 1/2 (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2))))))
(*.f64 y.re (+.f64 (*.f64 -1/4 (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4))) (+.f64 (neg.f64 (log.f64 (/.f64 -1 x.im))) (*.f64 1/2 (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2))))))
(+.f64 (*.f64 -1/4 (/.f64 (*.f64 (pow.f64 x.re 4) y.re) (pow.f64 x.im 4))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 x.re 2) y.re) (pow.f64 x.im 2))) (+.f64 (*.f64 1/720 (/.f64 (*.f64 (+.f64 (*.f64 90 (pow.f64 x.re 6)) (*.f64 30 (pow.f64 x.re 6))) y.re) (pow.f64 x.im 6))) (*.f64 -1 (*.f64 (log.f64 (/.f64 -1 x.im)) y.re)))))
(+.f64 (*.f64 -1/4 (*.f64 y.re (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4)))) (+.f64 (*.f64 1/720 (*.f64 y.re (/.f64 (+.f64 (*.f64 (pow.f64 x.re 6) 90) (*.f64 (pow.f64 x.re 6) 30)) (pow.f64 x.im 6)))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 y.re (pow.f64 x.re 2)) (pow.f64 x.im 2))) (*.f64 y.re (*.f64 (log.f64 (/.f64 -1 x.im)) -1)))))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 y.re (pow.f64 x.re 2)) (pow.f64 x.im 2))) (+.f64 (*.f64 -1/4 (*.f64 y.re (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4)))) (+.f64 (*.f64 1/720 (*.f64 y.re (/.f64 (*.f64 (pow.f64 x.re 6) 120) (pow.f64 x.im 6)))) (*.f64 y.re (neg.f64 (log.f64 (/.f64 -1 x.im)))))))
(+.f64 (*.f64 (pow.f64 x.re 2) (*.f64 (/.f64 y.re (pow.f64 x.im 2)) 1/2)) (+.f64 (*.f64 -1/4 (*.f64 y.re (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4)))) (*.f64 y.re (+.f64 (neg.f64 (log.f64 (/.f64 -1 x.im))) (*.f64 1/720 (*.f64 120 (/.f64 (pow.f64 x.re 6) (pow.f64 x.im 6))))))))
(+.f64 (*.f64 (/.f64 y.re (pow.f64 x.im 6)) (*.f64 (pow.f64 x.re 6) 1/6)) (*.f64 y.re (+.f64 (*.f64 -1/4 (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4))) (+.f64 (neg.f64 (log.f64 (/.f64 -1 x.im))) (*.f64 1/2 (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))))))
(+.f64 (*.f64 1/6 (*.f64 y.re (/.f64 (pow.f64 x.re 6) (pow.f64 x.im 6)))) (*.f64 y.re (+.f64 (*.f64 -1/4 (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4))) (+.f64 (neg.f64 (log.f64 (/.f64 -1 x.im))) (*.f64 1/2 (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))))))
(*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)))))
(*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))))
(*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)))))
(*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))))
(*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)))))
(*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))))
(*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)))))
(*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))))
(*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)))))
(*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))))
(*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)))))
(*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))))
(*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)))))
(*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))))
(*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)))))
(*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))))
(*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)))))
(*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))))
(*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)))))
(*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))))
(*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)))))
(*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))))
(*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)))))
(*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))))
(-.f64 (*.f64 y.re (log.f64 x.im)) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (+.f64 (*.f64 y.re (log.f64 x.im)) (*.f64 1/2 (/.f64 (*.f64 (pow.f64 x.re 2) y.re) (pow.f64 x.im 2)))) (*.f64 y.im (atan2.f64 x.im x.re)))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 y.re (pow.f64 x.re 2)) (pow.f64 x.im 2))) (-.f64 (*.f64 y.re (log.f64 x.im)) (*.f64 y.im (atan2.f64 x.im x.re))))
(-.f64 (*.f64 y.re (+.f64 (log.f64 x.im) (*.f64 1/2 (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2))))) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (+.f64 (*.f64 y.re (log.f64 x.im)) (+.f64 (*.f64 -1/4 (/.f64 (*.f64 (pow.f64 x.re 4) y.re) (pow.f64 x.im 4))) (*.f64 1/2 (/.f64 (*.f64 (pow.f64 x.re 2) y.re) (pow.f64 x.im 2))))) (*.f64 y.im (atan2.f64 x.im x.re)))
(+.f64 (+.f64 (*.f64 1/2 (/.f64 (*.f64 y.re (pow.f64 x.re 2)) (pow.f64 x.im 2))) (*.f64 -1/4 (*.f64 y.re (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4))))) (-.f64 (*.f64 y.re (log.f64 x.im)) (*.f64 y.im (atan2.f64 x.im x.re))))
(+.f64 (*.f64 y.re (+.f64 (log.f64 x.im) (*.f64 1/2 (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2))))) (-.f64 (*.f64 -1/4 (*.f64 y.re (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4)))) (*.f64 y.im (atan2.f64 x.im x.re))))
(-.f64 (*.f64 y.re (+.f64 (*.f64 -1/4 (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4))) (+.f64 (log.f64 x.im) (*.f64 1/2 (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))))) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (+.f64 (*.f64 y.re (log.f64 x.im)) (+.f64 (*.f64 -1/4 (/.f64 (*.f64 (pow.f64 x.re 4) y.re) (pow.f64 x.im 4))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 x.re 2) y.re) (pow.f64 x.im 2))) (*.f64 1/6 (/.f64 (*.f64 (pow.f64 x.re 6) y.re) (pow.f64 x.im 6)))))) (*.f64 y.im (atan2.f64 x.im x.re)))
(+.f64 (+.f64 (*.f64 -1/4 (*.f64 y.re (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4)))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 y.re (pow.f64 x.re 2)) (pow.f64 x.im 2))) (*.f64 1/6 (/.f64 (*.f64 y.re (pow.f64 x.re 6)) (pow.f64 x.im 6))))) (-.f64 (*.f64 y.re (log.f64 x.im)) (*.f64 y.im (atan2.f64 x.im x.re))))
(+.f64 (*.f64 -1/4 (*.f64 y.re (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4)))) (-.f64 (+.f64 (*.f64 y.re (*.f64 1/6 (/.f64 (pow.f64 x.re 6) (pow.f64 x.im 6)))) (*.f64 y.re (+.f64 (log.f64 x.im) (*.f64 1/2 (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))))) (*.f64 y.im (atan2.f64 x.im x.re))))
(+.f64 (-.f64 (*.f64 y.re (+.f64 (log.f64 x.im) (*.f64 1/2 (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2))))) (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 y.re (+.f64 (*.f64 1/6 (/.f64 (pow.f64 x.re 6) (pow.f64 x.im 6))) (*.f64 -1/4 (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4))))))
(+.f64 (*.f64 y.re (+.f64 (log.f64 x.im) (*.f64 1/2 (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2))))) (-.f64 (*.f64 y.re (+.f64 (*.f64 1/6 (/.f64 (pow.f64 x.re 6) (pow.f64 x.im 6))) (*.f64 -1/4 (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4))))) (*.f64 y.im (atan2.f64 x.im x.re))))
(-.f64 (*.f64 -1 (*.f64 y.re (log.f64 (/.f64 1 x.re)))) (*.f64 (atan2.f64 x.im x.re) y.im))
(-.f64 (*.f64 y.re (*.f64 (log.f64 (/.f64 1 x.re)) -1)) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (*.f64 y.re (neg.f64 (log.f64 (/.f64 1 x.re)))) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (*.f64 (atan2.f64 x.im x.re) (neg.f64 y.im)) (*.f64 y.re (log.f64 (/.f64 1 x.re))))
(-.f64 (+.f64 (*.f64 -1 (*.f64 y.re (log.f64 (/.f64 1 x.re)))) (*.f64 1/2 (/.f64 (*.f64 y.re (pow.f64 x.im 2)) (pow.f64 x.re 2)))) (*.f64 (atan2.f64 x.im x.re) y.im))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 x.im 2) (/.f64 y.re (pow.f64 x.re 2)))) (-.f64 (*.f64 y.re (*.f64 (log.f64 (/.f64 1 x.re)) -1)) (*.f64 y.im (atan2.f64 x.im x.re))))
(+.f64 (*.f64 1/2 (*.f64 y.re (/.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)))) (-.f64 (*.f64 y.re (neg.f64 (log.f64 (/.f64 1 x.re)))) (*.f64 y.im (atan2.f64 x.im x.re))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 x.im 2) (/.f64 y.re (pow.f64 x.re 2)))) (-.f64 (*.f64 y.re (neg.f64 (log.f64 (/.f64 1 x.re)))) (*.f64 y.im (atan2.f64 x.im x.re))))
(-.f64 (*.f64 y.re (+.f64 (neg.f64 (log.f64 (/.f64 1 x.re))) (*.f64 1/2 (/.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))))) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (+.f64 (*.f64 -1 (*.f64 y.re (log.f64 (/.f64 1 x.re)))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 y.re (pow.f64 x.im 2)) (pow.f64 x.re 2))) (*.f64 -1/4 (/.f64 (*.f64 y.re (pow.f64 x.im 4)) (pow.f64 x.re 4))))) (*.f64 (atan2.f64 x.im x.re) y.im))
(+.f64 (+.f64 (*.f64 1/2 (*.f64 (pow.f64 x.im 2) (/.f64 y.re (pow.f64 x.re 2)))) (*.f64 -1/4 (*.f64 (pow.f64 x.im 4) (/.f64 y.re (pow.f64 x.re 4))))) (-.f64 (*.f64 y.re (*.f64 (log.f64 (/.f64 1 x.re)) -1)) (*.f64 y.im (atan2.f64 x.im x.re))))
(+.f64 (+.f64 (*.f64 1/2 (*.f64 y.re (/.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)))) (*.f64 -1/4 (*.f64 y.re (/.f64 (pow.f64 x.im 4) (pow.f64 x.re 4))))) (-.f64 (*.f64 y.re (neg.f64 (log.f64 (/.f64 1 x.re)))) (*.f64 y.im (atan2.f64 x.im x.re))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 x.im 2) (/.f64 y.re (pow.f64 x.re 2)))) (+.f64 (*.f64 (pow.f64 x.im 4) (*.f64 -1/4 (/.f64 y.re (pow.f64 x.re 4)))) (-.f64 (*.f64 y.re (neg.f64 (log.f64 (/.f64 1 x.re)))) (*.f64 y.im (atan2.f64 x.im x.re)))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 x.im 2) (/.f64 y.re (pow.f64 x.re 2)))) (-.f64 (*.f64 y.re (+.f64 (neg.f64 (log.f64 (/.f64 1 x.re))) (*.f64 -1/4 (/.f64 (pow.f64 x.im 4) (pow.f64 x.re 4))))) (*.f64 y.im (atan2.f64 x.im x.re))))
(+.f64 (*.f64 (/.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)) (*.f64 y.re 1/2)) (-.f64 (*.f64 y.re (+.f64 (neg.f64 (log.f64 (/.f64 1 x.re))) (*.f64 -1/4 (/.f64 (pow.f64 x.im 4) (pow.f64 x.re 4))))) (*.f64 y.im (atan2.f64 x.im x.re))))
(-.f64 (+.f64 (*.f64 1/720 (/.f64 (*.f64 (+.f64 (*.f64 30 (pow.f64 x.im 6)) (*.f64 90 (pow.f64 x.im 6))) y.re) (pow.f64 x.re 6))) (+.f64 (*.f64 -1 (*.f64 y.re (log.f64 (/.f64 1 x.re)))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 y.re (pow.f64 x.im 2)) (pow.f64 x.re 2))) (*.f64 -1/4 (/.f64 (*.f64 y.re (pow.f64 x.im 4)) (pow.f64 x.re 4)))))) (*.f64 (atan2.f64 x.im x.re) y.im))
(+.f64 (+.f64 (+.f64 (*.f64 1/2 (*.f64 (pow.f64 x.im 2) (/.f64 y.re (pow.f64 x.re 2)))) (*.f64 -1/4 (*.f64 (pow.f64 x.im 4) (/.f64 y.re (pow.f64 x.re 4))))) (*.f64 y.re (*.f64 (log.f64 (/.f64 1 x.re)) -1))) (-.f64 (*.f64 1/720 (*.f64 y.re (/.f64 (+.f64 (*.f64 (pow.f64 x.im 6) 30) (*.f64 (pow.f64 x.im 6) 90)) (pow.f64 x.re 6)))) (*.f64 y.im (atan2.f64 x.im x.re))))
(+.f64 (*.f64 y.re (*.f64 (/.f64 (*.f64 (pow.f64 x.im 6) 120) (pow.f64 x.re 6)) 1/720)) (+.f64 (+.f64 (*.f64 1/2 (*.f64 y.re (/.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)))) (*.f64 -1/4 (*.f64 y.re (/.f64 (pow.f64 x.im 4) (pow.f64 x.re 4))))) (-.f64 (*.f64 y.re (neg.f64 (log.f64 (/.f64 1 x.re)))) (*.f64 y.im (atan2.f64 x.im x.re)))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 x.im 2) (/.f64 y.re (pow.f64 x.re 2)))) (-.f64 (+.f64 (*.f64 (pow.f64 x.im 4) (*.f64 -1/4 (/.f64 y.re (pow.f64 x.re 4)))) (*.f64 y.re (+.f64 (neg.f64 (log.f64 (/.f64 1 x.re))) (*.f64 1/720 (*.f64 120 (/.f64 (pow.f64 x.im 6) (pow.f64 x.re 6))))))) (*.f64 y.im (atan2.f64 x.im x.re))))
(+.f64 (*.f64 y.re (+.f64 (*.f64 1/720 (*.f64 (pow.f64 x.im 6) (/.f64 120 (pow.f64 x.re 6)))) (*.f64 1/2 (/.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))))) (-.f64 (*.f64 y.re (+.f64 (neg.f64 (log.f64 (/.f64 1 x.re))) (*.f64 -1/4 (/.f64 (pow.f64 x.im 4) (pow.f64 x.re 4))))) (*.f64 y.im (atan2.f64 x.im x.re))))
(-.f64 (*.f64 -1 (*.f64 y.re (log.f64 (/.f64 -1 x.re)))) (*.f64 (atan2.f64 x.im x.re) y.im))
(-.f64 (*.f64 -1 (*.f64 y.re (log.f64 (/.f64 -1 x.re)))) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (*.f64 (log.f64 (/.f64 -1 x.re)) (neg.f64 y.re)) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (*.f64 (atan2.f64 x.im x.re) (neg.f64 y.im)) (*.f64 y.re (log.f64 (/.f64 -1 x.re))))
(-.f64 (+.f64 (*.f64 -1 (*.f64 y.re (log.f64 (/.f64 -1 x.re)))) (*.f64 1/2 (/.f64 (*.f64 y.re (pow.f64 x.im 2)) (pow.f64 x.re 2)))) (*.f64 (atan2.f64 x.im x.re) y.im))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 x.im 2) (/.f64 y.re (pow.f64 x.re 2)))) (-.f64 (*.f64 -1 (*.f64 y.re (log.f64 (/.f64 -1 x.re)))) (*.f64 y.im (atan2.f64 x.im x.re))))
(+.f64 (*.f64 1/2 (*.f64 y.re (/.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)))) (-.f64 (*.f64 (log.f64 (/.f64 -1 x.re)) (neg.f64 y.re)) (*.f64 y.im (atan2.f64 x.im x.re))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 x.im 2) (/.f64 y.re (pow.f64 x.re 2)))) (-.f64 (*.f64 (log.f64 (/.f64 -1 x.re)) (neg.f64 y.re)) (*.f64 y.im (atan2.f64 x.im x.re))))
(-.f64 (*.f64 y.re (+.f64 (neg.f64 (log.f64 (/.f64 -1 x.re))) (*.f64 1/2 (/.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))))) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (+.f64 (*.f64 -1 (*.f64 y.re (log.f64 (/.f64 -1 x.re)))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 y.re (pow.f64 x.im 2)) (pow.f64 x.re 2))) (*.f64 -1/4 (/.f64 (*.f64 y.re (pow.f64 x.im 4)) (pow.f64 x.re 4))))) (*.f64 (atan2.f64 x.im x.re) y.im))
(+.f64 (+.f64 (*.f64 1/2 (*.f64 (pow.f64 x.im 2) (/.f64 y.re (pow.f64 x.re 2)))) (*.f64 -1/4 (*.f64 (pow.f64 x.im 4) (/.f64 y.re (pow.f64 x.re 4))))) (-.f64 (*.f64 -1 (*.f64 y.re (log.f64 (/.f64 -1 x.re)))) (*.f64 y.im (atan2.f64 x.im x.re))))
(+.f64 (*.f64 (log.f64 (/.f64 -1 x.re)) (neg.f64 y.re)) (-.f64 (+.f64 (*.f64 1/2 (*.f64 y.re (/.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)))) (*.f64 -1/4 (*.f64 y.re (/.f64 (pow.f64 x.im 4) (pow.f64 x.re 4))))) (*.f64 y.im (atan2.f64 x.im x.re))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 x.im 2) (/.f64 y.re (pow.f64 x.re 2)))) (+.f64 (*.f64 (pow.f64 x.im 4) (*.f64 -1/4 (/.f64 y.re (pow.f64 x.re 4)))) (-.f64 (*.f64 (log.f64 (/.f64 -1 x.re)) (neg.f64 y.re)) (*.f64 y.im (atan2.f64 x.im x.re)))))
(+.f64 (*.f64 y.re (+.f64 (neg.f64 (log.f64 (/.f64 -1 x.re))) (*.f64 1/2 (/.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))))) (-.f64 (*.f64 -1/4 (*.f64 (pow.f64 x.im 4) (/.f64 y.re (pow.f64 x.re 4)))) (*.f64 y.im (atan2.f64 x.im x.re))))
(+.f64 (*.f64 y.re (+.f64 (neg.f64 (log.f64 (/.f64 -1 x.re))) (*.f64 -1/4 (/.f64 (pow.f64 x.im 4) (pow.f64 x.re 4))))) (-.f64 (*.f64 (/.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)) (*.f64 y.re 1/2)) (*.f64 y.im (atan2.f64 x.im x.re))))
(-.f64 (+.f64 (*.f64 1/720 (/.f64 (*.f64 (+.f64 (*.f64 30 (pow.f64 x.im 6)) (*.f64 90 (pow.f64 x.im 6))) y.re) (pow.f64 x.re 6))) (+.f64 (*.f64 -1 (*.f64 y.re (log.f64 (/.f64 -1 x.re)))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 y.re (pow.f64 x.im 2)) (pow.f64 x.re 2))) (*.f64 -1/4 (/.f64 (*.f64 y.re (pow.f64 x.im 4)) (pow.f64 x.re 4)))))) (*.f64 (atan2.f64 x.im x.re) y.im))
(+.f64 (+.f64 (*.f64 1/2 (*.f64 (pow.f64 x.im 2) (/.f64 y.re (pow.f64 x.re 2)))) (+.f64 (*.f64 -1/4 (*.f64 (pow.f64 x.im 4) (/.f64 y.re (pow.f64 x.re 4)))) (*.f64 -1 (*.f64 y.re (log.f64 (/.f64 -1 x.re)))))) (-.f64 (*.f64 1/720 (*.f64 y.re (/.f64 (+.f64 (*.f64 (pow.f64 x.im 6) 30) (*.f64 (pow.f64 x.im 6) 90)) (pow.f64 x.re 6)))) (*.f64 y.im (atan2.f64 x.im x.re))))
(+.f64 (*.f64 y.re (*.f64 (/.f64 (*.f64 (pow.f64 x.im 6) 120) (pow.f64 x.re 6)) 1/720)) (+.f64 (*.f64 (log.f64 (/.f64 -1 x.re)) (neg.f64 y.re)) (-.f64 (+.f64 (*.f64 1/2 (*.f64 y.re (/.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)))) (*.f64 -1/4 (*.f64 y.re (/.f64 (pow.f64 x.im 4) (pow.f64 x.re 4))))) (*.f64 y.im (atan2.f64 x.im x.re)))))
(+.f64 (*.f64 y.re (+.f64 (neg.f64 (log.f64 (/.f64 -1 x.re))) (*.f64 1/720 (*.f64 120 (/.f64 (pow.f64 x.im 6) (pow.f64 x.re 6)))))) (+.f64 (*.f64 1/2 (*.f64 (pow.f64 x.im 2) (/.f64 y.re (pow.f64 x.re 2)))) (-.f64 (*.f64 (pow.f64 x.im 4) (*.f64 -1/4 (/.f64 y.re (pow.f64 x.re 4)))) (*.f64 y.im (atan2.f64 x.im x.re)))))
(+.f64 (*.f64 y.re (+.f64 (*.f64 1/720 (*.f64 (pow.f64 x.im 6) (/.f64 120 (pow.f64 x.re 6)))) (*.f64 1/2 (/.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))))) (-.f64 (*.f64 y.re (+.f64 (neg.f64 (log.f64 (/.f64 -1 x.re))) (*.f64 -1/4 (/.f64 (pow.f64 x.im 4) (pow.f64 x.re 4))))) (*.f64 y.im (atan2.f64 x.im x.re))))
(-.f64 (*.f64 y.re (log.f64 x.re)) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (+.f64 (*.f64 1/2 (/.f64 (*.f64 y.re (pow.f64 x.im 2)) (pow.f64 x.re 2))) (*.f64 y.re (log.f64 x.re))) (*.f64 y.im (atan2.f64 x.im x.re)))
(+.f64 (*.f64 y.re (log.f64 x.re)) (-.f64 (*.f64 1/2 (*.f64 (pow.f64 x.im 2) (/.f64 y.re (pow.f64 x.re 2)))) (*.f64 y.im (atan2.f64 x.im x.re))))
(+.f64 (*.f64 1/2 (*.f64 y.re (/.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)))) (-.f64 (*.f64 y.re (log.f64 x.re)) (*.f64 y.im (atan2.f64 x.im x.re))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 x.im 2) (/.f64 y.re (pow.f64 x.re 2)))) (-.f64 (*.f64 y.re (log.f64 x.re)) (*.f64 y.im (atan2.f64 x.im x.re))))
(-.f64 (*.f64 y.re (+.f64 (log.f64 x.re) (*.f64 1/2 (/.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))))) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (+.f64 (*.f64 1/2 (/.f64 (*.f64 y.re (pow.f64 x.im 2)) (pow.f64 x.re 2))) (+.f64 (*.f64 -1/4 (/.f64 (*.f64 y.re (pow.f64 x.im 4)) (pow.f64 x.re 4))) (*.f64 y.re (log.f64 x.re)))) (*.f64 y.im (atan2.f64 x.im x.re)))
(+.f64 (+.f64 (*.f64 -1/4 (*.f64 (pow.f64 x.im 4) (/.f64 y.re (pow.f64 x.re 4)))) (*.f64 y.re (log.f64 x.re))) (-.f64 (*.f64 1/2 (*.f64 (pow.f64 x.im 2) (/.f64 y.re (pow.f64 x.re 2)))) (*.f64 y.im (atan2.f64 x.im x.re))))
(-.f64 (+.f64 (*.f64 y.re (log.f64 x.re)) (+.f64 (*.f64 1/2 (*.f64 y.re (/.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)))) (*.f64 -1/4 (*.f64 y.re (/.f64 (pow.f64 x.im 4) (pow.f64 x.re 4)))))) (*.f64 y.im (atan2.f64 x.im x.re)))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 x.im 2) (/.f64 y.re (pow.f64 x.re 2)))) (+.f64 (*.f64 (pow.f64 x.im 4) (*.f64 -1/4 (/.f64 y.re (pow.f64 x.re 4)))) (-.f64 (*.f64 y.re (log.f64 x.re)) (*.f64 y.im (atan2.f64 x.im x.re)))))
(+.f64 (*.f64 y.re (+.f64 (log.f64 x.re) (*.f64 1/2 (/.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))))) (-.f64 (*.f64 -1/4 (*.f64 (pow.f64 x.im 4) (/.f64 y.re (pow.f64 x.re 4)))) (*.f64 y.im (atan2.f64 x.im x.re))))
(-.f64 (+.f64 (*.f64 1/2 (/.f64 (*.f64 y.re (pow.f64 x.im 2)) (pow.f64 x.re 2))) (+.f64 (*.f64 -1/4 (/.f64 (*.f64 y.re (pow.f64 x.im 4)) (pow.f64 x.re 4))) (+.f64 (*.f64 1/6 (/.f64 (*.f64 y.re (pow.f64 x.im 6)) (pow.f64 x.re 6))) (*.f64 y.re (log.f64 x.re))))) (*.f64 y.im (atan2.f64 x.im x.re)))
(+.f64 (+.f64 (*.f64 -1/4 (*.f64 (pow.f64 x.im 4) (/.f64 y.re (pow.f64 x.re 4)))) (+.f64 (*.f64 y.re (log.f64 x.re)) (*.f64 1/6 (*.f64 (pow.f64 x.im 6) (/.f64 y.re (pow.f64 x.re 6)))))) (-.f64 (*.f64 1/2 (*.f64 (pow.f64 x.im 2) (/.f64 y.re (pow.f64 x.re 2)))) (*.f64 y.im (atan2.f64 x.im x.re))))
(+.f64 (+.f64 (*.f64 -1/4 (*.f64 y.re (/.f64 (pow.f64 x.im 4) (pow.f64 x.re 4)))) (+.f64 (*.f64 y.re (log.f64 x.re)) (*.f64 1/6 (*.f64 (pow.f64 x.im 6) (/.f64 y.re (pow.f64 x.re 6)))))) (-.f64 (*.f64 1/2 (*.f64 y.re (/.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)))) (*.f64 y.im (atan2.f64 x.im x.re))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 x.im 2) (/.f64 y.re (pow.f64 x.re 2)))) (+.f64 (+.f64 (*.f64 (pow.f64 x.im 4) (*.f64 -1/4 (/.f64 y.re (pow.f64 x.re 4)))) (*.f64 y.re (*.f64 (/.f64 (pow.f64 x.im 6) (pow.f64 x.re 6)) 1/6))) (-.f64 (*.f64 y.re (log.f64 x.re)) (*.f64 y.im (atan2.f64 x.im x.re)))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 x.im 2) (/.f64 y.re (pow.f64 x.re 2)))) (+.f64 (*.f64 -1/4 (*.f64 (pow.f64 x.im 4) (/.f64 y.re (pow.f64 x.re 4)))) (-.f64 (*.f64 y.re (+.f64 (log.f64 x.re) (*.f64 1/6 (/.f64 (pow.f64 x.im 6) (pow.f64 x.re 6))))) (*.f64 y.im (atan2.f64 x.im x.re)))))
(+.f64 (*.f64 -1/4 (*.f64 (pow.f64 x.im 4) (/.f64 y.re (pow.f64 x.re 4)))) (+.f64 (-.f64 (*.f64 y.re (+.f64 (log.f64 x.re) (*.f64 1/6 (/.f64 (pow.f64 x.im 6) (pow.f64 x.re 6))))) (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 (/.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)) (*.f64 y.re 1/2))))
(-.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.im)) y.re)) (*.f64 (atan2.f64 x.im x.re) y.im))
(-.f64 (*.f64 -1 (*.f64 y.re (log.f64 (/.f64 1 x.im)))) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (*.f64 (log.f64 (/.f64 1 x.im)) (neg.f64 y.re)) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (*.f64 y.re (neg.f64 (log.f64 (/.f64 1 x.im)))) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 x.re 2) y.re) (pow.f64 x.im 2))) (*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.im)) y.re))) (*.f64 (atan2.f64 x.im x.re) y.im))
(-.f64 (+.f64 (*.f64 1/2 (/.f64 (*.f64 y.re (pow.f64 x.re 2)) (pow.f64 x.im 2))) (*.f64 -1 (*.f64 y.re (log.f64 (/.f64 1 x.im))))) (*.f64 y.im (atan2.f64 x.im x.re)))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 y.re (pow.f64 x.re 2)) (pow.f64 x.im 2))) (-.f64 (*.f64 (log.f64 (/.f64 1 x.im)) (neg.f64 y.re)) (*.f64 y.im (atan2.f64 x.im x.re))))
(+.f64 (*.f64 (pow.f64 x.re 2) (*.f64 (/.f64 y.re (pow.f64 x.im 2)) 1/2)) (-.f64 (*.f64 (log.f64 (/.f64 1 x.im)) (neg.f64 y.re)) (*.f64 y.im (atan2.f64 x.im x.re))))
(-.f64 (*.f64 y.re (+.f64 (neg.f64 (log.f64 (/.f64 1 x.im))) (*.f64 1/2 (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2))))) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (+.f64 (*.f64 -1/4 (/.f64 (*.f64 (pow.f64 x.re 4) y.re) (pow.f64 x.im 4))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 x.re 2) y.re) (pow.f64 x.im 2))) (*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.im)) y.re)))) (*.f64 (atan2.f64 x.im x.re) y.im))
(+.f64 (+.f64 (*.f64 1/2 (/.f64 (*.f64 y.re (pow.f64 x.re 2)) (pow.f64 x.im 2))) (*.f64 -1 (*.f64 y.re (log.f64 (/.f64 1 x.im))))) (-.f64 (*.f64 -1/4 (*.f64 y.re (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4)))) (*.f64 y.im (atan2.f64 x.im x.re))))
(+.f64 (*.f64 -1/4 (*.f64 y.re (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4)))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 y.re (pow.f64 x.re 2)) (pow.f64 x.im 2))) (-.f64 (*.f64 (log.f64 (/.f64 1 x.im)) (neg.f64 y.re)) (*.f64 y.im (atan2.f64 x.im x.re)))))
(+.f64 (*.f64 -1/4 (*.f64 y.re (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4)))) (+.f64 (*.f64 (pow.f64 x.re 2) (*.f64 (/.f64 y.re (pow.f64 x.im 2)) 1/2)) (-.f64 (*.f64 (log.f64 (/.f64 1 x.im)) (neg.f64 y.re)) (*.f64 y.im (atan2.f64 x.im x.re)))))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 y.re (pow.f64 x.re 2)) (pow.f64 x.im 2))) (-.f64 (*.f64 y.re (+.f64 (neg.f64 (log.f64 (/.f64 1 x.im))) (*.f64 -1/4 (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4))))) (*.f64 y.im (atan2.f64 x.im x.re))))
(+.f64 (*.f64 (/.f64 y.re (pow.f64 x.im 2)) (*.f64 (pow.f64 x.re 2) 1/2)) (-.f64 (*.f64 y.re (+.f64 (neg.f64 (log.f64 (/.f64 1 x.im))) (*.f64 -1/4 (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4))))) (*.f64 y.im (atan2.f64 x.im x.re))))
(-.f64 (+.f64 (*.f64 1/720 (/.f64 (*.f64 y.re (+.f64 (*.f64 30 (pow.f64 x.re 6)) (*.f64 90 (pow.f64 x.re 6)))) (pow.f64 x.im 6))) (+.f64 (*.f64 -1/4 (/.f64 (*.f64 (pow.f64 x.re 4) y.re) (pow.f64 x.im 4))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 x.re 2) y.re) (pow.f64 x.im 2))) (*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.im)) y.re))))) (*.f64 (atan2.f64 x.im x.re) y.im))
(+.f64 (+.f64 (*.f64 -1/4 (*.f64 y.re (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4)))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 y.re (pow.f64 x.re 2)) (pow.f64 x.im 2))) (*.f64 -1 (*.f64 y.re (log.f64 (/.f64 1 x.im)))))) (-.f64 (*.f64 1/720 (*.f64 y.re (/.f64 (+.f64 (*.f64 (pow.f64 x.re 6) 90) (*.f64 (pow.f64 x.re 6) 30)) (pow.f64 x.im 6)))) (*.f64 y.im (atan2.f64 x.im x.re))))
(+.f64 (+.f64 (*.f64 -1/4 (*.f64 y.re (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4)))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 y.re (pow.f64 x.re 2)) (pow.f64 x.im 2))) (*.f64 (log.f64 (/.f64 1 x.im)) (neg.f64 y.re)))) (-.f64 (*.f64 1/720 (*.f64 y.re (/.f64 (*.f64 (pow.f64 x.re 6) 120) (pow.f64 x.im 6)))) (*.f64 y.im (atan2.f64 x.im x.re))))
(+.f64 (*.f64 -1/4 (*.f64 y.re (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4)))) (+.f64 (+.f64 (*.f64 (pow.f64 x.re 2) (*.f64 (/.f64 y.re (pow.f64 x.im 2)) 1/2)) (-.f64 (*.f64 (log.f64 (/.f64 1 x.im)) (neg.f64 y.re)) (*.f64 y.im (atan2.f64 x.im x.re)))) (*.f64 1/720 (*.f64 y.re (*.f64 120 (/.f64 (pow.f64 x.re 6) (pow.f64 x.im 6)))))))
(+.f64 (*.f64 y.re (+.f64 (neg.f64 (log.f64 (/.f64 1 x.im))) (*.f64 1/2 (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2))))) (-.f64 (*.f64 y.re (+.f64 (*.f64 1/6 (/.f64 (pow.f64 x.re 6) (pow.f64 x.im 6))) (*.f64 -1/4 (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4))))) (*.f64 y.im (atan2.f64 x.im x.re))))
(-.f64 (*.f64 -1 (*.f64 y.re (log.f64 (/.f64 -1 x.im)))) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (*.f64 y.re (*.f64 (log.f64 (/.f64 -1 x.im)) -1)) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (*.f64 y.re (neg.f64 (log.f64 (/.f64 -1 x.im)))) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (*.f64 (log.f64 (/.f64 -1 x.im)) (neg.f64 y.re)) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (+.f64 (*.f64 -1 (*.f64 y.re (log.f64 (/.f64 -1 x.im)))) (*.f64 1/2 (/.f64 (*.f64 (pow.f64 x.re 2) y.re) (pow.f64 x.im 2)))) (*.f64 y.im (atan2.f64 x.im x.re)))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 y.re (pow.f64 x.re 2)) (pow.f64 x.im 2))) (-.f64 (*.f64 y.re (*.f64 (log.f64 (/.f64 -1 x.im)) -1)) (*.f64 y.im (atan2.f64 x.im x.re))))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 y.re (pow.f64 x.re 2)) (pow.f64 x.im 2))) (-.f64 (*.f64 y.re (neg.f64 (log.f64 (/.f64 -1 x.im)))) (*.f64 y.im (atan2.f64 x.im x.re))))
(-.f64 (*.f64 y.re (+.f64 (neg.f64 (log.f64 (/.f64 -1 x.im))) (*.f64 1/2 (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2))))) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (+.f64 (*.f64 -1 (*.f64 y.re (log.f64 (/.f64 -1 x.im)))) (+.f64 (*.f64 -1/4 (/.f64 (*.f64 (pow.f64 x.re 4) y.re) (pow.f64 x.im 4))) (*.f64 1/2 (/.f64 (*.f64 (pow.f64 x.re 2) y.re) (pow.f64 x.im 2))))) (*.f64 y.im (atan2.f64 x.im x.re)))
(+.f64 (+.f64 (*.f64 1/2 (/.f64 (*.f64 y.re (pow.f64 x.re 2)) (pow.f64 x.im 2))) (*.f64 -1/4 (*.f64 y.re (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4))))) (-.f64 (*.f64 y.re (*.f64 (log.f64 (/.f64 -1 x.im)) -1)) (*.f64 y.im (atan2.f64 x.im x.re))))
(+.f64 (*.f64 -1/4 (*.f64 y.re (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4)))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 y.re (pow.f64 x.re 2)) (pow.f64 x.im 2))) (-.f64 (*.f64 y.re (neg.f64 (log.f64 (/.f64 -1 x.im)))) (*.f64 y.im (atan2.f64 x.im x.re)))))
(+.f64 (*.f64 -1/4 (*.f64 y.re (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4)))) (-.f64 (*.f64 y.re (+.f64 (neg.f64 (log.f64 (/.f64 -1 x.im))) (*.f64 1/2 (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2))))) (*.f64 y.im (atan2.f64 x.im x.re))))
(-.f64 (*.f64 y.re (+.f64 (*.f64 -1/4 (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4))) (+.f64 (neg.f64 (log.f64 (/.f64 -1 x.im))) (*.f64 1/2 (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))))) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (+.f64 (*.f64 -1 (*.f64 y.re (log.f64 (/.f64 -1 x.im)))) (+.f64 (*.f64 1/720 (/.f64 (*.f64 y.re (+.f64 (*.f64 30 (pow.f64 x.re 6)) (*.f64 90 (pow.f64 x.re 6)))) (pow.f64 x.im 6))) (+.f64 (*.f64 -1/4 (/.f64 (*.f64 (pow.f64 x.re 4) y.re) (pow.f64 x.im 4))) (*.f64 1/2 (/.f64 (*.f64 (pow.f64 x.re 2) y.re) (pow.f64 x.im 2)))))) (*.f64 y.im (atan2.f64 x.im x.re)))
(+.f64 (+.f64 (*.f64 -1/4 (*.f64 y.re (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4)))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 y.re (pow.f64 x.re 2)) (pow.f64 x.im 2))) (*.f64 1/720 (*.f64 y.re (/.f64 (+.f64 (*.f64 (pow.f64 x.re 6) 90) (*.f64 (pow.f64 x.re 6) 30)) (pow.f64 x.im 6)))))) (-.f64 (*.f64 y.re (*.f64 (log.f64 (/.f64 -1 x.im)) -1)) (*.f64 y.im (atan2.f64 x.im x.re))))
(+.f64 (+.f64 (*.f64 1/2 (/.f64 (*.f64 y.re (pow.f64 x.re 2)) (pow.f64 x.im 2))) (+.f64 (*.f64 -1/4 (*.f64 y.re (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4)))) (*.f64 y.re (neg.f64 (log.f64 (/.f64 -1 x.im)))))) (-.f64 (*.f64 1/720 (*.f64 y.re (/.f64 (*.f64 (pow.f64 x.re 6) 120) (pow.f64 x.im 6)))) (*.f64 y.im (atan2.f64 x.im x.re))))
(+.f64 (*.f64 -1/4 (*.f64 y.re (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4)))) (-.f64 (+.f64 (*.f64 1/720 (*.f64 y.re (*.f64 120 (/.f64 (pow.f64 x.re 6) (pow.f64 x.im 6))))) (*.f64 y.re (+.f64 (neg.f64 (log.f64 (/.f64 -1 x.im))) (*.f64 1/2 (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))))) (*.f64 y.im (atan2.f64 x.im x.re))))
(+.f64 (*.f64 (/.f64 y.re (pow.f64 x.im 6)) (*.f64 (pow.f64 x.re 6) 1/6)) (-.f64 (*.f64 y.re (+.f64 (*.f64 -1/4 (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4))) (+.f64 (neg.f64 (log.f64 (/.f64 -1 x.im))) (*.f64 1/2 (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))))) (*.f64 y.im (atan2.f64 x.im x.re))))
(+.f64 (*.f64 1/6 (*.f64 y.re (/.f64 (pow.f64 x.re 6) (pow.f64 x.im 6)))) (-.f64 (*.f64 y.re (+.f64 (*.f64 -1/4 (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4))) (+.f64 (neg.f64 (log.f64 (/.f64 -1 x.im))) (*.f64 1/2 (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))))) (*.f64 y.im (atan2.f64 x.im x.re))))
(*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))
(neg.f64 (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 (atan2.f64 x.im x.re) (neg.f64 y.im))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))))))
(+.f64 (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2))))) (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(+.f64 (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2))))) (*.f64 (atan2.f64 x.im x.re) (neg.f64 y.im)))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))))))
(+.f64 (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2))))) (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(+.f64 (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2))))) (*.f64 (atan2.f64 x.im x.re) (neg.f64 y.im)))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))))))
(+.f64 (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2))))) (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(+.f64 (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2))))) (*.f64 (atan2.f64 x.im x.re) (neg.f64 y.im)))
(*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)))))
(*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))))))
(+.f64 (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2))))) (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(+.f64 (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2))))) (*.f64 (atan2.f64 x.im x.re) (neg.f64 y.im)))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))))))
(+.f64 (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2))))) (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(+.f64 (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2))))) (*.f64 (atan2.f64 x.im x.re) (neg.f64 y.im)))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))))))
(+.f64 (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2))))) (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(+.f64 (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2))))) (*.f64 (atan2.f64 x.im x.re) (neg.f64 y.im)))
(*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)))))
(*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))))))
(+.f64 (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2))))) (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(+.f64 (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2))))) (*.f64 (atan2.f64 x.im x.re) (neg.f64 y.im)))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))))))
(+.f64 (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2))))) (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(+.f64 (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2))))) (*.f64 (atan2.f64 x.im x.re) (neg.f64 y.im)))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))))))
(+.f64 (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2))))) (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(+.f64 (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2))))) (*.f64 (atan2.f64 x.im x.re) (neg.f64 y.im)))
(*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)))))
(*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))))))
(+.f64 (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2))))) (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(+.f64 (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2))))) (*.f64 (atan2.f64 x.im x.re) (neg.f64 y.im)))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))))))
(+.f64 (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2))))) (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(+.f64 (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2))))) (*.f64 (atan2.f64 x.im x.re) (neg.f64 y.im)))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))))))
(+.f64 (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2))))) (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(+.f64 (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2))))) (*.f64 (atan2.f64 x.im x.re) (neg.f64 y.im)))
(*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))
(neg.f64 (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 (atan2.f64 x.im x.re) (neg.f64 y.im))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))))))
(+.f64 (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2))))) (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(+.f64 (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2))))) (*.f64 (atan2.f64 x.im x.re) (neg.f64 y.im)))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))))))
(+.f64 (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2))))) (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(+.f64 (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2))))) (*.f64 (atan2.f64 x.im x.re) (neg.f64 y.im)))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))))))
(+.f64 (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2))))) (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(+.f64 (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2))))) (*.f64 (atan2.f64 x.im x.re) (neg.f64 y.im)))
(*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))
(neg.f64 (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 (atan2.f64 x.im x.re) (neg.f64 y.im))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))))))
(+.f64 (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2))))) (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(+.f64 (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2))))) (*.f64 (atan2.f64 x.im x.re) (neg.f64 y.im)))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))))))
(+.f64 (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2))))) (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(+.f64 (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2))))) (*.f64 (atan2.f64 x.im x.re) (neg.f64 y.im)))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))))))
(+.f64 (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2))))) (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(+.f64 (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2))))) (*.f64 (atan2.f64 x.im x.re) (neg.f64 y.im)))
(+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re) 0)
(*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))))
(+.f64 0 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re))
(*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))))
(-.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re) 0)
(*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))))
(/.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re) 1)
(*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))))
(/.f64 (*.f64 y.re (log.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) 2)
(*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))))
(/.f64 (*.f64 y.re (log.f64 (pow.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) 2))) 4)
(*.f64 (log.f64 (pow.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) 2)) (/.f64 y.re 4))
(*.f64 (log.f64 (pow.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) y.re)) 1/2)
(log.f64 (pow.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) y.re))
(log.f64 (sqrt.f64 (pow.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) y.re)))
(/.f64 (*.f64 2 (*.f64 y.re (log.f64 (pow.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) 2)))) 8)
(*.f64 (log.f64 (pow.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) 2)) (/.f64 y.re 4))
(*.f64 (log.f64 (pow.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) y.re)) 1/2)
(log.f64 (pow.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) y.re))
(log.f64 (sqrt.f64 (pow.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) y.re)))
(/.f64 (+.f64 (*.f64 2 (*.f64 y.re (log.f64 (pow.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) 2)))) (*.f64 2 (*.f64 y.re (log.f64 (pow.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) 2))))) 16)
(*.f64 (log.f64 (pow.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) 2)) (/.f64 y.re 4))
(*.f64 (log.f64 (pow.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) y.re)) 1/2)
(log.f64 (pow.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) y.re))
(log.f64 (sqrt.f64 (pow.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) y.re)))
(pow.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re) 1)
(*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))))
(log.f64 (pow.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) y.re))
(*.f64 (log.f64 (pow.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) 2)) (/.f64 y.re 4))
(*.f64 (log.f64 (pow.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) y.re)) 1/2)
(log.f64 (sqrt.f64 (pow.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) y.re)))
(log.f64 (pow.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) (*.f64 y.re 1/2)))
(+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re) (neg.f64 (*.f64 (atan2.f64 x.im x.re) y.im)))
(+.f64 (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))))) (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(-.f64 (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))))) (*.f64 y.im (atan2.f64 x.im x.re)))
(+.f64 (-.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 0)
(+.f64 (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))))) (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(-.f64 (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))))) (*.f64 y.im (atan2.f64 x.im x.re)))
(+.f64 0 (-.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)))
(+.f64 (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))))) (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(-.f64 (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))))) (*.f64 y.im (atan2.f64 x.im x.re)))
(+.f64 (neg.f64 (*.f64 (atan2.f64 x.im x.re) y.im)) (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re))
(+.f64 (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))))) (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(-.f64 (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))))) (*.f64 y.im (atan2.f64 x.im x.re)))
(+.f64 -1 (-.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re) (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) 1)))
(+.f64 (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))))) (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(-.f64 (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))))) (*.f64 y.im (atan2.f64 x.im x.re)))
(+.f64 (-.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re) (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) 1)) -1)
(+.f64 (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))))) (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(-.f64 (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))))) (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 (-.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 1)
(+.f64 (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))))) (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(-.f64 (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))))) (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 1 (-.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)))
(+.f64 (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))))) (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(-.f64 (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))))) (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 1/2 (*.f64 (-.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 2))
(+.f64 (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))))) (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(-.f64 (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))))) (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 1/2 (-.f64 (*.f64 y.re (log.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) (*.f64 (atan2.f64 x.im x.re) (+.f64 y.im y.im))))
(*.f64 2 (/.f64 (-.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 2))
(+.f64 (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))))) (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(-.f64 (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))))) (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 (*.f64 (-.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 2) 1/2)
(+.f64 (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))))) (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(-.f64 (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))))) (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re)) -1)
(+.f64 (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))))) (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(-.f64 (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))))) (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 -1 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re)))
(+.f64 (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))))) (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(-.f64 (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))))) (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 (/.f64 (-.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 2) 2)
(+.f64 (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))))) (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(-.f64 (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))))) (*.f64 y.im (atan2.f64 x.im x.re)))
(/.f64 (-.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 1)
(+.f64 (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))))) (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(-.f64 (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))))) (*.f64 y.im (atan2.f64 x.im x.re)))
(/.f64 (*.f64 (-.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 2) 2)
(+.f64 (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))))) (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(-.f64 (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))))) (*.f64 y.im (atan2.f64 x.im x.re)))
(/.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re)) -1)
(+.f64 (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))))) (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(-.f64 (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))))) (*.f64 y.im (atan2.f64 x.im x.re)))
(/.f64 (*.f64 (-.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 4) 4)
(+.f64 (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))))) (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(-.f64 (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))))) (*.f64 y.im (atan2.f64 x.im x.re)))
(/.f64 (*.f64 2 (*.f64 (-.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 4)) 8)
(+.f64 (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))))) (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(-.f64 (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))))) (*.f64 y.im (atan2.f64 x.im x.re)))
(/.f64 (*.f64 2 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re))) -2)
(+.f64 (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))))) (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(-.f64 (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))))) (*.f64 y.im (atan2.f64 x.im x.re)))
(/.f64 (+.f64 (*.f64 2 (*.f64 (-.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 4)) (*.f64 2 (*.f64 (-.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 4))) 16)
(+.f64 (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))))) (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(-.f64 (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))))) (*.f64 y.im (atan2.f64 x.im x.re)))
(pow.f64 (-.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 1)
(+.f64 (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))))) (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(-.f64 (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))))) (*.f64 y.im (atan2.f64 x.im x.re)))
(neg.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re)))
(+.f64 (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))))) (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(-.f64 (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))))) (*.f64 y.im (atan2.f64 x.im x.re)))

localize94.0ms (0.3%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(*.f64 (log.f64 x.im) y.re)
1.1b
(*.f64 y.re (atan2.f64 x.im x.re))
2.6b
(*.f64 (atan2.f64 x.im x.re) y.im)
19.3b
(cos.f64 (*.f64 y.re (atan2.f64 x.im x.re)))
Compiler

Compiled 72 to 13 computations (81.9% saved)

series31.0ms (0.1%)

Counts
1 → 24
Calls

6 calls:

TimeVariablePointExpression
15.0ms
y.re
@0
(*.f64 (log.f64 x.im) y.re)
9.0ms
x.im
@-inf
(*.f64 (log.f64 x.im) y.re)
6.0ms
x.im
@0
(*.f64 (log.f64 x.im) y.re)
0.0ms
y.re
@inf
(*.f64 (log.f64 x.im) y.re)
0.0ms
x.im
@inf
(*.f64 (log.f64 x.im) y.re)

rewrite95.0ms (0.3%)

Algorithm
batch-egg-rewrite
Rules
1828×rational.json-1
1828×rational.json-2
1158×rational.json-3
1110×exponential.json-3
1110×rational.json-4
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0711
14511
210311
321811
439511
587211
6222011
7492311
8764911
Stop Event
node limit
Counts
1 → 16
Calls
Call 1
Inputs
(*.f64 (log.f64 x.im) y.re)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (log.f64 x.im) y.re) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (log.f64 x.im) y.re))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y.re (log.f64 (sqrt.f64 x.im))) (*.f64 y.re (log.f64 (sqrt.f64 x.im))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (log.f64 x.im) y.re) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (log.f64 x.im) y.re) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (log.f64 x.im) (+.f64 y.re y.re)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (log.f64 x.im) (*.f64 y.re 4)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (log.f64 x.im) (*.f64 y.re 8)) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (log.f64 x.im) (*.f64 y.re 8))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (log.f64 x.im) (*.f64 y.re 8)))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (log.f64 x.im) (*.f64 y.re 8))))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (log.f64 x.im) (*.f64 y.re 8))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (log.f64 x.im) (*.f64 y.re 8)))))) 128)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (log.f64 x.im) y.re) 1)))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 x.im y.re))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (sqrt.f64 x.im) (+.f64 y.re y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (sqrt.f64 (pow.f64 (sqrt.f64 x.im) (*.f64 y.re 4))))))))

simplify669.0ms (2.4%)

Algorithm
egg-herbie
Rules
1268×rational.json-simplify-2
1020×rational.json-simplify-46
864×rational.json-simplify-35
850×rational.json-simplify-1
690×rational.json-simplify-43
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
061600
1144584
2284584
3600580
41898580
53798580
66151580
Stop Event
node limit
Counts
40 → 26
Calls
Call 1
Inputs
(*.f64 y.re (log.f64 x.im))
(*.f64 y.re (log.f64 x.im))
(*.f64 y.re (log.f64 x.im))
(*.f64 y.re (log.f64 x.im))
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.im)) y.re))
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.im)) y.re))
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.im)) y.re))
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.im)) y.re))
(*.f64 y.re (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x.im)))))
(*.f64 y.re (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x.im)))))
(*.f64 y.re (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x.im)))))
(*.f64 y.re (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x.im)))))
(*.f64 y.re (log.f64 x.im))
(*.f64 y.re (log.f64 x.im))
(*.f64 y.re (log.f64 x.im))
(*.f64 y.re (log.f64 x.im))
(*.f64 y.re (log.f64 x.im))
(*.f64 y.re (log.f64 x.im))
(*.f64 y.re (log.f64 x.im))
(*.f64 y.re (log.f64 x.im))
(*.f64 y.re (log.f64 x.im))
(*.f64 y.re (log.f64 x.im))
(*.f64 y.re (log.f64 x.im))
(*.f64 y.re (log.f64 x.im))
(+.f64 (*.f64 (log.f64 x.im) y.re) 0)
(+.f64 0 (*.f64 (log.f64 x.im) y.re))
(+.f64 (*.f64 y.re (log.f64 (sqrt.f64 x.im))) (*.f64 y.re (log.f64 (sqrt.f64 x.im))))
(-.f64 (*.f64 (log.f64 x.im) y.re) 0)
(/.f64 (*.f64 (log.f64 x.im) y.re) 1)
(/.f64 (*.f64 (log.f64 x.im) (+.f64 y.re y.re)) 2)
(/.f64 (*.f64 (log.f64 x.im) (*.f64 y.re 4)) 4)
(/.f64 (*.f64 (log.f64 x.im) (*.f64 y.re 8)) 8)
(/.f64 (*.f64 2 (*.f64 (log.f64 x.im) (*.f64 y.re 8))) 16)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (log.f64 x.im) (*.f64 y.re 8)))) 32)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (log.f64 x.im) (*.f64 y.re 8))))) 64)
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (log.f64 x.im) (*.f64 y.re 8))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (log.f64 x.im) (*.f64 y.re 8)))))) 128)
(pow.f64 (*.f64 (log.f64 x.im) y.re) 1)
(log.f64 (pow.f64 x.im y.re))
(log.f64 (pow.f64 (sqrt.f64 x.im) (+.f64 y.re y.re)))
(log.f64 (sqrt.f64 (pow.f64 (sqrt.f64 x.im) (*.f64 y.re 4))))
Outputs
(*.f64 y.re (log.f64 x.im))
(*.f64 y.re (log.f64 x.im))
(*.f64 y.re (log.f64 x.im))
(*.f64 y.re (log.f64 x.im))
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.im)) y.re))
(*.f64 -1 (*.f64 y.re (log.f64 (/.f64 1 x.im))))
(*.f64 (log.f64 (/.f64 1 x.im)) (neg.f64 y.re))
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.im)) y.re))
(*.f64 -1 (*.f64 y.re (log.f64 (/.f64 1 x.im))))
(*.f64 (log.f64 (/.f64 1 x.im)) (neg.f64 y.re))
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.im)) y.re))
(*.f64 -1 (*.f64 y.re (log.f64 (/.f64 1 x.im))))
(*.f64 (log.f64 (/.f64 1 x.im)) (neg.f64 y.re))
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.im)) y.re))
(*.f64 -1 (*.f64 y.re (log.f64 (/.f64 1 x.im))))
(*.f64 (log.f64 (/.f64 1 x.im)) (neg.f64 y.re))
(*.f64 y.re (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x.im)))))
(*.f64 y.re (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 x.im)))))
(*.f64 y.re (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x.im)))))
(*.f64 y.re (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 x.im)))))
(*.f64 y.re (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x.im)))))
(*.f64 y.re (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 x.im)))))
(*.f64 y.re (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x.im)))))
(*.f64 y.re (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 x.im)))))
(*.f64 y.re (log.f64 x.im))
(*.f64 y.re (log.f64 x.im))
(*.f64 y.re (log.f64 x.im))
(*.f64 y.re (log.f64 x.im))
(*.f64 y.re (log.f64 x.im))
(*.f64 y.re (log.f64 x.im))
(*.f64 y.re (log.f64 x.im))
(*.f64 y.re (log.f64 x.im))
(*.f64 y.re (log.f64 x.im))
(*.f64 y.re (log.f64 x.im))
(*.f64 y.re (log.f64 x.im))
(*.f64 y.re (log.f64 x.im))
(+.f64 (*.f64 (log.f64 x.im) y.re) 0)
(*.f64 y.re (log.f64 x.im))
(+.f64 0 (*.f64 (log.f64 x.im) y.re))
(*.f64 y.re (log.f64 x.im))
(+.f64 (*.f64 y.re (log.f64 (sqrt.f64 x.im))) (*.f64 y.re (log.f64 (sqrt.f64 x.im))))
(*.f64 y.re (log.f64 x.im))
(-.f64 (*.f64 (log.f64 x.im) y.re) 0)
(*.f64 y.re (log.f64 x.im))
(/.f64 (*.f64 (log.f64 x.im) y.re) 1)
(*.f64 y.re (log.f64 x.im))
(/.f64 (*.f64 (log.f64 x.im) (+.f64 y.re y.re)) 2)
(*.f64 y.re (log.f64 x.im))
(/.f64 (*.f64 (log.f64 x.im) (*.f64 y.re 4)) 4)
(*.f64 y.re (log.f64 x.im))
(/.f64 (*.f64 (log.f64 x.im) (*.f64 y.re 8)) 8)
(*.f64 y.re (log.f64 x.im))
(/.f64 (*.f64 2 (*.f64 (log.f64 x.im) (*.f64 y.re 8))) 16)
(*.f64 y.re (log.f64 x.im))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (log.f64 x.im) (*.f64 y.re 8)))) 32)
(*.f64 y.re (log.f64 x.im))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (log.f64 x.im) (*.f64 y.re 8))))) 64)
(*.f64 y.re (log.f64 x.im))
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (log.f64 x.im) (*.f64 y.re 8))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (log.f64 x.im) (*.f64 y.re 8)))))) 128)
(*.f64 y.re (log.f64 x.im))
(pow.f64 (*.f64 (log.f64 x.im) y.re) 1)
(*.f64 y.re (log.f64 x.im))
(log.f64 (pow.f64 x.im y.re))
(log.f64 (pow.f64 (sqrt.f64 x.im) (+.f64 y.re y.re)))
(log.f64 (pow.f64 (sqrt.f64 (pow.f64 x.im y.re)) 2))
(log.f64 (sqrt.f64 (pow.f64 (sqrt.f64 x.im) (*.f64 y.re 4))))
(log.f64 (pow.f64 (sqrt.f64 (sqrt.f64 x.im)) (*.f64 y.re 4)))
(*.f64 y.re (log.f64 (sqrt.f64 (pow.f64 x.im 2))))
(*.f64 2 (log.f64 (sqrt.f64 (pow.f64 x.im y.re))))

localize22.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(*.f64 (log.f64 (neg.f64 x.im)) y.re)
1.1b
(*.f64 y.re (atan2.f64 x.im x.re))
2.6b
(*.f64 (atan2.f64 x.im x.re) y.im)
19.3b
(cos.f64 (*.f64 y.re (atan2.f64 x.im x.re)))
Compiler

Compiled 79 to 14 computations (82.3% saved)

series13.0ms (0%)

Counts
1 → 24
Calls

6 calls:

TimeVariablePointExpression
12.0ms
y.re
@0
(*.f64 (log.f64 (neg.f64 x.im)) y.re)
0.0ms
x.im
@0
(*.f64 (log.f64 (neg.f64 x.im)) y.re)
0.0ms
y.re
@inf
(*.f64 (log.f64 (neg.f64 x.im)) y.re)
0.0ms
x.im
@inf
(*.f64 (log.f64 (neg.f64 x.im)) y.re)
0.0ms
y.re
@-inf
(*.f64 (log.f64 (neg.f64 x.im)) y.re)

rewrite80.0ms (0.3%)

Algorithm
batch-egg-rewrite
Rules
1512×rational.json-1
1512×rational.json-2
1512×rational.json-3
1144×exponential.json-simplify-31
1066×rational.json-simplify-2
Iterations

Useful iterations: 5 (0.0ms)

IterNodesCost
0815
15515
213115
328415
456115
5127511
6321011
7727211
Stop Event
node limit
Counts
1 → 14
Calls
Call 1
Inputs
(*.f64 (log.f64 (neg.f64 x.im)) y.re)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (log.f64 x.im) y.re) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (log.f64 x.im) y.re))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (sqrt.f64 x.im) y.re)) (log.f64 (pow.f64 (sqrt.f64 x.im) y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (log.f64 x.im) y.re) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (log.f64 x.im) y.re) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (log.f64 x.im) (+.f64 y.re y.re)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (log.f64 x.im) (*.f64 y.re 4)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 y.re 8) (log.f64 x.im)) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (*.f64 y.re 8) (log.f64 x.im))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y.re 8) (log.f64 x.im)))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y.re 8) (log.f64 x.im)))) (*.f64 2 (*.f64 2 (*.f64 (*.f64 y.re 8) (log.f64 x.im))))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (log.f64 x.im) y.re) 1)))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 x.im y.re))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (sqrt.f64 x.im) (+.f64 y.re y.re)))))))

simplify84.0ms (0.3%)

Algorithm
egg-herbie
Rules
1252×rational.json-simplify-51
976×rational.json-simplify-1
912×rational.json-simplify-2
806×exponential.json-simplify-31
750×rational.json-simplify-35
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
059642
1130626
2242626
3491626
41430626
53950626
67288626
Stop Event
node limit
Counts
38 → 24
Calls
Call 1
Inputs
(*.f64 y.re (+.f64 (log.f64 -1) (log.f64 x.im)))
(*.f64 y.re (+.f64 (log.f64 -1) (log.f64 x.im)))
(*.f64 y.re (+.f64 (log.f64 -1) (log.f64 x.im)))
(*.f64 y.re (+.f64 (log.f64 -1) (log.f64 x.im)))
(*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 1 x.im)))) y.re)
(*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 1 x.im)))) y.re)
(*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 1 x.im)))) y.re)
(*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 1 x.im)))) y.re)
(*.f64 -1 (*.f64 (log.f64 (/.f64 -1 x.im)) y.re))
(*.f64 -1 (*.f64 (log.f64 (/.f64 -1 x.im)) y.re))
(*.f64 -1 (*.f64 (log.f64 (/.f64 -1 x.im)) y.re))
(*.f64 -1 (*.f64 (log.f64 (/.f64 -1 x.im)) y.re))
(*.f64 y.re (log.f64 (neg.f64 x.im)))
(*.f64 y.re (log.f64 (neg.f64 x.im)))
(*.f64 y.re (log.f64 (neg.f64 x.im)))
(*.f64 y.re (log.f64 (neg.f64 x.im)))
(*.f64 y.re (log.f64 (neg.f64 x.im)))
(*.f64 y.re (log.f64 (neg.f64 x.im)))
(*.f64 y.re (log.f64 (neg.f64 x.im)))
(*.f64 y.re (log.f64 (neg.f64 x.im)))
(*.f64 y.re (log.f64 (neg.f64 x.im)))
(*.f64 y.re (log.f64 (neg.f64 x.im)))
(*.f64 y.re (log.f64 (neg.f64 x.im)))
(*.f64 y.re (log.f64 (neg.f64 x.im)))
(+.f64 (*.f64 (log.f64 x.im) y.re) 0)
(+.f64 0 (*.f64 (log.f64 x.im) y.re))
(+.f64 (log.f64 (pow.f64 (sqrt.f64 x.im) y.re)) (log.f64 (pow.f64 (sqrt.f64 x.im) y.re)))
(-.f64 (*.f64 (log.f64 x.im) y.re) 0)
(/.f64 (*.f64 (log.f64 x.im) y.re) 1)
(/.f64 (*.f64 (log.f64 x.im) (+.f64 y.re y.re)) 2)
(/.f64 (*.f64 (log.f64 x.im) (*.f64 y.re 4)) 4)
(/.f64 (*.f64 (*.f64 y.re 8) (log.f64 x.im)) 8)
(/.f64 (*.f64 2 (*.f64 (*.f64 y.re 8) (log.f64 x.im))) 16)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y.re 8) (log.f64 x.im)))) 32)
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y.re 8) (log.f64 x.im)))) (*.f64 2 (*.f64 2 (*.f64 (*.f64 y.re 8) (log.f64 x.im))))) 64)
(pow.f64 (*.f64 (log.f64 x.im) y.re) 1)
(log.f64 (pow.f64 x.im y.re))
(log.f64 (pow.f64 (sqrt.f64 x.im) (+.f64 y.re y.re)))
Outputs
(*.f64 y.re (+.f64 (log.f64 -1) (log.f64 x.im)))
(*.f64 y.re (+.f64 (log.f64 -1) (log.f64 x.im)))
(*.f64 y.re (+.f64 (log.f64 -1) (log.f64 x.im)))
(*.f64 y.re (+.f64 (log.f64 -1) (log.f64 x.im)))
(*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 1 x.im)))) y.re)
(*.f64 y.re (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 1 x.im)))))
(*.f64 y.re (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 1 x.im)))))
(*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 1 x.im)))) y.re)
(*.f64 y.re (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 1 x.im)))))
(*.f64 y.re (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 1 x.im)))))
(*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 1 x.im)))) y.re)
(*.f64 y.re (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 1 x.im)))))
(*.f64 y.re (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 1 x.im)))))
(*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 1 x.im)))) y.re)
(*.f64 y.re (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 1 x.im)))))
(*.f64 y.re (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 1 x.im)))))
(*.f64 -1 (*.f64 (log.f64 (/.f64 -1 x.im)) y.re))
(*.f64 -1 (*.f64 y.re (log.f64 (/.f64 -1 x.im))))
(*.f64 (log.f64 (/.f64 -1 x.im)) (neg.f64 y.re))
(*.f64 y.re (neg.f64 (log.f64 (/.f64 -1 x.im))))
(*.f64 -1 (*.f64 (log.f64 (/.f64 -1 x.im)) y.re))
(*.f64 -1 (*.f64 y.re (log.f64 (/.f64 -1 x.im))))
(*.f64 (log.f64 (/.f64 -1 x.im)) (neg.f64 y.re))
(*.f64 y.re (neg.f64 (log.f64 (/.f64 -1 x.im))))
(*.f64 -1 (*.f64 (log.f64 (/.f64 -1 x.im)) y.re))
(*.f64 -1 (*.f64 y.re (log.f64 (/.f64 -1 x.im))))
(*.f64 (log.f64 (/.f64 -1 x.im)) (neg.f64 y.re))
(*.f64 y.re (neg.f64 (log.f64 (/.f64 -1 x.im))))
(*.f64 -1 (*.f64 (log.f64 (/.f64 -1 x.im)) y.re))
(*.f64 -1 (*.f64 y.re (log.f64 (/.f64 -1 x.im))))
(*.f64 (log.f64 (/.f64 -1 x.im)) (neg.f64 y.re))
(*.f64 y.re (neg.f64 (log.f64 (/.f64 -1 x.im))))
(*.f64 y.re (log.f64 (neg.f64 x.im)))
(*.f64 y.re (log.f64 (neg.f64 x.im)))
(*.f64 y.re (log.f64 (neg.f64 x.im)))
(*.f64 y.re (log.f64 (neg.f64 x.im)))
(*.f64 y.re (log.f64 (neg.f64 x.im)))
(*.f64 y.re (log.f64 (neg.f64 x.im)))
(*.f64 y.re (log.f64 (neg.f64 x.im)))
(*.f64 y.re (log.f64 (neg.f64 x.im)))
(*.f64 y.re (log.f64 (neg.f64 x.im)))
(*.f64 y.re (log.f64 (neg.f64 x.im)))
(*.f64 y.re (log.f64 (neg.f64 x.im)))
(*.f64 y.re (log.f64 (neg.f64 x.im)))
(+.f64 (*.f64 (log.f64 x.im) y.re) 0)
(*.f64 y.re (log.f64 x.im))
(+.f64 0 (*.f64 (log.f64 x.im) y.re))
(*.f64 y.re (log.f64 x.im))
(+.f64 (log.f64 (pow.f64 (sqrt.f64 x.im) y.re)) (log.f64 (pow.f64 (sqrt.f64 x.im) y.re)))
(*.f64 y.re (log.f64 x.im))
(-.f64 (*.f64 (log.f64 x.im) y.re) 0)
(*.f64 y.re (log.f64 x.im))
(/.f64 (*.f64 (log.f64 x.im) y.re) 1)
(*.f64 y.re (log.f64 x.im))
(/.f64 (*.f64 (log.f64 x.im) (+.f64 y.re y.re)) 2)
(*.f64 y.re (log.f64 x.im))
(/.f64 (*.f64 (log.f64 x.im) (*.f64 y.re 4)) 4)
(*.f64 y.re (log.f64 x.im))
(/.f64 (*.f64 (*.f64 y.re 8) (log.f64 x.im)) 8)
(*.f64 y.re (log.f64 x.im))
(/.f64 (*.f64 2 (*.f64 (*.f64 y.re 8) (log.f64 x.im))) 16)
(*.f64 y.re (log.f64 x.im))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y.re 8) (log.f64 x.im)))) 32)
(*.f64 y.re (log.f64 x.im))
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y.re 8) (log.f64 x.im)))) (*.f64 2 (*.f64 2 (*.f64 (*.f64 y.re 8) (log.f64 x.im))))) 64)
(*.f64 y.re (log.f64 x.im))
(pow.f64 (*.f64 (log.f64 x.im) y.re) 1)
(*.f64 y.re (log.f64 x.im))
(log.f64 (pow.f64 x.im y.re))
(*.f64 y.re (log.f64 x.im))
(log.f64 (pow.f64 (sqrt.f64 x.im) (+.f64 y.re y.re)))
(*.f64 y.re (log.f64 x.im))

localize80.0ms (0.3%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(*.f64 (log.f64 x.im) y.im)
1.1b
(*.f64 (atan2.f64 x.im x.re) y.re)
2.6b
(*.f64 (atan2.f64 x.im x.re) y.im)
16.5b
(cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))
Compiler

Compiled 98 to 16 computations (83.7% saved)

series487.0ms (1.7%)

Counts
2 → 56
Calls

18 calls:

TimeVariablePointExpression
473.0ms
x.re
@0
(cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))
8.0ms
y.im
@0
(*.f64 (log.f64 x.im) y.im)
1.0ms
x.im
@0
(cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))
1.0ms
x.im
@-inf
(cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))
1.0ms
x.re
@inf
(cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))

rewrite92.0ms (0.3%)

Algorithm
batch-egg-rewrite
Rules
1522×rational.json-1
1522×rational.json-2
1522×rational.json-3
1474×exponential.json-3
1474×rational.json-4
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01344
18544
217844
339044
477344
5181544
6369344
7625844
Stop Event
node limit
Counts
2 → 36
Calls
Call 1
Inputs
(cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))
(*.f64 (log.f64 x.im) y.im)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 1/2) (*.f64 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (/.f64 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 1/2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 8) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 8)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 8))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 8))) (*.f64 2 (*.f64 2 (*.f64 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 8)))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 1)))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (log.f64 x.im) y.im) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (log.f64 x.im) y.im))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 x.im y.im))) (log.f64 (sqrt.f64 (pow.f64 x.im y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (log.f64 x.im) y.im) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (log.f64 x.im) y.im) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (log.f64 x.im) (+.f64 y.im y.im)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y.im (log.f64 (pow.f64 x.im 4))) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y.im (*.f64 (log.f64 x.im) 8)) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 y.im (*.f64 (log.f64 x.im) 8))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 y.im (*.f64 (log.f64 x.im) 8)))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 y.im (*.f64 (log.f64 x.im) 8)))) (*.f64 2 (*.f64 2 (*.f64 y.im (*.f64 (log.f64 x.im) 8))))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (log.f64 x.im) y.im) 1)))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 x.im y.im))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (sqrt.f64 x.im) (+.f64 y.im y.im)))))))

simplify135.0ms (0.5%)

Algorithm
egg-herbie
Rules
1194×rational.json-simplify-35
1096×rational.json-simplify-38
1088×rational.json-simplify-41
1030×exponential.json-simplify-26
814×rational.json-simplify-2
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01433282
13233238
27523208
317143186
432243186
552173186
665433186
Stop Event
node limit
Counts
92 → 92
Calls
Call 1
Inputs
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.im)) y.im))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.im)) y.im))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.im)) y.im))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.im)) y.im))))
(cos.f64 (+.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x.im)))) y.im) (*.f64 y.re (atan2.f64 x.im x.re))))
(cos.f64 (+.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x.im)))) y.im) (*.f64 y.re (atan2.f64 x.im x.re))))
(cos.f64 (+.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x.im)))) y.im) (*.f64 y.re (atan2.f64 x.im x.re))))
(cos.f64 (+.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x.im)))) y.im) (*.f64 y.re (atan2.f64 x.im x.re))))
(cos.f64 (*.f64 y.re (atan2.f64 x.im x.re)))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 (log.f64 x.im) y.im))) (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 y.im 2) (*.f64 (pow.f64 (log.f64 x.im) 2) (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re)))))) (+.f64 (*.f64 -1 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 (log.f64 x.im) y.im))) (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re)))))
(+.f64 (*.f64 1/6 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 (pow.f64 (log.f64 x.im) 3) (pow.f64 y.im 3)))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 y.im 2) (*.f64 (pow.f64 (log.f64 x.im) 2) (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re)))))) (+.f64 (*.f64 -1 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 (log.f64 x.im) y.im))) (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))))))
(cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 y.re (atan2.f64 x.im x.re))))
(cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 y.re (atan2.f64 x.im x.re))))
(cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 y.re (atan2.f64 x.im x.re))))
(cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 y.re (atan2.f64 x.im x.re))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(cos.f64 (*.f64 y.im (log.f64 x.im)))
(+.f64 (*.f64 -1 (*.f64 y.re (*.f64 (atan2.f64 x.im x.re) (sin.f64 (*.f64 (log.f64 x.im) y.im))))) (cos.f64 (*.f64 y.im (log.f64 x.im))))
(+.f64 (*.f64 -1 (*.f64 y.re (*.f64 (atan2.f64 x.im x.re) (sin.f64 (*.f64 (log.f64 x.im) y.im))))) (+.f64 (cos.f64 (*.f64 y.im (log.f64 x.im))) (*.f64 -1/2 (*.f64 (pow.f64 y.re 2) (*.f64 (pow.f64 (atan2.f64 x.im x.re) 2) (cos.f64 (*.f64 y.im (log.f64 x.im))))))))
(+.f64 (*.f64 -1 (*.f64 y.re (*.f64 (atan2.f64 x.im x.re) (sin.f64 (*.f64 (log.f64 x.im) y.im))))) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 y.re 3) (*.f64 (pow.f64 (atan2.f64 x.im x.re) 3) (sin.f64 (*.f64 (log.f64 x.im) y.im))))) (+.f64 (cos.f64 (*.f64 y.im (log.f64 x.im))) (*.f64 -1/2 (*.f64 (pow.f64 y.re 2) (*.f64 (pow.f64 (atan2.f64 x.im x.re) 2) (cos.f64 (*.f64 y.im (log.f64 x.im)))))))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.im)) y.im))
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.im)) y.im))
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.im)) y.im))
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.im)) y.im))
(*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x.im)))) y.im)
(*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x.im)))) y.im)
(*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x.im)))) y.im)
(*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x.im)))) y.im)
(+.f64 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 0)
(+.f64 0 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))))
(+.f64 (*.f64 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 1/2) (*.f64 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 1/2))
(-.f64 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 0)
(*.f64 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 1)
(*.f64 1 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))))
(*.f64 2 (*.f64 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 1/2))
(*.f64 (*.f64 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 2) 1/2)
(*.f64 4 (/.f64 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 4))
(*.f64 (*.f64 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 4) 1/4)
(*.f64 1/2 (*.f64 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 2))
(*.f64 (*.f64 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 1/2) 2)
(*.f64 1/4 (*.f64 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 4))
(*.f64 (/.f64 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 4) 4)
(/.f64 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 1)
(/.f64 (*.f64 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 2) 2)
(/.f64 (*.f64 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 4) 4)
(/.f64 (*.f64 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 8) 8)
(/.f64 (*.f64 2 (*.f64 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 8)) 16)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 8))) 32)
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 8))) (*.f64 2 (*.f64 2 (*.f64 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 8)))) 64)
(pow.f64 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 1)
(+.f64 (*.f64 (log.f64 x.im) y.im) 0)
(+.f64 0 (*.f64 (log.f64 x.im) y.im))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 x.im y.im))) (log.f64 (sqrt.f64 (pow.f64 x.im y.im))))
(-.f64 (*.f64 (log.f64 x.im) y.im) 0)
(/.f64 (*.f64 (log.f64 x.im) y.im) 1)
(/.f64 (*.f64 (log.f64 x.im) (+.f64 y.im y.im)) 2)
(/.f64 (*.f64 y.im (log.f64 (pow.f64 x.im 4))) 4)
(/.f64 (*.f64 y.im (*.f64 (log.f64 x.im) 8)) 8)
(/.f64 (*.f64 2 (*.f64 y.im (*.f64 (log.f64 x.im) 8))) 16)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 y.im (*.f64 (log.f64 x.im) 8)))) 32)
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 y.im (*.f64 (log.f64 x.im) 8)))) (*.f64 2 (*.f64 2 (*.f64 y.im (*.f64 (log.f64 x.im) 8))))) 64)
(pow.f64 (*.f64 (log.f64 x.im) y.im) 1)
(log.f64 (pow.f64 x.im y.im))
(log.f64 (pow.f64 (sqrt.f64 x.im) (+.f64 y.im y.im)))
Outputs
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.im)) y.im))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 -1 (*.f64 y.im (log.f64 (/.f64 1 x.im))))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 1 x.im)) (neg.f64 y.im))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.im)) y.im))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 -1 (*.f64 y.im (log.f64 (/.f64 1 x.im))))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 1 x.im)) (neg.f64 y.im))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.im)) y.im))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 -1 (*.f64 y.im (log.f64 (/.f64 1 x.im))))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 1 x.im)) (neg.f64 y.im))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.im)) y.im))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 -1 (*.f64 y.im (log.f64 (/.f64 1 x.im))))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 1 x.im)) (neg.f64 y.im))))
(cos.f64 (+.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x.im)))) y.im) (*.f64 y.re (atan2.f64 x.im x.re))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x.im)))))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 x.im)))))))
(cos.f64 (+.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x.im)))) y.im) (*.f64 y.re (atan2.f64 x.im x.re))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x.im)))))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 x.im)))))))
(cos.f64 (+.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x.im)))) y.im) (*.f64 y.re (atan2.f64 x.im x.re))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x.im)))))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 x.im)))))))
(cos.f64 (+.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x.im)))) y.im) (*.f64 y.re (atan2.f64 x.im x.re))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x.im)))))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 x.im)))))))
(cos.f64 (*.f64 y.re (atan2.f64 x.im x.re)))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 (log.f64 x.im) y.im))) (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))))
(+.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 -1 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 y.im (log.f64 x.im)))))
(+.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (neg.f64 (*.f64 y.im (log.f64 x.im)))))
(+.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 (log.f64 x.im) (neg.f64 y.im))))
(+.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 y.im (neg.f64 (*.f64 (log.f64 x.im) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 y.im 2) (*.f64 (pow.f64 (log.f64 x.im) 2) (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re)))))) (+.f64 (*.f64 -1 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 (log.f64 x.im) y.im))) (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re)))))
(+.f64 (+.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 -1 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 y.im (log.f64 x.im))))) (*.f64 -1/2 (*.f64 (pow.f64 y.im 2) (*.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (pow.f64 (log.f64 x.im) 2)))))
(+.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 (pow.f64 y.im 2) (pow.f64 (log.f64 x.im) 2)))) (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (neg.f64 (*.f64 y.im (log.f64 x.im))))))
(+.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (+.f64 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 (log.f64 x.im) (neg.f64 y.im))) (*.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 (pow.f64 (*.f64 y.im (log.f64 x.im)) 2) -1/2))))
(+.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (+.f64 (*.f64 y.im (neg.f64 (*.f64 (log.f64 x.im) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))))) (*.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 -1/2 (pow.f64 (*.f64 y.im (log.f64 x.im)) 2)))))
(+.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (+.f64 (*.f64 y.im (neg.f64 (*.f64 (log.f64 x.im) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))))) (*.f64 -1/2 (*.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (pow.f64 (*.f64 y.im (log.f64 x.im)) 2)))))
(+.f64 (+.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 y.im (neg.f64 (*.f64 (log.f64 x.im) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))))))) (*.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 -1/2 (pow.f64 (*.f64 y.im (log.f64 x.im)) 2))))
(+.f64 (*.f64 1/6 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 (pow.f64 (log.f64 x.im) 3) (pow.f64 y.im 3)))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 y.im 2) (*.f64 (pow.f64 (log.f64 x.im) 2) (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re)))))) (+.f64 (*.f64 -1 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 (log.f64 x.im) y.im))) (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 y.im 2) (*.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (pow.f64 (log.f64 x.im) 2)))) (+.f64 (+.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 -1 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 y.im (log.f64 x.im))))) (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 (pow.f64 (*.f64 y.im (log.f64 x.im)) 3) 1/6))))
(+.f64 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (neg.f64 (*.f64 y.im (log.f64 x.im)))) (+.f64 (+.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 -1/2 (*.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 (pow.f64 y.im 2) (pow.f64 (log.f64 x.im) 2))))) (*.f64 1/6 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (pow.f64 (*.f64 y.im (log.f64 x.im)) 3)))))
(+.f64 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 (log.f64 x.im) (neg.f64 y.im))) (+.f64 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 1/6 (pow.f64 (*.f64 y.im (log.f64 x.im)) 3))) (+.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 (pow.f64 (*.f64 y.im (log.f64 x.im)) 2) -1/2)))))
(+.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (+.f64 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (+.f64 (*.f64 (log.f64 x.im) (neg.f64 y.im)) (*.f64 1/6 (pow.f64 (*.f64 y.im (log.f64 x.im)) 3)))) (*.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 -1/2 (pow.f64 (*.f64 y.im (log.f64 x.im)) 2)))))
(+.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (pow.f64 (*.f64 y.im (log.f64 x.im)) 2))) (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (+.f64 (*.f64 1/6 (pow.f64 (*.f64 y.im (log.f64 x.im)) 3)) (*.f64 (log.f64 x.im) (neg.f64 y.im))))))
(+.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (+.f64 (*.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 -1/2 (pow.f64 (*.f64 y.im (log.f64 x.im)) 2))) (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (+.f64 (*.f64 1/6 (pow.f64 (*.f64 y.im (log.f64 x.im)) 3)) (*.f64 (log.f64 x.im) (neg.f64 y.im))))))
(cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 y.re (atan2.f64 x.im x.re))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 y.re (atan2.f64 x.im x.re))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 y.re (atan2.f64 x.im x.re))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 y.re (atan2.f64 x.im x.re))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(cos.f64 (*.f64 y.im (log.f64 x.im)))
(+.f64 (*.f64 -1 (*.f64 y.re (*.f64 (atan2.f64 x.im x.re) (sin.f64 (*.f64 (log.f64 x.im) y.im))))) (cos.f64 (*.f64 y.im (log.f64 x.im))))
(+.f64 (cos.f64 (*.f64 y.im (log.f64 x.im))) (*.f64 y.re (*.f64 (*.f64 (atan2.f64 x.im x.re) (sin.f64 (*.f64 y.im (log.f64 x.im)))) -1)))
(+.f64 (cos.f64 (*.f64 y.im (log.f64 x.im))) (neg.f64 (*.f64 y.re (*.f64 (atan2.f64 x.im x.re) (sin.f64 (*.f64 y.im (log.f64 x.im)))))))
(+.f64 (cos.f64 (*.f64 y.im (log.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) (neg.f64 (*.f64 y.re (sin.f64 (*.f64 y.im (log.f64 x.im)))))))
(+.f64 (cos.f64 (*.f64 y.im (log.f64 x.im))) (*.f64 y.re (*.f64 (sin.f64 (*.f64 y.im (log.f64 x.im))) (neg.f64 (atan2.f64 x.im x.re)))))
(+.f64 (cos.f64 (*.f64 y.im (log.f64 x.im))) (*.f64 y.re (*.f64 (atan2.f64 x.im x.re) (neg.f64 (sin.f64 (*.f64 y.im (log.f64 x.im)))))))
(+.f64 (*.f64 -1 (*.f64 y.re (*.f64 (atan2.f64 x.im x.re) (sin.f64 (*.f64 (log.f64 x.im) y.im))))) (+.f64 (cos.f64 (*.f64 y.im (log.f64 x.im))) (*.f64 -1/2 (*.f64 (pow.f64 y.re 2) (*.f64 (pow.f64 (atan2.f64 x.im x.re) 2) (cos.f64 (*.f64 y.im (log.f64 x.im))))))))
(+.f64 (cos.f64 (*.f64 y.im (log.f64 x.im))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 y.re 2) (*.f64 (cos.f64 (*.f64 y.im (log.f64 x.im))) (pow.f64 (atan2.f64 x.im x.re) 2)))) (*.f64 y.re (*.f64 (*.f64 (atan2.f64 x.im x.re) (sin.f64 (*.f64 y.im (log.f64 x.im)))) -1))))
(+.f64 (neg.f64 (*.f64 y.re (*.f64 (atan2.f64 x.im x.re) (sin.f64 (*.f64 y.im (log.f64 x.im)))))) (+.f64 (cos.f64 (*.f64 y.im (log.f64 x.im))) (*.f64 -1/2 (*.f64 (cos.f64 (*.f64 y.im (log.f64 x.im))) (*.f64 (pow.f64 (atan2.f64 x.im x.re) 2) (pow.f64 y.re 2))))))
(+.f64 (cos.f64 (*.f64 y.im (log.f64 x.im))) (+.f64 (*.f64 (atan2.f64 x.im x.re) (neg.f64 (*.f64 y.re (sin.f64 (*.f64 y.im (log.f64 x.im)))))) (*.f64 (cos.f64 (*.f64 y.im (log.f64 x.im))) (*.f64 (pow.f64 (*.f64 y.re (atan2.f64 x.im x.re)) 2) -1/2))))
(+.f64 (cos.f64 (*.f64 y.im (log.f64 x.im))) (+.f64 (*.f64 y.re (*.f64 (sin.f64 (*.f64 y.im (log.f64 x.im))) (neg.f64 (atan2.f64 x.im x.re)))) (*.f64 (cos.f64 (*.f64 y.im (log.f64 x.im))) (*.f64 -1/2 (pow.f64 (*.f64 y.re (atan2.f64 x.im x.re)) 2)))))
(+.f64 (cos.f64 (*.f64 y.im (log.f64 x.im))) (+.f64 (*.f64 y.re (*.f64 (atan2.f64 x.im x.re) (neg.f64 (sin.f64 (*.f64 y.im (log.f64 x.im)))))) (*.f64 -1/2 (*.f64 (cos.f64 (*.f64 y.im (log.f64 x.im))) (pow.f64 (*.f64 y.re (atan2.f64 x.im x.re)) 2)))))
(+.f64 (cos.f64 (*.f64 y.im (log.f64 x.im))) (+.f64 (*.f64 y.re (*.f64 (atan2.f64 x.im x.re) (neg.f64 (sin.f64 (*.f64 y.im (log.f64 x.im)))))) (*.f64 (cos.f64 (*.f64 y.im (log.f64 x.im))) (*.f64 -1/2 (pow.f64 (*.f64 y.re (atan2.f64 x.im x.re)) 2)))))
(+.f64 (*.f64 -1 (*.f64 y.re (*.f64 (atan2.f64 x.im x.re) (sin.f64 (*.f64 (log.f64 x.im) y.im))))) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 y.re 3) (*.f64 (pow.f64 (atan2.f64 x.im x.re) 3) (sin.f64 (*.f64 (log.f64 x.im) y.im))))) (+.f64 (cos.f64 (*.f64 y.im (log.f64 x.im))) (*.f64 -1/2 (*.f64 (pow.f64 y.re 2) (*.f64 (pow.f64 (atan2.f64 x.im x.re) 2) (cos.f64 (*.f64 y.im (log.f64 x.im)))))))))
(+.f64 (*.f64 (pow.f64 y.re 3) (*.f64 (*.f64 (sin.f64 (*.f64 y.im (log.f64 x.im))) (pow.f64 (atan2.f64 x.im x.re) 3)) 1/6)) (+.f64 (cos.f64 (*.f64 y.im (log.f64 x.im))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 y.re 2) (*.f64 (cos.f64 (*.f64 y.im (log.f64 x.im))) (pow.f64 (atan2.f64 x.im x.re) 2)))) (*.f64 y.re (*.f64 (*.f64 (atan2.f64 x.im x.re) (sin.f64 (*.f64 y.im (log.f64 x.im)))) -1)))))
(+.f64 (neg.f64 (*.f64 y.re (*.f64 (atan2.f64 x.im x.re) (sin.f64 (*.f64 y.im (log.f64 x.im)))))) (+.f64 (+.f64 (cos.f64 (*.f64 y.im (log.f64 x.im))) (*.f64 -1/2 (*.f64 (cos.f64 (*.f64 y.im (log.f64 x.im))) (*.f64 (pow.f64 (atan2.f64 x.im x.re) 2) (pow.f64 y.re 2))))) (*.f64 1/6 (*.f64 (sin.f64 (*.f64 y.im (log.f64 x.im))) (*.f64 (pow.f64 y.re 3) (pow.f64 (atan2.f64 x.im x.re) 3))))))
(+.f64 (+.f64 (cos.f64 (*.f64 y.im (log.f64 x.im))) (*.f64 (cos.f64 (*.f64 y.im (log.f64 x.im))) (*.f64 (pow.f64 (*.f64 y.re (atan2.f64 x.im x.re)) 2) -1/2))) (+.f64 (*.f64 (atan2.f64 x.im x.re) (neg.f64 (*.f64 y.re (sin.f64 (*.f64 y.im (log.f64 x.im)))))) (*.f64 1/6 (*.f64 (sin.f64 (*.f64 y.im (log.f64 x.im))) (pow.f64 (*.f64 y.re (atan2.f64 x.im x.re)) 3)))))
(+.f64 (+.f64 (cos.f64 (*.f64 y.im (log.f64 x.im))) (*.f64 (cos.f64 (*.f64 y.im (log.f64 x.im))) (*.f64 -1/2 (pow.f64 (*.f64 y.re (atan2.f64 x.im x.re)) 2)))) (+.f64 (*.f64 y.re (*.f64 (sin.f64 (*.f64 y.im (log.f64 x.im))) (neg.f64 (atan2.f64 x.im x.re)))) (*.f64 1/6 (*.f64 (sin.f64 (*.f64 y.im (log.f64 x.im))) (pow.f64 (*.f64 y.re (atan2.f64 x.im x.re)) 3)))))
(+.f64 (cos.f64 (*.f64 y.im (log.f64 x.im))) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (*.f64 y.im (log.f64 x.im))) (pow.f64 (*.f64 y.re (atan2.f64 x.im x.re)) 2))) (+.f64 (*.f64 y.re (*.f64 (atan2.f64 x.im x.re) (neg.f64 (sin.f64 (*.f64 y.im (log.f64 x.im)))))) (*.f64 1/6 (*.f64 (sin.f64 (*.f64 y.im (log.f64 x.im))) (pow.f64 (*.f64 y.re (atan2.f64 x.im x.re)) 3))))))
(+.f64 (+.f64 (cos.f64 (*.f64 y.im (log.f64 x.im))) (*.f64 (cos.f64 (*.f64 y.im (log.f64 x.im))) (*.f64 -1/2 (pow.f64 (*.f64 y.re (atan2.f64 x.im x.re)) 2)))) (+.f64 (*.f64 y.re (*.f64 (atan2.f64 x.im x.re) (neg.f64 (sin.f64 (*.f64 y.im (log.f64 x.im)))))) (*.f64 1/6 (*.f64 (sin.f64 (*.f64 y.im (log.f64 x.im))) (pow.f64 (*.f64 y.re (atan2.f64 x.im x.re)) 3)))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.im)) y.im))
(*.f64 -1 (*.f64 y.im (log.f64 (/.f64 1 x.im))))
(*.f64 (log.f64 (/.f64 1 x.im)) (neg.f64 y.im))
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.im)) y.im))
(*.f64 -1 (*.f64 y.im (log.f64 (/.f64 1 x.im))))
(*.f64 (log.f64 (/.f64 1 x.im)) (neg.f64 y.im))
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.im)) y.im))
(*.f64 -1 (*.f64 y.im (log.f64 (/.f64 1 x.im))))
(*.f64 (log.f64 (/.f64 1 x.im)) (neg.f64 y.im))
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.im)) y.im))
(*.f64 -1 (*.f64 y.im (log.f64 (/.f64 1 x.im))))
(*.f64 (log.f64 (/.f64 1 x.im)) (neg.f64 y.im))
(*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x.im)))) y.im)
(*.f64 y.im (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x.im)))))
(*.f64 y.im (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 x.im)))))
(*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x.im)))) y.im)
(*.f64 y.im (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x.im)))))
(*.f64 y.im (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 x.im)))))
(*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x.im)))) y.im)
(*.f64 y.im (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x.im)))))
(*.f64 y.im (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 x.im)))))
(*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x.im)))) y.im)
(*.f64 y.im (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x.im)))))
(*.f64 y.im (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 x.im)))))
(+.f64 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 0)
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(+.f64 0 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(+.f64 (*.f64 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 1/2) (*.f64 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 1/2))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(-.f64 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 0)
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(*.f64 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 1)
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(*.f64 1 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(*.f64 2 (*.f64 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 1/2))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(*.f64 (*.f64 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 2) 1/2)
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(*.f64 4 (/.f64 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 4))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(*.f64 (*.f64 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 4) 1/4)
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(*.f64 1/2 (*.f64 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 2))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(*.f64 (*.f64 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 1/2) 2)
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(*.f64 1/4 (*.f64 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 4))
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(*.f64 (/.f64 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 4) 4)
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(/.f64 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 1)
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(/.f64 (*.f64 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 2) 2)
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(/.f64 (*.f64 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 4) 4)
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(/.f64 (*.f64 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 8) 8)
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(/.f64 (*.f64 2 (*.f64 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 8)) 16)
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 8))) 32)
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 8))) (*.f64 2 (*.f64 2 (*.f64 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 8)))) 64)
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(pow.f64 (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 1)
(cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(+.f64 (*.f64 (log.f64 x.im) y.im) 0)
(*.f64 y.im (log.f64 x.im))
(+.f64 0 (*.f64 (log.f64 x.im) y.im))
(*.f64 y.im (log.f64 x.im))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 x.im y.im))) (log.f64 (sqrt.f64 (pow.f64 x.im y.im))))
(*.f64 y.im (log.f64 x.im))
(-.f64 (*.f64 (log.f64 x.im) y.im) 0)
(*.f64 y.im (log.f64 x.im))
(/.f64 (*.f64 (log.f64 x.im) y.im) 1)
(*.f64 y.im (log.f64 x.im))
(/.f64 (*.f64 (log.f64 x.im) (+.f64 y.im y.im)) 2)
(*.f64 y.im (log.f64 x.im))
(/.f64 (*.f64 y.im (log.f64 (pow.f64 x.im 4))) 4)
(*.f64 y.im (log.f64 x.im))
(/.f64 (*.f64 y.im (*.f64 (log.f64 x.im) 8)) 8)
(*.f64 y.im (log.f64 x.im))
(/.f64 (*.f64 2 (*.f64 y.im (*.f64 (log.f64 x.im) 8))) 16)
(*.f64 y.im (log.f64 x.im))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 y.im (*.f64 (log.f64 x.im) 8)))) 32)
(*.f64 y.im (log.f64 x.im))
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 y.im (*.f64 (log.f64 x.im) 8)))) (*.f64 2 (*.f64 2 (*.f64 y.im (*.f64 (log.f64 x.im) 8))))) 64)
(*.f64 y.im (log.f64 x.im))
(pow.f64 (*.f64 (log.f64 x.im) y.im) 1)
(*.f64 y.im (log.f64 x.im))
(log.f64 (pow.f64 x.im y.im))
(*.f64 y.im (log.f64 x.im))
(log.f64 (pow.f64 (sqrt.f64 x.im) (+.f64 y.im y.im)))
(*.f64 y.im (log.f64 x.im))

localize36.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(*.f64 (log.f64 x.re) y.re)
1.1b
(*.f64 (atan2.f64 x.im x.re) y.re)
2.6b
(*.f64 (atan2.f64 x.im x.re) y.im)
17.3b
(cos.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.im)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))
Compiler

Compiled 105 to 17 computations (83.8% saved)

series40.0ms (0.1%)

Counts
1 → 24
Calls

6 calls:

TimeVariablePointExpression
17.0ms
y.re
@0
(*.f64 (log.f64 x.re) y.re)
9.0ms
x.re
@inf
(*.f64 (log.f64 x.re) y.re)
7.0ms
x.re
@-inf
(*.f64 (log.f64 x.re) y.re)
6.0ms
x.re
@0
(*.f64 (log.f64 x.re) y.re)
0.0ms
y.re
@inf
(*.f64 (log.f64 x.re) y.re)

rewrite380.0ms (1.4%)

Algorithm
batch-egg-rewrite
Rules
1828×rational.json-1
1828×rational.json-2
1158×rational.json-3
1110×exponential.json-3
1110×rational.json-4
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0711
14511
210311
321811
439511
587211
6222011
7492311
8764911
Stop Event
node limit
Counts
1 → 16
Calls
Call 1
Inputs
(*.f64 (log.f64 x.re) y.re)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (log.f64 x.re) y.re) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (log.f64 x.re) y.re))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y.re (log.f64 (sqrt.f64 x.re))) (*.f64 y.re (log.f64 (sqrt.f64 x.re))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (log.f64 x.re) y.re) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (log.f64 x.re) y.re) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (log.f64 x.re) (+.f64 y.re y.re)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (log.f64 x.re) (*.f64 y.re 4)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (log.f64 x.re) (*.f64 y.re 8)) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (log.f64 x.re) (*.f64 y.re 8))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (log.f64 x.re) (*.f64 y.re 8)))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (log.f64 x.re) (*.f64 y.re 8))))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (log.f64 x.re) (*.f64 y.re 8))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (log.f64 x.re) (*.f64 y.re 8)))))) 128)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (log.f64 x.re) y.re) 1)))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 x.re y.re))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (sqrt.f64 x.re) (+.f64 y.re y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (sqrt.f64 (pow.f64 (sqrt.f64 x.re) (*.f64 y.re 4))))))))

simplify86.0ms (0.3%)

Algorithm
egg-herbie
Rules
1268×rational.json-simplify-2
1020×rational.json-simplify-46
864×rational.json-simplify-35
850×rational.json-simplify-1
690×rational.json-simplify-43
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
061600
1144584
2284584
3600580
41898580
53798580
66151580
Stop Event
node limit
Counts
40 → 26
Calls
Call 1
Inputs
(*.f64 y.re (log.f64 x.re))
(*.f64 y.re (log.f64 x.re))
(*.f64 y.re (log.f64 x.re))
(*.f64 y.re (log.f64 x.re))
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.re)) y.re))
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.re)) y.re))
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.re)) y.re))
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.re)) y.re))
(*.f64 y.re (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x.re)))))
(*.f64 y.re (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x.re)))))
(*.f64 y.re (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x.re)))))
(*.f64 y.re (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x.re)))))
(*.f64 y.re (log.f64 x.re))
(*.f64 y.re (log.f64 x.re))
(*.f64 y.re (log.f64 x.re))
(*.f64 y.re (log.f64 x.re))
(*.f64 y.re (log.f64 x.re))
(*.f64 y.re (log.f64 x.re))
(*.f64 y.re (log.f64 x.re))
(*.f64 y.re (log.f64 x.re))
(*.f64 y.re (log.f64 x.re))
(*.f64 y.re (log.f64 x.re))
(*.f64 y.re (log.f64 x.re))
(*.f64 y.re (log.f64 x.re))
(+.f64 (*.f64 (log.f64 x.re) y.re) 0)
(+.f64 0 (*.f64 (log.f64 x.re) y.re))
(+.f64 (*.f64 y.re (log.f64 (sqrt.f64 x.re))) (*.f64 y.re (log.f64 (sqrt.f64 x.re))))
(-.f64 (*.f64 (log.f64 x.re) y.re) 0)
(/.f64 (*.f64 (log.f64 x.re) y.re) 1)
(/.f64 (*.f64 (log.f64 x.re) (+.f64 y.re y.re)) 2)
(/.f64 (*.f64 (log.f64 x.re) (*.f64 y.re 4)) 4)
(/.f64 (*.f64 (log.f64 x.re) (*.f64 y.re 8)) 8)
(/.f64 (*.f64 2 (*.f64 (log.f64 x.re) (*.f64 y.re 8))) 16)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (log.f64 x.re) (*.f64 y.re 8)))) 32)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (log.f64 x.re) (*.f64 y.re 8))))) 64)
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (log.f64 x.re) (*.f64 y.re 8))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (log.f64 x.re) (*.f64 y.re 8)))))) 128)
(pow.f64 (*.f64 (log.f64 x.re) y.re) 1)
(log.f64 (pow.f64 x.re y.re))
(log.f64 (pow.f64 (sqrt.f64 x.re) (+.f64 y.re y.re)))
(log.f64 (sqrt.f64 (pow.f64 (sqrt.f64 x.re) (*.f64 y.re 4))))
Outputs
(*.f64 y.re (log.f64 x.re))
(*.f64 y.re (log.f64 x.re))
(*.f64 y.re (log.f64 x.re))
(*.f64 y.re (log.f64 x.re))
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.re)) y.re))
(*.f64 -1 (*.f64 y.re (log.f64 (/.f64 1 x.re))))
(*.f64 (log.f64 (/.f64 1 x.re)) (neg.f64 y.re))
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.re)) y.re))
(*.f64 -1 (*.f64 y.re (log.f64 (/.f64 1 x.re))))
(*.f64 (log.f64 (/.f64 1 x.re)) (neg.f64 y.re))
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.re)) y.re))
(*.f64 -1 (*.f64 y.re (log.f64 (/.f64 1 x.re))))
(*.f64 (log.f64 (/.f64 1 x.re)) (neg.f64 y.re))
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.re)) y.re))
(*.f64 -1 (*.f64 y.re (log.f64 (/.f64 1 x.re))))
(*.f64 (log.f64 (/.f64 1 x.re)) (neg.f64 y.re))
(*.f64 y.re (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x.re)))))
(*.f64 y.re (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 x.re)))))
(*.f64 y.re (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x.re)))))
(*.f64 y.re (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 x.re)))))
(*.f64 y.re (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x.re)))))
(*.f64 y.re (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 x.re)))))
(*.f64 y.re (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x.re)))))
(*.f64 y.re (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 x.re)))))
(*.f64 y.re (log.f64 x.re))
(*.f64 y.re (log.f64 x.re))
(*.f64 y.re (log.f64 x.re))
(*.f64 y.re (log.f64 x.re))
(*.f64 y.re (log.f64 x.re))
(*.f64 y.re (log.f64 x.re))
(*.f64 y.re (log.f64 x.re))
(*.f64 y.re (log.f64 x.re))
(*.f64 y.re (log.f64 x.re))
(*.f64 y.re (log.f64 x.re))
(*.f64 y.re (log.f64 x.re))
(*.f64 y.re (log.f64 x.re))
(+.f64 (*.f64 (log.f64 x.re) y.re) 0)
(*.f64 y.re (log.f64 x.re))
(+.f64 0 (*.f64 (log.f64 x.re) y.re))
(*.f64 y.re (log.f64 x.re))
(+.f64 (*.f64 y.re (log.f64 (sqrt.f64 x.re))) (*.f64 y.re (log.f64 (sqrt.f64 x.re))))
(*.f64 y.re (log.f64 x.re))
(-.f64 (*.f64 (log.f64 x.re) y.re) 0)
(*.f64 y.re (log.f64 x.re))
(/.f64 (*.f64 (log.f64 x.re) y.re) 1)
(*.f64 y.re (log.f64 x.re))
(/.f64 (*.f64 (log.f64 x.re) (+.f64 y.re y.re)) 2)
(*.f64 y.re (log.f64 x.re))
(/.f64 (*.f64 (log.f64 x.re) (*.f64 y.re 4)) 4)
(*.f64 y.re (log.f64 x.re))
(/.f64 (*.f64 (log.f64 x.re) (*.f64 y.re 8)) 8)
(*.f64 y.re (log.f64 x.re))
(/.f64 (*.f64 2 (*.f64 (log.f64 x.re) (*.f64 y.re 8))) 16)
(*.f64 y.re (log.f64 x.re))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (log.f64 x.re) (*.f64 y.re 8)))) 32)
(*.f64 y.re (log.f64 x.re))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (log.f64 x.re) (*.f64 y.re 8))))) 64)
(*.f64 y.re (log.f64 x.re))
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (log.f64 x.re) (*.f64 y.re 8))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (log.f64 x.re) (*.f64 y.re 8)))))) 128)
(*.f64 y.re (log.f64 x.re))
(pow.f64 (*.f64 (log.f64 x.re) y.re) 1)
(*.f64 y.re (log.f64 x.re))
(log.f64 (pow.f64 x.re y.re))
(log.f64 (pow.f64 (sqrt.f64 x.re) (+.f64 y.re y.re)))
(log.f64 (pow.f64 (sqrt.f64 (pow.f64 x.re y.re)) 2))
(log.f64 (sqrt.f64 (pow.f64 (sqrt.f64 x.re) (*.f64 y.re 4))))
(log.f64 (pow.f64 (sqrt.f64 (sqrt.f64 x.re)) (*.f64 y.re 4)))
(*.f64 y.re (log.f64 (sqrt.f64 (pow.f64 x.re 2))))
(*.f64 2 (log.f64 (sqrt.f64 (pow.f64 x.re y.re))))

eval264.0ms (0.9%)

Compiler

Compiled 24582 to 10221 computations (58.4% saved)

prune349.0ms (1.2%)

Pruning

13 alts after pruning (12 fresh and 1 done)

PrunedKeptTotal
New7899798
Fresh134
Picked101
Done314
Total79413807
Error
3.4b
Counts
807 → 13
Alt Table
Click to see full alt table
StatusErrorProgram
17.8b
(*.f64 (exp.f64 (-.f64 (/.f64 (*.f64 y.re (log.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) 2) (*.f64 (atan2.f64 x.im x.re) y.im))) 1)
19.3b
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (pow.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) y.re)) 1/2) (*.f64 (atan2.f64 x.im x.re) y.im))) 1)
40.1b
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (cos.f64 (*.f64 y.im (log.f64 (neg.f64 x.im)))))
33.9b
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))))
33.9b
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) 1)
34.6b
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.im)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))))
34.7b
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.im)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) 1)
39.4b
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (cos.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))))
52.0b
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (cos.f64 (*.f64 y.im (log.f64 (neg.f64 x.im)))))
51.3b
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (cos.f64 (*.f64 y.im (log.f64 x.im))))
39.2b
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) 1)
37.6b
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 x.im) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) 1)
21.9b
(*.f64 (exp.f64 (*.f64 (atan2.f64 x.im x.re) (neg.f64 y.im))) 1)
Compiler

Compiled 533 to 356 computations (33.2% saved)

localize28.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(-.f64 (/.f64 (*.f64 y.re (log.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) 2) (*.f64 (atan2.f64 x.im x.re) y.im))
0.3b
(*.f64 y.re (log.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))))
2.6b
(*.f64 (atan2.f64 x.im x.re) y.im)
29.6b
(log.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))
Compiler

Compiled 119 to 28 computations (76.5% saved)

series57.0ms (0.2%)

Counts
3 → 108
Calls

27 calls:

TimeVariablePointExpression
47.0ms
y.re
@0
(*.f64 y.re (log.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))))
2.0ms
y.im
@0
(-.f64 (/.f64 (*.f64 y.re (log.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) 2) (*.f64 (atan2.f64 x.im x.re) y.im))
1.0ms
x.re
@0
(log.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))
0.0ms
x.re
@inf
(log.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))
0.0ms
x.im
@0
(log.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))

rewrite145.0ms (0.5%)

Algorithm
batch-egg-rewrite
Rules
1438×rational.json-simplify-35
1030×rational.json-1
1030×rational.json-2
1030×rational.json-3
1018×exponential.json-3
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
017105
1115105
2257105
3662103
42503103
57860103
Stop Event
node limit
Counts
3 → 51
Calls
Call 1
Inputs
(log.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))
(*.f64 y.re (log.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))))
(-.f64 (/.f64 (*.f64 y.re (log.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) 2) (*.f64 (atan2.f64 x.im x.re) y.im))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (log.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (log.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (log.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (log.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (log.f64 (pow.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) 2)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (log.f64 (pow.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (log.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (log.f64 (pow.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) 2)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (log.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (log.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) 4)) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 (log.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) 4)) (*.f64 2 (*.f64 (log.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) 4))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (log.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) 1)))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (log.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) y.re) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) y.re))) (log.f64 (sqrt.f64 (pow.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) y.re))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (log.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) y.re))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (log.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) y.re) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (log.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) y.re) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (log.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) (+.f64 y.re y.re)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (log.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) (*.f64 y.re 4)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (log.f64 (pow.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) 2)) (*.f64 y.re 4)) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (log.f64 (pow.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) 2)) (*.f64 y.re 4))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (log.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) y.re) 1)))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) y.re))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) y.re))) (neg.f64 (*.f64 (atan2.f64 x.im x.re) y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (log.f64 (sqrt.f64 (pow.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) y.re))) (*.f64 (atan2.f64 x.im x.re) y.im)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (-.f64 (log.f64 (sqrt.f64 (pow.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) y.re))) (*.f64 (atan2.f64 x.im x.re) y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 (*.f64 (atan2.f64 x.im x.re) y.im)) (log.f64 (sqrt.f64 (pow.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) y.re))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 -1 (-.f64 (log.f64 (sqrt.f64 (pow.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) y.re))) (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (log.f64 (sqrt.f64 (pow.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) y.re))) (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) 1)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (/.f64 (-.f64 (log.f64 (sqrt.f64 (pow.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) y.re))) (*.f64 (atan2.f64 x.im x.re) y.im)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (log.f64 (sqrt.f64 (pow.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) y.re))) (*.f64 (atan2.f64 x.im x.re) y.im)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 (log.f64 (sqrt.f64 (pow.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) y.re))) (*.f64 (atan2.f64 x.im x.re) y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (-.f64 (log.f64 (sqrt.f64 (pow.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) y.re))) (*.f64 (atan2.f64 x.im x.re) y.im))) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (log.f64 (sqrt.f64 (pow.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) y.re)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 2 (-.f64 (log.f64 (sqrt.f64 (pow.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) y.re))) (*.f64 (atan2.f64 x.im x.re) y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (-.f64 (*.f64 (log.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) y.re) (*.f64 (atan2.f64 x.im x.re) (+.f64 y.im y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (log.f64 (sqrt.f64 (pow.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) y.re)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (-.f64 (log.f64 (sqrt.f64 (pow.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) y.re))) (*.f64 (atan2.f64 x.im x.re) y.im)) 2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (log.f64 (sqrt.f64 (pow.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) y.re))) (*.f64 (atan2.f64 x.im x.re) y.im)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (-.f64 (log.f64 (sqrt.f64 (pow.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) y.re))) (*.f64 (atan2.f64 x.im x.re) y.im))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (log.f64 (sqrt.f64 (pow.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) y.re)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (log.f64 (sqrt.f64 (pow.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) y.re))) (*.f64 (atan2.f64 x.im x.re) y.im)) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (log.f64 (sqrt.f64 (pow.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) y.re))))) -2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (-.f64 (log.f64 (sqrt.f64 (pow.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) y.re))) (*.f64 (atan2.f64 x.im x.re) y.im)) 4)) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 (-.f64 (log.f64 (sqrt.f64 (pow.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) y.re))) (*.f64 (atan2.f64 x.im x.re) y.im)) 4)) (*.f64 2 (*.f64 (-.f64 (log.f64 (sqrt.f64 (pow.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) y.re))) (*.f64 (atan2.f64 x.im x.re) y.im)) 4))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 (log.f64 (sqrt.f64 (pow.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) y.re))) (*.f64 (atan2.f64 x.im x.re) y.im)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (log.f64 (sqrt.f64 (pow.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) y.re)))))))))

simplify151.0ms (0.5%)

Algorithm
egg-herbie
Rules
1532×rational.json-simplify-35
962×rational.json-simplify-2
846×rational.json-simplify-54
838×rational.json-simplify-61
770×rational.json-simplify-51
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
02848761
16708669
212868493
326088343
445648337
Stop Event
node limit
Counts
159 → 366
Calls
Call 1
Inputs
(log.f64 (pow.f64 x.im 2))
(+.f64 (log.f64 (pow.f64 x.im 2)) (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))
(+.f64 (log.f64 (pow.f64 x.im 2)) (+.f64 (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)) (*.f64 -1/2 (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4)))))
(+.f64 (log.f64 (pow.f64 x.im 2)) (+.f64 (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)) (+.f64 (*.f64 1/3 (/.f64 (pow.f64 x.re 6) (pow.f64 x.im 6))) (*.f64 -1/2 (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4))))))
(*.f64 -2 (log.f64 (/.f64 1 x.re)))
(+.f64 (*.f64 -2 (log.f64 (/.f64 1 x.re))) (/.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)))
(+.f64 (*.f64 -2 (log.f64 (/.f64 1 x.re))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 x.im 4) (pow.f64 x.re 4))) (/.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))))
(+.f64 (*.f64 1/3 (/.f64 (pow.f64 x.im 6) (pow.f64 x.re 6))) (+.f64 (*.f64 -2 (log.f64 (/.f64 1 x.re))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 x.im 4) (pow.f64 x.re 4))) (/.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)))))
(*.f64 -2 (log.f64 (/.f64 -1 x.re)))
(+.f64 (*.f64 -2 (log.f64 (/.f64 -1 x.re))) (/.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 x.im 4) (pow.f64 x.re 4))) (+.f64 (*.f64 -2 (log.f64 (/.f64 -1 x.re))) (/.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))))
(+.f64 (*.f64 1/3 (/.f64 (pow.f64 x.im 6) (pow.f64 x.re 6))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 x.im 4) (pow.f64 x.re 4))) (+.f64 (*.f64 -2 (log.f64 (/.f64 -1 x.re))) (/.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)))))
(log.f64 (pow.f64 x.re 2))
(+.f64 (/.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)) (log.f64 (pow.f64 x.re 2)))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 x.im 4) (pow.f64 x.re 4))) (+.f64 (/.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)) (log.f64 (pow.f64 x.re 2))))
(+.f64 (*.f64 1/3 (/.f64 (pow.f64 x.im 6) (pow.f64 x.re 6))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 x.im 4) (pow.f64 x.re 4))) (+.f64 (/.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)) (log.f64 (pow.f64 x.re 2)))))
(*.f64 -2 (log.f64 (/.f64 1 x.im)))
(+.f64 (*.f64 -2 (log.f64 (/.f64 1 x.im))) (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))
(+.f64 (*.f64 -2 (log.f64 (/.f64 1 x.im))) (+.f64 (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)) (*.f64 -1/2 (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4)))))
(+.f64 (*.f64 -2 (log.f64 (/.f64 1 x.im))) (+.f64 (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)) (+.f64 (*.f64 1/3 (/.f64 (pow.f64 x.re 6) (pow.f64 x.im 6))) (*.f64 -1/2 (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4))))))
(*.f64 -2 (log.f64 (/.f64 -1 x.im)))
(+.f64 (*.f64 -2 (log.f64 (/.f64 -1 x.im))) (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))
(+.f64 (*.f64 -2 (log.f64 (/.f64 -1 x.im))) (+.f64 (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)) (*.f64 -1/2 (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4)))))
(+.f64 (*.f64 -2 (log.f64 (/.f64 -1 x.im))) (+.f64 (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)) (+.f64 (*.f64 1/3 (/.f64 (pow.f64 x.re 6) (pow.f64 x.im 6))) (*.f64 -1/2 (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4))))))
(*.f64 (log.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))) y.re)
(*.f64 (log.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))) y.re)
(*.f64 (log.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))) y.re)
(*.f64 (log.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))) y.re)
(*.f64 (log.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))) y.re)
(*.f64 (log.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))) y.re)
(*.f64 (log.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))) y.re)
(*.f64 (log.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))) y.re)
(*.f64 (log.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))) y.re)
(*.f64 (log.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))) y.re)
(*.f64 (log.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))) y.re)
(*.f64 (log.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))) y.re)
(*.f64 (log.f64 (pow.f64 x.im 2)) y.re)
(+.f64 (/.f64 (*.f64 (pow.f64 x.re 2) y.re) (pow.f64 x.im 2)) (*.f64 (log.f64 (pow.f64 x.im 2)) y.re))
(+.f64 (/.f64 (*.f64 (pow.f64 x.re 2) y.re) (pow.f64 x.im 2)) (+.f64 (*.f64 (log.f64 (pow.f64 x.im 2)) y.re) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 x.re 4) y.re) (pow.f64 x.im 4)))))
(+.f64 (/.f64 (*.f64 (pow.f64 x.re 2) y.re) (pow.f64 x.im 2)) (+.f64 (*.f64 (log.f64 (pow.f64 x.im 2)) y.re) (+.f64 (*.f64 1/3 (/.f64 (*.f64 (pow.f64 x.re 6) y.re) (pow.f64 x.im 6))) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 x.re 4) y.re) (pow.f64 x.im 4))))))
(*.f64 -2 (*.f64 (log.f64 (/.f64 1 x.re)) y.re))
(+.f64 (*.f64 -2 (*.f64 (log.f64 (/.f64 1 x.re)) y.re)) (/.f64 (*.f64 y.re (pow.f64 x.im 2)) (pow.f64 x.re 2)))
(+.f64 (*.f64 -2 (*.f64 (log.f64 (/.f64 1 x.re)) y.re)) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 y.re (pow.f64 x.im 4)) (pow.f64 x.re 4))) (/.f64 (*.f64 y.re (pow.f64 x.im 2)) (pow.f64 x.re 2))))
(+.f64 (*.f64 1/3 (/.f64 (*.f64 y.re (pow.f64 x.im 6)) (pow.f64 x.re 6))) (+.f64 (*.f64 -2 (*.f64 (log.f64 (/.f64 1 x.re)) y.re)) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 y.re (pow.f64 x.im 4)) (pow.f64 x.re 4))) (/.f64 (*.f64 y.re (pow.f64 x.im 2)) (pow.f64 x.re 2)))))
(*.f64 -2 (*.f64 y.re (log.f64 (/.f64 -1 x.re))))
(+.f64 (*.f64 -2 (*.f64 y.re (log.f64 (/.f64 -1 x.re)))) (/.f64 (*.f64 y.re (pow.f64 x.im 2)) (pow.f64 x.re 2)))
(+.f64 (*.f64 -2 (*.f64 y.re (log.f64 (/.f64 -1 x.re)))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 y.re (pow.f64 x.im 4)) (pow.f64 x.re 4))) (/.f64 (*.f64 y.re (pow.f64 x.im 2)) (pow.f64 x.re 2))))
(+.f64 (*.f64 1/3 (/.f64 (*.f64 y.re (pow.f64 x.im 6)) (pow.f64 x.re 6))) (+.f64 (*.f64 -2 (*.f64 y.re (log.f64 (/.f64 -1 x.re)))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 y.re (pow.f64 x.im 4)) (pow.f64 x.re 4))) (/.f64 (*.f64 y.re (pow.f64 x.im 2)) (pow.f64 x.re 2)))))
(*.f64 y.re (log.f64 (pow.f64 x.re 2)))
(+.f64 (*.f64 y.re (log.f64 (pow.f64 x.re 2))) (/.f64 (*.f64 y.re (pow.f64 x.im 2)) (pow.f64 x.re 2)))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 y.re (pow.f64 x.im 4)) (pow.f64 x.re 4))) (+.f64 (*.f64 y.re (log.f64 (pow.f64 x.re 2))) (/.f64 (*.f64 y.re (pow.f64 x.im 2)) (pow.f64 x.re 2))))
(+.f64 (*.f64 1/3 (/.f64 (*.f64 y.re (pow.f64 x.im 6)) (pow.f64 x.re 6))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 y.re (pow.f64 x.im 4)) (pow.f64 x.re 4))) (+.f64 (*.f64 y.re (log.f64 (pow.f64 x.re 2))) (/.f64 (*.f64 y.re (pow.f64 x.im 2)) (pow.f64 x.re 2)))))
(*.f64 -2 (*.f64 (log.f64 (/.f64 1 x.im)) y.re))
(+.f64 (/.f64 (*.f64 (pow.f64 x.re 2) y.re) (pow.f64 x.im 2)) (*.f64 -2 (*.f64 (log.f64 (/.f64 1 x.im)) y.re)))
(+.f64 (/.f64 (*.f64 (pow.f64 x.re 2) y.re) (pow.f64 x.im 2)) (+.f64 (*.f64 -2 (*.f64 (log.f64 (/.f64 1 x.im)) y.re)) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 x.re 4) y.re) (pow.f64 x.im 4)))))
(+.f64 (/.f64 (*.f64 (pow.f64 x.re 2) y.re) (pow.f64 x.im 2)) (+.f64 (*.f64 -2 (*.f64 (log.f64 (/.f64 1 x.im)) y.re)) (+.f64 (*.f64 1/3 (/.f64 (*.f64 (pow.f64 x.re 6) y.re) (pow.f64 x.im 6))) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 x.re 4) y.re) (pow.f64 x.im 4))))))
(*.f64 -2 (*.f64 (log.f64 (/.f64 -1 x.im)) y.re))
(+.f64 (/.f64 (*.f64 (pow.f64 x.re 2) y.re) (pow.f64 x.im 2)) (*.f64 -2 (*.f64 (log.f64 (/.f64 -1 x.im)) y.re)))
(+.f64 (/.f64 (*.f64 (pow.f64 x.re 2) y.re) (pow.f64 x.im 2)) (+.f64 (*.f64 -2 (*.f64 (log.f64 (/.f64 -1 x.im)) y.re)) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 x.re 4) y.re) (pow.f64 x.im 4)))))
(+.f64 (/.f64 (*.f64 (pow.f64 x.re 2) y.re) (pow.f64 x.im 2)) (+.f64 (*.f64 1/3 (/.f64 (*.f64 (pow.f64 x.re 6) y.re) (pow.f64 x.im 6))) (+.f64 (*.f64 -2 (*.f64 (log.f64 (/.f64 -1 x.im)) y.re)) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 x.re 4) y.re) (pow.f64 x.im 4))))))
(*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 1/2 (*.f64 (log.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))) y.re)))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 1/2 (*.f64 (log.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))) y.re)))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 1/2 (*.f64 (log.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))) y.re)))
(*.f64 1/2 (*.f64 (log.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))) y.re))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 1/2 (*.f64 (log.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))) y.re)))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 1/2 (*.f64 (log.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))) y.re)))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 1/2 (*.f64 (log.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))) y.re)))
(*.f64 1/2 (*.f64 (log.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))) y.re))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 1/2 (*.f64 (log.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))) y.re)))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 1/2 (*.f64 (log.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))) y.re)))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 1/2 (*.f64 (log.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))) y.re)))
(-.f64 (*.f64 1/2 (*.f64 (log.f64 (pow.f64 x.im 2)) y.re)) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (+.f64 (*.f64 1/2 (*.f64 (log.f64 (pow.f64 x.im 2)) y.re)) (*.f64 1/2 (/.f64 (*.f64 (pow.f64 x.re 2) y.re) (pow.f64 x.im 2)))) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (+.f64 (*.f64 1/2 (*.f64 (log.f64 (pow.f64 x.im 2)) y.re)) (+.f64 (*.f64 -1/4 (/.f64 (*.f64 (pow.f64 x.re 4) y.re) (pow.f64 x.im 4))) (*.f64 1/2 (/.f64 (*.f64 (pow.f64 x.re 2) y.re) (pow.f64 x.im 2))))) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (+.f64 (*.f64 1/2 (*.f64 (log.f64 (pow.f64 x.im 2)) y.re)) (+.f64 (*.f64 -1/4 (/.f64 (*.f64 (pow.f64 x.re 4) y.re) (pow.f64 x.im 4))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 x.re 2) y.re) (pow.f64 x.im 2))) (*.f64 1/6 (/.f64 (*.f64 (pow.f64 x.re 6) y.re) (pow.f64 x.im 6)))))) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (*.f64 -1 (*.f64 y.re (log.f64 (/.f64 1 x.re)))) (*.f64 (atan2.f64 x.im x.re) y.im))
(-.f64 (+.f64 (*.f64 -1 (*.f64 y.re (log.f64 (/.f64 1 x.re)))) (*.f64 1/2 (/.f64 (*.f64 y.re (pow.f64 x.im 2)) (pow.f64 x.re 2)))) (*.f64 (atan2.f64 x.im x.re) y.im))
(-.f64 (+.f64 (*.f64 -1 (*.f64 y.re (log.f64 (/.f64 1 x.re)))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 y.re (pow.f64 x.im 2)) (pow.f64 x.re 2))) (*.f64 -1/4 (/.f64 (*.f64 y.re (pow.f64 x.im 4)) (pow.f64 x.re 4))))) (*.f64 (atan2.f64 x.im x.re) y.im))
(-.f64 (+.f64 (*.f64 -1 (*.f64 y.re (log.f64 (/.f64 1 x.re)))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 y.re (pow.f64 x.im 2)) (pow.f64 x.re 2))) (+.f64 (*.f64 -1/4 (/.f64 (*.f64 y.re (pow.f64 x.im 4)) (pow.f64 x.re 4))) (*.f64 1/6 (/.f64 (*.f64 y.re (pow.f64 x.im 6)) (pow.f64 x.re 6)))))) (*.f64 (atan2.f64 x.im x.re) y.im))
(-.f64 (*.f64 -1 (*.f64 y.re (log.f64 (/.f64 -1 x.re)))) (*.f64 (atan2.f64 x.im x.re) y.im))
(-.f64 (+.f64 (*.f64 -1 (*.f64 y.re (log.f64 (/.f64 -1 x.re)))) (*.f64 1/2 (/.f64 (*.f64 y.re (pow.f64 x.im 2)) (pow.f64 x.re 2)))) (*.f64 (atan2.f64 x.im x.re) y.im))
(-.f64 (+.f64 (*.f64 -1 (*.f64 y.re (log.f64 (/.f64 -1 x.re)))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 y.re (pow.f64 x.im 2)) (pow.f64 x.re 2))) (*.f64 -1/4 (/.f64 (*.f64 y.re (pow.f64 x.im 4)) (pow.f64 x.re 4))))) (*.f64 (atan2.f64 x.im x.re) y.im))
(-.f64 (+.f64 (*.f64 -1 (*.f64 y.re (log.f64 (/.f64 -1 x.re)))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 y.re (pow.f64 x.im 2)) (pow.f64 x.re 2))) (+.f64 (*.f64 -1/4 (/.f64 (*.f64 y.re (pow.f64 x.im 4)) (pow.f64 x.re 4))) (*.f64 1/6 (/.f64 (*.f64 y.re (pow.f64 x.im 6)) (pow.f64 x.re 6)))))) (*.f64 (atan2.f64 x.im x.re) y.im))
(-.f64 (*.f64 1/2 (*.f64 y.re (log.f64 (pow.f64 x.re 2)))) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (+.f64 (*.f64 1/2 (*.f64 y.re (log.f64 (pow.f64 x.re 2)))) (*.f64 1/2 (/.f64 (*.f64 y.re (pow.f64 x.im 2)) (pow.f64 x.re 2)))) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (+.f64 (*.f64 1/2 (*.f64 y.re (log.f64 (pow.f64 x.re 2)))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 y.re (pow.f64 x.im 2)) (pow.f64 x.re 2))) (*.f64 -1/4 (/.f64 (*.f64 y.re (pow.f64 x.im 4)) (pow.f64 x.re 4))))) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (+.f64 (*.f64 1/2 (*.f64 y.re (log.f64 (pow.f64 x.re 2)))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 y.re (pow.f64 x.im 2)) (pow.f64 x.re 2))) (+.f64 (*.f64 -1/4 (/.f64 (*.f64 y.re (pow.f64 x.im 4)) (pow.f64 x.re 4))) (*.f64 1/6 (/.f64 (*.f64 y.re (pow.f64 x.im 6)) (pow.f64 x.re 6)))))) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.im)) y.re)) (*.f64 (atan2.f64 x.im x.re) y.im))
(-.f64 (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 x.re 2) y.re) (pow.f64 x.im 2))) (*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.im)) y.re))) (*.f64 (atan2.f64 x.im x.re) y.im))
(-.f64 (+.f64 (*.f64 -1/4 (/.f64 (*.f64 (pow.f64 x.re 4) y.re) (pow.f64 x.im 4))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 x.re 2) y.re) (pow.f64 x.im 2))) (*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.im)) y.re)))) (*.f64 (atan2.f64 x.im x.re) y.im))
(-.f64 (+.f64 (*.f64 -1/4 (/.f64 (*.f64 (pow.f64 x.re 4) y.re) (pow.f64 x.im 4))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 x.re 2) y.re) (pow.f64 x.im 2))) (+.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.im)) y.re)) (*.f64 1/6 (/.f64 (*.f64 (pow.f64 x.re 6) y.re) (pow.f64 x.im 6)))))) (*.f64 (atan2.f64 x.im x.re) y.im))
(-.f64 (*.f64 -1 (*.f64 y.re (log.f64 (/.f64 -1 x.im)))) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (+.f64 (*.f64 -1 (*.f64 y.re (log.f64 (/.f64 -1 x.im)))) (*.f64 1/2 (/.f64 (*.f64 (pow.f64 x.re 2) y.re) (pow.f64 x.im 2)))) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (+.f64 (*.f64 -1 (*.f64 y.re (log.f64 (/.f64 -1 x.im)))) (+.f64 (*.f64 -1/4 (/.f64 (*.f64 (pow.f64 x.re 4) y.re) (pow.f64 x.im 4))) (*.f64 1/2 (/.f64 (*.f64 (pow.f64 x.re 2) y.re) (pow.f64 x.im 2))))) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (+.f64 (*.f64 -1 (*.f64 y.re (log.f64 (/.f64 -1 x.im)))) (+.f64 (*.f64 -1/4 (/.f64 (*.f64 (pow.f64 x.re 4) y.re) (pow.f64 x.im 4))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 x.re 2) y.re) (pow.f64 x.im 2))) (*.f64 1/6 (/.f64 (*.f64 (pow.f64 x.re 6) y.re) (pow.f64 x.im 6)))))) (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 1/2 (*.f64 (log.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))) y.re))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 1/2 (*.f64 (log.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))) y.re)))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 1/2 (*.f64 (log.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))) y.re)))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 1/2 (*.f64 (log.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))) y.re)))
(*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 1/2 (*.f64 (log.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))) y.re)))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 1/2 (*.f64 (log.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))) y.re)))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 1/2 (*.f64 (log.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))) y.re)))
(*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 1/2 (*.f64 (log.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))) y.re)))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 1/2 (*.f64 (log.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))) y.re)))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 1/2 (*.f64 (log.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))) y.re)))
(+.f64 (log.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) 0)
(+.f64 0 (log.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))))
(+.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))))
(-.f64 (log.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) 0)
(*.f64 (log.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) 1)
(*.f64 2 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))))
(*.f64 1 (log.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))))
(*.f64 (log.f64 (pow.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) 2)) 1/2)
(*.f64 1/2 (log.f64 (pow.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) 2)))
(*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) 2)
(/.f64 (log.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) 1)
(/.f64 (log.f64 (pow.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) 2)) 2)
(/.f64 (*.f64 (log.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) 4) 4)
(/.f64 (*.f64 2 (*.f64 (log.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) 4)) 8)
(/.f64 (+.f64 (*.f64 2 (*.f64 (log.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) 4)) (*.f64 2 (*.f64 (log.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) 4))) 16)
(pow.f64 (log.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) 1)
(+.f64 (*.f64 (log.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) y.re) 0)
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) y.re))) (log.f64 (sqrt.f64 (pow.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) y.re))))
(+.f64 0 (*.f64 (log.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) y.re))
(-.f64 (*.f64 (log.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) y.re) 0)
(/.f64 (*.f64 (log.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) y.re) 1)
(/.f64 (*.f64 (log.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) (+.f64 y.re y.re)) 2)
(/.f64 (*.f64 (log.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) (*.f64 y.re 4)) 4)
(/.f64 (*.f64 (log.f64 (pow.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) 2)) (*.f64 y.re 4)) 8)
(/.f64 (*.f64 2 (*.f64 (log.f64 (pow.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) 2)) (*.f64 y.re 4))) 16)
(pow.f64 (*.f64 (log.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) y.re) 1)
(log.f64 (pow.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) y.re))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) y.re))) (neg.f64 (*.f64 (atan2.f64 x.im x.re) y.im)))
(+.f64 (-.f64 (log.f64 (sqrt.f64 (pow.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) y.re))) (*.f64 (atan2.f64 x.im x.re) y.im)) 0)
(+.f64 0 (-.f64 (log.f64 (sqrt.f64 (pow.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) y.re))) (*.f64 (atan2.f64 x.im x.re) y.im)))
(+.f64 (neg.f64 (*.f64 (atan2.f64 x.im x.re) y.im)) (log.f64 (sqrt.f64 (pow.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) y.re))))
(+.f64 -1 (-.f64 (log.f64 (sqrt.f64 (pow.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) y.re))) (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) 1)))
(+.f64 (-.f64 (log.f64 (sqrt.f64 (pow.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) y.re))) (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) 1)) -1)
(*.f64 2 (/.f64 (-.f64 (log.f64 (sqrt.f64 (pow.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) y.re))) (*.f64 (atan2.f64 x.im x.re) y.im)) 2))
(*.f64 (-.f64 (log.f64 (sqrt.f64 (pow.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) y.re))) (*.f64 (atan2.f64 x.im x.re) y.im)) 1)
(*.f64 1 (-.f64 (log.f64 (sqrt.f64 (pow.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) y.re))) (*.f64 (atan2.f64 x.im x.re) y.im)))
(*.f64 (*.f64 2 (-.f64 (log.f64 (sqrt.f64 (pow.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) y.re))) (*.f64 (atan2.f64 x.im x.re) y.im))) 1/2)
(*.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (log.f64 (sqrt.f64 (pow.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) y.re)))) -1)
(*.f64 1/2 (*.f64 2 (-.f64 (log.f64 (sqrt.f64 (pow.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) y.re))) (*.f64 (atan2.f64 x.im x.re) y.im))))
(*.f64 1/2 (-.f64 (*.f64 (log.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) y.re) (*.f64 (atan2.f64 x.im x.re) (+.f64 y.im y.im))))
(*.f64 -1 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (log.f64 (sqrt.f64 (pow.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) y.re)))))
(*.f64 (/.f64 (-.f64 (log.f64 (sqrt.f64 (pow.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) y.re))) (*.f64 (atan2.f64 x.im x.re) y.im)) 2) 2)
(/.f64 (-.f64 (log.f64 (sqrt.f64 (pow.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) y.re))) (*.f64 (atan2.f64 x.im x.re) y.im)) 1)
(/.f64 (*.f64 2 (-.f64 (log.f64 (sqrt.f64 (pow.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) y.re))) (*.f64 (atan2.f64 x.im x.re) y.im))) 2)
(/.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (log.f64 (sqrt.f64 (pow.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) y.re)))) -1)
(/.f64 (*.f64 (-.f64 (log.f64 (sqrt.f64 (pow.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) y.re))) (*.f64 (atan2.f64 x.im x.re) y.im)) 4) 4)
(/.f64 (*.f64 2 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (log.f64 (sqrt.f64 (pow.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) y.re))))) -2)
(/.f64 (*.f64 2 (*.f64 (-.f64 (log.f64 (sqrt.f64 (pow.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) y.re))) (*.f64 (atan2.f64 x.im x.re) y.im)) 4)) 8)
(/.f64 (+.f64 (*.f64 2 (*.f64 (-.f64 (log.f64 (sqrt.f64 (pow.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) y.re))) (*.f64 (atan2.f64 x.im x.re) y.im)) 4)) (*.f64 2 (*.f64 (-.f64 (log.f64 (sqrt.f64 (pow.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) y.re))) (*.f64 (atan2.f64 x.im x.re) y.im)) 4))) 16)
(pow.f64 (-.f64 (log.f64 (sqrt.f64 (pow.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) y.re))) (*.f64 (atan2.f64 x.im x.re) y.im)) 1)
(neg.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (log.f64 (sqrt.f64 (pow.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) y.re)))))
Outputs
(log.f64 (pow.f64 x.im 2))
(+.f64 (log.f64 (pow.f64 x.im 2)) (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))
(+.f64 (log.f64 (pow.f64 x.im 2)) (+.f64 (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)) (*.f64 -1/2 (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4)))))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4))) (+.f64 (log.f64 (pow.f64 x.im 2)) (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2))))
(+.f64 (+.f64 (log.f64 (pow.f64 x.im 2)) (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2))) (*.f64 -1/2 (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4))))
(+.f64 (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)) (+.f64 (log.f64 (pow.f64 x.im 2)) (*.f64 -1/2 (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4)))))
(+.f64 (log.f64 (pow.f64 x.im 2)) (+.f64 (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)) (+.f64 (*.f64 1/3 (/.f64 (pow.f64 x.re 6) (pow.f64 x.im 6))) (*.f64 -1/2 (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4))))))
(+.f64 (log.f64 (pow.f64 x.im 2)) (+.f64 (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4))) (*.f64 1/3 (/.f64 (pow.f64 x.re 6) (pow.f64 x.im 6))))))
(+.f64 (log.f64 (pow.f64 x.im 2)) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4))) (+.f64 (*.f64 1/3 (/.f64 (pow.f64 x.re 6) (pow.f64 x.im 6))) (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))))
(+.f64 (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)) (+.f64 (+.f64 (log.f64 (pow.f64 x.im 2)) (*.f64 -1/2 (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4)))) (*.f64 1/3 (/.f64 (pow.f64 x.re 6) (pow.f64 x.im 6)))))
(+.f64 (log.f64 (pow.f64 x.im 2)) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4))) (+.f64 (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)) (*.f64 1/3 (/.f64 (pow.f64 x.re 6) (pow.f64 x.im 6))))))
(*.f64 -2 (log.f64 (/.f64 1 x.re)))
(+.f64 (*.f64 -2 (log.f64 (/.f64 1 x.re))) (/.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)))
(+.f64 (*.f64 -2 (log.f64 (/.f64 1 x.re))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 x.im 4) (pow.f64 x.re 4))) (/.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))))
(+.f64 (*.f64 -2 (log.f64 (/.f64 1 x.re))) (+.f64 (/.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)) (*.f64 -1/2 (/.f64 (pow.f64 x.im 4) (pow.f64 x.re 4)))))
(+.f64 (/.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)) (+.f64 (*.f64 -2 (log.f64 (/.f64 1 x.re))) (*.f64 -1/2 (/.f64 (pow.f64 x.im 4) (pow.f64 x.re 4)))))
(+.f64 (*.f64 1/3 (/.f64 (pow.f64 x.im 6) (pow.f64 x.re 6))) (+.f64 (*.f64 -2 (log.f64 (/.f64 1 x.re))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 x.im 4) (pow.f64 x.re 4))) (/.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)))))
(+.f64 (*.f64 -2 (log.f64 (/.f64 1 x.re))) (+.f64 (+.f64 (/.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)) (*.f64 -1/2 (/.f64 (pow.f64 x.im 4) (pow.f64 x.re 4)))) (*.f64 1/3 (/.f64 (pow.f64 x.im 6) (pow.f64 x.re 6)))))
(+.f64 (*.f64 -2 (log.f64 (/.f64 1 x.re))) (+.f64 (/.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 x.im 4) (pow.f64 x.re 4))) (*.f64 1/3 (/.f64 (pow.f64 x.im 6) (pow.f64 x.re 6))))))
(*.f64 -2 (log.f64 (/.f64 -1 x.re)))
(+.f64 (*.f64 -2 (log.f64 (/.f64 -1 x.re))) (/.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)))
(+.f64 (/.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)) (*.f64 -2 (log.f64 (/.f64 -1 x.re))))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 x.im 4) (pow.f64 x.re 4))) (+.f64 (*.f64 -2 (log.f64 (/.f64 -1 x.re))) (/.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 x.im 4) (pow.f64 x.re 4))) (+.f64 (/.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)) (*.f64 -2 (log.f64 (/.f64 -1 x.re)))))
(+.f64 (/.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)) (+.f64 (*.f64 -2 (log.f64 (/.f64 -1 x.re))) (*.f64 -1/2 (/.f64 (pow.f64 x.im 4) (pow.f64 x.re 4)))))
(+.f64 (/.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 x.im 4) (pow.f64 x.re 4))) (*.f64 -2 (log.f64 (/.f64 -1 x.re)))))
(+.f64 (*.f64 1/3 (/.f64 (pow.f64 x.im 6) (pow.f64 x.re 6))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 x.im 4) (pow.f64 x.re 4))) (+.f64 (*.f64 -2 (log.f64 (/.f64 -1 x.re))) (/.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)))))
(+.f64 (*.f64 1/3 (/.f64 (pow.f64 x.im 6) (pow.f64 x.re 6))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 x.im 4) (pow.f64 x.re 4))) (+.f64 (/.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)) (*.f64 -2 (log.f64 (/.f64 -1 x.re))))))
(+.f64 (+.f64 (/.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)) (*.f64 -2 (log.f64 (/.f64 -1 x.re)))) (+.f64 (*.f64 1/3 (/.f64 (pow.f64 x.im 6) (pow.f64 x.re 6))) (*.f64 -1/2 (/.f64 (pow.f64 x.im 4) (pow.f64 x.re 4)))))
(+.f64 (+.f64 (/.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)) (*.f64 -1/2 (/.f64 (pow.f64 x.im 4) (pow.f64 x.re 4)))) (+.f64 (*.f64 -2 (log.f64 (/.f64 -1 x.re))) (*.f64 1/3 (/.f64 (pow.f64 x.im 6) (pow.f64 x.re 6)))))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 x.im 4) (pow.f64 x.re 4))) (+.f64 (*.f64 1/3 (/.f64 (pow.f64 x.im 6) (pow.f64 x.re 6))) (+.f64 (/.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)) (*.f64 -2 (log.f64 (/.f64 -1 x.re))))))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 x.im 4) (pow.f64 x.re 4))) (+.f64 (*.f64 -2 (log.f64 (/.f64 -1 x.re))) (+.f64 (/.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)) (*.f64 1/3 (/.f64 (pow.f64 x.im 6) (pow.f64 x.re 6))))))
(log.f64 (pow.f64 x.re 2))
(+.f64 (/.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)) (log.f64 (pow.f64 x.re 2)))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 x.im 4) (pow.f64 x.re 4))) (+.f64 (/.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)) (log.f64 (pow.f64 x.re 2))))
(+.f64 (/.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)) (+.f64 (log.f64 (pow.f64 x.re 2)) (*.f64 -1/2 (/.f64 (pow.f64 x.im 4) (pow.f64 x.re 4)))))
(+.f64 (/.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 x.im 4) (pow.f64 x.re 4))) (log.f64 (pow.f64 x.re 2))))
(+.f64 (*.f64 1/3 (/.f64 (pow.f64 x.im 6) (pow.f64 x.re 6))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 x.im 4) (pow.f64 x.re 4))) (+.f64 (/.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)) (log.f64 (pow.f64 x.re 2)))))
(+.f64 (*.f64 1/3 (/.f64 (pow.f64 x.im 6) (pow.f64 x.re 6))) (+.f64 (/.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)) (+.f64 (log.f64 (pow.f64 x.re 2)) (*.f64 -1/2 (/.f64 (pow.f64 x.im 4) (pow.f64 x.re 4))))))
(+.f64 (/.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)) (+.f64 (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 x.im 4) (pow.f64 x.re 4))) (log.f64 (pow.f64 x.re 2))) (*.f64 1/3 (/.f64 (pow.f64 x.im 6) (pow.f64 x.re 6)))))
(+.f64 (/.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)) (+.f64 (*.f64 1/3 (/.f64 (pow.f64 x.im 6) (pow.f64 x.re 6))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 x.im 4) (pow.f64 x.re 4))) (log.f64 (pow.f64 x.re 2)))))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 x.im 4) (pow.f64 x.re 4))) (+.f64 (*.f64 1/3 (/.f64 (pow.f64 x.im 6) (pow.f64 x.re 6))) (+.f64 (/.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)) (log.f64 (pow.f64 x.re 2)))))
(*.f64 -2 (log.f64 (/.f64 1 x.im)))
(+.f64 (*.f64 -2 (log.f64 (/.f64 1 x.im))) (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))
(+.f64 (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)) (*.f64 -2 (log.f64 (/.f64 1 x.im))))
(+.f64 (*.f64 -2 (log.f64 (/.f64 1 x.im))) (+.f64 (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)) (*.f64 -1/2 (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4)))))
(+.f64 (+.f64 (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)) (*.f64 -1/2 (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4)))) (*.f64 -2 (log.f64 (/.f64 1 x.im))))
(+.f64 (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4))) (*.f64 -2 (log.f64 (/.f64 1 x.im)))))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4))) (+.f64 (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)) (*.f64 -2 (log.f64 (/.f64 1 x.im)))))
(+.f64 (*.f64 -2 (log.f64 (/.f64 1 x.im))) (+.f64 (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)) (+.f64 (*.f64 1/3 (/.f64 (pow.f64 x.re 6) (pow.f64 x.im 6))) (*.f64 -1/2 (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4))))))
(+.f64 (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)) (+.f64 (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4))) (*.f64 1/3 (/.f64 (pow.f64 x.re 6) (pow.f64 x.im 6)))) (*.f64 -2 (log.f64 (/.f64 1 x.im)))))
(+.f64 (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4))) (*.f64 1/3 (/.f64 (pow.f64 x.re 6) (pow.f64 x.im 6)))) (+.f64 (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)) (*.f64 -2 (log.f64 (/.f64 1 x.im)))))
(+.f64 (+.f64 (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)) (*.f64 -1/2 (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4)))) (+.f64 (*.f64 1/3 (/.f64 (pow.f64 x.re 6) (pow.f64 x.im 6))) (*.f64 -2 (log.f64 (/.f64 1 x.im)))))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4))) (+.f64 (+.f64 (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)) (*.f64 -2 (log.f64 (/.f64 1 x.im)))) (*.f64 1/3 (/.f64 (pow.f64 x.re 6) (pow.f64 x.im 6)))))
(*.f64 -2 (log.f64 (/.f64 -1 x.im)))
(+.f64 (*.f64 -2 (log.f64 (/.f64 -1 x.im))) (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))
(+.f64 (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)) (*.f64 -2 (log.f64 (/.f64 -1 x.im))))
(+.f64 (*.f64 -2 (log.f64 (/.f64 -1 x.im))) (+.f64 (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)) (*.f64 -1/2 (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4)))))
(+.f64 (+.f64 (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)) (*.f64 -1/2 (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4)))) (*.f64 -2 (log.f64 (/.f64 -1 x.im))))
(+.f64 (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4))) (*.f64 -2 (log.f64 (/.f64 -1 x.im)))))
(+.f64 (*.f64 -2 (log.f64 (/.f64 -1 x.im))) (+.f64 (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)) (+.f64 (*.f64 1/3 (/.f64 (pow.f64 x.re 6) (pow.f64 x.im 6))) (*.f64 -1/2 (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4))))))
(+.f64 (+.f64 (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4))) (*.f64 1/3 (/.f64 (pow.f64 x.re 6) (pow.f64 x.im 6))))) (*.f64 -2 (log.f64 (/.f64 -1 x.im))))
(+.f64 (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4))) (*.f64 1/3 (/.f64 (pow.f64 x.re 6) (pow.f64 x.im 6)))) (+.f64 (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)) (*.f64 -2 (log.f64 (/.f64 -1 x.im)))))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4))) (+.f64 (+.f64 (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)) (*.f64 1/3 (/.f64 (pow.f64 x.re 6) (pow.f64 x.im 6)))) (*.f64 -2 (log.f64 (/.f64 -1 x.im)))))
(+.f64 (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)) (+.f64 (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4))) (*.f64 -2 (log.f64 (/.f64 -1 x.im)))) (*.f64 1/3 (/.f64 (pow.f64 x.re 6) (pow.f64 x.im 6)))))
(*.f64 (log.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))) y.re)
(*.f64 (log.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))) y.re)
(*.f64 (log.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))) y.re)
(*.f64 (log.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))) y.re)
(*.f64 (log.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))) y.re)
(*.f64 (log.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))) y.re)
(*.f64 (log.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))) y.re)
(*.f64 (log.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))) y.re)
(*.f64 (log.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))) y.re)
(*.f64 (log.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))) y.re)
(*.f64 (log.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))) y.re)
(*.f64 (log.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))) y.re)
(*.f64 (log.f64 (pow.f64 x.im 2)) y.re)
(*.f64 2 (log.f64 (pow.f64 x.im y.re)))
(+.f64 (/.f64 (*.f64 (pow.f64 x.re 2) y.re) (pow.f64 x.im 2)) (*.f64 (log.f64 (pow.f64 x.im 2)) y.re))
(+.f64 (*.f64 (log.f64 (pow.f64 x.im 2)) y.re) (*.f64 y.re (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2))))
(*.f64 y.re (+.f64 (log.f64 (pow.f64 x.im 2)) (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2))))
(*.f64 (+.f64 (log.f64 (pow.f64 x.im 2)) (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2))) y.re)
(+.f64 (/.f64 (*.f64 (pow.f64 x.re 2) y.re) (pow.f64 x.im 2)) (+.f64 (*.f64 (log.f64 (pow.f64 x.im 2)) y.re) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 x.re 4) y.re) (pow.f64 x.im 4)))))
(+.f64 (*.f64 (log.f64 (pow.f64 x.im 2)) y.re) (+.f64 (*.f64 -1/2 (*.f64 y.re (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4)))) (*.f64 y.re (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x.re 4) (/.f64 y.re (pow.f64 x.im 4)))) (*.f64 y.re (+.f64 (log.f64 (pow.f64 x.im 2)) (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))))
(+.f64 (*.f64 (+.f64 (log.f64 (pow.f64 x.im 2)) (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2))) y.re) (*.f64 -1/2 (*.f64 (pow.f64 x.re 4) (/.f64 y.re (pow.f64 x.im 4)))))
(*.f64 y.re (+.f64 (log.f64 (pow.f64 x.im 2)) (+.f64 (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)) (*.f64 -1/2 (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4))))))
(*.f64 y.re (+.f64 (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)) (+.f64 (log.f64 (pow.f64 x.im 2)) (*.f64 -1/2 (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4))))))
(+.f64 (/.f64 (*.f64 (pow.f64 x.re 2) y.re) (pow.f64 x.im 2)) (+.f64 (*.f64 (log.f64 (pow.f64 x.im 2)) y.re) (+.f64 (*.f64 1/3 (/.f64 (*.f64 (pow.f64 x.re 6) y.re) (pow.f64 x.im 6))) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 x.re 4) y.re) (pow.f64 x.im 4))))))
(+.f64 (*.f64 y.re (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2))) (+.f64 (*.f64 (log.f64 (pow.f64 x.im 2)) y.re) (+.f64 (*.f64 -1/2 (*.f64 y.re (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4)))) (*.f64 1/3 (*.f64 y.re (/.f64 (pow.f64 x.re 6) (pow.f64 x.im 6)))))))
(+.f64 (*.f64 1/3 (*.f64 (pow.f64 x.re 6) (/.f64 y.re (pow.f64 x.im 6)))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x.re 4) (/.f64 y.re (pow.f64 x.im 4)))) (*.f64 y.re (+.f64 (log.f64 (pow.f64 x.im 2)) (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2))))))
(+.f64 (*.f64 y.re (+.f64 (log.f64 (pow.f64 x.im 2)) (*.f64 -1/2 (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4))))) (*.f64 y.re (+.f64 (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)) (*.f64 1/3 (/.f64 (pow.f64 x.re 6) (pow.f64 x.im 6))))))
(+.f64 (*.f64 2 (log.f64 (pow.f64 x.im y.re))) (*.f64 y.re (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4))) (+.f64 (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)) (*.f64 1/3 (/.f64 (pow.f64 x.re 6) (pow.f64 x.im 6)))))))
(+.f64 (*.f64 (+.f64 (log.f64 (pow.f64 x.im 2)) (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2))) y.re) (*.f64 y.re (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4))) (*.f64 1/3 (/.f64 (pow.f64 x.re 6) (pow.f64 x.im 6))))))
(*.f64 -2 (*.f64 (log.f64 (/.f64 1 x.re)) y.re))
(*.f64 (log.f64 (/.f64 1 x.re)) (*.f64 y.re -2))
(*.f64 (log.f64 (/.f64 1 x.re)) (*.f64 -2 y.re))
(+.f64 (*.f64 -2 (*.f64 (log.f64 (/.f64 1 x.re)) y.re)) (/.f64 (*.f64 y.re (pow.f64 x.im 2)) (pow.f64 x.re 2)))
(+.f64 (*.f64 (log.f64 (/.f64 1 x.re)) (*.f64 y.re -2)) (*.f64 (pow.f64 x.im 2) (/.f64 y.re (pow.f64 x.re 2))))
(+.f64 (*.f64 (log.f64 (/.f64 1 x.re)) (*.f64 -2 y.re)) (*.f64 (pow.f64 x.im 2) (/.f64 y.re (pow.f64 x.re 2))))
(*.f64 y.re (+.f64 (*.f64 -2 (log.f64 (/.f64 1 x.re))) (/.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))))
(+.f64 (*.f64 -2 (*.f64 (log.f64 (/.f64 1 x.re)) y.re)) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 y.re (pow.f64 x.im 4)) (pow.f64 x.re 4))) (/.f64 (*.f64 y.re (pow.f64 x.im 2)) (pow.f64 x.re 2))))
(+.f64 (*.f64 (log.f64 (/.f64 1 x.re)) (*.f64 y.re -2)) (+.f64 (*.f64 (pow.f64 x.im 2) (/.f64 y.re (pow.f64 x.re 2))) (*.f64 -1/2 (*.f64 (pow.f64 x.im 4) (/.f64 y.re (pow.f64 x.re 4))))))
(+.f64 (*.f64 (log.f64 (/.f64 1 x.re)) (*.f64 -2 y.re)) (+.f64 (*.f64 (pow.f64 x.im 2) (/.f64 y.re (pow.f64 x.re 2))) (*.f64 -1/2 (*.f64 (pow.f64 x.im 4) (/.f64 y.re (pow.f64 x.re 4))))))
(+.f64 (*.f64 y.re (+.f64 (*.f64 -2 (log.f64 (/.f64 1 x.re))) (/.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)))) (*.f64 -1/2 (*.f64 (pow.f64 x.im 4) (/.f64 y.re (pow.f64 x.re 4)))))
(+.f64 (*.f64 (pow.f64 x.im 2) (/.f64 y.re (pow.f64 x.re 2))) (*.f64 y.re (+.f64 (*.f64 -2 (log.f64 (/.f64 1 x.re))) (*.f64 -1/2 (/.f64 (pow.f64 x.im 4) (pow.f64 x.re 4))))))
(+.f64 (*.f64 1/3 (/.f64 (*.f64 y.re (pow.f64 x.im 6)) (pow.f64 x.re 6))) (+.f64 (*.f64 -2 (*.f64 (log.f64 (/.f64 1 x.re)) y.re)) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 y.re (pow.f64 x.im 4)) (pow.f64 x.re 4))) (/.f64 (*.f64 y.re (pow.f64 x.im 2)) (pow.f64 x.re 2)))))
(+.f64 (*.f64 (log.f64 (/.f64 1 x.re)) (*.f64 y.re -2)) (+.f64 (+.f64 (*.f64 (pow.f64 x.im 2) (/.f64 y.re (pow.f64 x.re 2))) (*.f64 -1/2 (*.f64 (pow.f64 x.im 4) (/.f64 y.re (pow.f64 x.re 4))))) (*.f64 1/3 (*.f64 (pow.f64 x.im 6) (/.f64 y.re (pow.f64 x.re 6))))))
(+.f64 (*.f64 (log.f64 (/.f64 1 x.re)) (*.f64 -2 y.re)) (+.f64 (+.f64 (*.f64 (pow.f64 x.im 2) (/.f64 y.re (pow.f64 x.re 2))) (*.f64 -1/2 (*.f64 (pow.f64 x.im 4) (/.f64 y.re (pow.f64 x.re 4))))) (*.f64 1/3 (*.f64 (pow.f64 x.im 6) (/.f64 y.re (pow.f64 x.re 6))))))
(+.f64 (*.f64 (log.f64 (/.f64 1 x.re)) (*.f64 -2 y.re)) (+.f64 (*.f64 (pow.f64 x.im 2) (/.f64 y.re (pow.f64 x.re 2))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x.im 4) (/.f64 y.re (pow.f64 x.re 4)))) (*.f64 (/.f64 y.re (pow.f64 x.re 6)) (*.f64 (pow.f64 x.im 6) 1/3)))))
(+.f64 (*.f64 y.re (+.f64 (/.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)) (*.f64 -1/2 (/.f64 (pow.f64 x.im 4) (pow.f64 x.re 4))))) (*.f64 y.re (+.f64 (*.f64 -2 (log.f64 (/.f64 1 x.re))) (*.f64 1/3 (/.f64 (pow.f64 x.im 6) (pow.f64 x.re 6))))))
(*.f64 -2 (*.f64 y.re (log.f64 (/.f64 -1 x.re))))
(*.f64 -2 (*.f64 (log.f64 (/.f64 -1 x.re)) y.re))
(*.f64 (log.f64 (/.f64 -1 x.re)) (*.f64 -2 y.re))
(+.f64 (*.f64 -2 (*.f64 y.re (log.f64 (/.f64 -1 x.re)))) (/.f64 (*.f64 y.re (pow.f64 x.im 2)) (pow.f64 x.re 2)))
(+.f64 (*.f64 (pow.f64 x.im 2) (/.f64 y.re (pow.f64 x.re 2))) (*.f64 -2 (*.f64 (log.f64 (/.f64 -1 x.re)) y.re)))
(+.f64 (*.f64 (pow.f64 x.im 2) (/.f64 y.re (pow.f64 x.re 2))) (*.f64 (log.f64 (/.f64 -1 x.re)) (*.f64 -2 y.re)))
(*.f64 y.re (+.f64 (/.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)) (*.f64 -2 (log.f64 (/.f64 -1 x.re)))))
(*.f64 (+.f64 (/.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)) (*.f64 -2 (log.f64 (/.f64 -1 x.re)))) y.re)
(+.f64 (*.f64 -2 (*.f64 y.re (log.f64 (/.f64 -1 x.re)))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 y.re (pow.f64 x.im 4)) (pow.f64 x.re 4))) (/.f64 (*.f64 y.re (pow.f64 x.im 2)) (pow.f64 x.re 2))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x.im 4) (/.f64 y.re (pow.f64 x.re 4)))) (+.f64 (*.f64 (pow.f64 x.im 2) (/.f64 y.re (pow.f64 x.re 2))) (*.f64 -2 (*.f64 (log.f64 (/.f64 -1 x.re)) y.re))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x.im 4) (/.f64 y.re (pow.f64 x.re 4)))) (+.f64 (*.f64 (pow.f64 x.im 2) (/.f64 y.re (pow.f64 x.re 2))) (*.f64 (log.f64 (/.f64 -1 x.re)) (*.f64 -2 y.re))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x.im 4) (/.f64 y.re (pow.f64 x.re 4)))) (*.f64 y.re (+.f64 (/.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)) (*.f64 -2 (log.f64 (/.f64 -1 x.re))))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x.im 4) (/.f64 y.re (pow.f64 x.re 4)))) (*.f64 (+.f64 (/.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)) (*.f64 -2 (log.f64 (/.f64 -1 x.re)))) y.re))
(+.f64 (*.f64 (pow.f64 x.im 2) (/.f64 y.re (pow.f64 x.re 2))) (*.f64 y.re (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 x.im 4) (pow.f64 x.re 4))) (*.f64 -2 (log.f64 (/.f64 -1 x.re))))))
(+.f64 (*.f64 1/3 (/.f64 (*.f64 y.re (pow.f64 x.im 6)) (pow.f64 x.re 6))) (+.f64 (*.f64 -2 (*.f64 y.re (log.f64 (/.f64 -1 x.re)))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 y.re (pow.f64 x.im 4)) (pow.f64 x.re 4))) (/.f64 (*.f64 y.re (pow.f64 x.im 2)) (pow.f64 x.re 2)))))
(+.f64 (*.f64 1/3 (*.f64 (pow.f64 x.im 6) (/.f64 y.re (pow.f64 x.re 6)))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x.im 4) (/.f64 y.re (pow.f64 x.re 4)))) (+.f64 (*.f64 (pow.f64 x.im 2) (/.f64 y.re (pow.f64 x.re 2))) (*.f64 -2 (*.f64 (log.f64 (/.f64 -1 x.re)) y.re)))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x.im 4) (/.f64 y.re (pow.f64 x.re 4)))) (+.f64 (+.f64 (*.f64 (pow.f64 x.im 2) (/.f64 y.re (pow.f64 x.re 2))) (*.f64 (log.f64 (/.f64 -1 x.re)) (*.f64 -2 y.re))) (*.f64 1/3 (*.f64 (pow.f64 x.im 6) (/.f64 y.re (pow.f64 x.re 6))))))
(+.f64 (*.f64 y.re (+.f64 (/.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)) (*.f64 -2 (log.f64 (/.f64 -1 x.re))))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x.im 4) (/.f64 y.re (pow.f64 x.re 4)))) (*.f64 (/.f64 y.re (pow.f64 x.re 6)) (*.f64 (pow.f64 x.im 6) 1/3))))
(+.f64 (*.f64 y.re (+.f64 (/.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)) (*.f64 -1/2 (/.f64 (pow.f64 x.im 4) (pow.f64 x.re 4))))) (*.f64 y.re (+.f64 (*.f64 -2 (log.f64 (/.f64 -1 x.re))) (*.f64 1/3 (/.f64 (pow.f64 x.im 6) (pow.f64 x.re 6))))))
(*.f64 y.re (log.f64 (pow.f64 x.re 2)))
(*.f64 2 (log.f64 (pow.f64 x.re y.re)))
(*.f64 2 (*.f64 y.re (log.f64 x.re)))
(+.f64 (*.f64 y.re (log.f64 (pow.f64 x.re 2))) (/.f64 (*.f64 y.re (pow.f64 x.im 2)) (pow.f64 x.re 2)))
(+.f64 (*.f64 (pow.f64 x.im 2) (/.f64 y.re (pow.f64 x.re 2))) (*.f64 2 (log.f64 (pow.f64 x.re y.re))))
(*.f64 y.re (+.f64 (/.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)) (log.f64 (pow.f64 x.re 2))))
(*.f64 (+.f64 (/.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)) (log.f64 (pow.f64 x.re 2))) y.re)
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 y.re (pow.f64 x.im 4)) (pow.f64 x.re 4))) (+.f64 (*.f64 y.re (log.f64 (pow.f64 x.re 2))) (/.f64 (*.f64 y.re (pow.f64 x.im 2)) (pow.f64 x.re 2))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x.im 4) (/.f64 y.re (pow.f64 x.re 4)))) (+.f64 (*.f64 (pow.f64 x.im 2) (/.f64 y.re (pow.f64 x.re 2))) (*.f64 2 (log.f64 (pow.f64 x.re y.re)))))
(+.f64 (*.f64 (pow.f64 x.im 2) (/.f64 y.re (pow.f64 x.re 2))) (+.f64 (*.f64 2 (log.f64 (pow.f64 x.re y.re))) (*.f64 -1/2 (*.f64 (pow.f64 x.im 4) (/.f64 y.re (pow.f64 x.re 4))))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x.im 4) (/.f64 y.re (pow.f64 x.re 4)))) (*.f64 y.re (+.f64 (/.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)) (log.f64 (pow.f64 x.re 2)))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x.im 4) (/.f64 y.re (pow.f64 x.re 4)))) (*.f64 (+.f64 (/.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)) (log.f64 (pow.f64 x.re 2))) y.re))
(+.f64 (*.f64 1/3 (/.f64 (*.f64 y.re (pow.f64 x.im 6)) (pow.f64 x.re 6))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 y.re (pow.f64 x.im 4)) (pow.f64 x.re 4))) (+.f64 (*.f64 y.re (log.f64 (pow.f64 x.re 2))) (/.f64 (*.f64 y.re (pow.f64 x.im 2)) (pow.f64 x.re 2)))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x.im 4) (/.f64 y.re (pow.f64 x.re 4)))) (+.f64 (+.f64 (*.f64 (pow.f64 x.im 2) (/.f64 y.re (pow.f64 x.re 2))) (*.f64 2 (log.f64 (pow.f64 x.re y.re)))) (*.f64 1/3 (*.f64 (pow.f64 x.im 6) (/.f64 y.re (pow.f64 x.re 6))))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x.im 4) (/.f64 y.re (pow.f64 x.re 4)))) (+.f64 (*.f64 1/3 (*.f64 (pow.f64 x.im 6) (/.f64 y.re (pow.f64 x.re 6)))) (+.f64 (*.f64 (pow.f64 x.im 2) (/.f64 y.re (pow.f64 x.re 2))) (*.f64 2 (log.f64 (pow.f64 x.re y.re))))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x.im 4) (/.f64 y.re (pow.f64 x.re 4)))) (+.f64 (*.f64 (/.f64 y.re (pow.f64 x.re 6)) (*.f64 (pow.f64 x.im 6) 1/3)) (*.f64 y.re (+.f64 (/.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)) (log.f64 (pow.f64 x.re 2))))))
(+.f64 (*.f64 y.re (+.f64 (/.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)) (*.f64 -1/2 (/.f64 (pow.f64 x.im 4) (pow.f64 x.re 4))))) (*.f64 y.re (+.f64 (log.f64 (pow.f64 x.re 2)) (*.f64 1/3 (/.f64 (pow.f64 x.im 6) (pow.f64 x.re 6))))))
(*.f64 -2 (*.f64 (log.f64 (/.f64 1 x.im)) y.re))
(+.f64 (/.f64 (*.f64 (pow.f64 x.re 2) y.re) (pow.f64 x.im 2)) (*.f64 -2 (*.f64 (log.f64 (/.f64 1 x.im)) y.re)))
(+.f64 (*.f64 y.re (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2))) (*.f64 -2 (*.f64 (log.f64 (/.f64 1 x.im)) y.re)))
(+.f64 (*.f64 (pow.f64 x.re 2) (/.f64 y.re (pow.f64 x.im 2))) (*.f64 -2 (*.f64 (log.f64 (/.f64 1 x.im)) y.re)))
(*.f64 y.re (+.f64 (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)) (*.f64 -2 (log.f64 (/.f64 1 x.im)))))
(*.f64 (+.f64 (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)) (*.f64 -2 (log.f64 (/.f64 1 x.im)))) y.re)
(+.f64 (/.f64 (*.f64 (pow.f64 x.re 2) y.re) (pow.f64 x.im 2)) (+.f64 (*.f64 -2 (*.f64 (log.f64 (/.f64 1 x.im)) y.re)) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 x.re 4) y.re) (pow.f64 x.im 4)))))
(+.f64 (*.f64 y.re (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2))) (+.f64 (*.f64 -1/2 (*.f64 y.re (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4)))) (*.f64 -2 (*.f64 (log.f64 (/.f64 1 x.im)) y.re))))
(+.f64 (*.f64 (pow.f64 x.re 2) (/.f64 y.re (pow.f64 x.im 2))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x.re 4) (/.f64 y.re (pow.f64 x.im 4)))) (*.f64 -2 (*.f64 (log.f64 (/.f64 1 x.im)) y.re))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x.re 4) (/.f64 y.re (pow.f64 x.im 4)))) (*.f64 y.re (+.f64 (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)) (*.f64 -2 (log.f64 (/.f64 1 x.im))))))
(*.f64 y.re (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4))) (+.f64 (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)) (*.f64 -2 (log.f64 (/.f64 1 x.im))))))
(*.f64 y.re (+.f64 (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4))) (*.f64 -2 (log.f64 (/.f64 1 x.im))))))
(+.f64 (/.f64 (*.f64 (pow.f64 x.re 2) y.re) (pow.f64 x.im 2)) (+.f64 (*.f64 -2 (*.f64 (log.f64 (/.f64 1 x.im)) y.re)) (+.f64 (*.f64 1/3 (/.f64 (*.f64 (pow.f64 x.re 6) y.re) (pow.f64 x.im 6))) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 x.re 4) y.re) (pow.f64 x.im 4))))))
(+.f64 (*.f64 y.re (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2))) (+.f64 (+.f64 (*.f64 -1/2 (*.f64 y.re (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4)))) (*.f64 1/3 (*.f64 y.re (/.f64 (pow.f64 x.re 6) (pow.f64 x.im 6))))) (*.f64 -2 (*.f64 (log.f64 (/.f64 1 x.im)) y.re))))
(+.f64 (*.f64 (pow.f64 x.re 2) (/.f64 y.re (pow.f64 x.im 2))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x.re 4) (/.f64 y.re (pow.f64 x.im 4)))) (+.f64 (*.f64 -2 (*.f64 (log.f64 (/.f64 1 x.im)) y.re)) (*.f64 1/3 (*.f64 (pow.f64 x.re 6) (/.f64 y.re (pow.f64 x.im 6)))))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x.re 4) (/.f64 y.re (pow.f64 x.im 4)))) (+.f64 (*.f64 y.re (+.f64 (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)) (*.f64 -2 (log.f64 (/.f64 1 x.im))))) (*.f64 1/3 (*.f64 (pow.f64 x.re 6) (/.f64 y.re (pow.f64 x.im 6))))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x.re 4) (/.f64 y.re (pow.f64 x.im 4)))) (*.f64 y.re (+.f64 (*.f64 1/3 (/.f64 (pow.f64 x.re 6) (pow.f64 x.im 6))) (+.f64 (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)) (*.f64 -2 (log.f64 (/.f64 1 x.im)))))))
(*.f64 -2 (*.f64 (log.f64 (/.f64 -1 x.im)) y.re))
(*.f64 (log.f64 (/.f64 -1 x.im)) (*.f64 y.re -2))
(+.f64 (/.f64 (*.f64 (pow.f64 x.re 2) y.re) (pow.f64 x.im 2)) (*.f64 -2 (*.f64 (log.f64 (/.f64 -1 x.im)) y.re)))
(+.f64 (*.f64 y.re (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2))) (*.f64 (log.f64 (/.f64 -1 x.im)) (*.f64 y.re -2)))
(+.f64 (*.f64 (pow.f64 x.re 2) (/.f64 y.re (pow.f64 x.im 2))) (*.f64 -2 (*.f64 (log.f64 (/.f64 -1 x.im)) y.re)))
(*.f64 y.re (+.f64 (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)) (*.f64 -2 (log.f64 (/.f64 -1 x.im)))))
(*.f64 (+.f64 (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)) (*.f64 -2 (log.f64 (/.f64 -1 x.im)))) y.re)
(+.f64 (/.f64 (*.f64 (pow.f64 x.re 2) y.re) (pow.f64 x.im 2)) (+.f64 (*.f64 -2 (*.f64 (log.f64 (/.f64 -1 x.im)) y.re)) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 x.re 4) y.re) (pow.f64 x.im 4)))))
(+.f64 (*.f64 y.re (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2))) (+.f64 (*.f64 -1/2 (*.f64 y.re (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4)))) (*.f64 (log.f64 (/.f64 -1 x.im)) (*.f64 y.re -2))))
(+.f64 (*.f64 (pow.f64 x.re 2) (/.f64 y.re (pow.f64 x.im 2))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x.re 4) (/.f64 y.re (pow.f64 x.im 4)))) (*.f64 -2 (*.f64 (log.f64 (/.f64 -1 x.im)) y.re))))
(+.f64 (*.f64 -2 (*.f64 (log.f64 (/.f64 -1 x.im)) y.re)) (*.f64 y.re (+.f64 (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)) (*.f64 -1/2 (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4))))))
(*.f64 y.re (+.f64 (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4))) (*.f64 -2 (log.f64 (/.f64 -1 x.im))))))
(+.f64 (/.f64 (*.f64 (pow.f64 x.re 2) y.re) (pow.f64 x.im 2)) (+.f64 (*.f64 1/3 (/.f64 (*.f64 (pow.f64 x.re 6) y.re) (pow.f64 x.im 6))) (+.f64 (*.f64 -2 (*.f64 (log.f64 (/.f64 -1 x.im)) y.re)) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 x.re 4) y.re) (pow.f64 x.im 4))))))
(+.f64 (*.f64 y.re (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2))) (+.f64 (*.f64 1/3 (*.f64 y.re (/.f64 (pow.f64 x.re 6) (pow.f64 x.im 6)))) (+.f64 (*.f64 -1/2 (*.f64 y.re (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4)))) (*.f64 (log.f64 (/.f64 -1 x.im)) (*.f64 y.re -2)))))
(+.f64 (*.f64 (pow.f64 x.re 2) (/.f64 y.re (pow.f64 x.im 2))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x.re 4) (/.f64 y.re (pow.f64 x.im 4)))) (+.f64 (*.f64 -2 (*.f64 (log.f64 (/.f64 -1 x.im)) y.re)) (*.f64 1/3 (*.f64 (pow.f64 x.re 6) (/.f64 y.re (pow.f64 x.im 6)))))))
(+.f64 (*.f64 1/3 (*.f64 (pow.f64 x.re 6) (/.f64 y.re (pow.f64 x.im 6)))) (+.f64 (*.f64 -2 (*.f64 (log.f64 (/.f64 -1 x.im)) y.re)) (*.f64 y.re (+.f64 (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)) (*.f64 -1/2 (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4)))))))
(+.f64 (*.f64 -2 (*.f64 (log.f64 (/.f64 -1 x.im)) y.re)) (*.f64 y.re (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4))) (+.f64 (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)) (*.f64 1/3 (/.f64 (pow.f64 x.re 6) (pow.f64 x.im 6)))))))
(+.f64 (*.f64 1/3 (*.f64 (pow.f64 x.re 6) (/.f64 y.re (pow.f64 x.im 6)))) (*.f64 y.re (+.f64 (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4))) (*.f64 -2 (log.f64 (/.f64 -1 x.im)))))))
(*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))
(neg.f64 (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))
(*.f64 (atan2.f64 x.im x.re) (neg.f64 y.im))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 1/2 (*.f64 (log.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))) y.re)))
(+.f64 (*.f64 (log.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))) (*.f64 y.re 1/2)) (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(+.f64 (*.f64 (log.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))) (*.f64 y.re 1/2)) (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))
(+.f64 (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))))) (*.f64 (atan2.f64 x.im x.re) (neg.f64 y.im)))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 1/2 (*.f64 (log.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))) y.re)))
(+.f64 (*.f64 (log.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))) (*.f64 y.re 1/2)) (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(+.f64 (*.f64 (log.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))) (*.f64 y.re 1/2)) (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))
(+.f64 (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))))) (*.f64 (atan2.f64 x.im x.re) (neg.f64 y.im)))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 1/2 (*.f64 (log.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))) y.re)))
(+.f64 (*.f64 (log.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))) (*.f64 y.re 1/2)) (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(+.f64 (*.f64 (log.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))) (*.f64 y.re 1/2)) (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))
(+.f64 (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))))) (*.f64 (atan2.f64 x.im x.re) (neg.f64 y.im)))
(*.f64 1/2 (*.f64 (log.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))) y.re))
(*.f64 (log.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))) (*.f64 y.re 1/2))
(*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)))))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 1/2 (*.f64 (log.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))) y.re)))
(+.f64 (*.f64 (log.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))) (*.f64 y.re 1/2)) (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(+.f64 (*.f64 (log.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))) (*.f64 y.re 1/2)) (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))
(+.f64 (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))))) (*.f64 (atan2.f64 x.im x.re) (neg.f64 y.im)))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 1/2 (*.f64 (log.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))) y.re)))
(+.f64 (*.f64 (log.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))) (*.f64 y.re 1/2)) (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(+.f64 (*.f64 (log.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))) (*.f64 y.re 1/2)) (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))
(+.f64 (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))))) (*.f64 (atan2.f64 x.im x.re) (neg.f64 y.im)))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 1/2 (*.f64 (log.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))) y.re)))
(+.f64 (*.f64 (log.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))) (*.f64 y.re 1/2)) (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(+.f64 (*.f64 (log.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))) (*.f64 y.re 1/2)) (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))
(+.f64 (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))))) (*.f64 (atan2.f64 x.im x.re) (neg.f64 y.im)))
(*.f64 1/2 (*.f64 (log.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))) y.re))
(*.f64 (log.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))) (*.f64 y.re 1/2))
(*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)))))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 1/2 (*.f64 (log.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))) y.re)))
(+.f64 (*.f64 (log.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))) (*.f64 y.re 1/2)) (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(+.f64 (*.f64 (log.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))) (*.f64 y.re 1/2)) (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))
(+.f64 (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))))) (*.f64 (atan2.f64 x.im x.re) (neg.f64 y.im)))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 1/2 (*.f64 (log.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))) y.re)))
(+.f64 (*.f64 (log.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))) (*.f64 y.re 1/2)) (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(+.f64 (*.f64 (log.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))) (*.f64 y.re 1/2)) (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))
(+.f64 (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))))) (*.f64 (atan2.f64 x.im x.re) (neg.f64 y.im)))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 1/2 (*.f64 (log.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))) y.re)))
(+.f64 (*.f64 (log.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))) (*.f64 y.re 1/2)) (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(+.f64 (*.f64 (log.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))) (*.f64 y.re 1/2)) (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))
(+.f64 (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))))) (*.f64 (atan2.f64 x.im x.re) (neg.f64 y.im)))
(-.f64 (*.f64 1/2 (*.f64 (log.f64 (pow.f64 x.im 2)) y.re)) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (*.f64 (log.f64 (pow.f64 x.im 2)) (*.f64 y.re 1/2)) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (*.f64 y.re (log.f64 (sqrt.f64 (pow.f64 x.im 2)))) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (*.f64 y.re (log.f64 (pow.f64 (sqrt.f64 x.im) 2))) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (*.f64 2 (log.f64 (sqrt.f64 (pow.f64 x.im y.re)))) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (+.f64 (*.f64 1/2 (*.f64 (log.f64 (pow.f64 x.im 2)) y.re)) (*.f64 1/2 (/.f64 (*.f64 (pow.f64 x.re 2) y.re) (pow.f64 x.im 2)))) (*.f64 y.im (atan2.f64 x.im x.re)))
(+.f64 (*.f64 (*.f64 y.re (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2))) 1/2) (-.f64 (*.f64 (log.f64 (pow.f64 x.im 2)) (*.f64 y.re 1/2)) (*.f64 y.im (atan2.f64 x.im x.re))))
(-.f64 (*.f64 1/2 (*.f64 y.re (+.f64 (log.f64 (pow.f64 x.im 2)) (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2))))) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (*.f64 y.re (*.f64 (+.f64 (log.f64 (pow.f64 x.im 2)) (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2))) 1/2)) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (*.f64 (*.f64 (+.f64 (log.f64 (pow.f64 x.im 2)) (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2))) y.re) 1/2) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (+.f64 (*.f64 1/2 (*.f64 (log.f64 (pow.f64 x.im 2)) y.re)) (+.f64 (*.f64 -1/4 (/.f64 (*.f64 (pow.f64 x.re 4) y.re) (pow.f64 x.im 4))) (*.f64 1/2 (/.f64 (*.f64 (pow.f64 x.re 2) y.re) (pow.f64 x.im 2))))) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (+.f64 (*.f64 (log.f64 (pow.f64 x.im 2)) (*.f64 y.re 1/2)) (+.f64 (*.f64 (*.f64 y.re (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2))) 1/2) (*.f64 (*.f64 y.re (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4))) -1/4))) (*.f64 y.im (atan2.f64 x.im x.re)))
(+.f64 (*.f64 1/2 (*.f64 y.re (+.f64 (log.f64 (pow.f64 x.im 2)) (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2))))) (-.f64 (*.f64 y.re (*.f64 (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4)) -1/4)) (*.f64 y.im (atan2.f64 x.im x.re))))
(+.f64 (*.f64 y.re (*.f64 (+.f64 (log.f64 (pow.f64 x.im 2)) (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2))) 1/2)) (-.f64 (*.f64 (pow.f64 x.re 4) (*.f64 (/.f64 y.re (pow.f64 x.im 4)) -1/4)) (*.f64 y.im (atan2.f64 x.im x.re))))
(-.f64 (*.f64 y.re (+.f64 (*.f64 (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4)) -1/4) (*.f64 (+.f64 (log.f64 (pow.f64 x.im 2)) (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2))) 1/2))) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (+.f64 (*.f64 1/2 (*.f64 (log.f64 (pow.f64 x.im 2)) y.re)) (+.f64 (*.f64 -1/4 (/.f64 (*.f64 (pow.f64 x.re 4) y.re) (pow.f64 x.im 4))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 x.re 2) y.re) (pow.f64 x.im 2))) (*.f64 1/6 (/.f64 (*.f64 (pow.f64 x.re 6) y.re) (pow.f64 x.im 6)))))) (*.f64 y.im (atan2.f64 x.im x.re)))
(+.f64 (+.f64 (*.f64 (*.f64 y.re (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2))) 1/2) (+.f64 (*.f64 (*.f64 y.re (/.f64 (pow.f64 x.re 6) (pow.f64 x.im 6))) 1/6) (*.f64 (*.f64 y.re (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4))) -1/4))) (-.f64 (*.f64 (log.f64 (pow.f64 x.im 2)) (*.f64 y.re 1/2)) (*.f64 y.im (atan2.f64 x.im x.re))))
(+.f64 (+.f64 (*.f64 (*.f64 (pow.f64 x.re 2) (/.f64 y.re (pow.f64 x.im 2))) 1/2) (+.f64 (*.f64 y.re (*.f64 (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4)) -1/4)) (*.f64 y.re (*.f64 (/.f64 (pow.f64 x.re 6) (pow.f64 x.im 6)) 1/6)))) (-.f64 (*.f64 (log.f64 (pow.f64 x.im 2)) (*.f64 y.re 1/2)) (*.f64 y.im (atan2.f64 x.im x.re))))
(+.f64 (*.f64 (pow.f64 x.re 4) (*.f64 (/.f64 y.re (pow.f64 x.im 4)) -1/4)) (-.f64 (+.f64 (*.f64 (pow.f64 x.re 6) (*.f64 (/.f64 y.re (pow.f64 x.im 6)) 1/6)) (*.f64 y.re (*.f64 (+.f64 (log.f64 (pow.f64 x.im 2)) (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2))) 1/2))) (*.f64 y.im (atan2.f64 x.im x.re))))
(+.f64 (*.f64 y.re (+.f64 (*.f64 (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4)) -1/4) (*.f64 (+.f64 (log.f64 (pow.f64 x.im 2)) (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2))) 1/2))) (-.f64 (*.f64 (pow.f64 x.re 6) (*.f64 1/6 (/.f64 y.re (pow.f64 x.im 6)))) (*.f64 y.im (atan2.f64 x.im x.re))))
(-.f64 (*.f64 -1 (*.f64 y.re (log.f64 (/.f64 1 x.re)))) (*.f64 (atan2.f64 x.im x.re) y.im))
(-.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.re)) y.re)) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (*.f64 (log.f64 (/.f64 1 x.re)) (neg.f64 y.re)) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (+.f64 (*.f64 -1 (*.f64 y.re (log.f64 (/.f64 1 x.re)))) (*.f64 1/2 (/.f64 (*.f64 y.re (pow.f64 x.im 2)) (pow.f64 x.re 2)))) (*.f64 (atan2.f64 x.im x.re) y.im))
(+.f64 (*.f64 (*.f64 (pow.f64 x.im 2) (/.f64 y.re (pow.f64 x.re 2))) 1/2) (-.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.re)) y.re)) (*.f64 y.im (atan2.f64 x.im x.re))))
(+.f64 (*.f64 (log.f64 (/.f64 1 x.re)) (neg.f64 y.re)) (-.f64 (*.f64 (pow.f64 x.im 2) (*.f64 (/.f64 y.re (pow.f64 x.re 2)) 1/2)) (*.f64 y.im (atan2.f64 x.im x.re))))
(+.f64 (*.f64 (log.f64 (/.f64 1 x.re)) (neg.f64 y.re)) (-.f64 (*.f64 (pow.f64 x.im 2) (*.f64 1/2 (/.f64 y.re (pow.f64 x.re 2)))) (*.f64 y.im (atan2.f64 x.im x.re))))
(-.f64 (*.f64 y.re (+.f64 (neg.f64 (log.f64 (/.f64 1 x.re))) (*.f64 (/.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)) 1/2))) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (+.f64 (*.f64 -1 (*.f64 y.re (log.f64 (/.f64 1 x.re)))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 y.re (pow.f64 x.im 2)) (pow.f64 x.re 2))) (*.f64 -1/4 (/.f64 (*.f64 y.re (pow.f64 x.im 4)) (pow.f64 x.re 4))))) (*.f64 (atan2.f64 x.im x.re) y.im))
(+.f64 (+.f64 (*.f64 (*.f64 (pow.f64 x.im 2) (/.f64 y.re (pow.f64 x.re 2))) 1/2) (*.f64 (*.f64 (pow.f64 x.im 4) (/.f64 y.re (pow.f64 x.re 4))) -1/4)) (-.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.re)) y.re)) (*.f64 y.im (atan2.f64 x.im x.re))))
(+.f64 (-.f64 (*.f64 (log.f64 (/.f64 1 x.re)) (neg.f64 y.re)) (*.f64 y.im (atan2.f64 x.im x.re))) (+.f64 (*.f64 (pow.f64 x.im 2) (*.f64 (/.f64 y.re (pow.f64 x.re 2)) 1/2)) (*.f64 (pow.f64 x.im 4) (*.f64 (/.f64 y.re (pow.f64 x.re 4)) -1/4))))
(+.f64 (-.f64 (*.f64 (log.f64 (/.f64 1 x.re)) (neg.f64 y.re)) (*.f64 y.im (atan2.f64 x.im x.re))) (+.f64 (*.f64 (pow.f64 x.im 2) (*.f64 1/2 (/.f64 y.re (pow.f64 x.re 2)))) (*.f64 (pow.f64 x.im 4) (*.f64 -1/4 (/.f64 y.re (pow.f64 x.re 4))))))
(+.f64 (*.f64 y.re (+.f64 (neg.f64 (log.f64 (/.f64 1 x.re))) (*.f64 (/.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)) 1/2))) (-.f64 (*.f64 (pow.f64 x.im 4) (*.f64 -1/4 (/.f64 y.re (pow.f64 x.re 4)))) (*.f64 y.im (atan2.f64 x.im x.re))))
(-.f64 (+.f64 (*.f64 -1 (*.f64 y.re (log.f64 (/.f64 1 x.re)))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 y.re (pow.f64 x.im 2)) (pow.f64 x.re 2))) (+.f64 (*.f64 -1/4 (/.f64 (*.f64 y.re (pow.f64 x.im 4)) (pow.f64 x.re 4))) (*.f64 1/6 (/.f64 (*.f64 y.re (pow.f64 x.im 6)) (pow.f64 x.re 6)))))) (*.f64 (atan2.f64 x.im x.re) y.im))
(+.f64 (+.f64 (*.f64 (*.f64 (pow.f64 x.im 2) (/.f64 y.re (pow.f64 x.re 2))) 1/2) (+.f64 (*.f64 (*.f64 (pow.f64 x.im 4) (/.f64 y.re (pow.f64 x.re 4))) -1/4) (*.f64 (*.f64 (pow.f64 x.im 6) (/.f64 y.re (pow.f64 x.re 6))) 1/6))) (-.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.re)) y.re)) (*.f64 y.im (atan2.f64 x.im x.re))))
(+.f64 (-.f64 (*.f64 (log.f64 (/.f64 1 x.re)) (neg.f64 y.re)) (*.f64 y.im (atan2.f64 x.im x.re))) (+.f64 (*.f64 (pow.f64 x.im 6) (*.f64 (/.f64 y.re (pow.f64 x.re 6)) 1/6)) (+.f64 (*.f64 (pow.f64 x.im 2) (*.f64 (/.f64 y.re (pow.f64 x.re 2)) 1/2)) (*.f64 (pow.f64 x.im 4) (*.f64 (/.f64 y.re (pow.f64 x.re 4)) -1/4)))))
(+.f64 (*.f64 (log.f64 (/.f64 1 x.re)) (neg.f64 y.re)) (+.f64 (+.f64 (*.f64 (pow.f64 x.im 4) (*.f64 -1/4 (/.f64 y.re (pow.f64 x.re 4)))) (*.f64 (/.f64 y.re (pow.f64 x.re 6)) (*.f64 1/6 (pow.f64 x.im 6)))) (-.f64 (*.f64 (pow.f64 x.im 2) (*.f64 1/2 (/.f64 y.re (pow.f64 x.re 2)))) (*.f64 y.im (atan2.f64 x.im x.re)))))
(+.f64 (*.f64 y.re (*.f64 (/.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)) 1/2)) (-.f64 (+.f64 (*.f64 (pow.f64 x.im 4) (*.f64 -1/4 (/.f64 y.re (pow.f64 x.re 4)))) (*.f64 y.re (+.f64 (neg.f64 (log.f64 (/.f64 1 x.re))) (*.f64 (/.f64 (pow.f64 x.im 6) (pow.f64 x.re 6)) 1/6)))) (*.f64 y.im (atan2.f64 x.im x.re))))
(+.f64 (*.f64 (pow.f64 x.im 2) (*.f64 1/2 (/.f64 y.re (pow.f64 x.re 2)))) (+.f64 (*.f64 y.re (+.f64 (neg.f64 (log.f64 (/.f64 1 x.re))) (*.f64 (/.f64 (pow.f64 x.im 6) (pow.f64 x.re 6)) 1/6))) (-.f64 (*.f64 (pow.f64 x.im 4) (*.f64 -1/4 (/.f64 y.re (pow.f64 x.re 4)))) (*.f64 y.im (atan2.f64 x.im x.re)))))
(-.f64 (*.f64 -1 (*.f64 y.re (log.f64 (/.f64 -1 x.re)))) (*.f64 (atan2.f64 x.im x.re) y.im))
(-.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 -1 x.re)) y.re)) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (*.f64 (log.f64 (/.f64 -1 x.re)) (neg.f64 y.re)) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (*.f64 (atan2.f64 x.im x.re) (neg.f64 y.im)) (*.f64 (log.f64 (/.f64 -1 x.re)) y.re))
(-.f64 (+.f64 (*.f64 -1 (*.f64 y.re (log.f64 (/.f64 -1 x.re)))) (*.f64 1/2 (/.f64 (*.f64 y.re (pow.f64 x.im 2)) (pow.f64 x.re 2)))) (*.f64 (atan2.f64 x.im x.re) y.im))
(+.f64 (*.f64 (*.f64 (pow.f64 x.im 2) (/.f64 y.re (pow.f64 x.re 2))) 1/2) (-.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 -1 x.re)) y.re)) (*.f64 y.im (atan2.f64 x.im x.re))))
(+.f64 (*.f64 (pow.f64 x.im 2) (*.f64 (/.f64 y.re (pow.f64 x.re 2)) 1/2)) (-.f64 (*.f64 (log.f64 (/.f64 -1 x.re)) (neg.f64 y.re)) (*.f64 y.im (atan2.f64 x.im x.re))))
(+.f64 (*.f64 (pow.f64 x.im 2) (*.f64 1/2 (/.f64 y.re (pow.f64 x.re 2)))) (-.f64 (*.f64 (log.f64 (/.f64 -1 x.re)) (neg.f64 y.re)) (*.f64 y.im (atan2.f64 x.im x.re))))
(-.f64 (*.f64 y.re (+.f64 (neg.f64 (log.f64 (/.f64 -1 x.re))) (*.f64 (/.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)) 1/2))) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (+.f64 (*.f64 -1 (*.f64 y.re (log.f64 (/.f64 -1 x.re)))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 y.re (pow.f64 x.im 2)) (pow.f64 x.re 2))) (*.f64 -1/4 (/.f64 (*.f64 y.re (pow.f64 x.im 4)) (pow.f64 x.re 4))))) (*.f64 (atan2.f64 x.im x.re) y.im))
(+.f64 (+.f64 (*.f64 (*.f64 (pow.f64 x.im 2) (/.f64 y.re (pow.f64 x.re 2))) 1/2) (*.f64 (*.f64 (pow.f64 x.im 4) (/.f64 y.re (pow.f64 x.re 4))) -1/4)) (-.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 -1 x.re)) y.re)) (*.f64 y.im (atan2.f64 x.im x.re))))
(+.f64 (+.f64 (*.f64 (pow.f64 x.im 2) (*.f64 (/.f64 y.re (pow.f64 x.re 2)) 1/2)) (*.f64 (pow.f64 x.im 4) (*.f64 (/.f64 y.re (pow.f64 x.re 4)) -1/4))) (-.f64 (*.f64 (log.f64 (/.f64 -1 x.re)) (neg.f64 y.re)) (*.f64 y.im (atan2.f64 x.im x.re))))
(+.f64 (*.f64 (pow.f64 x.im 2) (*.f64 1/2 (/.f64 y.re (pow.f64 x.re 2)))) (-.f64 (+.f64 (*.f64 (pow.f64 x.im 4) (*.f64 -1/4 (/.f64 y.re (pow.f64 x.re 4)))) (*.f64 (log.f64 (/.f64 -1 x.re)) (neg.f64 y.re))) (*.f64 y.im (atan2.f64 x.im x.re))))
(+.f64 (*.f64 y.re (*.f64 (/.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)) 1/2)) (-.f64 (*.f64 y.re (+.f64 (neg.f64 (log.f64 (/.f64 -1 x.re))) (*.f64 (/.f64 (pow.f64 x.im 4) (pow.f64 x.re 4)) -1/4))) (*.f64 y.im (atan2.f64 x.im x.re))))
(+.f64 (*.f64 (pow.f64 x.im 4) (*.f64 -1/4 (/.f64 y.re (pow.f64 x.re 4)))) (-.f64 (*.f64 y.re (+.f64 (neg.f64 (log.f64 (/.f64 -1 x.re))) (*.f64 (/.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)) 1/2))) (*.f64 y.im (atan2.f64 x.im x.re))))
(-.f64 (+.f64 (*.f64 -1 (*.f64 y.re (log.f64 (/.f64 -1 x.re)))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 y.re (pow.f64 x.im 2)) (pow.f64 x.re 2))) (+.f64 (*.f64 -1/4 (/.f64 (*.f64 y.re (pow.f64 x.im 4)) (pow.f64 x.re 4))) (*.f64 1/6 (/.f64 (*.f64 y.re (pow.f64 x.im 6)) (pow.f64 x.re 6)))))) (*.f64 (atan2.f64 x.im x.re) y.im))
(+.f64 (+.f64 (*.f64 (*.f64 (pow.f64 x.im 2) (/.f64 y.re (pow.f64 x.re 2))) 1/2) (+.f64 (*.f64 (*.f64 (pow.f64 x.im 4) (/.f64 y.re (pow.f64 x.re 4))) -1/4) (*.f64 (*.f64 (pow.f64 x.im 6) (/.f64 y.re (pow.f64 x.re 6))) 1/6))) (-.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 -1 x.re)) y.re)) (*.f64 y.im (atan2.f64 x.im x.re))))
(+.f64 (+.f64 (*.f64 (pow.f64 x.im 6) (*.f64 (/.f64 y.re (pow.f64 x.re 6)) 1/6)) (+.f64 (*.f64 (pow.f64 x.im 2) (*.f64 (/.f64 y.re (pow.f64 x.re 2)) 1/2)) (*.f64 (pow.f64 x.im 4) (*.f64 (/.f64 y.re (pow.f64 x.re 4)) -1/4)))) (-.f64 (*.f64 (log.f64 (/.f64 -1 x.re)) (neg.f64 y.re)) (*.f64 y.im (atan2.f64 x.im x.re))))
(+.f64 (*.f64 (pow.f64 x.im 2) (*.f64 1/2 (/.f64 y.re (pow.f64 x.re 2)))) (+.f64 (+.f64 (*.f64 (pow.f64 x.im 4) (*.f64 -1/4 (/.f64 y.re (pow.f64 x.re 4)))) (*.f64 (/.f64 y.re (pow.f64 x.re 6)) (*.f64 1/6 (pow.f64 x.im 6)))) (-.f64 (*.f64 (log.f64 (/.f64 -1 x.re)) (neg.f64 y.re)) (*.f64 y.im (atan2.f64 x.im x.re)))))
(+.f64 (*.f64 y.re (*.f64 (/.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)) 1/2)) (+.f64 (*.f64 y.re (+.f64 (neg.f64 (log.f64 (/.f64 -1 x.re))) (*.f64 (/.f64 (pow.f64 x.im 4) (pow.f64 x.re 4)) -1/4))) (-.f64 (*.f64 (pow.f64 x.im 6) (*.f64 1/6 (/.f64 y.re (pow.f64 x.re 6)))) (*.f64 y.im (atan2.f64 x.im x.re)))))
(+.f64 (*.f64 (pow.f64 x.im 2) (*.f64 1/2 (/.f64 y.re (pow.f64 x.re 2)))) (+.f64 (*.f64 y.re (+.f64 (neg.f64 (log.f64 (/.f64 -1 x.re))) (*.f64 (/.f64 (pow.f64 x.im 4) (pow.f64 x.re 4)) -1/4))) (-.f64 (*.f64 (pow.f64 x.im 6) (*.f64 1/6 (/.f64 y.re (pow.f64 x.re 6)))) (*.f64 y.im (atan2.f64 x.im x.re)))))
(-.f64 (*.f64 1/2 (*.f64 y.re (log.f64 (pow.f64 x.re 2)))) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (*.f64 y.re (*.f64 (log.f64 (pow.f64 x.re 2)) 1/2)) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (*.f64 2 (*.f64 (log.f64 (pow.f64 x.re y.re)) 1/2)) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (*.f64 (log.f64 (pow.f64 x.re y.re)) 1) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (*.f64 1 (log.f64 (pow.f64 x.re y.re))) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (*.f64 y.re (log.f64 x.re)) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (+.f64 (*.f64 1/2 (*.f64 y.re (log.f64 (pow.f64 x.re 2)))) (*.f64 1/2 (/.f64 (*.f64 y.re (pow.f64 x.im 2)) (pow.f64 x.re 2)))) (*.f64 y.im (atan2.f64 x.im x.re)))
(+.f64 (*.f64 (*.f64 (pow.f64 x.im 2) (/.f64 y.re (pow.f64 x.re 2))) 1/2) (-.f64 (*.f64 y.re (*.f64 (log.f64 (pow.f64 x.re 2)) 1/2)) (*.f64 y.im (atan2.f64 x.im x.re))))
(-.f64 (*.f64 1/2 (+.f64 (*.f64 (pow.f64 x.im 2) (/.f64 y.re (pow.f64 x.re 2))) (*.f64 2 (log.f64 (pow.f64 x.re y.re))))) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (*.f64 (*.f64 y.re (+.f64 (/.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)) (log.f64 (pow.f64 x.re 2)))) 1/2) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (*.f64 (*.f64 (+.f64 (/.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)) (log.f64 (pow.f64 x.re 2))) y.re) 1/2) (*.f64 y.im (atan2.f64 x.im x.re)))
(+.f64 (*.f64 (pow.f64 x.im 2) (*.f64 1/2 (/.f64 y.re (pow.f64 x.re 2)))) (-.f64 (*.f64 y.re (log.f64 x.re)) (*.f64 y.im (atan2.f64 x.im x.re))))
(-.f64 (+.f64 (*.f64 1/2 (*.f64 y.re (log.f64 (pow.f64 x.re 2)))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 y.re (pow.f64 x.im 2)) (pow.f64 x.re 2))) (*.f64 -1/4 (/.f64 (*.f64 y.re (pow.f64 x.im 4)) (pow.f64 x.re 4))))) (*.f64 y.im (atan2.f64 x.im x.re)))
(+.f64 (+.f64 (*.f64 (*.f64 (pow.f64 x.im 2) (/.f64 y.re (pow.f64 x.re 2))) 1/2) (*.f64 (*.f64 (pow.f64 x.im 4) (/.f64 y.re (pow.f64 x.re 4))) -1/4)) (-.f64 (*.f64 y.re (*.f64 (log.f64 (pow.f64 x.re 2)) 1/2)) (*.f64 y.im (atan2.f64 x.im x.re))))
(-.f64 (+.f64 (*.f64 (pow.f64 x.im 4) (*.f64 (/.f64 y.re (pow.f64 x.re 4)) -1/4)) (*.f64 1/2 (+.f64 (*.f64 (pow.f64 x.im 2) (/.f64 y.re (pow.f64 x.re 2))) (*.f64 2 (log.f64 (pow.f64 x.re y.re)))))) (*.f64 y.im (atan2.f64 x.im x.re)))
(+.f64 (*.f64 (pow.f64 x.im 4) (*.f64 -1/4 (/.f64 y.re (pow.f64 x.re 4)))) (-.f64 (*.f64 (*.f64 y.re (+.f64 (/.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)) (log.f64 (pow.f64 x.re 2)))) 1/2) (*.f64 y.im (atan2.f64 x.im x.re))))
(+.f64 (*.f64 (pow.f64 x.im 4) (*.f64 -1/4 (/.f64 y.re (pow.f64 x.re 4)))) (-.f64 (*.f64 (*.f64 (+.f64 (/.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)) (log.f64 (pow.f64 x.re 2))) y.re) 1/2) (*.f64 y.im (atan2.f64 x.im x.re))))
(+.f64 (*.f64 (pow.f64 x.im 2) (*.f64 1/2 (/.f64 y.re (pow.f64 x.re 2)))) (+.f64 (*.f64 y.re (log.f64 x.re)) (-.f64 (*.f64 (pow.f64 x.im 4) (*.f64 -1/4 (/.f64 y.re (pow.f64 x.re 4)))) (*.f64 y.im (atan2.f64 x.im x.re)))))
(-.f64 (+.f64 (*.f64 1/2 (*.f64 y.re (log.f64 (pow.f64 x.re 2)))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 y.re (pow.f64 x.im 2)) (pow.f64 x.re 2))) (+.f64 (*.f64 -1/4 (/.f64 (*.f64 y.re (pow.f64 x.im 4)) (pow.f64 x.re 4))) (*.f64 1/6 (/.f64 (*.f64 y.re (pow.f64 x.im 6)) (pow.f64 x.re 6)))))) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (+.f64 (*.f64 (*.f64 (pow.f64 x.im 2) (/.f64 y.re (pow.f64 x.re 2))) 1/2) (+.f64 (+.f64 (*.f64 (*.f64 (pow.f64 x.im 4) (/.f64 y.re (pow.f64 x.re 4))) -1/4) (*.f64 (*.f64 (pow.f64 x.im 6) (/.f64 y.re (pow.f64 x.re 6))) 1/6)) (*.f64 y.re (*.f64 (log.f64 (pow.f64 x.re 2)) 1/2)))) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (+.f64 (+.f64 (*.f64 (pow.f64 x.im 4) (*.f64 (/.f64 y.re (pow.f64 x.re 4)) -1/4)) (*.f64 (pow.f64 x.im 6) (*.f64 (/.f64 y.re (pow.f64 x.re 6)) 1/6))) (*.f64 1/2 (+.f64 (*.f64 (pow.f64 x.im 2) (/.f64 y.re (pow.f64 x.re 2))) (*.f64 2 (log.f64 (pow.f64 x.re y.re)))))) (*.f64 y.im (atan2.f64 x.im x.re)))
(+.f64 (*.f64 (/.f64 y.re (pow.f64 x.re 6)) (*.f64 1/6 (pow.f64 x.im 6))) (+.f64 (*.f64 (pow.f64 x.im 4) (*.f64 -1/4 (/.f64 y.re (pow.f64 x.re 4)))) (-.f64 (*.f64 (*.f64 y.re (+.f64 (/.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)) (log.f64 (pow.f64 x.re 2)))) 1/2) (*.f64 y.im (atan2.f64 x.im x.re)))))
(+.f64 (*.f64 (pow.f64 x.im 6) (*.f64 1/6 (/.f64 y.re (pow.f64 x.re 6)))) (+.f64 (*.f64 (pow.f64 x.im 4) (*.f64 -1/4 (/.f64 y.re (pow.f64 x.re 4)))) (-.f64 (*.f64 (*.f64 (+.f64 (/.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)) (log.f64 (pow.f64 x.re 2))) y.re) 1/2) (*.f64 y.im (atan2.f64 x.im x.re)))))
(+.f64 (*.f64 (pow.f64 x.im 6) (*.f64 1/6 (/.f64 y.re (pow.f64 x.re 6)))) (+.f64 (*.f64 (pow.f64 x.im 2) (*.f64 1/2 (/.f64 y.re (pow.f64 x.re 2)))) (+.f64 (*.f64 y.re (log.f64 x.re)) (-.f64 (*.f64 (pow.f64 x.im 4) (*.f64 -1/4 (/.f64 y.re (pow.f64 x.re 4)))) (*.f64 y.im (atan2.f64 x.im x.re))))))
(-.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.im)) y.re)) (*.f64 (atan2.f64 x.im x.re) y.im))
(-.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.im)) y.re)) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (*.f64 (log.f64 (/.f64 1 x.im)) (neg.f64 y.re)) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (*.f64 (atan2.f64 x.im x.re) (neg.f64 y.im)) (*.f64 (log.f64 (/.f64 1 x.im)) y.re))
(-.f64 (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 x.re 2) y.re) (pow.f64 x.im 2))) (*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.im)) y.re))) (*.f64 (atan2.f64 x.im x.re) y.im))
(+.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.im)) y.re)) (-.f64 (*.f64 (*.f64 y.re (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2))) 1/2) (*.f64 y.im (atan2.f64 x.im x.re))))
(+.f64 (*.f64 (*.f64 (pow.f64 x.re 2) (/.f64 y.re (pow.f64 x.im 2))) 1/2) (-.f64 (*.f64 (log.f64 (/.f64 1 x.im)) (neg.f64 y.re)) (*.f64 y.im (atan2.f64 x.im x.re))))
(+.f64 (*.f64 (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)) (*.f64 y.re 1/2)) (-.f64 (*.f64 (log.f64 (/.f64 1 x.im)) (neg.f64 y.re)) (*.f64 y.im (atan2.f64 x.im x.re))))
(-.f64 (*.f64 y.re (+.f64 (neg.f64 (log.f64 (/.f64 1 x.im))) (*.f64 (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)) 1/2))) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (+.f64 (*.f64 -1/4 (/.f64 (*.f64 (pow.f64 x.re 4) y.re) (pow.f64 x.im 4))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 x.re 2) y.re) (pow.f64 x.im 2))) (*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.im)) y.re)))) (*.f64 (atan2.f64 x.im x.re) y.im))
(+.f64 (+.f64 (*.f64 (*.f64 y.re (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2))) 1/2) (*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.im)) y.re))) (-.f64 (*.f64 (*.f64 y.re (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4))) -1/4) (*.f64 y.im (atan2.f64 x.im x.re))))
(+.f64 (*.f64 y.re (*.f64 (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4)) -1/4)) (+.f64 (*.f64 (*.f64 (pow.f64 x.re 2) (/.f64 y.re (pow.f64 x.im 2))) 1/2) (-.f64 (*.f64 (log.f64 (/.f64 1 x.im)) (neg.f64 y.re)) (*.f64 y.im (atan2.f64 x.im x.re)))))
(+.f64 (*.f64 (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)) (*.f64 y.re 1/2)) (+.f64 (-.f64 (*.f64 (log.f64 (/.f64 1 x.im)) (neg.f64 y.re)) (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 (pow.f64 x.re 4) (*.f64 (/.f64 y.re (pow.f64 x.im 4)) -1/4))))
(+.f64 (*.f64 (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)) (*.f64 y.re 1/2)) (-.f64 (*.f64 y.re (+.f64 (neg.f64 (log.f64 (/.f64 1 x.im))) (*.f64 (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4)) -1/4))) (*.f64 y.im (atan2.f64 x.im x.re))))
(+.f64 (*.f64 (pow.f64 x.re 4) (*.f64 -1/4 (/.f64 y.re (pow.f64 x.im 4)))) (-.f64 (*.f64 y.re (+.f64 (neg.f64 (log.f64 (/.f64 1 x.im))) (*.f64 (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)) 1/2))) (*.f64 y.im (atan2.f64 x.im x.re))))
(-.f64 (+.f64 (*.f64 -1/4 (/.f64 (*.f64 (pow.f64 x.re 4) y.re) (pow.f64 x.im 4))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 x.re 2) y.re) (pow.f64 x.im 2))) (+.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.im)) y.re)) (*.f64 1/6 (/.f64 (*.f64 (pow.f64 x.re 6) y.re) (pow.f64 x.im 6)))))) (*.f64 (atan2.f64 x.im x.re) y.im))
(+.f64 (+.f64 (*.f64 (*.f64 y.re (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2))) 1/2) (+.f64 (*.f64 (*.f64 y.re (/.f64 (pow.f64 x.re 6) (pow.f64 x.im 6))) 1/6) (*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.im)) y.re)))) (-.f64 (*.f64 (*.f64 y.re (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4))) -1/4) (*.f64 y.im (atan2.f64 x.im x.re))))
(+.f64 (+.f64 (*.f64 y.re (*.f64 (/.f64 (pow.f64 x.re 6) (pow.f64 x.im 6)) 1/6)) (+.f64 (*.f64 (*.f64 (pow.f64 x.re 2) (/.f64 y.re (pow.f64 x.im 2))) 1/2) (*.f64 (log.f64 (/.f64 1 x.im)) (neg.f64 y.re)))) (-.f64 (*.f64 y.re (*.f64 (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4)) -1/4)) (*.f64 y.im (atan2.f64 x.im x.re))))
(+.f64 (+.f64 (*.f64 (pow.f64 x.re 4) (*.f64 (/.f64 y.re (pow.f64 x.im 4)) -1/4)) (+.f64 (*.f64 (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)) (*.f64 y.re 1/2)) (*.f64 (pow.f64 x.re 6) (*.f64 (/.f64 y.re (pow.f64 x.im 6)) 1/6)))) (-.f64 (*.f64 (log.f64 (/.f64 1 x.im)) (neg.f64 y.re)) (*.f64 y.im (atan2.f64 x.im x.re))))
(+.f64 (*.f64 y.re (+.f64 (*.f64 (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4)) -1/4) (*.f64 (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)) 1/2))) (-.f64 (*.f64 y.re (+.f64 (neg.f64 (log.f64 (/.f64 1 x.im))) (*.f64 (/.f64 (pow.f64 x.re 6) (pow.f64 x.im 6)) 1/6))) (*.f64 y.im (atan2.f64 x.im x.re))))
(-.f64 (*.f64 -1 (*.f64 y.re (log.f64 (/.f64 -1 x.im)))) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 -1 x.im)) y.re)) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (*.f64 (log.f64 (/.f64 -1 x.im)) (neg.f64 y.re)) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (*.f64 (atan2.f64 x.im x.re) (neg.f64 y.im)) (*.f64 (log.f64 (/.f64 -1 x.im)) y.re))
(-.f64 (+.f64 (*.f64 -1 (*.f64 y.re (log.f64 (/.f64 -1 x.im)))) (*.f64 1/2 (/.f64 (*.f64 (pow.f64 x.re 2) y.re) (pow.f64 x.im 2)))) (*.f64 y.im (atan2.f64 x.im x.re)))
(+.f64 (*.f64 (*.f64 y.re (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2))) 1/2) (-.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 -1 x.im)) y.re)) (*.f64 y.im (atan2.f64 x.im x.re))))
(+.f64 (*.f64 (*.f64 (pow.f64 x.re 2) (/.f64 y.re (pow.f64 x.im 2))) 1/2) (-.f64 (*.f64 (log.f64 (/.f64 -1 x.im)) (neg.f64 y.re)) (*.f64 y.im (atan2.f64 x.im x.re))))
(-.f64 (*.f64 y.re (+.f64 (neg.f64 (log.f64 (/.f64 -1 x.im))) (*.f64 (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)) 1/2))) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (+.f64 (*.f64 -1 (*.f64 y.re (log.f64 (/.f64 -1 x.im)))) (+.f64 (*.f64 -1/4 (/.f64 (*.f64 (pow.f64 x.re 4) y.re) (pow.f64 x.im 4))) (*.f64 1/2 (/.f64 (*.f64 (pow.f64 x.re 2) y.re) (pow.f64 x.im 2))))) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (+.f64 (+.f64 (*.f64 (*.f64 y.re (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2))) 1/2) (*.f64 (*.f64 y.re (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4))) -1/4)) (*.f64 -1 (*.f64 (log.f64 (/.f64 -1 x.im)) y.re))) (*.f64 y.im (atan2.f64 x.im x.re)))
(+.f64 (+.f64 (*.f64 (*.f64 (pow.f64 x.re 2) (/.f64 y.re (pow.f64 x.im 2))) 1/2) (*.f64 y.re (*.f64 (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4)) -1/4))) (-.f64 (*.f64 (log.f64 (/.f64 -1 x.im)) (neg.f64 y.re)) (*.f64 y.im (atan2.f64 x.im x.re))))
(+.f64 (*.f64 y.re (+.f64 (neg.f64 (log.f64 (/.f64 -1 x.im))) (*.f64 (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4)) -1/4))) (-.f64 (*.f64 (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)) (*.f64 y.re 1/2)) (*.f64 y.im (atan2.f64 x.im x.re))))
(-.f64 (*.f64 y.re (+.f64 (*.f64 (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4)) -1/4) (+.f64 (neg.f64 (log.f64 (/.f64 -1 x.im))) (*.f64 (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)) 1/2)))) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (*.f64 y.re (+.f64 (*.f64 (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)) 1/2) (+.f64 (neg.f64 (log.f64 (/.f64 -1 x.im))) (*.f64 (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4)) -1/4)))) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (+.f64 (*.f64 -1 (*.f64 y.re (log.f64 (/.f64 -1 x.im)))) (+.f64 (*.f64 -1/4 (/.f64 (*.f64 (pow.f64 x.re 4) y.re) (pow.f64 x.im 4))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 x.re 2) y.re) (pow.f64 x.im 2))) (*.f64 1/6 (/.f64 (*.f64 (pow.f64 x.re 6) y.re) (pow.f64 x.im 6)))))) (*.f64 y.im (atan2.f64 x.im x.re)))
(+.f64 (+.f64 (*.f64 (*.f64 y.re (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2))) 1/2) (+.f64 (*.f64 (*.f64 y.re (/.f64 (pow.f64 x.re 6) (pow.f64 x.im 6))) 1/6) (*.f64 (*.f64 y.re (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4))) -1/4))) (-.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 -1 x.im)) y.re)) (*.f64 y.im (atan2.f64 x.im x.re))))
(+.f64 (+.f64 (+.f64 (*.f64 (*.f64 (pow.f64 x.re 2) (/.f64 y.re (pow.f64 x.im 2))) 1/2) (*.f64 y.re (*.f64 (/.f64 (pow.f64 x.re 6) (pow.f64 x.im 6)) 1/6))) (*.f64 (log.f64 (/.f64 -1 x.im)) (neg.f64 y.re))) (-.f64 (*.f64 y.re (*.f64 (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4)) -1/4)) (*.f64 y.im (atan2.f64 x.im x.re))))
(+.f64 (*.f64 y.re (+.f64 (neg.f64 (log.f64 (/.f64 -1 x.im))) (*.f64 (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4)) -1/4))) (-.f64 (+.f64 (*.f64 (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)) (*.f64 y.re 1/2)) (*.f64 (pow.f64 x.re 6) (*.f64 (/.f64 y.re (pow.f64 x.im 6)) 1/6))) (*.f64 y.im (atan2.f64 x.im x.re))))
(+.f64 (*.f64 y.re (+.f64 (*.f64 (/.f64 (pow.f64 x.re 6) (pow.f64 x.im 6)) 1/6) (*.f64 (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)) 1/2))) (-.f64 (*.f64 y.re (+.f64 (neg.f64 (log.f64 (/.f64 -1 x.im))) (*.f64 (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4)) -1/4))) (*.f64 y.im (atan2.f64 x.im x.re))))
(+.f64 (*.f64 (pow.f64 x.re 6) (*.f64 1/6 (/.f64 y.re (pow.f64 x.im 6)))) (-.f64 (*.f64 y.re (+.f64 (*.f64 (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)) 1/2) (+.f64 (neg.f64 (log.f64 (/.f64 -1 x.im))) (*.f64 (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4)) -1/4)))) (*.f64 y.im (atan2.f64 x.im x.re))))
(*.f64 1/2 (*.f64 (log.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))) y.re))
(*.f64 (log.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))) (*.f64 y.re 1/2))
(*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)))))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 1/2 (*.f64 (log.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))) y.re)))
(+.f64 (*.f64 (log.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))) (*.f64 y.re 1/2)) (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(+.f64 (*.f64 (log.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))) (*.f64 y.re 1/2)) (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))
(+.f64 (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))))) (*.f64 (atan2.f64 x.im x.re) (neg.f64 y.im)))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 1/2 (*.f64 (log.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))) y.re)))
(+.f64 (*.f64 (log.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))) (*.f64 y.re 1/2)) (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(+.f64 (*.f64 (log.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))) (*.f64 y.re 1/2)) (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))
(+.f64 (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))))) (*.f64 (atan2.f64 x.im x.re) (neg.f64 y.im)))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 1/2 (*.f64 (log.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))) y.re)))
(+.f64 (*.f64 (log.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))) (*.f64 y.re 1/2)) (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(+.f64 (*.f64 (log.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))) (*.f64 y.re 1/2)) (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))
(+.f64 (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))))) (*.f64 (atan2.f64 x.im x.re) (neg.f64 y.im)))
(*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))
(neg.f64 (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))
(*.f64 (atan2.f64 x.im x.re) (neg.f64 y.im))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 1/2 (*.f64 (log.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))) y.re)))
(+.f64 (*.f64 (log.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))) (*.f64 y.re 1/2)) (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(+.f64 (*.f64 (log.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))) (*.f64 y.re 1/2)) (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))
(+.f64 (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))))) (*.f64 (atan2.f64 x.im x.re) (neg.f64 y.im)))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 1/2 (*.f64 (log.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))) y.re)))
(+.f64 (*.f64 (log.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))) (*.f64 y.re 1/2)) (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(+.f64 (*.f64 (log.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))) (*.f64 y.re 1/2)) (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))
(+.f64 (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))))) (*.f64 (atan2.f64 x.im x.re) (neg.f64 y.im)))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 1/2 (*.f64 (log.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))) y.re)))
(+.f64 (*.f64 (log.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))) (*.f64 y.re 1/2)) (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(+.f64 (*.f64 (log.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))) (*.f64 y.re 1/2)) (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))
(+.f64 (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))))) (*.f64 (atan2.f64 x.im x.re) (neg.f64 y.im)))
(*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))
(neg.f64 (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))
(*.f64 (atan2.f64 x.im x.re) (neg.f64 y.im))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 1/2 (*.f64 (log.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))) y.re)))
(+.f64 (*.f64 (log.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))) (*.f64 y.re 1/2)) (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(+.f64 (*.f64 (log.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))) (*.f64 y.re 1/2)) (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))
(+.f64 (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))))) (*.f64 (atan2.f64 x.im x.re) (neg.f64 y.im)))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 1/2 (*.f64 (log.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))) y.re)))
(+.f64 (*.f64 (log.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))) (*.f64 y.re 1/2)) (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(+.f64 (*.f64 (log.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))) (*.f64 y.re 1/2)) (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))
(+.f64 (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))))) (*.f64 (atan2.f64 x.im x.re) (neg.f64 y.im)))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 1/2 (*.f64 (log.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))) y.re)))
(+.f64 (*.f64 (log.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))) (*.f64 y.re 1/2)) (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(+.f64 (*.f64 (log.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))) (*.f64 y.re 1/2)) (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))
(+.f64 (*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))))) (*.f64 (atan2.f64 x.im x.re) (neg.f64 y.im)))
(+.f64 (log.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) 0)
(log.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))
(+.f64 0 (log.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))))
(log.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))
(+.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))))
(log.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))
(-.f64 (log.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) 0)
(log.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))
(*.f64 (log.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) 1)
(log.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))
(*.f64 2 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))))
(log.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))
(*.f64 1 (log.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))))
(log.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))
(*.f64 (log.f64 (pow.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) 2)) 1/2)
(log.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))
(*.f64 1/2 (log.f64 (pow.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) 2)))
(log.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))
(*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) 2)
(log.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))
(/.f64 (log.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) 1)
(log.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))
(/.f64 (log.f64 (pow.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) 2)) 2)
(log.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))
(/.f64 (*.f64 (log.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) 4) 4)
(log.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))
(/.f64 (*.f64 2 (*.f64 (log.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) 4)) 8)
(log.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))
(/.f64 (+.f64 (*.f64 2 (*.f64 (log.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) 4)) (*.f64 2 (*.f64 (log.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) 4))) 16)
(log.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))
(pow.f64 (log.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) 1)
(log.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))
(+.f64 (*.f64 (log.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) y.re) 0)
(*.f64 y.re (log.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) y.re))) (log.f64 (sqrt.f64 (pow.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) y.re))))
(*.f64 y.re (log.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))))
(+.f64 0 (*.f64 (log.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) y.re))
(*.f64 y.re (log.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))))
(-.f64 (*.f64 (log.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) y.re) 0)
(*.f64 y.re (log.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))))
(/.f64 (*.f64 (log.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) y.re) 1)
(*.f64 y.re (log.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))))
(/.f64 (*.f64 (log.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) (+.f64 y.re y.re)) 2)
(*.f64 y.re (log.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))))
(/.f64 (*.f64 (log.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) (*.f64 y.re 4)) 4)
(*.f64 y.re (log.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))))
(/.f64 (*.f64 (log.f64 (pow.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) 2)) (*.f64 y.re 4)) 8)
(*.f64 y.re (log.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))))
(/.f64 (*.f64 2 (*.f64 (log.f64 (pow.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) 2)) (*.f64 y.re 4))) 16)
(*.f64 y.re (log.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))))
(pow.f64 (*.f64 (log.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) y.re) 1)
(*.f64 y.re (log.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))))
(log.f64 (pow.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) y.re))
(*.f64 y.re (log.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) y.re))) (neg.f64 (*.f64 (atan2.f64 x.im x.re) y.im)))
(+.f64 (log.f64 (pow.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) y.re)) (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(+.f64 (log.f64 (pow.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) y.re)) (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))
(+.f64 (log.f64 (pow.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) y.re)) (*.f64 (atan2.f64 x.im x.re) (neg.f64 y.im)))
(+.f64 (*.f64 (atan2.f64 x.im x.re) (neg.f64 y.im)) (log.f64 (pow.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) y.re)))
(+.f64 (-.f64 (log.f64 (sqrt.f64 (pow.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) y.re))) (*.f64 (atan2.f64 x.im x.re) y.im)) 0)
(-.f64 (log.f64 (pow.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) y.re)) (*.f64 y.im (atan2.f64 x.im x.re)))
(+.f64 0 (-.f64 (log.f64 (sqrt.f64 (pow.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) y.re))) (*.f64 (atan2.f64 x.im x.re) y.im)))
(-.f64 (log.f64 (pow.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) y.re)) (*.f64 y.im (atan2.f64 x.im x.re)))
(+.f64 (neg.f64 (*.f64 (atan2.f64 x.im x.re) y.im)) (log.f64 (sqrt.f64 (pow.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) y.re))))
(+.f64 (log.f64 (pow.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) y.re)) (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(+.f64 (log.f64 (pow.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) y.re)) (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))
(+.f64 (log.f64 (pow.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) y.re)) (*.f64 (atan2.f64 x.im x.re) (neg.f64 y.im)))
(+.f64 (*.f64 (atan2.f64 x.im x.re) (neg.f64 y.im)) (log.f64 (pow.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) y.re)))
(+.f64 -1 (-.f64 (log.f64 (sqrt.f64 (pow.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) y.re))) (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) 1)))
(-.f64 (log.f64 (pow.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) y.re)) (*.f64 y.im (atan2.f64 x.im x.re)))
(+.f64 (-.f64 (log.f64 (sqrt.f64 (pow.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) y.re))) (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) 1)) -1)
(-.f64 (log.f64 (pow.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) y.re)) (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 2 (/.f64 (-.f64 (log.f64 (sqrt.f64 (pow.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) y.re))) (*.f64 (atan2.f64 x.im x.re) y.im)) 2))
(-.f64 (log.f64 (pow.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) y.re)) (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 (-.f64 (log.f64 (sqrt.f64 (pow.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) y.re))) (*.f64 (atan2.f64 x.im x.re) y.im)) 1)
(-.f64 (log.f64 (pow.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) y.re)) (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 1 (-.f64 (log.f64 (sqrt.f64 (pow.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) y.re))) (*.f64 (atan2.f64 x.im x.re) y.im)))
(-.f64 (log.f64 (pow.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) y.re)) (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 (*.f64 2 (-.f64 (log.f64 (sqrt.f64 (pow.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) y.re))) (*.f64 (atan2.f64 x.im x.re) y.im))) 1/2)
(-.f64 (log.f64 (pow.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) y.re)) (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (log.f64 (sqrt.f64 (pow.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) y.re)))) -1)
(-.f64 (log.f64 (pow.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) y.re)) (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 1/2 (*.f64 2 (-.f64 (log.f64 (sqrt.f64 (pow.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) y.re))) (*.f64 (atan2.f64 x.im x.re) y.im))))
(-.f64 (log.f64 (pow.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) y.re)) (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 1/2 (-.f64 (*.f64 (log.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) y.re) (*.f64 (atan2.f64 x.im x.re) (+.f64 y.im y.im))))
(*.f64 1/2 (-.f64 (*.f64 y.re (log.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) (*.f64 (atan2.f64 x.im x.re) (+.f64 y.im y.im))))
(*.f64 -1 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (log.f64 (sqrt.f64 (pow.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) y.re)))))
(-.f64 (log.f64 (pow.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) y.re)) (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 (/.f64 (-.f64 (log.f64 (sqrt.f64 (pow.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) y.re))) (*.f64 (atan2.f64 x.im x.re) y.im)) 2) 2)
(-.f64 (log.f64 (pow.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) y.re)) (*.f64 y.im (atan2.f64 x.im x.re)))
(/.f64 (-.f64 (log.f64 (sqrt.f64 (pow.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) y.re))) (*.f64 (atan2.f64 x.im x.re) y.im)) 1)
(-.f64 (log.f64 (pow.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) y.re)) (*.f64 y.im (atan2.f64 x.im x.re)))
(/.f64 (*.f64 2 (-.f64 (log.f64 (sqrt.f64 (pow.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) y.re))) (*.f64 (atan2.f64 x.im x.re) y.im))) 2)
(-.f64 (log.f64 (pow.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) y.re)) (*.f64 y.im (atan2.f64 x.im x.re)))
(/.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (log.f64 (sqrt.f64 (pow.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) y.re)))) -1)
(-.f64 (log.f64 (pow.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) y.re)) (*.f64 y.im (atan2.f64 x.im x.re)))
(/.f64 (*.f64 (-.f64 (log.f64 (sqrt.f64 (pow.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) y.re))) (*.f64 (atan2.f64 x.im x.re) y.im)) 4) 4)
(-.f64 (log.f64 (pow.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) y.re)) (*.f64 y.im (atan2.f64 x.im x.re)))
(/.f64 (*.f64 2 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (log.f64 (sqrt.f64 (pow.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) y.re))))) -2)
(-.f64 (log.f64 (pow.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) y.re)) (*.f64 y.im (atan2.f64 x.im x.re)))
(/.f64 (*.f64 2 (*.f64 (-.f64 (log.f64 (sqrt.f64 (pow.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) y.re))) (*.f64 (atan2.f64 x.im x.re) y.im)) 4)) 8)
(-.f64 (log.f64 (pow.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) y.re)) (*.f64 y.im (atan2.f64 x.im x.re)))
(/.f64 (+.f64 (*.f64 2 (*.f64 (-.f64 (log.f64 (sqrt.f64 (pow.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) y.re))) (*.f64 (atan2.f64 x.im x.re) y.im)) 4)) (*.f64 2 (*.f64 (-.f64 (log.f64 (sqrt.f64 (pow.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) y.re))) (*.f64 (atan2.f64 x.im x.re) y.im)) 4))) 16)
(-.f64 (log.f64 (pow.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) y.re)) (*.f64 y.im (atan2.f64 x.im x.re)))
(pow.f64 (-.f64 (log.f64 (sqrt.f64 (pow.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) y.re))) (*.f64 (atan2.f64 x.im x.re) y.im)) 1)
(-.f64 (log.f64 (pow.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) y.re)) (*.f64 y.im (atan2.f64 x.im x.re)))
(neg.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (log.f64 (sqrt.f64 (pow.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) y.re)))))
(-.f64 (log.f64 (pow.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) y.re)) (*.f64 y.im (atan2.f64 x.im x.re)))

localize11.0ms (0%)

Local error

Found 1 expressions with local error:

NewErrorProgram
2.6b
(*.f64 (atan2.f64 x.im x.re) (neg.f64 y.im))
Compiler

Compiled 35 to 11 computations (68.6% saved)

series2.0ms (0%)

Counts
1 → 36
Calls

9 calls:

TimeVariablePointExpression
0.0ms
x.im
@0
(*.f64 (atan2.f64 x.im x.re) (neg.f64 y.im))
0.0ms
x.im
@-inf
(*.f64 (atan2.f64 x.im x.re) (neg.f64 y.im))
0.0ms
x.re
@-inf
(*.f64 (atan2.f64 x.im x.re) (neg.f64 y.im))
0.0ms
x.im
@inf
(*.f64 (atan2.f64 x.im x.re) (neg.f64 y.im))
0.0ms
x.re
@inf
(*.f64 (atan2.f64 x.im x.re) (neg.f64 y.im))

rewrite168.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
1408×exponential.json-3
1408×rational.json-1
1408×rational.json-2
1408×rational.json-4
1408×rational.json-3
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0917
16117
214017
330017
458817
5139017
6296317
7505917
8642317
9755217
10781817
Stop Event
node limit
Counts
1 → 28
Calls
Call 1
Inputs
(*.f64 (atan2.f64 x.im x.re) (neg.f64 y.im))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (atan2.f64 x.im x.re) (neg.f64 y.im)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (atan2.f64 x.im x.re) (neg.f64 y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 -1 (-.f64 1 (*.f64 (atan2.f64 x.im x.re) y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 -2 (-.f64 1 (+.f64 (*.f64 (atan2.f64 x.im x.re) y.im) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (atan2.f64 x.im x.re) (*.f64 y.im -1/2)) (*.f64 (atan2.f64 x.im x.re) (*.f64 y.im -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 1 (*.f64 (atan2.f64 x.im x.re) y.im)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (atan2.f64 x.im x.re) -1/2) y.im) (*.f64 (*.f64 (atan2.f64 x.im x.re) -1/2) y.im))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (neg.f64 (atan2.f64 x.im x.re)) 1/2) y.im) (*.f64 (*.f64 (neg.f64 (atan2.f64 x.im x.re)) 1/2) y.im))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (atan2.f64 x.im x.re) (neg.f64 y.im)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (*.f64 (atan2.f64 x.im x.re) y.im))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (+.f64 1 (+.f64 (*.f64 (atan2.f64 x.im x.re) y.im) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 1 (+.f64 1 (*.f64 (atan2.f64 x.im x.re) y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 -1 (+.f64 (*.f64 (atan2.f64 x.im x.re) y.im) -1))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 1 (*.f64 (atan2.f64 x.im x.re) y.im)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (atan2.f64 x.im x.re) (neg.f64 y.im)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (atan2.f64 x.im x.re) (*.f64 y.im -2)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (atan2.f64 x.im x.re) (*.f64 y.im -4)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (atan2.f64 x.im x.re) y.im) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 -8 (*.f64 (atan2.f64 x.im x.re) y.im)) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (atan2.f64 x.im x.re) (+.f64 y.im y.im)) -2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 -8 (*.f64 (atan2.f64 x.im x.re) y.im))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (atan2.f64 x.im x.re) (+.f64 y.im y.im))) -4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 -8 (*.f64 (atan2.f64 x.im x.re) y.im)))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 -8 (*.f64 (atan2.f64 x.im x.re) y.im))))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 -8 (*.f64 (atan2.f64 x.im x.re) y.im)))))) 128)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (atan2.f64 x.im x.re) (neg.f64 y.im)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (*.f64 (atan2.f64 x.im x.re) y.im))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (+.f64 1 (+.f64 (*.f64 (atan2.f64 x.im x.re) y.im) -1)))))))

simplify226.0ms (0.8%)

Algorithm
egg-herbie
Rules
1678×rational.json-simplify-35
1338×exponential.json-simplify-26
1330×rational.json-simplify-52
1032×rational.json-simplify-53
954×rational.json-simplify-1
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0791088
11891088
23461088
38941088
426781088
537371088
646431088
759781088
870311088
978061088
1078171088
Stop Event
node limit
Counts
64 → 30
Calls
Call 1
Inputs
(*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))
(+.f64 (*.f64 (atan2.f64 x.im x.re) (neg.f64 y.im)) 0)
(+.f64 0 (*.f64 (atan2.f64 x.im x.re) (neg.f64 y.im)))
(+.f64 -1 (-.f64 1 (*.f64 (atan2.f64 x.im x.re) y.im)))
(+.f64 -2 (-.f64 1 (+.f64 (*.f64 (atan2.f64 x.im x.re) y.im) -1)))
(+.f64 (*.f64 (atan2.f64 x.im x.re) (*.f64 y.im -1/2)) (*.f64 (atan2.f64 x.im x.re) (*.f64 y.im -1/2)))
(+.f64 (-.f64 1 (*.f64 (atan2.f64 x.im x.re) y.im)) -1)
(+.f64 (*.f64 (*.f64 (atan2.f64 x.im x.re) -1/2) y.im) (*.f64 (*.f64 (atan2.f64 x.im x.re) -1/2) y.im))
(+.f64 (*.f64 (*.f64 (neg.f64 (atan2.f64 x.im x.re)) 1/2) y.im) (*.f64 (*.f64 (neg.f64 (atan2.f64 x.im x.re)) 1/2) y.im))
(-.f64 (*.f64 (atan2.f64 x.im x.re) (neg.f64 y.im)) 0)
(-.f64 0 (*.f64 (atan2.f64 x.im x.re) y.im))
(-.f64 0 (+.f64 1 (+.f64 (*.f64 (atan2.f64 x.im x.re) y.im) -1)))
(-.f64 1 (+.f64 1 (*.f64 (atan2.f64 x.im x.re) y.im)))
(-.f64 -1 (+.f64 (*.f64 (atan2.f64 x.im x.re) y.im) -1))
(-.f64 (-.f64 1 (*.f64 (atan2.f64 x.im x.re) y.im)) 1)
(/.f64 (*.f64 (atan2.f64 x.im x.re) (neg.f64 y.im)) 1)
(/.f64 (*.f64 (atan2.f64 x.im x.re) (*.f64 y.im -2)) 2)
(/.f64 (*.f64 (atan2.f64 x.im x.re) (*.f64 y.im -4)) 4)
(/.f64 (*.f64 (atan2.f64 x.im x.re) y.im) -1)
(/.f64 (*.f64 -8 (*.f64 (atan2.f64 x.im x.re) y.im)) 8)
(/.f64 (*.f64 (atan2.f64 x.im x.re) (+.f64 y.im y.im)) -2)
(/.f64 (*.f64 2 (*.f64 -8 (*.f64 (atan2.f64 x.im x.re) y.im))) 16)
(/.f64 (*.f64 2 (*.f64 (atan2.f64 x.im x.re) (+.f64 y.im y.im))) -4)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 -8 (*.f64 (atan2.f64 x.im x.re) y.im)))) 32)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 -8 (*.f64 (atan2.f64 x.im x.re) y.im))))) 64)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 -8 (*.f64 (atan2.f64 x.im x.re) y.im)))))) 128)
(pow.f64 (*.f64 (atan2.f64 x.im x.re) (neg.f64 y.im)) 1)
(neg.f64 (*.f64 (atan2.f64 x.im x.re) y.im))
(neg.f64 (+.f64 1 (+.f64 (*.f64 (atan2.f64 x.im x.re) y.im) -1)))
Outputs
(*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))
(*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))
(*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))
(*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))
(*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))
(*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))
(*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))
(*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))
(*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))
(*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))
(*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))
(*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))
(*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))
(*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))
(*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))
(*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))
(*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))
(*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))
(*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))
(*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))
(*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))
(*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))
(*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))
(*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))
(*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))
(*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))
(*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))
(*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))
(*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))
(*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))
(*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))
(*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))
(*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))
(*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))
(*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))
(*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))
(+.f64 (*.f64 (atan2.f64 x.im x.re) (neg.f64 y.im)) 0)
(*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))
(+.f64 0 (*.f64 (atan2.f64 x.im x.re) (neg.f64 y.im)))
(*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))
(+.f64 -1 (-.f64 1 (*.f64 (atan2.f64 x.im x.re) y.im)))
(*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))
(+.f64 -2 (-.f64 1 (+.f64 (*.f64 (atan2.f64 x.im x.re) y.im) -1)))
(*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))
(+.f64 (*.f64 (atan2.f64 x.im x.re) (*.f64 y.im -1/2)) (*.f64 (atan2.f64 x.im x.re) (*.f64 y.im -1/2)))
(*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))
(+.f64 (-.f64 1 (*.f64 (atan2.f64 x.im x.re) y.im)) -1)
(*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))
(+.f64 (*.f64 (*.f64 (atan2.f64 x.im x.re) -1/2) y.im) (*.f64 (*.f64 (atan2.f64 x.im x.re) -1/2) y.im))
(*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))
(+.f64 (*.f64 (*.f64 (neg.f64 (atan2.f64 x.im x.re)) 1/2) y.im) (*.f64 (*.f64 (neg.f64 (atan2.f64 x.im x.re)) 1/2) y.im))
(*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))
(-.f64 (*.f64 (atan2.f64 x.im x.re) (neg.f64 y.im)) 0)
(*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))
(-.f64 0 (*.f64 (atan2.f64 x.im x.re) y.im))
(*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))
(-.f64 0 (+.f64 1 (+.f64 (*.f64 (atan2.f64 x.im x.re) y.im) -1)))
(*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))
(-.f64 1 (+.f64 1 (*.f64 (atan2.f64 x.im x.re) y.im)))
(*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))
(-.f64 -1 (+.f64 (*.f64 (atan2.f64 x.im x.re) y.im) -1))
(*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))
(-.f64 (-.f64 1 (*.f64 (atan2.f64 x.im x.re) y.im)) 1)
(*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))
(/.f64 (*.f64 (atan2.f64 x.im x.re) (neg.f64 y.im)) 1)
(*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))
(/.f64 (*.f64 (atan2.f64 x.im x.re) (*.f64 y.im -2)) 2)
(*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))
(/.f64 (*.f64 (atan2.f64 x.im x.re) (*.f64 y.im -4)) 4)
(*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))
(/.f64 (*.f64 (atan2.f64 x.im x.re) y.im) -1)
(*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))
(/.f64 (*.f64 -8 (*.f64 (atan2.f64 x.im x.re) y.im)) 8)
(*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))
(/.f64 (*.f64 (atan2.f64 x.im x.re) (+.f64 y.im y.im)) -2)
(*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))
(/.f64 (*.f64 2 (*.f64 -8 (*.f64 (atan2.f64 x.im x.re) y.im))) 16)
(*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))
(/.f64 (*.f64 2 (*.f64 (atan2.f64 x.im x.re) (+.f64 y.im y.im))) -4)
(*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 -8 (*.f64 (atan2.f64 x.im x.re) y.im)))) 32)
(*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 -8 (*.f64 (atan2.f64 x.im x.re) y.im))))) 64)
(*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 -8 (*.f64 (atan2.f64 x.im x.re) y.im)))))) 128)
(*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))
(pow.f64 (*.f64 (atan2.f64 x.im x.re) (neg.f64 y.im)) 1)
(*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))
(neg.f64 (*.f64 (atan2.f64 x.im x.re) y.im))
(*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))
(neg.f64 (+.f64 1 (+.f64 (*.f64 (atan2.f64 x.im x.re) y.im) -1)))
(*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))

localize16.0ms (0.1%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))
0.1b
(*.f64 (log.f64 x.re) y.re)
2.6b
(*.f64 (atan2.f64 x.im x.re) y.im)
Compiler

Compiled 57 to 13 computations (77.2% saved)

series64.0ms (0.2%)

Counts
1 → 48
Calls

12 calls:

TimeVariablePointExpression
56.0ms
y.im
@0
(-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))
6.0ms
x.im
@0
(-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))
0.0ms
x.re
@-inf
(-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))
0.0ms
x.im
@inf
(-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))
0.0ms
x.re
@0
(-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))

rewrite112.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
1690×rational.json-1
1690×rational.json-2
1690×rational.json-3
1640×rational.json-4
916×rational.json-simplify-35
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01229
17629
215629
333529
462729
5145829
6338929
7665929
Stop Event
node limit
Counts
1 → 42
Calls
Call 1
Inputs
(-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (log.f64 x.re) y.re) (neg.f64 (*.f64 (atan2.f64 x.im x.re) y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 1 (+.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) -1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 (*.f64 (atan2.f64 x.im x.re) y.im)) (*.f64 (log.f64 x.re) y.re))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 -1 (+.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (sqrt.f64 x.re) y.re)) (-.f64 (log.f64 (pow.f64 (sqrt.f64 x.re) y.re)) (*.f64 (atan2.f64 x.im x.re) y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 x.re) y.re)) -2) (/.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 x.re) y.re)) -2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 1 (*.f64 (atan2.f64 x.im x.re) y.im)) (+.f64 (*.f64 (log.f64 x.re) y.re) -1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 -2 (+.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (*.f64 (log.f64 x.re) y.re) 1) (+.f64 (neg.f64 (*.f64 (atan2.f64 x.im x.re) y.im)) -1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 2) -2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (/.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 x.re) y.re)) -2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 x.re) y.re)) -2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 x.re) y.re)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (/.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 x.re) y.re)) -4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (-.f64 (/.f64 (*.f64 (log.f64 x.re) y.re) 4) (/.f64 (*.f64 (atan2.f64 x.im x.re) y.im) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 x.re) y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 x.re) y.re)) -2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 x.re) y.re)) -2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (-.f64 (*.f64 (log.f64 x.re) (*.f64 y.re 4)) (*.f64 (atan2.f64 x.im x.re) (*.f64 y.im 4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 x.re) y.re)) -4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 x.re) y.re)) -2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 x.re) y.re)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 x.re) y.re))) -2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 8) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 x.re) y.re)) 4) -4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 8)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 x.re) y.re)) 4)) -8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 8))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 x.re) y.re)) 4)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 8))) (*.f64 2 (*.f64 2 (*.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 8)))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (neg.f64 (*.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 x.re) y.re)) 4)) (neg.f64 (*.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 x.re) y.re)) 4))) 8)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 x.re) y.re)))))))

simplify280.0ms (1%)

Algorithm
egg-herbie
Rules
2144×rational.json-simplify-35
1484×rational.json-simplify-52
1254×rational.json-simplify-2
1200×rational.json-simplify-1
600×rational.json-simplify-42
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01202698
12522682
25292682
313372682
426352682
535322682
644992682
750132682
857482682
972132682
1077472682
1179332682
1279332682
Stop Event
node limit
Counts
90 → 59
Calls
Call 1
Inputs
(-.f64 (*.f64 y.re (log.f64 x.re)) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (*.f64 y.re (log.f64 x.re)) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (*.f64 y.re (log.f64 x.re)) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (*.f64 y.re (log.f64 x.re)) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (*.f64 -1 (*.f64 y.re (log.f64 (/.f64 1 x.re)))) (*.f64 (atan2.f64 x.im x.re) y.im))
(-.f64 (*.f64 -1 (*.f64 y.re (log.f64 (/.f64 1 x.re)))) (*.f64 (atan2.f64 x.im x.re) y.im))
(-.f64 (*.f64 -1 (*.f64 y.re (log.f64 (/.f64 1 x.re)))) (*.f64 (atan2.f64 x.im x.re) y.im))
(-.f64 (*.f64 -1 (*.f64 y.re (log.f64 (/.f64 1 x.re)))) (*.f64 (atan2.f64 x.im x.re) y.im))
(-.f64 (*.f64 y.re (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x.re))))) (*.f64 (atan2.f64 x.im x.re) y.im))
(-.f64 (*.f64 y.re (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x.re))))) (*.f64 (atan2.f64 x.im x.re) y.im))
(-.f64 (*.f64 y.re (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x.re))))) (*.f64 (atan2.f64 x.im x.re) y.im))
(-.f64 (*.f64 y.re (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x.re))))) (*.f64 (atan2.f64 x.im x.re) y.im))
(*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 y.re (log.f64 x.re)))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 y.re (log.f64 x.re)))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 y.re (log.f64 x.re)))
(*.f64 y.re (log.f64 x.re))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 y.re (log.f64 x.re)))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 y.re (log.f64 x.re)))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 y.re (log.f64 x.re)))
(*.f64 y.re (log.f64 x.re))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 y.re (log.f64 x.re)))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 y.re (log.f64 x.re)))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 y.re (log.f64 x.re)))
(-.f64 (*.f64 y.re (log.f64 x.re)) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (*.f64 y.re (log.f64 x.re)) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (*.f64 y.re (log.f64 x.re)) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (*.f64 y.re (log.f64 x.re)) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (*.f64 y.re (log.f64 x.re)) (*.f64 (atan2.f64 x.im x.re) y.im))
(-.f64 (*.f64 y.re (log.f64 x.re)) (*.f64 (atan2.f64 x.im x.re) y.im))
(-.f64 (*.f64 y.re (log.f64 x.re)) (*.f64 (atan2.f64 x.im x.re) y.im))
(-.f64 (*.f64 y.re (log.f64 x.re)) (*.f64 (atan2.f64 x.im x.re) y.im))
(-.f64 (*.f64 y.re (log.f64 x.re)) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (*.f64 y.re (log.f64 x.re)) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (*.f64 y.re (log.f64 x.re)) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (*.f64 y.re (log.f64 x.re)) (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 y.re (log.f64 x.re))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 y.re (log.f64 x.re)))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 y.re (log.f64 x.re)))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 y.re (log.f64 x.re)))
(*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 y.re (log.f64 x.re)))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 y.re (log.f64 x.re)))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 y.re (log.f64 x.re)))
(*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 y.re (log.f64 x.re)))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 y.re (log.f64 x.re)))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 y.re (log.f64 x.re)))
(+.f64 (*.f64 (log.f64 x.re) y.re) (neg.f64 (*.f64 (atan2.f64 x.im x.re) y.im)))
(+.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 0)
(+.f64 0 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)))
(+.f64 1 (+.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) -1))
(+.f64 (neg.f64 (*.f64 (atan2.f64 x.im x.re) y.im)) (*.f64 (log.f64 x.re) y.re))
(+.f64 -1 (+.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 1))
(+.f64 (+.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 1) -1)
(+.f64 (log.f64 (pow.f64 (sqrt.f64 x.re) y.re)) (-.f64 (log.f64 (pow.f64 (sqrt.f64 x.re) y.re)) (*.f64 (atan2.f64 x.im x.re) y.im)))
(+.f64 (/.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 x.re) y.re)) -2) (/.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 x.re) y.re)) -2))
(+.f64 (-.f64 1 (*.f64 (atan2.f64 x.im x.re) y.im)) (+.f64 (*.f64 (log.f64 x.re) y.re) -1))
(+.f64 -2 (+.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 2))
(+.f64 (+.f64 (*.f64 (log.f64 x.re) y.re) 1) (+.f64 (neg.f64 (*.f64 (atan2.f64 x.im x.re) y.im)) -1))
(+.f64 (+.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 2) -2)
(*.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 1)
(*.f64 1 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)))
(*.f64 2 (/.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 x.re) y.re)) -2))
(*.f64 (*.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 x.re) y.re)) -2) 1/2)
(*.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 x.re) y.re)) -1)
(*.f64 4 (/.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 x.re) y.re)) -4))
(*.f64 4 (-.f64 (/.f64 (*.f64 (log.f64 x.re) y.re) 4) (/.f64 (*.f64 (atan2.f64 x.im x.re) y.im) 4)))
(*.f64 (*.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 4) 1/4)
(*.f64 -1 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 x.re) y.re)))
(*.f64 1/2 (*.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 x.re) y.re)) -2))
(*.f64 (/.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 x.re) y.re)) -2) 2)
(*.f64 1/4 (*.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 4))
(*.f64 1/4 (-.f64 (*.f64 (log.f64 x.re) (*.f64 y.re 4)) (*.f64 (atan2.f64 x.im x.re) (*.f64 y.im 4))))
(*.f64 (/.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 x.re) y.re)) -4) 4)
(/.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 1)
(/.f64 (*.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 x.re) y.re)) -2) 2)
(/.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 x.re) y.re)) -1)
(/.f64 (*.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 4) 4)
(/.f64 (*.f64 2 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 x.re) y.re))) -2)
(/.f64 (*.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 8) 8)
(/.f64 (*.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 x.re) y.re)) 4) -4)
(/.f64 (*.f64 2 (*.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 8)) 16)
(/.f64 (*.f64 2 (*.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 x.re) y.re)) 4)) -8)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 8))) 32)
(/.f64 (neg.f64 (*.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 x.re) y.re)) 4)) 4)
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 8))) (*.f64 2 (*.f64 2 (*.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 8)))) 64)
(/.f64 (+.f64 (neg.f64 (*.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 x.re) y.re)) 4)) (neg.f64 (*.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 x.re) y.re)) 4))) 8)
(pow.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 1)
(neg.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 x.re) y.re)))
Outputs
(-.f64 (*.f64 y.re (log.f64 x.re)) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (*.f64 y.re (log.f64 x.re)) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (*.f64 y.re (log.f64 x.re)) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (*.f64 y.re (log.f64 x.re)) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (*.f64 -1 (*.f64 y.re (log.f64 (/.f64 1 x.re)))) (*.f64 (atan2.f64 x.im x.re) y.im))
(-.f64 (*.f64 y.re (*.f64 (log.f64 (/.f64 1 x.re)) -1)) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (*.f64 y.re (neg.f64 (log.f64 (/.f64 1 x.re)))) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (*.f64 (log.f64 (/.f64 1 x.re)) (neg.f64 y.re)) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (*.f64 -1 (*.f64 y.re (log.f64 (/.f64 1 x.re)))) (*.f64 (atan2.f64 x.im x.re) y.im))
(-.f64 (*.f64 y.re (*.f64 (log.f64 (/.f64 1 x.re)) -1)) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (*.f64 y.re (neg.f64 (log.f64 (/.f64 1 x.re)))) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (*.f64 (log.f64 (/.f64 1 x.re)) (neg.f64 y.re)) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (*.f64 -1 (*.f64 y.re (log.f64 (/.f64 1 x.re)))) (*.f64 (atan2.f64 x.im x.re) y.im))
(-.f64 (*.f64 y.re (*.f64 (log.f64 (/.f64 1 x.re)) -1)) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (*.f64 y.re (neg.f64 (log.f64 (/.f64 1 x.re)))) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (*.f64 (log.f64 (/.f64 1 x.re)) (neg.f64 y.re)) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (*.f64 -1 (*.f64 y.re (log.f64 (/.f64 1 x.re)))) (*.f64 (atan2.f64 x.im x.re) y.im))
(-.f64 (*.f64 y.re (*.f64 (log.f64 (/.f64 1 x.re)) -1)) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (*.f64 y.re (neg.f64 (log.f64 (/.f64 1 x.re)))) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (*.f64 (log.f64 (/.f64 1 x.re)) (neg.f64 y.re)) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (*.f64 y.re (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x.re))))) (*.f64 (atan2.f64 x.im x.re) y.im))
(-.f64 (*.f64 y.re (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x.re))))) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (*.f64 y.re (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 x.re))))) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (*.f64 y.re (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x.re))))) (*.f64 (atan2.f64 x.im x.re) y.im))
(-.f64 (*.f64 y.re (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x.re))))) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (*.f64 y.re (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 x.re))))) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (*.f64 y.re (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x.re))))) (*.f64 (atan2.f64 x.im x.re) y.im))
(-.f64 (*.f64 y.re (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x.re))))) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (*.f64 y.re (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 x.re))))) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (*.f64 y.re (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x.re))))) (*.f64 (atan2.f64 x.im x.re) y.im))
(-.f64 (*.f64 y.re (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x.re))))) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (*.f64 y.re (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 x.re))))) (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))
(neg.f64 (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 y.re (log.f64 x.re)))
(-.f64 (*.f64 y.re (log.f64 x.re)) (*.f64 y.im (atan2.f64 x.im x.re)))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 y.re (log.f64 x.re)))
(-.f64 (*.f64 y.re (log.f64 x.re)) (*.f64 y.im (atan2.f64 x.im x.re)))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 y.re (log.f64 x.re)))
(-.f64 (*.f64 y.re (log.f64 x.re)) (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 y.re (log.f64 x.re))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 y.re (log.f64 x.re)))
(-.f64 (*.f64 y.re (log.f64 x.re)) (*.f64 y.im (atan2.f64 x.im x.re)))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 y.re (log.f64 x.re)))
(-.f64 (*.f64 y.re (log.f64 x.re)) (*.f64 y.im (atan2.f64 x.im x.re)))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 y.re (log.f64 x.re)))
(-.f64 (*.f64 y.re (log.f64 x.re)) (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 y.re (log.f64 x.re))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 y.re (log.f64 x.re)))
(-.f64 (*.f64 y.re (log.f64 x.re)) (*.f64 y.im (atan2.f64 x.im x.re)))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 y.re (log.f64 x.re)))
(-.f64 (*.f64 y.re (log.f64 x.re)) (*.f64 y.im (atan2.f64 x.im x.re)))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 y.re (log.f64 x.re)))
(-.f64 (*.f64 y.re (log.f64 x.re)) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (*.f64 y.re (log.f64 x.re)) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (*.f64 y.re (log.f64 x.re)) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (*.f64 y.re (log.f64 x.re)) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (*.f64 y.re (log.f64 x.re)) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (*.f64 y.re (log.f64 x.re)) (*.f64 (atan2.f64 x.im x.re) y.im))
(-.f64 (*.f64 y.re (log.f64 x.re)) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (*.f64 y.re (log.f64 x.re)) (*.f64 (atan2.f64 x.im x.re) y.im))
(-.f64 (*.f64 y.re (log.f64 x.re)) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (*.f64 y.re (log.f64 x.re)) (*.f64 (atan2.f64 x.im x.re) y.im))
(-.f64 (*.f64 y.re (log.f64 x.re)) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (*.f64 y.re (log.f64 x.re)) (*.f64 (atan2.f64 x.im x.re) y.im))
(-.f64 (*.f64 y.re (log.f64 x.re)) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (*.f64 y.re (log.f64 x.re)) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (*.f64 y.re (log.f64 x.re)) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (*.f64 y.re (log.f64 x.re)) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (*.f64 y.re (log.f64 x.re)) (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 y.re (log.f64 x.re))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 y.re (log.f64 x.re)))
(-.f64 (*.f64 y.re (log.f64 x.re)) (*.f64 y.im (atan2.f64 x.im x.re)))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 y.re (log.f64 x.re)))
(-.f64 (*.f64 y.re (log.f64 x.re)) (*.f64 y.im (atan2.f64 x.im x.re)))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 y.re (log.f64 x.re)))
(-.f64 (*.f64 y.re (log.f64 x.re)) (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))
(neg.f64 (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 y.re (log.f64 x.re)))
(-.f64 (*.f64 y.re (log.f64 x.re)) (*.f64 y.im (atan2.f64 x.im x.re)))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 y.re (log.f64 x.re)))
(-.f64 (*.f64 y.re (log.f64 x.re)) (*.f64 y.im (atan2.f64 x.im x.re)))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 y.re (log.f64 x.re)))
(-.f64 (*.f64 y.re (log.f64 x.re)) (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))
(neg.f64 (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 y.re (log.f64 x.re)))
(-.f64 (*.f64 y.re (log.f64 x.re)) (*.f64 y.im (atan2.f64 x.im x.re)))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 y.re (log.f64 x.re)))
(-.f64 (*.f64 y.re (log.f64 x.re)) (*.f64 y.im (atan2.f64 x.im x.re)))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 y.re (log.f64 x.re)))
(-.f64 (*.f64 y.re (log.f64 x.re)) (*.f64 y.im (atan2.f64 x.im x.re)))
(+.f64 (*.f64 (log.f64 x.re) y.re) (neg.f64 (*.f64 (atan2.f64 x.im x.re) y.im)))
(-.f64 (*.f64 y.re (log.f64 x.re)) (*.f64 y.im (atan2.f64 x.im x.re)))
(+.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 0)
(-.f64 (*.f64 y.re (log.f64 x.re)) (*.f64 y.im (atan2.f64 x.im x.re)))
(+.f64 0 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)))
(-.f64 (*.f64 y.re (log.f64 x.re)) (*.f64 y.im (atan2.f64 x.im x.re)))
(+.f64 1 (+.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) -1))
(-.f64 (*.f64 y.re (log.f64 x.re)) (*.f64 y.im (atan2.f64 x.im x.re)))
(+.f64 (neg.f64 (*.f64 (atan2.f64 x.im x.re) y.im)) (*.f64 (log.f64 x.re) y.re))
(-.f64 (*.f64 y.re (log.f64 x.re)) (*.f64 y.im (atan2.f64 x.im x.re)))
(+.f64 -1 (+.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 1))
(-.f64 (*.f64 y.re (log.f64 x.re)) (*.f64 y.im (atan2.f64 x.im x.re)))
(+.f64 (+.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 1) -1)
(-.f64 (*.f64 y.re (log.f64 x.re)) (*.f64 y.im (atan2.f64 x.im x.re)))
(+.f64 (log.f64 (pow.f64 (sqrt.f64 x.re) y.re)) (-.f64 (log.f64 (pow.f64 (sqrt.f64 x.re) y.re)) (*.f64 (atan2.f64 x.im x.re) y.im)))
(+.f64 (log.f64 (pow.f64 (sqrt.f64 x.re) y.re)) (-.f64 (log.f64 (pow.f64 (sqrt.f64 x.re) y.re)) (*.f64 y.im (atan2.f64 x.im x.re))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 x.re y.re))) (-.f64 (log.f64 (sqrt.f64 (pow.f64 x.re y.re))) (*.f64 y.im (atan2.f64 x.im x.re))))
(+.f64 (/.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 x.re) y.re)) -2) (/.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 x.re) y.re)) -2))
(-.f64 (*.f64 y.re (log.f64 x.re)) (*.f64 y.im (atan2.f64 x.im x.re)))
(+.f64 (-.f64 1 (*.f64 (atan2.f64 x.im x.re) y.im)) (+.f64 (*.f64 (log.f64 x.re) y.re) -1))
(-.f64 (*.f64 y.re (log.f64 x.re)) (*.f64 y.im (atan2.f64 x.im x.re)))
(+.f64 -2 (+.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 2))
(-.f64 (*.f64 y.re (log.f64 x.re)) (*.f64 y.im (atan2.f64 x.im x.re)))
(+.f64 (+.f64 (*.f64 (log.f64 x.re) y.re) 1) (+.f64 (neg.f64 (*.f64 (atan2.f64 x.im x.re) y.im)) -1))
(-.f64 (*.f64 y.re (log.f64 x.re)) (*.f64 y.im (atan2.f64 x.im x.re)))
(+.f64 (+.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 2) -2)
(-.f64 (*.f64 y.re (log.f64 x.re)) (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 1)
(-.f64 (*.f64 y.re (log.f64 x.re)) (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 1 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)))
(-.f64 (*.f64 y.re (log.f64 x.re)) (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 2 (/.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 x.re) y.re)) -2))
(-.f64 (*.f64 y.re (log.f64 x.re)) (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 (*.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 x.re) y.re)) -2) 1/2)
(-.f64 (*.f64 y.re (log.f64 x.re)) (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 x.re) y.re)) -1)
(-.f64 (*.f64 y.re (log.f64 x.re)) (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 4 (/.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 x.re) y.re)) -4))
(-.f64 (*.f64 y.re (log.f64 x.re)) (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 4 (-.f64 (/.f64 (*.f64 (log.f64 x.re) y.re) 4) (/.f64 (*.f64 (atan2.f64 x.im x.re) y.im) 4)))
(*.f64 4 (-.f64 (*.f64 y.re (/.f64 (log.f64 x.re) 4)) (*.f64 y.im (/.f64 (atan2.f64 x.im x.re) 4))))
(*.f64 (*.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 4) 1/4)
(-.f64 (*.f64 y.re (log.f64 x.re)) (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 -1 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 x.re) y.re)))
(-.f64 (*.f64 y.re (log.f64 x.re)) (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 1/2 (*.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 x.re) y.re)) -2))
(-.f64 (*.f64 y.re (log.f64 x.re)) (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 (/.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 x.re) y.re)) -2) 2)
(-.f64 (*.f64 y.re (log.f64 x.re)) (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 1/4 (*.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 4))
(-.f64 (*.f64 y.re (log.f64 x.re)) (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 1/4 (-.f64 (*.f64 (log.f64 x.re) (*.f64 y.re 4)) (*.f64 (atan2.f64 x.im x.re) (*.f64 y.im 4))))
(-.f64 (*.f64 y.re (log.f64 x.re)) (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 (/.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 x.re) y.re)) -4) 4)
(-.f64 (*.f64 y.re (log.f64 x.re)) (*.f64 y.im (atan2.f64 x.im x.re)))
(/.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 1)
(-.f64 (*.f64 y.re (log.f64 x.re)) (*.f64 y.im (atan2.f64 x.im x.re)))
(/.f64 (*.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 x.re) y.re)) -2) 2)
(-.f64 (*.f64 y.re (log.f64 x.re)) (*.f64 y.im (atan2.f64 x.im x.re)))
(/.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 x.re) y.re)) -1)
(-.f64 (*.f64 y.re (log.f64 x.re)) (*.f64 y.im (atan2.f64 x.im x.re)))
(/.f64 (*.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 4) 4)
(-.f64 (*.f64 y.re (log.f64 x.re)) (*.f64 y.im (atan2.f64 x.im x.re)))
(/.f64 (*.f64 2 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 x.re) y.re))) -2)
(-.f64 (*.f64 y.re (log.f64 x.re)) (*.f64 y.im (atan2.f64 x.im x.re)))
(/.f64 (*.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 8) 8)
(-.f64 (*.f64 y.re (log.f64 x.re)) (*.f64 y.im (atan2.f64 x.im x.re)))
(/.f64 (*.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 x.re) y.re)) 4) -4)
(-.f64 (*.f64 y.re (log.f64 x.re)) (*.f64 y.im (atan2.f64 x.im x.re)))
(/.f64 (*.f64 2 (*.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 8)) 16)
(-.f64 (*.f64 y.re (log.f64 x.re)) (*.f64 y.im (atan2.f64 x.im x.re)))
(/.f64 (*.f64 2 (*.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 x.re) y.re)) 4)) -8)
(-.f64 (*.f64 y.re (log.f64 x.re)) (*.f64 y.im (atan2.f64 x.im x.re)))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 8))) 32)
(-.f64 (*.f64 y.re (log.f64 x.re)) (*.f64 y.im (atan2.f64 x.im x.re)))
(/.f64 (neg.f64 (*.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 x.re) y.re)) 4)) 4)
(-.f64 (*.f64 y.re (log.f64 x.re)) (*.f64 y.im (atan2.f64 x.im x.re)))
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 8))) (*.f64 2 (*.f64 2 (*.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 8)))) 64)
(-.f64 (*.f64 y.re (log.f64 x.re)) (*.f64 y.im (atan2.f64 x.im x.re)))
(/.f64 (+.f64 (neg.f64 (*.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 x.re) y.re)) 4)) (neg.f64 (*.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 x.re) y.re)) 4))) 8)
(-.f64 (*.f64 y.re (log.f64 x.re)) (*.f64 y.im (atan2.f64 x.im x.re)))
(pow.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 1)
(-.f64 (*.f64 y.re (log.f64 x.re)) (*.f64 y.im (atan2.f64 x.im x.re)))
(neg.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 x.re) y.re)))
(-.f64 (*.f64 y.re (log.f64 x.re)) (*.f64 y.im (atan2.f64 x.im x.re)))

localize56.0ms (0.2%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(-.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))
0.1b
(*.f64 (log.f64 (neg.f64 x.re)) y.re)
2.6b
(*.f64 (atan2.f64 x.im x.re) y.im)
Compiler

Compiled 64 to 14 computations (78.1% saved)

series49.0ms (0.2%)

Counts
2 → 72
Calls

18 calls:

TimeVariablePointExpression
22.0ms
y.re
@0
(*.f64 (log.f64 (neg.f64 x.re)) y.re)
10.0ms
x.im
@0
(-.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))
7.0ms
x.re
@inf
(*.f64 (log.f64 (neg.f64 x.re)) y.re)
7.0ms
x.re
@0
(*.f64 (log.f64 (neg.f64 x.re)) y.re)
2.0ms
y.im
@0
(-.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))

rewrite94.0ms (0.3%)

Algorithm
batch-egg-rewrite
Rules
1754×rational.json-1
1754×rational.json-2
1128×rational.json-simplify-35
892×rational.json-3
866×exponential.json-3
Iterations

Useful iterations: 5 (0.0ms)

IterNodesCost
01348
18648
218448
340148
479148
5184840
6391340
7734140
Stop Event
node limit
Counts
2 → 56
Calls
Call 1
Inputs
(*.f64 (log.f64 (neg.f64 x.re)) y.re)
(-.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (log.f64 x.re) y.re) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (log.f64 x.re) y.re))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (sqrt.f64 x.re) y.re)) (log.f64 (pow.f64 (sqrt.f64 x.re) y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (log.f64 x.re) y.re) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (log.f64 x.re) y.re) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (log.f64 x.re) (+.f64 y.re y.re)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y.re (log.f64 (pow.f64 x.re 4))) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y.re (log.f64 (pow.f64 x.re 8))) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 y.re (log.f64 (pow.f64 x.re 8)))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 y.re (log.f64 (pow.f64 x.re 8))))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 y.re (log.f64 (pow.f64 x.re 8))))) (*.f64 2 (*.f64 2 (*.f64 y.re (log.f64 (pow.f64 x.re 8)))))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (log.f64 x.re) y.re) 1)))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 x.re y.re))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (pow.f64 (sqrt.f64 x.re) y.re) 2))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (log.f64 x.re) y.re) (neg.f64 (*.f64 (atan2.f64 x.im x.re) y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 1 (+.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) -1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 -1 (+.f64 (*.f64 (log.f64 x.re) y.re) (-.f64 1 (*.f64 (atan2.f64 x.im x.re) y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 -2 (+.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 (*.f64 (atan2.f64 x.im x.re) y.im)) (*.f64 (log.f64 x.re) y.re))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (*.f64 (log.f64 x.re) y.re) (-.f64 1 (*.f64 (atan2.f64 x.im x.re) y.im))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (sqrt.f64 x.re) y.re)) (-.f64 (log.f64 (pow.f64 (sqrt.f64 x.re) y.re)) (*.f64 (atan2.f64 x.im x.re) y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 1/2) (*.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 1 (*.f64 (atan2.f64 x.im x.re) y.im)) (+.f64 (*.f64 (log.f64 x.re) y.re) -1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (*.f64 (log.f64 x.re) y.re) 1) (-.f64 (neg.f64 (*.f64 (atan2.f64 x.im x.re) y.im)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 2) -2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 x.re) y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 x.re) y.re)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (/.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (-.f64 (/.f64 (*.f64 (log.f64 x.re) y.re) 4) (/.f64 (*.f64 (atan2.f64 x.im x.re) y.im) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 1/2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (-.f64 (*.f64 y.re (log.f64 (pow.f64 x.re 4))) (*.f64 (atan2.f64 x.im x.re) (*.f64 y.im 4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 x.re) y.re)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 x.re) y.re))) -2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 8) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 x.re) y.re)) 4) -4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 8)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 x.re) y.re)) 4)) -8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 8))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 x.re) y.re)) 4)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 8))) (*.f64 2 (*.f64 2 (*.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 8)))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (neg.f64 (*.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 x.re) y.re)) 4)) (neg.f64 (*.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 x.re) y.re)) 4))) 8)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 x.re) y.re)))))))

simplify140.0ms (0.5%)

Algorithm
egg-herbie
Rules
1558×rational.json-simplify-35
1132×rational.json-simplify-2
974×rational.json-simplify-1
732×exponential.json-simplify-32
708×rational.json-simplify-42
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01503724
13243528
27413528
319053528
434363528
546513528
663123528
Stop Event
node limit
Counts
128 → 85
Calls
Call 1
Inputs
(*.f64 (+.f64 (log.f64 -1) (log.f64 x.re)) y.re)
(*.f64 (+.f64 (log.f64 -1) (log.f64 x.re)) y.re)
(*.f64 (+.f64 (log.f64 -1) (log.f64 x.re)) y.re)
(*.f64 (+.f64 (log.f64 -1) (log.f64 x.re)) y.re)
(*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 1 x.re))) (log.f64 -1)) y.re)
(*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 1 x.re))) (log.f64 -1)) y.re)
(*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 1 x.re))) (log.f64 -1)) y.re)
(*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 1 x.re))) (log.f64 -1)) y.re)
(*.f64 -1 (*.f64 y.re (log.f64 (/.f64 -1 x.re))))
(*.f64 -1 (*.f64 y.re (log.f64 (/.f64 -1 x.re))))
(*.f64 -1 (*.f64 y.re (log.f64 (/.f64 -1 x.re))))
(*.f64 -1 (*.f64 y.re (log.f64 (/.f64 -1 x.re))))
(*.f64 y.re (log.f64 (neg.f64 x.re)))
(*.f64 y.re (log.f64 (neg.f64 x.re)))
(*.f64 y.re (log.f64 (neg.f64 x.re)))
(*.f64 y.re (log.f64 (neg.f64 x.re)))
(*.f64 y.re (log.f64 (neg.f64 x.re)))
(*.f64 y.re (log.f64 (neg.f64 x.re)))
(*.f64 y.re (log.f64 (neg.f64 x.re)))
(*.f64 y.re (log.f64 (neg.f64 x.re)))
(*.f64 y.re (log.f64 (neg.f64 x.re)))
(*.f64 y.re (log.f64 (neg.f64 x.re)))
(*.f64 y.re (log.f64 (neg.f64 x.re)))
(*.f64 y.re (log.f64 (neg.f64 x.re)))
(-.f64 (*.f64 (+.f64 (log.f64 -1) (log.f64 x.re)) y.re) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (*.f64 (+.f64 (log.f64 -1) (log.f64 x.re)) y.re) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (*.f64 (+.f64 (log.f64 -1) (log.f64 x.re)) y.re) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (*.f64 (+.f64 (log.f64 -1) (log.f64 x.re)) y.re) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 1 x.re))) (log.f64 -1)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))
(-.f64 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 1 x.re))) (log.f64 -1)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))
(-.f64 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 1 x.re))) (log.f64 -1)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))
(-.f64 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 1 x.re))) (log.f64 -1)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))
(-.f64 (*.f64 -1 (*.f64 y.re (log.f64 (/.f64 -1 x.re)))) (*.f64 (atan2.f64 x.im x.re) y.im))
(-.f64 (*.f64 -1 (*.f64 y.re (log.f64 (/.f64 -1 x.re)))) (*.f64 (atan2.f64 x.im x.re) y.im))
(-.f64 (*.f64 -1 (*.f64 y.re (log.f64 (/.f64 -1 x.re)))) (*.f64 (atan2.f64 x.im x.re) y.im))
(-.f64 (*.f64 -1 (*.f64 y.re (log.f64 (/.f64 -1 x.re)))) (*.f64 (atan2.f64 x.im x.re) y.im))
(*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 y.re (log.f64 (neg.f64 x.re))))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 y.re (log.f64 (neg.f64 x.re))))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 y.re (log.f64 (neg.f64 x.re))))
(*.f64 y.re (log.f64 (neg.f64 x.re)))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 y.re (log.f64 (neg.f64 x.re))))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 y.re (log.f64 (neg.f64 x.re))))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 y.re (log.f64 (neg.f64 x.re))))
(*.f64 y.re (log.f64 (neg.f64 x.re)))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 y.re (log.f64 (neg.f64 x.re))))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 y.re (log.f64 (neg.f64 x.re))))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 y.re (log.f64 (neg.f64 x.re))))
(-.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 (atan2.f64 x.im x.re) y.im))
(-.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 (atan2.f64 x.im x.re) y.im))
(-.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 (atan2.f64 x.im x.re) y.im))
(-.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 (atan2.f64 x.im x.re) y.im))
(-.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 y.re (log.f64 (neg.f64 x.re)))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 y.re (log.f64 (neg.f64 x.re))))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 y.re (log.f64 (neg.f64 x.re))))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 y.re (log.f64 (neg.f64 x.re))))
(*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 y.re (log.f64 (neg.f64 x.re))))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 y.re (log.f64 (neg.f64 x.re))))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 y.re (log.f64 (neg.f64 x.re))))
(*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 y.re (log.f64 (neg.f64 x.re))))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 y.re (log.f64 (neg.f64 x.re))))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 y.re (log.f64 (neg.f64 x.re))))
(+.f64 (*.f64 (log.f64 x.re) y.re) 0)
(+.f64 0 (*.f64 (log.f64 x.re) y.re))
(+.f64 (log.f64 (pow.f64 (sqrt.f64 x.re) y.re)) (log.f64 (pow.f64 (sqrt.f64 x.re) y.re)))
(-.f64 (*.f64 (log.f64 x.re) y.re) 0)
(/.f64 (*.f64 (log.f64 x.re) y.re) 1)
(/.f64 (*.f64 (log.f64 x.re) (+.f64 y.re y.re)) 2)
(/.f64 (*.f64 y.re (log.f64 (pow.f64 x.re 4))) 4)
(/.f64 (*.f64 y.re (log.f64 (pow.f64 x.re 8))) 8)
(/.f64 (*.f64 2 (*.f64 y.re (log.f64 (pow.f64 x.re 8)))) 16)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 y.re (log.f64 (pow.f64 x.re 8))))) 32)
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 y.re (log.f64 (pow.f64 x.re 8))))) (*.f64 2 (*.f64 2 (*.f64 y.re (log.f64 (pow.f64 x.re 8)))))) 64)
(pow.f64 (*.f64 (log.f64 x.re) y.re) 1)
(log.f64 (pow.f64 x.re y.re))
(log.f64 (pow.f64 (pow.f64 (sqrt.f64 x.re) y.re) 2))
(+.f64 (*.f64 (log.f64 x.re) y.re) (neg.f64 (*.f64 (atan2.f64 x.im x.re) y.im)))
(+.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 0)
(+.f64 0 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)))
(+.f64 1 (+.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) -1))
(+.f64 -1 (+.f64 (*.f64 (log.f64 x.re) y.re) (-.f64 1 (*.f64 (atan2.f64 x.im x.re) y.im))))
(+.f64 -2 (+.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 2))
(+.f64 (neg.f64 (*.f64 (atan2.f64 x.im x.re) y.im)) (*.f64 (log.f64 x.re) y.re))
(+.f64 (+.f64 (*.f64 (log.f64 x.re) y.re) (-.f64 1 (*.f64 (atan2.f64 x.im x.re) y.im))) -1)
(+.f64 (log.f64 (pow.f64 (sqrt.f64 x.re) y.re)) (-.f64 (log.f64 (pow.f64 (sqrt.f64 x.re) y.re)) (*.f64 (atan2.f64 x.im x.re) y.im)))
(+.f64 (*.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 1/2) (*.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 1/2))
(+.f64 (-.f64 1 (*.f64 (atan2.f64 x.im x.re) y.im)) (+.f64 (*.f64 (log.f64 x.re) y.re) -1))
(+.f64 (+.f64 (*.f64 (log.f64 x.re) y.re) 1) (-.f64 (neg.f64 (*.f64 (atan2.f64 x.im x.re) y.im)) 1))
(+.f64 (+.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 2) -2)
(*.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 1)
(*.f64 1 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)))
(*.f64 -1 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 x.re) y.re)))
(*.f64 2 (*.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 1/2))
(*.f64 (*.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 2) 1/2)
(*.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 x.re) y.re)) -1)
(*.f64 4 (/.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 4))
(*.f64 4 (-.f64 (/.f64 (*.f64 (log.f64 x.re) y.re) 4) (/.f64 (*.f64 (atan2.f64 x.im x.re) y.im) 4)))
(*.f64 (*.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 4) 1/4)
(*.f64 1/2 (*.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 2))
(*.f64 (*.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 1/2) 2)
(*.f64 1/4 (*.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 4))
(*.f64 1/4 (-.f64 (*.f64 y.re (log.f64 (pow.f64 x.re 4))) (*.f64 (atan2.f64 x.im x.re) (*.f64 y.im 4))))
(*.f64 (/.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 4) 4)
(/.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 1)
(/.f64 (*.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 2) 2)
(/.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 x.re) y.re)) -1)
(/.f64 (*.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 4) 4)
(/.f64 (*.f64 2 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 x.re) y.re))) -2)
(/.f64 (*.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 8) 8)
(/.f64 (*.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 x.re) y.re)) 4) -4)
(/.f64 (*.f64 2 (*.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 8)) 16)
(/.f64 (*.f64 2 (*.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 x.re) y.re)) 4)) -8)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 8))) 32)
(/.f64 (neg.f64 (*.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 x.re) y.re)) 4)) 4)
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 8))) (*.f64 2 (*.f64 2 (*.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 8)))) 64)
(/.f64 (+.f64 (neg.f64 (*.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 x.re) y.re)) 4)) (neg.f64 (*.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 x.re) y.re)) 4))) 8)
(pow.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 1)
(neg.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 x.re) y.re)))
Outputs
(*.f64 (+.f64 (log.f64 -1) (log.f64 x.re)) y.re)
(*.f64 (+.f64 (log.f64 -1) (log.f64 x.re)) y.re)
(*.f64 (+.f64 (log.f64 -1) (log.f64 x.re)) y.re)
(*.f64 (+.f64 (log.f64 -1) (log.f64 x.re)) y.re)
(*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 1 x.re))) (log.f64 -1)) y.re)
(*.f64 y.re (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 1 x.re)))))
(*.f64 y.re (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 1 x.re)))))
(*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 1 x.re))) (log.f64 -1)) y.re)
(*.f64 y.re (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 1 x.re)))))
(*.f64 y.re (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 1 x.re)))))
(*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 1 x.re))) (log.f64 -1)) y.re)
(*.f64 y.re (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 1 x.re)))))
(*.f64 y.re (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 1 x.re)))))
(*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 1 x.re))) (log.f64 -1)) y.re)
(*.f64 y.re (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 1 x.re)))))
(*.f64 y.re (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 1 x.re)))))
(*.f64 -1 (*.f64 y.re (log.f64 (/.f64 -1 x.re))))
(*.f64 y.re (neg.f64 (log.f64 (/.f64 -1 x.re))))
(*.f64 (log.f64 (/.f64 -1 x.re)) (neg.f64 y.re))
(*.f64 -1 (*.f64 y.re (log.f64 (/.f64 -1 x.re))))
(*.f64 y.re (neg.f64 (log.f64 (/.f64 -1 x.re))))
(*.f64 (log.f64 (/.f64 -1 x.re)) (neg.f64 y.re))
(*.f64 -1 (*.f64 y.re (log.f64 (/.f64 -1 x.re))))
(*.f64 y.re (neg.f64 (log.f64 (/.f64 -1 x.re))))
(*.f64 (log.f64 (/.f64 -1 x.re)) (neg.f64 y.re))
(*.f64 -1 (*.f64 y.re (log.f64 (/.f64 -1 x.re))))
(*.f64 y.re (neg.f64 (log.f64 (/.f64 -1 x.re))))
(*.f64 (log.f64 (/.f64 -1 x.re)) (neg.f64 y.re))
(*.f64 y.re (log.f64 (neg.f64 x.re)))
(*.f64 y.re (log.f64 (neg.f64 x.re)))
(*.f64 y.re (log.f64 (neg.f64 x.re)))
(*.f64 y.re (log.f64 (neg.f64 x.re)))
(*.f64 y.re (log.f64 (neg.f64 x.re)))
(*.f64 y.re (log.f64 (neg.f64 x.re)))
(*.f64 y.re (log.f64 (neg.f64 x.re)))
(*.f64 y.re (log.f64 (neg.f64 x.re)))
(*.f64 y.re (log.f64 (neg.f64 x.re)))
(*.f64 y.re (log.f64 (neg.f64 x.re)))
(*.f64 y.re (log.f64 (neg.f64 x.re)))
(*.f64 y.re (log.f64 (neg.f64 x.re)))
(-.f64 (*.f64 (+.f64 (log.f64 -1) (log.f64 x.re)) y.re) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (*.f64 (+.f64 (log.f64 -1) (log.f64 x.re)) y.re) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (*.f64 (+.f64 (log.f64 -1) (log.f64 x.re)) y.re) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (*.f64 (+.f64 (log.f64 -1) (log.f64 x.re)) y.re) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 1 x.re))) (log.f64 -1)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))
(-.f64 (*.f64 y.re (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 1 x.re))))) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (*.f64 y.re (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 1 x.re))))) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 1 x.re))) (log.f64 -1)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))
(-.f64 (*.f64 y.re (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 1 x.re))))) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (*.f64 y.re (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 1 x.re))))) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 1 x.re))) (log.f64 -1)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))
(-.f64 (*.f64 y.re (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 1 x.re))))) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (*.f64 y.re (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 1 x.re))))) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 1 x.re))) (log.f64 -1)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))
(-.f64 (*.f64 y.re (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 1 x.re))))) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (*.f64 y.re (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 1 x.re))))) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (*.f64 -1 (*.f64 y.re (log.f64 (/.f64 -1 x.re)))) (*.f64 (atan2.f64 x.im x.re) y.im))
(-.f64 (*.f64 -1 (*.f64 y.re (log.f64 (/.f64 -1 x.re)))) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (*.f64 y.re (neg.f64 (log.f64 (/.f64 -1 x.re)))) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (*.f64 (log.f64 (/.f64 -1 x.re)) (neg.f64 y.re)) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (*.f64 -1 (*.f64 y.re (log.f64 (/.f64 -1 x.re)))) (*.f64 (atan2.f64 x.im x.re) y.im))
(-.f64 (*.f64 -1 (*.f64 y.re (log.f64 (/.f64 -1 x.re)))) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (*.f64 y.re (neg.f64 (log.f64 (/.f64 -1 x.re)))) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (*.f64 (log.f64 (/.f64 -1 x.re)) (neg.f64 y.re)) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (*.f64 -1 (*.f64 y.re (log.f64 (/.f64 -1 x.re)))) (*.f64 (atan2.f64 x.im x.re) y.im))
(-.f64 (*.f64 -1 (*.f64 y.re (log.f64 (/.f64 -1 x.re)))) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (*.f64 y.re (neg.f64 (log.f64 (/.f64 -1 x.re)))) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (*.f64 (log.f64 (/.f64 -1 x.re)) (neg.f64 y.re)) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (*.f64 -1 (*.f64 y.re (log.f64 (/.f64 -1 x.re)))) (*.f64 (atan2.f64 x.im x.re) y.im))
(-.f64 (*.f64 -1 (*.f64 y.re (log.f64 (/.f64 -1 x.re)))) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (*.f64 y.re (neg.f64 (log.f64 (/.f64 -1 x.re)))) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (*.f64 (log.f64 (/.f64 -1 x.re)) (neg.f64 y.re)) (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))
(neg.f64 (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 y.re (log.f64 (neg.f64 x.re))))
(+.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(+.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 y.re (log.f64 (neg.f64 x.re))))
(+.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(+.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 y.re (log.f64 (neg.f64 x.re))))
(+.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(+.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))
(*.f64 y.re (log.f64 (neg.f64 x.re)))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 y.re (log.f64 (neg.f64 x.re))))
(+.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(+.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 y.re (log.f64 (neg.f64 x.re))))
(+.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(+.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 y.re (log.f64 (neg.f64 x.re))))
(+.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(+.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))
(*.f64 y.re (log.f64 (neg.f64 x.re)))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 y.re (log.f64 (neg.f64 x.re))))
(+.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(+.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 y.re (log.f64 (neg.f64 x.re))))
(+.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(+.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 y.re (log.f64 (neg.f64 x.re))))
(+.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(+.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))
(-.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 (atan2.f64 x.im x.re) y.im))
(-.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 (atan2.f64 x.im x.re) y.im))
(-.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 (atan2.f64 x.im x.re) y.im))
(-.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 (atan2.f64 x.im x.re) y.im))
(-.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 y.im (atan2.f64 x.im x.re)))
(-.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 y.re (log.f64 (neg.f64 x.re)))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 y.re (log.f64 (neg.f64 x.re))))
(+.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(+.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 y.re (log.f64 (neg.f64 x.re))))
(+.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(+.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 y.re (log.f64 (neg.f64 x.re))))
(+.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(+.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))
(*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))
(neg.f64 (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 y.re (log.f64 (neg.f64 x.re))))
(+.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(+.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 y.re (log.f64 (neg.f64 x.re))))
(+.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(+.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 y.re (log.f64 (neg.f64 x.re))))
(+.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(+.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))
(*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))
(neg.f64 (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 y.re (log.f64 (neg.f64 x.re))))
(+.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(+.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 y.re (log.f64 (neg.f64 x.re))))
(+.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(+.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))
(+.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re))) (*.f64 y.re (log.f64 (neg.f64 x.re))))
(+.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(+.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))
(+.f64 (*.f64 (log.f64 x.re) y.re) 0)
(*.f64 (log.f64 x.re) y.re)
(+.f64 0 (*.f64 (log.f64 x.re) y.re))
(*.f64 (log.f64 x.re) y.re)
(+.f64 (log.f64 (pow.f64 (sqrt.f64 x.re) y.re)) (log.f64 (pow.f64 (sqrt.f64 x.re) y.re)))
(*.f64 (log.f64 x.re) y.re)
(-.f64 (*.f64 (log.f64 x.re) y.re) 0)
(*.f64 (log.f64 x.re) y.re)
(/.f64 (*.f64 (log.f64 x.re) y.re) 1)
(*.f64 (log.f64 x.re) y.re)
(/.f64 (*.f64 (log.f64 x.re) (+.f64 y.re y.re)) 2)
(*.f64 (log.f64 x.re) y.re)
(/.f64 (*.f64 y.re (log.f64 (pow.f64 x.re 4))) 4)
(*.f64 (log.f64 x.re) y.re)
(/.f64 (*.f64 y.re (log.f64 (pow.f64 x.re 8))) 8)
(*.f64 (log.f64 x.re) y.re)
(/.f64 (*.f64 2 (*.f64 y.re (log.f64 (pow.f64 x.re 8)))) 16)
(*.f64 (log.f64 x.re) y.re)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 y.re (log.f64 (pow.f64 x.re 8))))) 32)
(*.f64 (log.f64 x.re) y.re)
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 y.re (log.f64 (pow.f64 x.re 8))))) (*.f64 2 (*.f64 2 (*.f64 y.re (log.f64 (pow.f64 x.re 8)))))) 64)
(*.f64 (log.f64 x.re) y.re)
(pow.f64 (*.f64 (log.f64 x.re) y.re) 1)
(*.f64 (log.f64 x.re) y.re)
(log.f64 (pow.f64 x.re y.re))
(*.f64 (log.f64 x.re) y.re)
(log.f64 (pow.f64 (pow.f64 (sqrt.f64 x.re) y.re) 2))
(*.f64 (log.f64 x.re) y.re)
(+.f64 (*.f64 (log.f64 x.re) y.re) (neg.f64 (*.f64 (atan2.f64 x.im x.re) y.im)))
(+.f64 (*.f64 (log.f64 x.re) y.re) (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 y.im (atan2.f64 x.im x.re)))
(+.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 0)
(+.f64 (*.f64 (log.f64 x.re) y.re) (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 y.im (atan2.f64 x.im x.re)))
(+.f64 0 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)))
(+.f64 (*.f64 (log.f64 x.re) y.re) (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 y.im (atan2.f64 x.im x.re)))
(+.f64 1 (+.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) -1))
(+.f64 (*.f64 (log.f64 x.re) y.re) (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 y.im (atan2.f64 x.im x.re)))
(+.f64 -1 (+.f64 (*.f64 (log.f64 x.re) y.re) (-.f64 1 (*.f64 (atan2.f64 x.im x.re) y.im))))
(+.f64 (*.f64 (log.f64 x.re) y.re) (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 y.im (atan2.f64 x.im x.re)))
(+.f64 -2 (+.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 2))
(+.f64 (*.f64 (log.f64 x.re) y.re) (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 y.im (atan2.f64 x.im x.re)))
(+.f64 (neg.f64 (*.f64 (atan2.f64 x.im x.re) y.im)) (*.f64 (log.f64 x.re) y.re))
(+.f64 (*.f64 (log.f64 x.re) y.re) (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 y.im (atan2.f64 x.im x.re)))
(+.f64 (+.f64 (*.f64 (log.f64 x.re) y.re) (-.f64 1 (*.f64 (atan2.f64 x.im x.re) y.im))) -1)
(+.f64 (*.f64 (log.f64 x.re) y.re) (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 y.im (atan2.f64 x.im x.re)))
(+.f64 (log.f64 (pow.f64 (sqrt.f64 x.re) y.re)) (-.f64 (log.f64 (pow.f64 (sqrt.f64 x.re) y.re)) (*.f64 (atan2.f64 x.im x.re) y.im)))
(+.f64 (*.f64 (log.f64 x.re) y.re) (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 y.im (atan2.f64 x.im x.re)))
(+.f64 (*.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 1/2) (*.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 1/2))
(+.f64 (*.f64 (log.f64 x.re) y.re) (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 y.im (atan2.f64 x.im x.re)))
(+.f64 (-.f64 1 (*.f64 (atan2.f64 x.im x.re) y.im)) (+.f64 (*.f64 (log.f64 x.re) y.re) -1))
(+.f64 (*.f64 (log.f64 x.re) y.re) (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 y.im (atan2.f64 x.im x.re)))
(+.f64 (+.f64 (*.f64 (log.f64 x.re) y.re) 1) (-.f64 (neg.f64 (*.f64 (atan2.f64 x.im x.re) y.im)) 1))
(+.f64 (*.f64 (log.f64 x.re) y.re) (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 y.im (atan2.f64 x.im x.re)))
(+.f64 (+.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 2) -2)
(+.f64 (*.f64 (log.f64 x.re) y.re) (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 1)
(+.f64 (*.f64 (log.f64 x.re) y.re) (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 1 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)))
(+.f64 (*.f64 (log.f64 x.re) y.re) (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 -1 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 x.re) y.re)))
(+.f64 (*.f64 (log.f64 x.re) y.re) (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 2 (*.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 1/2))
(+.f64 (*.f64 (log.f64 x.re) y.re) (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 (*.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 2) 1/2)
(+.f64 (*.f64 (log.f64 x.re) y.re) (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 x.re) y.re)) -1)
(+.f64 (*.f64 (log.f64 x.re) y.re) (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 4 (/.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 4))
(+.f64 (*.f64 (log.f64 x.re) y.re) (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 4 (-.f64 (/.f64 (*.f64 (log.f64 x.re) y.re) 4) (/.f64 (*.f64 (atan2.f64 x.im x.re) y.im) 4)))
(*.f64 4 (-.f64 (*.f64 y.re (/.f64 (log.f64 x.re) 4)) (*.f64 y.im (/.f64 (atan2.f64 x.im x.re) 4))))
(*.f64 4 (-.f64 (*.f64 (log.f64 x.re) (/.f64 y.re 4)) (*.f64 y.im (/.f64 (atan2.f64 x.im x.re) 4))))
(*.f64 (*.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 4) 1/4)
(+.f64 (*.f64 (log.f64 x.re) y.re) (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 1/2 (*.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 2))
(+.f64 (*.f64 (log.f64 x.re) y.re) (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 (*.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 1/2) 2)
(+.f64 (*.f64 (log.f64 x.re) y.re) (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 1/4 (*.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 4))
(+.f64 (*.f64 (log.f64 x.re) y.re) (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 1/4 (-.f64 (*.f64 y.re (log.f64 (pow.f64 x.re 4))) (*.f64 (atan2.f64 x.im x.re) (*.f64 y.im 4))))
(+.f64 (*.f64 (log.f64 x.re) y.re) (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 (/.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 4) 4)
(+.f64 (*.f64 (log.f64 x.re) y.re) (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 y.im (atan2.f64 x.im x.re)))
(/.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 1)
(+.f64 (*.f64 (log.f64 x.re) y.re) (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 y.im (atan2.f64 x.im x.re)))
(/.f64 (*.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 2) 2)
(+.f64 (*.f64 (log.f64 x.re) y.re) (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 y.im (atan2.f64 x.im x.re)))
(/.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 x.re) y.re)) -1)
(+.f64 (*.f64 (log.f64 x.re) y.re) (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 y.im (atan2.f64 x.im x.re)))
(/.f64 (*.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 4) 4)
(+.f64 (*.f64 (log.f64 x.re) y.re) (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 y.im (atan2.f64 x.im x.re)))
(/.f64 (*.f64 2 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 x.re) y.re))) -2)
(+.f64 (*.f64 (log.f64 x.re) y.re) (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 y.im (atan2.f64 x.im x.re)))
(/.f64 (*.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 8) 8)
(+.f64 (*.f64 (log.f64 x.re) y.re) (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 y.im (atan2.f64 x.im x.re)))
(/.f64 (*.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 x.re) y.re)) 4) -4)
(+.f64 (*.f64 (log.f64 x.re) y.re) (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 y.im (atan2.f64 x.im x.re)))
(/.f64 (*.f64 2 (*.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 8)) 16)
(+.f64 (*.f64 (log.f64 x.re) y.re) (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 y.im (atan2.f64 x.im x.re)))
(/.f64 (*.f64 2 (*.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 x.re) y.re)) 4)) -8)
(+.f64 (*.f64 (log.f64 x.re) y.re) (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 y.im (atan2.f64 x.im x.re)))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 8))) 32)
(+.f64 (*.f64 (log.f64 x.re) y.re) (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 y.im (atan2.f64 x.im x.re)))
(/.f64 (neg.f64 (*.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 x.re) y.re)) 4)) 4)
(+.f64 (*.f64 (log.f64 x.re) y.re) (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 y.im (atan2.f64 x.im x.re)))
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 8))) (*.f64 2 (*.f64 2 (*.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 8)))) 64)
(+.f64 (*.f64 (log.f64 x.re) y.re) (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 y.im (atan2.f64 x.im x.re)))
(/.f64 (+.f64 (neg.f64 (*.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 x.re) y.re)) 4)) (neg.f64 (*.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 x.re) y.re)) 4))) 8)
(+.f64 (*.f64 (log.f64 x.re) y.re) (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 y.im (atan2.f64 x.im x.re)))
(pow.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)) 1)
(+.f64 (*.f64 (log.f64 x.re) y.re) (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 y.im (atan2.f64 x.im x.re)))
(neg.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 x.re) y.re)))
(+.f64 (*.f64 (log.f64 x.re) y.re) (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 y.im (atan2.f64 x.im x.re)))

localize24.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(*.f64 (log.f64 x.re) y.re)
0.1b
(*.f64 y.im (log.f64 x.im))
2.6b
(*.f64 (atan2.f64 x.im x.re) y.im)
11.6b
(cos.f64 (*.f64 y.im (log.f64 x.im)))
Compiler

Compiled 71 to 14 computations (80.3% saved)

series3.0ms (0%)

Counts
2 → 36
Calls

12 calls:

TimeVariablePointExpression
1.0ms
x.im
@0
(cos.f64 (*.f64 y.im (log.f64 x.im)))
0.0ms
x.im
@inf
(cos.f64 (*.f64 y.im (log.f64 x.im)))
0.0ms
x.im
@-inf
(cos.f64 (*.f64 y.im (log.f64 x.im)))
0.0ms
y.im
@0
(cos.f64 (*.f64 y.im (log.f64 x.im)))
0.0ms
y.im
@0
(*.f64 y.im (log.f64 x.im))

rewrite96.0ms (0.3%)

Algorithm
batch-egg-rewrite
Rules
2156×rational.json-1
1006×rational.json-simplify-35
1000×rational.json-2
1000×rational.json-3
956×exponential.json-3
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0826
15326
212626
328626
460626
5154826
6362726
7789926
Stop Event
node limit
Counts
2 → 58
Calls
Call 1
Inputs
(cos.f64 (*.f64 y.im (log.f64 x.im)))
(*.f64 y.im (log.f64 x.im))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (cos.f64 (*.f64 y.im (log.f64 x.im))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (cos.f64 (*.f64 y.im (log.f64 x.im))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (cos.f64 (*.f64 y.im (log.f64 x.im))) 1/2) (*.f64 (cos.f64 (*.f64 y.im (log.f64 x.im))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (cos.f64 (*.f64 y.im (log.f64 x.im))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cos.f64 (*.f64 y.im (log.f64 x.im))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (cos.f64 (*.f64 y.im (log.f64 x.im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (cos.f64 (*.f64 y.im (log.f64 x.im))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cos.f64 (*.f64 y.im (log.f64 x.im))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (/.f64 (cos.f64 (*.f64 y.im (log.f64 x.im))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cos.f64 (*.f64 y.im (log.f64 x.im))) 4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 (cos.f64 (*.f64 y.im (log.f64 x.im))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cos.f64 (*.f64 y.im (log.f64 x.im))) 1/2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 (cos.f64 (*.f64 y.im (log.f64 x.im))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cos.f64 (*.f64 y.im (log.f64 x.im))) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cos.f64 (*.f64 y.im (log.f64 x.im))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cos.f64 (*.f64 y.im (log.f64 x.im))) 2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cos.f64 (*.f64 y.im (log.f64 x.im))) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cos.f64 (*.f64 y.im (log.f64 x.im))) 8) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (cos.f64 (*.f64 y.im (log.f64 x.im))) 8)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (cos.f64 (*.f64 y.im (log.f64 x.im))) 8))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (cos.f64 (*.f64 y.im (log.f64 x.im))) 8))) (*.f64 2 (*.f64 2 (*.f64 (cos.f64 (*.f64 y.im (log.f64 x.im))) 8)))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cos.f64 (*.f64 y.im (log.f64 x.im))) 1)))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y.im (log.f64 x.im)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 y.im (log.f64 x.im)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 1 (+.f64 (*.f64 y.im (log.f64 x.im)) -1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 -1 (+.f64 (*.f64 y.im (log.f64 x.im)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 -2 (+.f64 (*.f64 y.im (log.f64 x.im)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (*.f64 y.im (log.f64 x.im)) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y.im (log.f64 (sqrt.f64 x.im))) (*.f64 y.im (log.f64 (sqrt.f64 x.im))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (*.f64 y.im (log.f64 x.im)) 2) -2)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 y.im (log.f64 x.im)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (*.f64 y.im (neg.f64 (log.f64 x.im))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 1 (-.f64 1 (*.f64 y.im (log.f64 x.im))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 -1 (-.f64 -1 (*.f64 y.im (log.f64 x.im))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (*.f64 y.im (log.f64 x.im)) 1) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (*.f64 y.im (log.f64 x.im)) -1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y.im (log.f64 x.im)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y.im (neg.f64 (log.f64 x.im))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y.im (*.f64 (log.f64 x.im) 2)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y.im (*.f64 (log.f64 x.im) 4)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y.im (*.f64 (log.f64 x.im) -2)) -2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y.im (*.f64 (log.f64 x.im) 8)) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y.im (log.f64 (pow.f64 x.im -4))) -4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 y.im (*.f64 (log.f64 x.im) 8))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 y.im (neg.f64 (log.f64 x.im))) 8) -8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 y.im (*.f64 (log.f64 x.im) 8))) -8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (*.f64 y.im (neg.f64 (log.f64 x.im))) 8)) -16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (neg.f64 (*.f64 y.im (*.f64 (log.f64 x.im) 8)))) -16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 y.im (*.f64 (log.f64 x.im) 8)))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 (*.f64 y.im (neg.f64 (log.f64 x.im))) 8)) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (neg.f64 (*.f64 y.im (*.f64 (log.f64 x.im) 8)))) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 y.im (*.f64 (log.f64 x.im) 8)))) (*.f64 2 (*.f64 2 (*.f64 y.im (*.f64 (log.f64 x.im) 8))))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (neg.f64 (*.f64 (*.f64 y.im (neg.f64 (log.f64 x.im))) 8)) (neg.f64 (*.f64 (*.f64 y.im (neg.f64 (log.f64 x.im))) 8))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (neg.f64 (neg.f64 (*.f64 y.im (*.f64 (log.f64 x.im) 8)))) (neg.f64 (neg.f64 (*.f64 y.im (*.f64 (log.f64 x.im) 8))))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 y.im (log.f64 x.im)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (*.f64 y.im (neg.f64 (log.f64 x.im))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 x.im y.im))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (sqrt.f64 (pow.f64 (*.f64 x.im x.im) y.im)))))))

simplify90.0ms (0.3%)

Algorithm
egg-herbie
Rules
1520×rational.json-simplify-35
1054×rational.json-simplify-2
878×rational.json-simplify-51
780×exponential.json-simplify-26
716×rational.json-simplify-44
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01611604
13691560
29041544
324281532
454871532
Stop Event
node limit
Counts
94 → 89
Calls
Call 1
Inputs
1
(+.f64 1 (*.f64 -1/2 (*.f64 (pow.f64 y.im 2) (pow.f64 (log.f64 x.im) 2))))
(+.f64 1 (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 y.im 2) (pow.f64 (log.f64 x.im) 2))) (*.f64 1/24 (*.f64 (pow.f64 y.im 4) (pow.f64 (log.f64 x.im) 4)))))
(+.f64 1 (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 y.im 2) (pow.f64 (log.f64 x.im) 2))) (+.f64 (*.f64 -1/720 (*.f64 (pow.f64 y.im 6) (pow.f64 (log.f64 x.im) 6))) (*.f64 1/24 (*.f64 (pow.f64 y.im 4) (pow.f64 (log.f64 x.im) 4))))))
(cos.f64 (*.f64 (log.f64 x.im) y.im))
(cos.f64 (*.f64 (log.f64 x.im) y.im))
(cos.f64 (*.f64 (log.f64 x.im) y.im))
(cos.f64 (*.f64 (log.f64 x.im) y.im))
(cos.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.im)) y.im)))
(cos.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.im)) y.im)))
(cos.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.im)) y.im)))
(cos.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.im)) y.im)))
(cos.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x.im)))) y.im))
(cos.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x.im)))) y.im))
(cos.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x.im)))) y.im))
(cos.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x.im)))) y.im))
(*.f64 (log.f64 x.im) y.im)
(*.f64 (log.f64 x.im) y.im)
(*.f64 (log.f64 x.im) y.im)
(*.f64 (log.f64 x.im) y.im)
(*.f64 (log.f64 x.im) y.im)
(*.f64 (log.f64 x.im) y.im)
(*.f64 (log.f64 x.im) y.im)
(*.f64 (log.f64 x.im) y.im)
(*.f64 (log.f64 x.im) y.im)
(*.f64 (log.f64 x.im) y.im)
(*.f64 (log.f64 x.im) y.im)
(*.f64 (log.f64 x.im) y.im)
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.im)) y.im))
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.im)) y.im))
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.im)) y.im))
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.im)) y.im))
(*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x.im)))) y.im)
(*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x.im)))) y.im)
(*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x.im)))) y.im)
(*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x.im)))) y.im)
(+.f64 (cos.f64 (*.f64 y.im (log.f64 x.im))) 0)
(+.f64 0 (cos.f64 (*.f64 y.im (log.f64 x.im))))
(+.f64 (*.f64 (cos.f64 (*.f64 y.im (log.f64 x.im))) 1/2) (*.f64 (cos.f64 (*.f64 y.im (log.f64 x.im))) 1/2))
(-.f64 (cos.f64 (*.f64 y.im (log.f64 x.im))) 0)
(*.f64 (cos.f64 (*.f64 y.im (log.f64 x.im))) 1)
(*.f64 1 (cos.f64 (*.f64 y.im (log.f64 x.im))))
(*.f64 2 (*.f64 (cos.f64 (*.f64 y.im (log.f64 x.im))) 1/2))
(*.f64 (*.f64 (cos.f64 (*.f64 y.im (log.f64 x.im))) 2) 1/2)
(*.f64 4 (/.f64 (cos.f64 (*.f64 y.im (log.f64 x.im))) 4))
(*.f64 (*.f64 (cos.f64 (*.f64 y.im (log.f64 x.im))) 4) 1/4)
(*.f64 1/2 (*.f64 (cos.f64 (*.f64 y.im (log.f64 x.im))) 2))
(*.f64 (*.f64 (cos.f64 (*.f64 y.im (log.f64 x.im))) 1/2) 2)
(*.f64 1/4 (*.f64 (cos.f64 (*.f64 y.im (log.f64 x.im))) 4))
(*.f64 (/.f64 (cos.f64 (*.f64 y.im (log.f64 x.im))) 4) 4)
(/.f64 (cos.f64 (*.f64 y.im (log.f64 x.im))) 1)
(/.f64 (*.f64 (cos.f64 (*.f64 y.im (log.f64 x.im))) 2) 2)
(/.f64 (*.f64 (cos.f64 (*.f64 y.im (log.f64 x.im))) 4) 4)
(/.f64 (*.f64 (cos.f64 (*.f64 y.im (log.f64 x.im))) 8) 8)
(/.f64 (*.f64 2 (*.f64 (cos.f64 (*.f64 y.im (log.f64 x.im))) 8)) 16)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (cos.f64 (*.f64 y.im (log.f64 x.im))) 8))) 32)
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (cos.f64 (*.f64 y.im (log.f64 x.im))) 8))) (*.f64 2 (*.f64 2 (*.f64 (cos.f64 (*.f64 y.im (log.f64 x.im))) 8)))) 64)
(pow.f64 (cos.f64 (*.f64 y.im (log.f64 x.im))) 1)
(+.f64 (*.f64 y.im (log.f64 x.im)) 0)
(+.f64 0 (*.f64 y.im (log.f64 x.im)))
(+.f64 1 (+.f64 (*.f64 y.im (log.f64 x.im)) -1))
(+.f64 -1 (+.f64 (*.f64 y.im (log.f64 x.im)) 1))
(+.f64 -2 (+.f64 (*.f64 y.im (log.f64 x.im)) 2))
(+.f64 (+.f64 (*.f64 y.im (log.f64 x.im)) 1) -1)
(+.f64 (*.f64 y.im (log.f64 (sqrt.f64 x.im))) (*.f64 y.im (log.f64 (sqrt.f64 x.im))))
(+.f64 (+.f64 (*.f64 y.im (log.f64 x.im)) 2) -2)
(-.f64 (*.f64 y.im (log.f64 x.im)) 0)
(-.f64 0 (*.f64 y.im (neg.f64 (log.f64 x.im))))
(-.f64 1 (-.f64 1 (*.f64 y.im (log.f64 x.im))))
(-.f64 -1 (-.f64 -1 (*.f64 y.im (log.f64 x.im))))
(-.f64 (+.f64 (*.f64 y.im (log.f64 x.im)) 1) 1)
(-.f64 (+.f64 (*.f64 y.im (log.f64 x.im)) -1) -1)
(/.f64 (*.f64 y.im (log.f64 x.im)) 1)
(/.f64 (*.f64 y.im (neg.f64 (log.f64 x.im))) -1)
(/.f64 (*.f64 y.im (*.f64 (log.f64 x.im) 2)) 2)
(/.f64 (*.f64 y.im (*.f64 (log.f64 x.im) 4)) 4)
(/.f64 (*.f64 y.im (*.f64 (log.f64 x.im) -2)) -2)
(/.f64 (*.f64 y.im (*.f64 (log.f64 x.im) 8)) 8)
(/.f64 (*.f64 y.im (log.f64 (pow.f64 x.im -4))) -4)
(/.f64 (*.f64 2 (*.f64 y.im (*.f64 (log.f64 x.im) 8))) 16)
(/.f64 (*.f64 (*.f64 y.im (neg.f64 (log.f64 x.im))) 8) -8)
(/.f64 (neg.f64 (*.f64 y.im (*.f64 (log.f64 x.im) 8))) -8)
(/.f64 (*.f64 2 (*.f64 (*.f64 y.im (neg.f64 (log.f64 x.im))) 8)) -16)
(/.f64 (*.f64 2 (neg.f64 (*.f64 y.im (*.f64 (log.f64 x.im) 8)))) -16)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 y.im (*.f64 (log.f64 x.im) 8)))) 32)
(/.f64 (neg.f64 (*.f64 (*.f64 y.im (neg.f64 (log.f64 x.im))) 8)) 8)
(/.f64 (neg.f64 (neg.f64 (*.f64 y.im (*.f64 (log.f64 x.im) 8)))) 8)
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 y.im (*.f64 (log.f64 x.im) 8)))) (*.f64 2 (*.f64 2 (*.f64 y.im (*.f64 (log.f64 x.im) 8))))) 64)
(/.f64 (+.f64 (neg.f64 (*.f64 (*.f64 y.im (neg.f64 (log.f64 x.im))) 8)) (neg.f64 (*.f64 (*.f64 y.im (neg.f64 (log.f64 x.im))) 8))) 16)
(/.f64 (+.f64 (neg.f64 (neg.f64 (*.f64 y.im (*.f64 (log.f64 x.im) 8)))) (neg.f64 (neg.f64 (*.f64 y.im (*.f64 (log.f64 x.im) 8))))) 16)
(pow.f64 (*.f64 y.im (log.f64 x.im)) 1)
(neg.f64 (*.f64 y.im (neg.f64 (log.f64 x.im))))
(log.f64 (pow.f64 x.im y.im))
(log.f64 (sqrt.f64 (pow.f64 (*.f64 x.im x.im) y.im)))
Outputs
1
(+.f64 1 (*.f64 -1/2 (*.f64 (pow.f64 y.im 2) (pow.f64 (log.f64 x.im) 2))))
(+.f64 1 (*.f64 -1/2 (pow.f64 (*.f64 y.im (log.f64 x.im)) 2)))
(+.f64 1 (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 y.im 2) (pow.f64 (log.f64 x.im) 2))) (*.f64 1/24 (*.f64 (pow.f64 y.im 4) (pow.f64 (log.f64 x.im) 4)))))
(+.f64 1 (+.f64 (*.f64 -1/2 (pow.f64 (*.f64 y.im (log.f64 x.im)) 2)) (*.f64 1/24 (pow.f64 (*.f64 y.im (log.f64 x.im)) 4))))
(+.f64 (*.f64 -1/2 (pow.f64 (*.f64 y.im (log.f64 x.im)) 2)) (+.f64 1 (*.f64 1/24 (pow.f64 (*.f64 y.im (log.f64 x.im)) 4))))
(+.f64 1 (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 y.im 2) (pow.f64 (log.f64 x.im) 2))) (+.f64 (*.f64 -1/720 (*.f64 (pow.f64 y.im 6) (pow.f64 (log.f64 x.im) 6))) (*.f64 1/24 (*.f64 (pow.f64 y.im 4) (pow.f64 (log.f64 x.im) 4))))))
(+.f64 (*.f64 -1/2 (pow.f64 (*.f64 y.im (log.f64 x.im)) 2)) (+.f64 (+.f64 (*.f64 1/24 (pow.f64 (*.f64 y.im (log.f64 x.im)) 4)) (*.f64 -1/720 (pow.f64 (*.f64 y.im (log.f64 x.im)) 6))) 1))
(+.f64 1 (+.f64 (*.f64 -1/2 (pow.f64 (*.f64 y.im (log.f64 x.im)) 2)) (+.f64 (*.f64 1/24 (pow.f64 (*.f64 y.im (log.f64 x.im)) 4)) (*.f64 -1/720 (pow.f64 (*.f64 y.im (log.f64 x.im)) 6)))))
(+.f64 1 (+.f64 (*.f64 1/24 (pow.f64 (*.f64 y.im (log.f64 x.im)) 4)) (+.f64 (*.f64 -1/2 (pow.f64 (*.f64 y.im (log.f64 x.im)) 2)) (*.f64 -1/720 (pow.f64 (*.f64 y.im (log.f64 x.im)) 6)))))
(cos.f64 (*.f64 (log.f64 x.im) y.im))
(cos.f64 (*.f64 y.im (log.f64 x.im)))
(cos.f64 (*.f64 (log.f64 x.im) y.im))
(cos.f64 (*.f64 y.im (log.f64 x.im)))
(cos.f64 (*.f64 (log.f64 x.im) y.im))
(cos.f64 (*.f64 y.im (log.f64 x.im)))
(cos.f64 (*.f64 (log.f64 x.im) y.im))
(cos.f64 (*.f64 y.im (log.f64 x.im)))
(cos.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.im)) y.im)))
(cos.f64 (*.f64 (log.f64 (/.f64 1 x.im)) (*.f64 y.im -1)))
(cos.f64 (*.f64 (log.f64 (/.f64 1 x.im)) (neg.f64 y.im)))
(cos.f64 (*.f64 y.im (log.f64 (/.f64 1 x.im))))
(cos.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.im)) y.im)))
(cos.f64 (*.f64 (log.f64 (/.f64 1 x.im)) (*.f64 y.im -1)))
(cos.f64 (*.f64 (log.f64 (/.f64 1 x.im)) (neg.f64 y.im)))
(cos.f64 (*.f64 y.im (log.f64 (/.f64 1 x.im))))
(cos.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.im)) y.im)))
(cos.f64 (*.f64 (log.f64 (/.f64 1 x.im)) (*.f64 y.im -1)))
(cos.f64 (*.f64 (log.f64 (/.f64 1 x.im)) (neg.f64 y.im)))
(cos.f64 (*.f64 y.im (log.f64 (/.f64 1 x.im))))
(cos.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.im)) y.im)))
(cos.f64 (*.f64 (log.f64 (/.f64 1 x.im)) (*.f64 y.im -1)))
(cos.f64 (*.f64 (log.f64 (/.f64 1 x.im)) (neg.f64 y.im)))
(cos.f64 (*.f64 y.im (log.f64 (/.f64 1 x.im))))
(cos.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x.im)))) y.im))
(cos.f64 (*.f64 y.im (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x.im))))))
(cos.f64 (*.f64 y.im (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 x.im))))))
(cos.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x.im)))) y.im))
(cos.f64 (*.f64 y.im (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x.im))))))
(cos.f64 (*.f64 y.im (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 x.im))))))
(cos.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x.im)))) y.im))
(cos.f64 (*.f64 y.im (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x.im))))))
(cos.f64 (*.f64 y.im (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 x.im))))))
(cos.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x.im)))) y.im))
(cos.f64 (*.f64 y.im (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x.im))))))
(cos.f64 (*.f64 y.im (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 x.im))))))
(*.f64 (log.f64 x.im) y.im)
(*.f64 y.im (log.f64 x.im))
(*.f64 (log.f64 x.im) y.im)
(*.f64 y.im (log.f64 x.im))
(*.f64 (log.f64 x.im) y.im)
(*.f64 y.im (log.f64 x.im))
(*.f64 (log.f64 x.im) y.im)
(*.f64 y.im (log.f64 x.im))
(*.f64 (log.f64 x.im) y.im)
(*.f64 y.im (log.f64 x.im))
(*.f64 (log.f64 x.im) y.im)
(*.f64 y.im (log.f64 x.im))
(*.f64 (log.f64 x.im) y.im)
(*.f64 y.im (log.f64 x.im))
(*.f64 (log.f64 x.im) y.im)
(*.f64 y.im (log.f64 x.im))
(*.f64 (log.f64 x.im) y.im)
(*.f64 y.im (log.f64 x.im))
(*.f64 (log.f64 x.im) y.im)
(*.f64 y.im (log.f64 x.im))
(*.f64 (log.f64 x.im) y.im)
(*.f64 y.im (log.f64 x.im))
(*.f64 (log.f64 x.im) y.im)
(*.f64 y.im (log.f64 x.im))
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.im)) y.im))
(*.f64 (log.f64 (/.f64 1 x.im)) (*.f64 y.im -1))
(*.f64 (log.f64 (/.f64 1 x.im)) (neg.f64 y.im))
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.im)) y.im))
(*.f64 (log.f64 (/.f64 1 x.im)) (*.f64 y.im -1))
(*.f64 (log.f64 (/.f64 1 x.im)) (neg.f64 y.im))
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.im)) y.im))
(*.f64 (log.f64 (/.f64 1 x.im)) (*.f64 y.im -1))
(*.f64 (log.f64 (/.f64 1 x.im)) (neg.f64 y.im))
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.im)) y.im))
(*.f64 (log.f64 (/.f64 1 x.im)) (*.f64 y.im -1))
(*.f64 (log.f64 (/.f64 1 x.im)) (neg.f64 y.im))
(*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x.im)))) y.im)
(*.f64 y.im (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x.im)))))
(*.f64 y.im (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 x.im)))))
(*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x.im)))) y.im)
(*.f64 y.im (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x.im)))))
(*.f64 y.im (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 x.im)))))
(*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x.im)))) y.im)
(*.f64 y.im (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x.im)))))
(*.f64 y.im (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 x.im)))))
(*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x.im)))) y.im)
(*.f64 y.im (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x.im)))))
(*.f64 y.im (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 x.im)))))
(+.f64 (cos.f64 (*.f64 y.im (log.f64 x.im))) 0)
(cos.f64 (*.f64 y.im (log.f64 x.im)))
(+.f64 0 (cos.f64 (*.f64 y.im (log.f64 x.im))))
(cos.f64 (*.f64 y.im (log.f64 x.im)))
(+.f64 (*.f64 (cos.f64 (*.f64 y.im (log.f64 x.im))) 1/2) (*.f64 (cos.f64 (*.f64 y.im (log.f64 x.im))) 1/2))
(cos.f64 (*.f64 y.im (log.f64 x.im)))
(-.f64 (cos.f64 (*.f64 y.im (log.f64 x.im))) 0)
(cos.f64 (*.f64 y.im (log.f64 x.im)))
(*.f64 (cos.f64 (*.f64 y.im (log.f64 x.im))) 1)
(cos.f64 (*.f64 y.im (log.f64 x.im)))
(*.f64 1 (cos.f64 (*.f64 y.im (log.f64 x.im))))
(cos.f64 (*.f64 y.im (log.f64 x.im)))
(*.f64 2 (*.f64 (cos.f64 (*.f64 y.im (log.f64 x.im))) 1/2))
(cos.f64 (*.f64 y.im (log.f64 x.im)))
(*.f64 (*.f64 (cos.f64 (*.f64 y.im (log.f64 x.im))) 2) 1/2)
(cos.f64 (*.f64 y.im (log.f64 x.im)))
(*.f64 4 (/.f64 (cos.f64 (*.f64 y.im (log.f64 x.im))) 4))
(cos.f64 (*.f64 y.im (log.f64 x.im)))
(*.f64 (*.f64 (cos.f64 (*.f64 y.im (log.f64 x.im))) 4) 1/4)
(cos.f64 (*.f64 y.im (log.f64 x.im)))
(*.f64 1/2 (*.f64 (cos.f64 (*.f64 y.im (log.f64 x.im))) 2))
(cos.f64 (*.f64 y.im (log.f64 x.im)))
(*.f64 (*.f64 (cos.f64 (*.f64 y.im (log.f64 x.im))) 1/2) 2)
(cos.f64 (*.f64 y.im (log.f64 x.im)))
(*.f64 1/4 (*.f64 (cos.f64 (*.f64 y.im (log.f64 x.im))) 4))
(cos.f64 (*.f64 y.im (log.f64 x.im)))
(*.f64 (/.f64 (cos.f64 (*.f64 y.im (log.f64 x.im))) 4) 4)
(cos.f64 (*.f64 y.im (log.f64 x.im)))
(/.f64 (cos.f64 (*.f64 y.im (log.f64 x.im))) 1)
(cos.f64 (*.f64 y.im (log.f64 x.im)))
(/.f64 (*.f64 (cos.f64 (*.f64 y.im (log.f64 x.im))) 2) 2)
(cos.f64 (*.f64 y.im (log.f64 x.im)))
(/.f64 (*.f64 (cos.f64 (*.f64 y.im (log.f64 x.im))) 4) 4)
(cos.f64 (*.f64 y.im (log.f64 x.im)))
(/.f64 (*.f64 (cos.f64 (*.f64 y.im (log.f64 x.im))) 8) 8)
(cos.f64 (*.f64 y.im (log.f64 x.im)))
(/.f64 (*.f64 2 (*.f64 (cos.f64 (*.f64 y.im (log.f64 x.im))) 8)) 16)
(cos.f64 (*.f64 y.im (log.f64 x.im)))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (cos.f64 (*.f64 y.im (log.f64 x.im))) 8))) 32)
(cos.f64 (*.f64 y.im (log.f64 x.im)))
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (cos.f64 (*.f64 y.im (log.f64 x.im))) 8))) (*.f64 2 (*.f64 2 (*.f64 (cos.f64 (*.f64 y.im (log.f64 x.im))) 8)))) 64)
(cos.f64 (*.f64 y.im (log.f64 x.im)))
(pow.f64 (cos.f64 (*.f64 y.im (log.f64 x.im))) 1)
(cos.f64 (*.f64 y.im (log.f64 x.im)))
(+.f64 (*.f64 y.im (log.f64 x.im)) 0)
(*.f64 y.im (log.f64 x.im))
(+.f64 0 (*.f64 y.im (log.f64 x.im)))
(*.f64 y.im (log.f64 x.im))
(+.f64 1 (+.f64 (*.f64 y.im (log.f64 x.im)) -1))
(*.f64 y.im (log.f64 x.im))
(+.f64 -1 (+.f64 (*.f64 y.im (log.f64 x.im)) 1))
(*.f64 y.im (log.f64 x.im))
(+.f64 -2 (+.f64 (*.f64 y.im (log.f64 x.im)) 2))
(*.f64 y.im (log.f64 x.im))
(+.f64 (+.f64 (*.f64 y.im (log.f64 x.im)) 1) -1)
(*.f64 y.im (log.f64 x.im))
(+.f64 (*.f64 y.im (log.f64 (sqrt.f64 x.im))) (*.f64 y.im (log.f64 (sqrt.f64 x.im))))
(*.f64 y.im (log.f64 x.im))
(+.f64 (+.f64 (*.f64 y.im (log.f64 x.im)) 2) -2)
(*.f64 y.im (log.f64 x.im))
(-.f64 (*.f64 y.im (log.f64 x.im)) 0)
(*.f64 y.im (log.f64 x.im))
(-.f64 0 (*.f64 y.im (neg.f64 (log.f64 x.im))))
(*.f64 y.im (log.f64 x.im))
(-.f64 1 (-.f64 1 (*.f64 y.im (log.f64 x.im))))
(*.f64 y.im (log.f64 x.im))
(-.f64 -1 (-.f64 -1 (*.f64 y.im (log.f64 x.im))))
(*.f64 y.im (log.f64 x.im))
(-.f64 (+.f64 (*.f64 y.im (log.f64 x.im)) 1) 1)
(*.f64 y.im (log.f64 x.im))
(-.f64 (+.f64 (*.f64 y.im (log.f64 x.im)) -1) -1)
(*.f64 y.im (log.f64 x.im))
(/.f64 (*.f64 y.im (log.f64 x.im)) 1)
(*.f64 y.im (log.f64 x.im))
(/.f64 (*.f64 y.im (neg.f64 (log.f64 x.im))) -1)
(*.f64 y.im (log.f64 x.im))
(/.f64 (*.f64 y.im (*.f64 (log.f64 x.im) 2)) 2)
(*.f64 y.im (log.f64 x.im))
(/.f64 (*.f64 y.im (*.f64 (log.f64 x.im) 4)) 4)
(*.f64 y.im (log.f64 x.im))
(/.f64 (*.f64 y.im (*.f64 (log.f64 x.im) -2)) -2)
(*.f64 y.im (log.f64 x.im))
(/.f64 (*.f64 y.im (*.f64 (log.f64 x.im) 8)) 8)
(*.f64 y.im (log.f64 x.im))
(/.f64 (*.f64 y.im (log.f64 (pow.f64 x.im -4))) -4)
(*.f64 (log.f64 (pow.f64 x.im -4)) (/.f64 y.im -4))
(*.f64 (log.f64 (pow.f64 x.im y.im)) 1)
(*.f64 1 (log.f64 (pow.f64 x.im y.im)))
(log.f64 (pow.f64 x.im y.im))
(/.f64 (*.f64 2 (*.f64 y.im (*.f64 (log.f64 x.im) 8))) 16)
(*.f64 y.im (log.f64 x.im))
(/.f64 (*.f64 (*.f64 y.im (neg.f64 (log.f64 x.im))) 8) -8)
(*.f64 y.im (log.f64 x.im))
(/.f64 (neg.f64 (*.f64 y.im (*.f64 (log.f64 x.im) 8))) -8)
(*.f64 y.im (log.f64 x.im))
(/.f64 (*.f64 2 (*.f64 (*.f64 y.im (neg.f64 (log.f64 x.im))) 8)) -16)
(*.f64 y.im (log.f64 x.im))
(/.f64 (*.f64 2 (neg.f64 (*.f64 y.im (*.f64 (log.f64 x.im) 8)))) -16)
(*.f64 y.im (log.f64 x.im))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 y.im (*.f64 (log.f64 x.im) 8)))) 32)
(*.f64 y.im (log.f64 x.im))
(/.f64 (neg.f64 (*.f64 (*.f64 y.im (neg.f64 (log.f64 x.im))) 8)) 8)
(*.f64 y.im (log.f64 x.im))
(/.f64 (neg.f64 (neg.f64 (*.f64 y.im (*.f64 (log.f64 x.im) 8)))) 8)
(*.f64 y.im (log.f64 x.im))
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 y.im (*.f64 (log.f64 x.im) 8)))) (*.f64 2 (*.f64 2 (*.f64 y.im (*.f64 (log.f64 x.im) 8))))) 64)
(*.f64 y.im (log.f64 x.im))
(/.f64 (+.f64 (neg.f64 (*.f64 (*.f64 y.im (neg.f64 (log.f64 x.im))) 8)) (neg.f64 (*.f64 (*.f64 y.im (neg.f64 (log.f64 x.im))) 8))) 16)
(*.f64 y.im (log.f64 x.im))
(/.f64 (+.f64 (neg.f64 (neg.f64 (*.f64 y.im (*.f64 (log.f64 x.im) 8)))) (neg.f64 (neg.f64 (*.f64 y.im (*.f64 (log.f64 x.im) 8))))) 16)
(*.f64 y.im (log.f64 x.im))
(pow.f64 (*.f64 y.im (log.f64 x.im)) 1)
(*.f64 y.im (log.f64 x.im))
(neg.f64 (*.f64 y.im (neg.f64 (log.f64 x.im))))
(*.f64 y.im (log.f64 x.im))
(log.f64 (pow.f64 x.im y.im))
(*.f64 (log.f64 (pow.f64 x.im -4)) (/.f64 y.im -4))
(*.f64 (log.f64 (pow.f64 x.im y.im)) 1)
(*.f64 1 (log.f64 (pow.f64 x.im y.im)))
(log.f64 (sqrt.f64 (pow.f64 (*.f64 x.im x.im) y.im)))
(log.f64 (pow.f64 (sqrt.f64 (*.f64 x.im x.im)) y.im))

eval258.0ms (0.9%)

Compiler

Compiled 19093 to 10511 computations (44.9% saved)

prune179.0ms (0.6%)

Pruning

18 alts after pruning (13 fresh and 5 done)

PrunedKeptTotal
New7187725
Fresh167
Picked011
Done145
Total72018738
Error
3.4b
Counts
738 → 18
Alt Table
Click to see full alt table
StatusErrorProgram
22.9b
(*.f64 (exp.f64 (-.f64 (/.f64 (*.f64 (log.f64 (pow.f64 x.im 2)) y.re) 2) (*.f64 (atan2.f64 x.im x.re) y.im))) 1)
17.8b
(*.f64 (exp.f64 (-.f64 (/.f64 (*.f64 y.re (log.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) 2) (*.f64 (atan2.f64 x.im x.re) y.im))) 1)
19.3b
(*.f64 (exp.f64 (-.f64 (/.f64 (log.f64 (pow.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) y.re)) 2) (*.f64 (atan2.f64 x.im x.re) y.im))) 1)
40.1b
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (cos.f64 (*.f64 y.im (log.f64 (neg.f64 x.im)))))
33.9b
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))))
33.9b
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) 1)
34.6b
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.im)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))))
34.7b
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.im)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) 1)
39.4b
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (cos.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))))
51.3b
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (cos.f64 (+.f64 (*.f64 y.im (log.f64 (sqrt.f64 x.im))) (*.f64 y.im (log.f64 (sqrt.f64 x.im))))))
52.0b
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (cos.f64 (*.f64 y.im (log.f64 (neg.f64 x.im)))))
51.3b
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (cos.f64 (*.f64 y.im (log.f64 x.im))))
37.6b
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 x.im) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) 1)
21.9b
(*.f64 (exp.f64 (-.f64 1 (+.f64 1 (*.f64 (atan2.f64 x.im x.re) y.im)))) 1)
39.2b
(*.f64 (exp.f64 (+.f64 (-.f64 1 (*.f64 (atan2.f64 x.im x.re) y.im)) (+.f64 (*.f64 (log.f64 x.re) y.re) -1))) 1)
21.9b
(*.f64 (exp.f64 (+.f64 -2 (-.f64 1 (+.f64 (*.f64 (atan2.f64 x.im x.re) y.im) -1)))) 1)
21.9b
(*.f64 (exp.f64 (*.f64 (atan2.f64 x.im x.re) (neg.f64 y.im))) 1)
44.6b
(*.f64 (exp.f64 (*.f64 y.re (log.f64 x.re))) 1)
Compiler

Compiled 376 to 258 computations (31.4% saved)

regimes595.0ms (2.1%)

Counts
29 → 3
Calls
Call 1
Inputs
(*.f64 (exp.f64 (*.f64 y.re (log.f64 x.re))) 1)
(*.f64 (exp.f64 (*.f64 (atan2.f64 x.im x.re) (neg.f64 y.im))) 1)
(*.f64 (exp.f64 (-.f64 1 (+.f64 1 (*.f64 (atan2.f64 x.im x.re) y.im)))) 1)
(*.f64 (exp.f64 (+.f64 -2 (-.f64 1 (+.f64 (*.f64 (atan2.f64 x.im x.re) y.im) -1)))) 1)
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 x.im) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) 1)
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) 1)
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.im)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) 1)
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) 1)
(*.f64 (exp.f64 (+.f64 (-.f64 1 (*.f64 (atan2.f64 x.im x.re) y.im)) (+.f64 (*.f64 (log.f64 x.re) y.re) -1))) 1)
(*.f64 (exp.f64 (-.f64 (/.f64 (*.f64 y.re (log.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) 2) (*.f64 (atan2.f64 x.im x.re) y.im))) 1)
(*.f64 (exp.f64 (-.f64 (/.f64 (*.f64 (log.f64 (pow.f64 x.im 2)) y.re) 2) (*.f64 (atan2.f64 x.im x.re) y.im))) 1)
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) 1)
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (pow.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) y.re)) 1/2) (*.f64 (atan2.f64 x.im x.re) y.im))) 1)
(*.f64 (exp.f64 (-.f64 (/.f64 (log.f64 (pow.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) y.re)) 2) (*.f64 (atan2.f64 x.im x.re) y.im))) 1)
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (cos.f64 (*.f64 y.im (log.f64 x.im))))
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 x.im) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))))
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (cos.f64 (*.f64 y.im (log.f64 (neg.f64 x.im)))))
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))))
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.im)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))))
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))))
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))))
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (cos.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))))
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (cos.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.im)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))))
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (cos.f64 (*.f64 y.im (log.f64 (neg.f64 x.im)))))
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))))
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (cos.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))))
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (cos.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.im)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))))
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (cos.f64 (+.f64 (*.f64 y.im (log.f64 (sqrt.f64 x.im))) (*.f64 y.im (log.f64 (sqrt.f64 x.im))))))
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (cos.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))))
Outputs
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))))
(*.f64 (exp.f64 (+.f64 -2 (-.f64 1 (+.f64 (*.f64 (atan2.f64 x.im x.re) y.im) -1)))) 1)
(*.f64 (exp.f64 (-.f64 (/.f64 (*.f64 (log.f64 (pow.f64 x.im 2)) y.re) 2) (*.f64 (atan2.f64 x.im x.re) y.im))) 1)
Calls

5 calls:

224.0ms
x.im
145.0ms
x.re
123.0ms
y.im
36.0ms
y.re
6.0ms
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (cos.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))))
Results
ErrorSegmentsBranch
7.1b6x.re
7.2b4x.im
4.7b3y.re
12.9b6y.im
11.9b2(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (cos.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))))
Compiler

Compiled 629 to 181 computations (71.2% saved)

bsearch101.0ms (0.4%)

Algorithm
binary-search
Steps
TimeLeftRight
78.0ms
5.201809213569012e-8
0.0005831335077883974
23.0ms
-5.785734118533396e-14
-2.4164274404036944e-14
Results
46.0msbody256infinite
40.0ms196×body256valid
4.0msbody1024valid
3.0msbody1024infinite
2.0msbody512infinite
2.0msbody512valid
Compiler

Compiled 621 to 459 computations (26.1% saved)

regimes527.0ms (1.9%)

Counts
24 → 3
Calls
Call 1
Inputs
(*.f64 (exp.f64 (*.f64 y.re (log.f64 x.re))) 1)
(*.f64 (exp.f64 (*.f64 (atan2.f64 x.im x.re) (neg.f64 y.im))) 1)
(*.f64 (exp.f64 (-.f64 1 (+.f64 1 (*.f64 (atan2.f64 x.im x.re) y.im)))) 1)
(*.f64 (exp.f64 (+.f64 -2 (-.f64 1 (+.f64 (*.f64 (atan2.f64 x.im x.re) y.im) -1)))) 1)
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 x.im) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) 1)
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) 1)
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.im)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) 1)
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) 1)
(*.f64 (exp.f64 (+.f64 (-.f64 1 (*.f64 (atan2.f64 x.im x.re) y.im)) (+.f64 (*.f64 (log.f64 x.re) y.re) -1))) 1)
(*.f64 (exp.f64 (-.f64 (/.f64 (*.f64 y.re (log.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) 2) (*.f64 (atan2.f64 x.im x.re) y.im))) 1)
(*.f64 (exp.f64 (-.f64 (/.f64 (*.f64 (log.f64 (pow.f64 x.im 2)) y.re) 2) (*.f64 (atan2.f64 x.im x.re) y.im))) 1)
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) 1)
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (pow.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) y.re)) 1/2) (*.f64 (atan2.f64 x.im x.re) y.im))) 1)
(*.f64 (exp.f64 (-.f64 (/.f64 (log.f64 (pow.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) y.re)) 2) (*.f64 (atan2.f64 x.im x.re) y.im))) 1)
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (cos.f64 (*.f64 y.im (log.f64 x.im))))
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 x.im) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))))
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (cos.f64 (*.f64 y.im (log.f64 (neg.f64 x.im)))))
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))))
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.im)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))))
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))))
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (cos.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))))
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (cos.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))))
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (cos.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.im)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))))
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (cos.f64 (*.f64 y.im (log.f64 (neg.f64 x.im)))))
Outputs
(*.f64 (exp.f64 (-.f64 (/.f64 (*.f64 y.re (log.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) 2) (*.f64 (atan2.f64 x.im x.re) y.im))) 1)
(*.f64 (exp.f64 (+.f64 -2 (-.f64 1 (+.f64 (*.f64 (atan2.f64 x.im x.re) y.im) -1)))) 1)
(*.f64 (exp.f64 (-.f64 (/.f64 (*.f64 (log.f64 (pow.f64 x.im 2)) y.re) 2) (*.f64 (atan2.f64 x.im x.re) y.im))) 1)
Calls

4 calls:

193.0ms
x.re
147.0ms
y.re
139.0ms
y.im
39.0ms
x.im
Results
ErrorSegmentsBranch
7.1b6x.re
7.2b4x.im
4.7b3y.re
11.9b8y.im
Compiler

Compiled 441 to 149 computations (66.2% saved)

bsearch65.0ms (0.2%)

Algorithm
binary-search
Steps
TimeLeftRight
39.0ms
5.201809213569012e-8
0.0005831335077883974
24.0ms
-5.785734118533396e-14
-2.4164274404036944e-14
Results
43.0ms188×body256valid
6.0ms10×body1024valid
6.0msbody2048valid
2.0msbody512valid
1.0msbody512infinite
1.0msbody1024infinite
0.0msbody256infinite
Compiler

Compiled 601 to 459 computations (23.6% saved)

regimes125.0ms (0.4%)

Counts
10 → 3
Calls
Call 1
Inputs
(*.f64 (exp.f64 (*.f64 y.re (log.f64 x.re))) 1)
(*.f64 (exp.f64 (*.f64 (atan2.f64 x.im x.re) (neg.f64 y.im))) 1)
(*.f64 (exp.f64 (-.f64 1 (+.f64 1 (*.f64 (atan2.f64 x.im x.re) y.im)))) 1)
(*.f64 (exp.f64 (+.f64 -2 (-.f64 1 (+.f64 (*.f64 (atan2.f64 x.im x.re) y.im) -1)))) 1)
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 x.im) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) 1)
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) 1)
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.im)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) 1)
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) 1)
(*.f64 (exp.f64 (+.f64 (-.f64 1 (*.f64 (atan2.f64 x.im x.re) y.im)) (+.f64 (*.f64 (log.f64 x.re) y.re) -1))) 1)
(*.f64 (exp.f64 (-.f64 (/.f64 (*.f64 y.re (log.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) 2) (*.f64 (atan2.f64 x.im x.re) y.im))) 1)
Outputs
(*.f64 (exp.f64 (-.f64 (/.f64 (*.f64 y.re (log.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) 2) (*.f64 (atan2.f64 x.im x.re) y.im))) 1)
(*.f64 (exp.f64 (+.f64 -2 (-.f64 1 (+.f64 (*.f64 (atan2.f64 x.im x.re) y.im) -1)))) 1)
(*.f64 (exp.f64 (-.f64 (/.f64 (*.f64 y.re (log.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) 2) (*.f64 (atan2.f64 x.im x.re) y.im))) 1)
Calls

4 calls:

44.0ms
y.im
39.0ms
x.re
22.0ms
x.im
16.0ms
y.re
Results
ErrorSegmentsBranch
7.1b6x.re
7.2b4x.im
4.7b3y.re
11.9b8y.im
Compiler

Compiled 158 to 92 computations (41.8% saved)

bsearch117.0ms (0.4%)

Algorithm
binary-search
Steps
TimeLeftRight
94.0ms
118154502.49253151
3.087019184087138e+19
22.0ms
-5.785734118533396e-14
-2.4164274404036944e-14
Results
52.0ms235×body256valid
35.0ms168×body256infinite
11.0ms18×body1024infinite
5.0ms14×body512infinite
1.0msbody1024valid
1.0msbody512valid
Compiler

Compiled 723 to 535 computations (26% saved)

regimes82.0ms (0.3%)

Counts
9 → 2
Calls
Call 1
Inputs
(*.f64 (exp.f64 (*.f64 y.re (log.f64 x.re))) 1)
(*.f64 (exp.f64 (*.f64 (atan2.f64 x.im x.re) (neg.f64 y.im))) 1)
(*.f64 (exp.f64 (-.f64 1 (+.f64 1 (*.f64 (atan2.f64 x.im x.re) y.im)))) 1)
(*.f64 (exp.f64 (+.f64 -2 (-.f64 1 (+.f64 (*.f64 (atan2.f64 x.im x.re) y.im) -1)))) 1)
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 x.im) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) 1)
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) 1)
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.im)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) 1)
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) 1)
(*.f64 (exp.f64 (+.f64 (-.f64 1 (*.f64 (atan2.f64 x.im x.re) y.im)) (+.f64 (*.f64 (log.f64 x.re) y.re) -1))) 1)
Outputs
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.im)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) 1)
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 x.im) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) 1)
Calls

4 calls:

34.0ms
y.im
24.0ms
y.re
10.0ms
x.im
10.0ms
x.re
Results
ErrorSegmentsBranch
9.1b2x.re
8.2b2x.im
15.3b5y.re
18.3b7y.im
Compiler

Compiled 137 to 81 computations (40.9% saved)

bsearch58.0ms (0.2%)

Algorithm
binary-search
Steps
TimeLeftRight
57.0ms
-4.0525236769758505e-293
-2.1864290271345138e-302
Results
26.0ms128×body256valid
13.0ms21×body1024infinite
6.0ms16×body512infinite
6.0ms10×body1024valid
2.0msbody512valid
1.0msbody2048valid
1.0msbody256infinite
Compiler

Compiled 381 to 268 computations (29.7% saved)

regimes44.0ms (0.2%)

Counts
6 → 2
Calls
Call 1
Inputs
(*.f64 (exp.f64 (*.f64 y.re (log.f64 x.re))) 1)
(*.f64 (exp.f64 (*.f64 (atan2.f64 x.im x.re) (neg.f64 y.im))) 1)
(*.f64 (exp.f64 (-.f64 1 (+.f64 1 (*.f64 (atan2.f64 x.im x.re) y.im)))) 1)
(*.f64 (exp.f64 (+.f64 -2 (-.f64 1 (+.f64 (*.f64 (atan2.f64 x.im x.re) y.im) -1)))) 1)
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 x.im) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) 1)
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) 1)
Outputs
(*.f64 (exp.f64 (+.f64 -2 (-.f64 1 (+.f64 (*.f64 (atan2.f64 x.im x.re) y.im) -1)))) 1)
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) 1)
Calls

4 calls:

12.0ms
y.re
12.0ms
y.im
9.0ms
x.re
8.0ms
x.im
Results
ErrorSegmentsBranch
15.4b2x.re
15.4b2x.im
17.0b3y.re
20.7b3y.im
Compiler

Compiled 92 to 59 computations (35.9% saved)

bsearch43.0ms (0.2%)

Algorithm
binary-search
Steps
TimeLeftRight
43.0ms
8.999195715285974e-272
5.7397753792287875e-266
Results
30.0ms144×body256valid
8.0ms13×body1024infinite
2.0msbody512infinite
0.0msbody256infinite
Compiler

Compiled 381 to 286 computations (24.9% saved)

regimes45.0ms (0.2%)

Counts
5 → 2
Calls
Call 1
Inputs
(*.f64 (exp.f64 (*.f64 y.re (log.f64 x.re))) 1)
(*.f64 (exp.f64 (*.f64 (atan2.f64 x.im x.re) (neg.f64 y.im))) 1)
(*.f64 (exp.f64 (-.f64 1 (+.f64 1 (*.f64 (atan2.f64 x.im x.re) y.im)))) 1)
(*.f64 (exp.f64 (+.f64 -2 (-.f64 1 (+.f64 (*.f64 (atan2.f64 x.im x.re) y.im) -1)))) 1)
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 x.im) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) 1)
Outputs
(*.f64 (exp.f64 (+.f64 -2 (-.f64 1 (+.f64 (*.f64 (atan2.f64 x.im x.re) y.im) -1)))) 1)
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 x.im) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) 1)
Calls

4 calls:

12.0ms
y.re
11.0ms
y.im
11.0ms
x.re
8.0ms
x.im
Results
ErrorSegmentsBranch
19.8b2x.re
15.4b2x.im
17.0b3y.re
20.7b3y.im
Compiler

Compiled 79 to 54 computations (31.6% saved)

bsearch62.0ms (0.2%)

Algorithm
binary-search
Steps
TimeLeftRight
62.0ms
-2.1864290271345138e-302
1.6018127588160922e-301
Results
27.0ms135×body256valid
10.0ms17×body1024infinite
7.0ms12×body1024valid
6.0ms13×body512valid
5.0ms14×body512infinite
3.0ms13×body256infinite
Compiler

Compiled 418 to 315 computations (24.6% saved)

regimes43.0ms (0.2%)

Counts
4 → 3
Calls
Call 1
Inputs
(*.f64 (exp.f64 (*.f64 y.re (log.f64 x.re))) 1)
(*.f64 (exp.f64 (*.f64 (atan2.f64 x.im x.re) (neg.f64 y.im))) 1)
(*.f64 (exp.f64 (-.f64 1 (+.f64 1 (*.f64 (atan2.f64 x.im x.re) y.im)))) 1)
(*.f64 (exp.f64 (+.f64 -2 (-.f64 1 (+.f64 (*.f64 (atan2.f64 x.im x.re) y.im) -1)))) 1)
Outputs
(*.f64 (exp.f64 (*.f64 y.re (log.f64 x.re))) 1)
(*.f64 (exp.f64 (+.f64 -2 (-.f64 1 (+.f64 (*.f64 (atan2.f64 x.im x.re) y.im) -1)))) 1)
(*.f64 (exp.f64 (*.f64 y.re (log.f64 x.re))) 1)
Calls

4 calls:

10.0ms
y.im
10.0ms
x.im
10.0ms
y.re
10.0ms
x.re
Results
ErrorSegmentsBranch
19.8b2x.re
20.9b3x.im
18.6b3y.re
20.7b3y.im
Compiler

Compiled 66 to 48 computations (27.3% saved)

bsearch334.0ms (1.2%)

Algorithm
binary-search
Steps
TimeLeftRight
81.0ms
9.869440500831481e+40
1.1318268709200232e+43
253.0ms
-1.0634998568616132e+75
-2.8952744641044544e+72
Results
180.0ms240×body256valid
133.0ms134×body256infinite
12.0ms20×body1024infinite
4.0ms11×body512infinite
Compiler

Compiled 513 to 415 computations (19.1% saved)

regimes94.0ms (0.3%)

Counts
3 → 3
Calls
Call 1
Inputs
(*.f64 (exp.f64 (*.f64 y.re (log.f64 x.re))) 1)
(*.f64 (exp.f64 (*.f64 (atan2.f64 x.im x.re) (neg.f64 y.im))) 1)
(*.f64 (exp.f64 (-.f64 1 (+.f64 1 (*.f64 (atan2.f64 x.im x.re) y.im)))) 1)
Outputs
(*.f64 (exp.f64 (*.f64 y.re (log.f64 x.re))) 1)
(*.f64 (exp.f64 (-.f64 1 (+.f64 1 (*.f64 (atan2.f64 x.im x.re) y.im)))) 1)
(*.f64 (exp.f64 (*.f64 y.re (log.f64 x.re))) 1)
Calls

4 calls:

58.0ms
x.im
17.0ms
y.im
9.0ms
x.re
9.0ms
y.re
Results
ErrorSegmentsBranch
19.8b2x.re
20.9b3x.im
18.6b3y.re
20.7b3y.im
Compiler

Compiled 52 to 39 computations (25% saved)

bsearch104.0ms (0.4%)

Algorithm
binary-search
Steps
TimeLeftRight
61.0ms
9.869440500831481e+40
1.1318268709200232e+43
43.0ms
-1.0634998568616132e+75
-2.8952744641044544e+72
Results
52.0ms240×body256valid
31.0ms133×body256infinite
13.0ms22×body1024infinite
3.0msbody512infinite
Compiler

Compiled 483 to 385 computations (20.3% saved)

regimes35.0ms (0.1%)

Accuracy

Total -32.9b remaining (-177.3%)

Threshold costs -32.9b (-177.3%)

Counts
2 → 3
Calls
Call 1
Inputs
(*.f64 (exp.f64 (*.f64 y.re (log.f64 x.re))) 1)
(*.f64 (exp.f64 (*.f64 (atan2.f64 x.im x.re) (neg.f64 y.im))) 1)
Outputs
(*.f64 (exp.f64 (*.f64 y.re (log.f64 x.re))) 1)
(*.f64 (exp.f64 (*.f64 (atan2.f64 x.im x.re) (neg.f64 y.im))) 1)
(*.f64 (exp.f64 (*.f64 y.re (log.f64 x.re))) 1)
Calls

4 calls:

9.0ms
y.re
9.0ms
x.re
9.0ms
y.im
8.0ms
x.im
Results
ErrorSegmentsBranch
19.8b2x.re
20.9b3x.im
18.6b3y.re
20.7b3y.im
Compiler

Compiled 40 to 31 computations (22.5% saved)

bsearch159.0ms (0.6%)

Algorithm
binary-search
Steps
TimeLeftRight
118.0ms
9.869440500831481e+40
1.1318268709200232e+43
41.0ms
-1.0634998568616132e+75
-2.8952744641044544e+72
Results
69.0ms19×body1024infinite
52.0ms240×body256valid
30.0ms140×body256infinite
4.0ms11×body512infinite
Compiler

Compiled 438 to 340 computations (22.4% saved)

simplify12.0ms (0%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01151118
Stop Event
fuel
saturated
Calls
Call 1
Inputs
(if (<=.f64 y.re -4516005263313067/79228162514264337593543950336) (*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re)))) (if (<=.f64 y.re 2582544170319337/4611686018427387904) (*.f64 (exp.f64 (+.f64 -2 (-.f64 1 (+.f64 (*.f64 (atan2.f64 x.im x.re) y.im) -1)))) 1) (*.f64 (exp.f64 (-.f64 (/.f64 (*.f64 (log.f64 (pow.f64 x.im 2)) y.re) 2) (*.f64 (atan2.f64 x.im x.re) y.im))) 1)))
(if (<=.f64 y.re -4436777100798803/79228162514264337593543950336) (*.f64 (exp.f64 (-.f64 (/.f64 (*.f64 y.re (log.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) 2) (*.f64 (atan2.f64 x.im x.re) y.im))) 1) (if (<=.f64 y.re 5902958103587057/18446744073709551616) (*.f64 (exp.f64 (+.f64 -2 (-.f64 1 (+.f64 (*.f64 (atan2.f64 x.im x.re) y.im) -1)))) 1) (*.f64 (exp.f64 (-.f64 (/.f64 (*.f64 (log.f64 (pow.f64 x.im 2)) y.re) 2) (*.f64 (atan2.f64 x.im x.re) y.im))) 1)))
(if (<=.f64 y.re -4516005263313067/79228162514264337593543950336) (*.f64 (exp.f64 (-.f64 (/.f64 (*.f64 y.re (log.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) 2) (*.f64 (atan2.f64 x.im x.re) y.im))) 1) (if (<=.f64 y.re 86000000000) (*.f64 (exp.f64 (+.f64 -2 (-.f64 1 (+.f64 (*.f64 (atan2.f64 x.im x.re) y.im) -1)))) 1) (*.f64 (exp.f64 (-.f64 (/.f64 (*.f64 y.re (log.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) 2) (*.f64 (atan2.f64 x.im x.re) y.im))) 1)))
(if (<=.f64 x.im -8493136544725101/386051661123868214325895970762095083331216144111904370034983364157543830047598546775742309000849007597326427200921653578548066591998660043462778854257084865420374725869305346230443778499781067545394454342790117394565596548890481374012190543459242928201313126587598361115137891035519604744312911050121319319358268243968) (*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.im)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) 1) (*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 x.im) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) 1))
(if (<=.f64 x.re 856521739283203/9516908214257811601907599988159363584840065290620124537956939899622020205826587990689077212775400643774711832257235027522909345571487396529861315719055325605011013378863743193233193022939505515969530853007049198118833591724018432564205433218231411731277088674906521042072098232413978624) (*.f64 (exp.f64 (+.f64 -2 (-.f64 1 (+.f64 (*.f64 (atan2.f64 x.im x.re) y.im) -1)))) 1) (*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) 1))
(if (<=.f64 x.im -20240225330731/101201126653655309176247673359458653524778324882071059178450679013715169783997673445980191850718562247593538932158405955694904368692896738433506699970369254960758712138283180682233453871046608170619883839236372534281003741712346349309051677824579778170405028256179384776166707307615251266093163754323003131653853870546747392) (*.f64 (exp.f64 (+.f64 -2 (-.f64 1 (+.f64 (*.f64 (atan2.f64 x.im x.re) y.im) -1)))) 1) (*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 x.im) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) 1))
(if (<=.f64 y.re -660000000000000035880502900074580755468819969942685438009003810651662974976) (*.f64 (exp.f64 (*.f64 y.re (log.f64 x.re))) 1) (if (<=.f64 y.re 11000000000000000029515324726817481553870848) (*.f64 (exp.f64 (+.f64 -2 (-.f64 1 (+.f64 (*.f64 (atan2.f64 x.im x.re) y.im) -1)))) 1) (*.f64 (exp.f64 (*.f64 y.re (log.f64 x.re))) 1)))
(if (<=.f64 y.re -229999999999999985112822225914413596834477354922330867223162418777974374400) (*.f64 (exp.f64 (*.f64 y.re (log.f64 x.re))) 1) (if (<=.f64 y.re 4799999999999999720275405140612290610987008) (*.f64 (exp.f64 (-.f64 1 (+.f64 1 (*.f64 (atan2.f64 x.im x.re) y.im)))) 1) (*.f64 (exp.f64 (*.f64 y.re (log.f64 x.re))) 1)))
(if (<=.f64 y.re -91999999999999994045128890365765438733790941968932346889264967511189749760) (*.f64 (exp.f64 (*.f64 y.re (log.f64 x.re))) 1) (if (<=.f64 y.re 6000000000000000578799285889800569438076928) (*.f64 (exp.f64 (*.f64 (atan2.f64 x.im x.re) (neg.f64 y.im))) 1) (*.f64 (exp.f64 (*.f64 y.re (log.f64 x.re))) 1)))
(*.f64 (exp.f64 (*.f64 y.re (log.f64 x.re))) 1)
Outputs
(if (<=.f64 y.re -4516005263313067/79228162514264337593543950336) (*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re)))) (if (<=.f64 y.re 2582544170319337/4611686018427387904) (*.f64 (exp.f64 (+.f64 -2 (-.f64 1 (+.f64 (*.f64 (atan2.f64 x.im x.re) y.im) -1)))) 1) (*.f64 (exp.f64 (-.f64 (/.f64 (*.f64 (log.f64 (pow.f64 x.im 2)) y.re) 2) (*.f64 (atan2.f64 x.im x.re) y.im))) 1)))
(if (<=.f64 y.re -4436777100798803/79228162514264337593543950336) (*.f64 (exp.f64 (-.f64 (/.f64 (*.f64 y.re (log.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) 2) (*.f64 (atan2.f64 x.im x.re) y.im))) 1) (if (<=.f64 y.re 5902958103587057/18446744073709551616) (*.f64 (exp.f64 (+.f64 -2 (-.f64 1 (+.f64 (*.f64 (atan2.f64 x.im x.re) y.im) -1)))) 1) (*.f64 (exp.f64 (-.f64 (/.f64 (*.f64 (log.f64 (pow.f64 x.im 2)) y.re) 2) (*.f64 (atan2.f64 x.im x.re) y.im))) 1)))
(if (<=.f64 y.re -4516005263313067/79228162514264337593543950336) (*.f64 (exp.f64 (-.f64 (/.f64 (*.f64 y.re (log.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) 2) (*.f64 (atan2.f64 x.im x.re) y.im))) 1) (if (<=.f64 y.re 86000000000) (*.f64 (exp.f64 (+.f64 -2 (-.f64 1 (+.f64 (*.f64 (atan2.f64 x.im x.re) y.im) -1)))) 1) (*.f64 (exp.f64 (-.f64 (/.f64 (*.f64 y.re (log.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) 2) (*.f64 (atan2.f64 x.im x.re) y.im))) 1)))
(if (<=.f64 x.im -8493136544725101/386051661123868214325895970762095083331216144111904370034983364157543830047598546775742309000849007597326427200921653578548066591998660043462778854257084865420374725869305346230443778499781067545394454342790117394565596548890481374012190543459242928201313126587598361115137891035519604744312911050121319319358268243968) (*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.im)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) 1) (*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 x.im) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) 1))
(if (<=.f64 x.re 856521739283203/9516908214257811601907599988159363584840065290620124537956939899622020205826587990689077212775400643774711832257235027522909345571487396529861315719055325605011013378863743193233193022939505515969530853007049198118833591724018432564205433218231411731277088674906521042072098232413978624) (*.f64 (exp.f64 (+.f64 -2 (-.f64 1 (+.f64 (*.f64 (atan2.f64 x.im x.re) y.im) -1)))) 1) (*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) 1))
(if (<=.f64 x.im -20240225330731/101201126653655309176247673359458653524778324882071059178450679013715169783997673445980191850718562247593538932158405955694904368692896738433506699970369254960758712138283180682233453871046608170619883839236372534281003741712346349309051677824579778170405028256179384776166707307615251266093163754323003131653853870546747392) (*.f64 (exp.f64 (+.f64 -2 (-.f64 1 (+.f64 (*.f64 (atan2.f64 x.im x.re) y.im) -1)))) 1) (*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 x.im) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) 1))
(if (<=.f64 y.re -660000000000000035880502900074580755468819969942685438009003810651662974976) (*.f64 (exp.f64 (*.f64 y.re (log.f64 x.re))) 1) (if (<=.f64 y.re 11000000000000000029515324726817481553870848) (*.f64 (exp.f64 (+.f64 -2 (-.f64 1 (+.f64 (*.f64 (atan2.f64 x.im x.re) y.im) -1)))) 1) (*.f64 (exp.f64 (*.f64 y.re (log.f64 x.re))) 1)))
(if (<=.f64 y.re -229999999999999985112822225914413596834477354922330867223162418777974374400) (*.f64 (exp.f64 (*.f64 y.re (log.f64 x.re))) 1) (if (<=.f64 y.re 4799999999999999720275405140612290610987008) (*.f64 (exp.f64 (-.f64 1 (+.f64 1 (*.f64 (atan2.f64 x.im x.re) y.im)))) 1) (*.f64 (exp.f64 (*.f64 y.re (log.f64 x.re))) 1)))
(if (<=.f64 y.re -91999999999999994045128890365765438733790941968932346889264967511189749760) (*.f64 (exp.f64 (*.f64 y.re (log.f64 x.re))) 1) (if (<=.f64 y.re 6000000000000000578799285889800569438076928) (*.f64 (exp.f64 (*.f64 (atan2.f64 x.im x.re) (neg.f64 y.im))) 1) (*.f64 (exp.f64 (*.f64 y.re (log.f64 x.re))) 1)))
(*.f64 (exp.f64 (*.f64 y.re (log.f64 x.re))) 1)
Compiler

Compiled 429 to 278 computations (35.2% saved)

soundness197.0ms (0.7%)

Algorithm
egg-herbie
Rules
1210×rational.json-simplify-35
884×rational.json-simplify-1
866×rational.json-simplify-61
850×rational.json-simplify-41
760×rational.json-simplify-54
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
02227385
15197061
29726957
319656729
445806729
579456729
Stop Event
node limit
Compiler

Compiled 43 to 28 computations (34.9% saved)

end312.0ms (1.1%)

Compiler

Compiled 393 to 205 computations (47.8% saved)

Profiling

Loading profile data...