Details

Time bar (total: 53.4s)

analyze449.0ms (0.8%)

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)

sample13.1s (24.5%)

Results
7.2s2562×body1024infinite
2.3s7932×body256valid
1.5s908×body256infinite
1.4s948×body512infinite
345.0ms184×body1024valid
248.0ms185×body2048infinite
51.0ms127×body512valid
13.0ms13×body2048valid
Bogosity

preprocess111.0ms (0.2%)

Algorithm
egg-herbie
Rules
1596×rational.json-simplify-51
1298×rational.json-simplify-46
1208×rational.json-simplify-49
926×rational.json-simplify-1
848×rational.json-simplify-19
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
094805
1159805
2194805
3298805
4994805
54685805
67598805
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))) (sin.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))) (sin.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))) (sin.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))) (sin.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))) (sin.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))) (sin.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))) (sin.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))) (sin.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))) (sin.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))) (sin.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)))) (sin.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))) (sin.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)))) (sin.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))) (sin.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)))) (sin.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))) (sin.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)))) (sin.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))) (sin.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)))) (sin.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))) (sin.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)))) (sin.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)

simplify112.0ms (0.2%)

Algorithm
egg-herbie
Rules
1098×rational.json-simplify-2
924×rational.json-simplify-44
828×rational.json-simplify-39
826×rational.json-simplify-47
720×rational.json-simplify-19
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
022115
135115
246115
388115
4403115
54011115
66309115
77524115
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))) (sin.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))) (sin.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))) (sin.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
33.7b
Counts
3 → 1
Alt Table
Click to see full alt table
StatusErrorProgram
33.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))) (sin.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)

localize35.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
1.2b
(*.f64 (atan2.f64 x.im x.re) y.re)
2.2b
(*.f64 (atan2.f64 x.im x.re) y.im)
30.4b
(sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))
31.8b
(sin.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)

series23.0ms (0%)

Counts
4 → 120
Calls

36 calls:

TimeVariablePointExpression
4.0ms
x.im
@inf
(sin.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
(sin.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
(sin.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
(sin.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
y.im
@inf
(*.f64 (atan2.f64 x.im x.re) y.im)

rewrite73.0ms (0.1%)

Algorithm
batch-egg-rewrite
Rules
1388×bool.json-1
1388×bool.json-2
1374×rational.json-1
1374×rational.json-2
1374×rational.json-4
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
018104
1178104
2453104
31052104
43552104
Stop Event
node limit
Counts
4 → 44
Calls
Call 1
Inputs
(sin.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 (sin.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 (sin.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 (sin.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 (sin.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.im) (-.f64 (*.f64 (atan2.f64 x.im x.re) y.re) (PI.f64)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.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 (sin.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 2 (/.f64 (sin.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 (sin.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 1/2 (*.f64 (sin.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 (sin.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 (sin.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.im) (-.f64 (*.f64 (atan2.f64 x.im x.re) y.re) (PI.f64)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sin.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 (sin.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 (sin.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 (*.f64 (sin.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 (sin.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 (sin.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.im) (-.f64 (*.f64 (atan2.f64 x.im x.re) y.re) (PI.f64)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (sin.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.im) (-.f64 (*.f64 (atan2.f64 x.im x.re) y.re) (PI.f64)))))))) (#(struct:change #<rule egg-rr> (2) ((x not (not (sin.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 and (sin.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))) (sin.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 or (sin.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))) (sin.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 (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 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 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 (/.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 (*.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) 4) (*.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) 4)) 8)))) (#(struct:change #<rule egg-rr> (2) ((x not (not (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))))))) (#(struct:change #<rule egg-rr> (2) ((x and (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))))))) (#(struct:change #<rule egg-rr> (2) ((x or (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))))))))
((#(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 (*.f64 y.im (atan2.f64 x.im x.re)) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 (*.f64 y.im (atan2.f64 x.im x.re)) 4) (*.f64 (*.f64 y.im (atan2.f64 x.im x.re)) 4)) 8)))) (#(struct:change #<rule egg-rr> (2) ((x not (not (*.f64 y.im (atan2.f64 x.im x.re))))))) (#(struct:change #<rule egg-rr> (2) ((x and (*.f64 y.im (atan2.f64 x.im x.re)) (*.f64 y.im (atan2.f64 x.im x.re)))))) (#(struct:change #<rule egg-rr> (2) ((x or (*.f64 y.im (atan2.f64 x.im x.re)) (*.f64 y.im (atan2.f64 x.im x.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 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 (*.f64 (atan2.f64 x.im x.re) y.re) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 (*.f64 (atan2.f64 x.im x.re) y.re) 4) (*.f64 (*.f64 (atan2.f64 x.im x.re) y.re) 4)) 8)))) (#(struct:change #<rule egg-rr> (2) ((x not (not (*.f64 (atan2.f64 x.im x.re) y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x and (*.f64 (atan2.f64 x.im x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.re))))) (#(struct:change #<rule egg-rr> (2) ((x or (*.f64 (atan2.f64 x.im x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.re))))))

simplify624.0ms (1.2%)

Algorithm
egg-herbie
Rules
1248×rational.json-simplify-35
1094×rational.json-simplify-51
1040×rational.json-simplify-2
900×rational.json-simplify-54
810×rational.json-simplify-41
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
040610732
1100610540
2207910516
3414510104
4598110104
Stop Event
node limit
Counts
164 → 232
Calls
Call 1
Inputs
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 x.re 2) (*.f64 y.im (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im)))))) (pow.f64 x.im 2))) (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im)))))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 x.re 2) (*.f64 y.im (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im)))))) (pow.f64 x.im 2))) (+.f64 (sin.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) (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/4 (/.f64 (*.f64 y.im (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 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 x.re 2) (*.f64 y.im (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im)))))) (pow.f64 x.im 2))) (+.f64 (sin.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 1/8 (/.f64 (*.f64 (pow.f64 y.im 2) (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))) (pow.f64 x.im 6))) (*.f64 (+.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 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) (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/4 (/.f64 (*.f64 y.im (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))) (pow.f64 x.im 4))))))))
(sin.f64 (+.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.re)) y.im)) (*.f64 y.re (atan2.f64 x.im x.re))))
(+.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 1/2 (/.f64 (*.f64 y.im (*.f64 (pow.f64 x.im 2) (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 2))))
(+.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 (*.f64 1/2 (/.f64 (*.f64 y.im (*.f64 (pow.f64 x.im 2) (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 2))) (+.f64 (*.f64 -1/4 (/.f64 (*.f64 y.im (*.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))) (*.f64 -1/8 (/.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 (pow.f64 y.im 2) (pow.f64 x.im 4))) (pow.f64 x.re 4))))))
(+.f64 (*.f64 1/8 (/.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 (pow.f64 y.im 2) (pow.f64 x.im 6))) (pow.f64 x.re 6))) (+.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))) (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 (sin.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 y.im (*.f64 (pow.f64 x.im 2) (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 2))) (+.f64 (*.f64 -1/8 (/.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 (pow.f64 y.im 2) (pow.f64 x.im 4))) (pow.f64 x.re 4))) (*.f64 -1/4 (/.f64 (*.f64 y.im (*.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))))))))
(sin.f64 (+.f64 (*.f64 -1 (*.f64 y.im (log.f64 (/.f64 -1 x.re)))) (*.f64 y.re (atan2.f64 x.im x.re))))
(+.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 1/2 (/.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 y.im (pow.f64 x.im 2))) (pow.f64 x.re 2))))
(+.f64 (*.f64 -1/4 (/.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 y.im (pow.f64 x.im 4))) (pow.f64 x.re 4))) (+.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 (*.f64 -1/8 (/.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 (pow.f64 y.im 2) (pow.f64 x.im 4))) (pow.f64 x.re 4))) (*.f64 1/2 (/.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 y.im (pow.f64 x.im 2))) (pow.f64 x.re 2))))))
(+.f64 (*.f64 -1/4 (/.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 y.im (pow.f64 x.im 4))) (pow.f64 x.re 4))) (+.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 (/.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))) (cos.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 (*.f64 -1/8 (/.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 (pow.f64 y.im 2) (pow.f64 x.im 4))) (pow.f64 x.re 4))) (+.f64 (*.f64 1/2 (/.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 y.im (pow.f64 x.im 2))) (pow.f64 x.re 2))) (*.f64 1/8 (/.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 (pow.f64 y.im 2) (pow.f64 x.im 6))) (pow.f64 x.re 6))))))))
(sin.f64 (+.f64 (*.f64 y.im (log.f64 x.re)) (*.f64 y.re (atan2.f64 x.im x.re))))
(+.f64 (sin.f64 (+.f64 (*.f64 y.im (log.f64 x.re)) (*.f64 y.re (atan2.f64 x.im x.re)))) (*.f64 1/2 (/.f64 (*.f64 y.im (*.f64 (pow.f64 x.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 2))))
(+.f64 (*.f64 (+.f64 (*.f64 -1/8 (/.f64 (*.f64 (sin.f64 (+.f64 (*.f64 y.im (log.f64 x.re)) (*.f64 y.re (atan2.f64 x.im x.re)))) (pow.f64 y.im 2)) (pow.f64 x.re 4))) (*.f64 -1/4 (/.f64 (*.f64 y.im (cos.f64 (+.f64 (*.f64 y.im (log.f64 x.re)) (*.f64 y.re (atan2.f64 x.im x.re))))) (pow.f64 x.re 4)))) (pow.f64 x.im 4)) (+.f64 (sin.f64 (+.f64 (*.f64 y.im (log.f64 x.re)) (*.f64 y.re (atan2.f64 x.im x.re)))) (*.f64 1/2 (/.f64 (*.f64 y.im (*.f64 (pow.f64 x.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 2)))))
(+.f64 (*.f64 (+.f64 (*.f64 1/8 (/.f64 (*.f64 (sin.f64 (+.f64 (*.f64 y.im (log.f64 x.re)) (*.f64 y.re (atan2.f64 x.im x.re)))) (pow.f64 y.im 2)) (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)))) (cos.f64 (+.f64 (*.f64 y.im (log.f64 x.re)) (*.f64 y.re (atan2.f64 x.im x.re)))))) (pow.f64 x.im 6)) (+.f64 (*.f64 (+.f64 (*.f64 -1/8 (/.f64 (*.f64 (sin.f64 (+.f64 (*.f64 y.im (log.f64 x.re)) (*.f64 y.re (atan2.f64 x.im x.re)))) (pow.f64 y.im 2)) (pow.f64 x.re 4))) (*.f64 -1/4 (/.f64 (*.f64 y.im (cos.f64 (+.f64 (*.f64 y.im (log.f64 x.re)) (*.f64 y.re (atan2.f64 x.im x.re))))) (pow.f64 x.re 4)))) (pow.f64 x.im 4)) (+.f64 (sin.f64 (+.f64 (*.f64 y.im (log.f64 x.re)) (*.f64 y.re (atan2.f64 x.im x.re)))) (*.f64 1/2 (/.f64 (*.f64 y.im (*.f64 (pow.f64 x.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 2))))))
(sin.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/2 (/.f64 (*.f64 (pow.f64 x.re 2) (*.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.im)) y.im)))) y.im)) (pow.f64 x.im 2))) (sin.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 4) (*.f64 (pow.f64 y.im 2) (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 1/2 (/.f64 (*.f64 (pow.f64 x.re 2) (*.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.im)) y.im)))) y.im)) (pow.f64 x.im 2))) (+.f64 (*.f64 -1/4 (/.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)))) y.im)) (pow.f64 x.im 4))) (sin.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 4) (*.f64 (pow.f64 y.im 2) (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 (+.f64 (*.f64 -1/48 (*.f64 (pow.f64 x.re 6) (pow.f64 y.im 3))) (*.f64 1/720 (*.f64 (+.f64 (*.f64 90 (pow.f64 x.re 6)) (*.f64 30 (pow.f64 x.re 6))) 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))))) (pow.f64 x.im 6)) (+.f64 (*.f64 1/8 (/.f64 (*.f64 (pow.f64 x.re 6) (*.f64 (pow.f64 y.im 2) (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 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 x.re 2) (*.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.im)) y.im)))) y.im)) (pow.f64 x.im 2))) (+.f64 (*.f64 -1/4 (/.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)))) y.im)) (pow.f64 x.im 4))) (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.im)) y.im)))))))))
(sin.f64 (+.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 -1 x.im)) y.im)) (*.f64 y.re (atan2.f64 x.im x.re))))
(+.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 1/2 (/.f64 (*.f64 (pow.f64 x.re 2) (*.f64 (cos.f64 (+.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 -1 x.im)) y.im)) (*.f64 y.re (atan2.f64 x.im x.re)))) y.im)) (pow.f64 x.im 2))))
(+.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/2 (/.f64 (*.f64 (pow.f64 x.re 2) (*.f64 (cos.f64 (+.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 -1 x.im)) y.im)) (*.f64 y.re (atan2.f64 x.im x.re)))) y.im)) (pow.f64 x.im 2))) (+.f64 (*.f64 -1/8 (/.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) (pow.f64 y.im 2))) (pow.f64 x.im 4))) (*.f64 -1/4 (/.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)))) y.im)) (pow.f64 x.im 4))))))
(+.f64 (/.f64 (*.f64 (+.f64 (*.f64 -1/48 (*.f64 (pow.f64 x.re 6) (pow.f64 y.im 3))) (*.f64 1/720 (*.f64 (+.f64 (*.f64 90 (pow.f64 x.re 6)) (*.f64 30 (pow.f64 x.re 6))) 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))))) (pow.f64 x.im 6)) (+.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/2 (/.f64 (*.f64 (pow.f64 x.re 2) (*.f64 (cos.f64 (+.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 -1 x.im)) y.im)) (*.f64 y.re (atan2.f64 x.im x.re)))) y.im)) (pow.f64 x.im 2))) (+.f64 (*.f64 -1/8 (/.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) (pow.f64 y.im 2))) (pow.f64 x.im 4))) (+.f64 (*.f64 1/8 (/.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 6) (pow.f64 y.im 2))) (pow.f64 x.im 6))) (*.f64 -1/4 (/.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)))) y.im)) (pow.f64 x.im 4))))))))
(sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))
(+.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 y.im (*.f64 (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 (sin.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.im 2) (pow.f64 x.re 2)))) 2)))) (+.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 y.im (*.f64 (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 (sin.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.im 2) (pow.f64 x.re 2)))) 2)))) (+.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 y.im 3) (*.f64 (pow.f64 (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)))) 3) (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re)))))) (*.f64 y.im (*.f64 (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))))))))
(sin.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))))
(sin.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))))
(sin.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))))
(sin.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))))
(sin.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))))
(sin.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))))
(sin.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))))
(sin.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))))
(sin.f64 (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))))))
(+.f64 (sin.f64 (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)))))) (*.f64 y.re (*.f64 (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 (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 2) (pow.f64 (atan2.f64 x.im x.re) 2)))) (+.f64 (sin.f64 (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)))))) (*.f64 y.re (*.f64 (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 (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 2) (pow.f64 (atan2.f64 x.im x.re) 2)))) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 y.re 3) (*.f64 (pow.f64 (atan2.f64 x.im x.re) 3) (cos.f64 (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))))))))) (+.f64 (sin.f64 (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)))))) (*.f64 y.re (*.f64 (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)))))))))))
(sin.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))))
(sin.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))))
(sin.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))))
(sin.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))))
(sin.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))))
(sin.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))))
(sin.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))))
(sin.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 (sin.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 (sin.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 (sin.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 (sin.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.im) (-.f64 (*.f64 (atan2.f64 x.im x.re) y.re) (PI.f64)))))
(*.f64 (sin.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 (sin.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 2 (/.f64 (sin.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 (sin.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 1/2 (*.f64 (sin.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 (sin.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 (sin.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.im) (-.f64 (*.f64 (atan2.f64 x.im x.re) y.re) (PI.f64)))) -1)
(/.f64 (sin.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 (sin.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 (sin.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 (*.f64 (sin.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 (sin.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 (sin.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.im) (-.f64 (*.f64 (atan2.f64 x.im x.re) y.re) (PI.f64)))) -1)
(neg.f64 (sin.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.im) (-.f64 (*.f64 (atan2.f64 x.im x.re) y.re) (PI.f64)))))
(+.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 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 1/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) 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 (*.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) 4) (*.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) 4)) 8)
(+.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 (*.f64 y.im (atan2.f64 x.im x.re)) 4) 4)
(/.f64 (+.f64 (*.f64 (*.f64 y.im (atan2.f64 x.im x.re)) 4) (*.f64 (*.f64 y.im (atan2.f64 x.im x.re)) 4)) 8)
(+.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 (*.f64 (atan2.f64 x.im x.re) y.re) 4) 4)
(/.f64 (+.f64 (*.f64 (*.f64 (atan2.f64 x.im x.re) y.re) 4) (*.f64 (*.f64 (atan2.f64 x.im x.re) y.re) 4)) 8)
Outputs
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 x.re 2) (*.f64 y.im (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im)))))) (pow.f64 x.im 2))) (sin.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 1/2 (*.f64 (*.f64 y.im (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))) (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))))
(+.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im)))) (*.f64 1/2 (*.f64 (*.f64 (pow.f64 x.re 2) (cos.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 2)))))
(+.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im)))) (*.f64 1/2 (*.f64 y.im (*.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 2) (pow.f64 x.im 2))))))
(+.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im)))) (*.f64 (*.f64 (pow.f64 x.re 2) (cos.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 2)) 1/2)))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 x.re 2) (*.f64 y.im (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im)))))) (pow.f64 x.im 2))) (+.f64 (sin.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) (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/4 (/.f64 (*.f64 y.im (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 (sin.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 (sin.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 (cos.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 1/2 (*.f64 (*.f64 y.im (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))) (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2))))))
(+.f64 (*.f64 (pow.f64 x.re 4) (+.f64 (*.f64 (sin.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 (cos.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 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im)))) (*.f64 1/2 (*.f64 (*.f64 (pow.f64 x.re 2) (cos.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 2))))))
(+.f64 (*.f64 1/2 (*.f64 y.im (*.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 2) (pow.f64 x.im 2))))) (+.f64 (sin.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 (sin.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 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im)))) (*.f64 -1/4 (/.f64 y.im (pow.f64 x.im 4))))))))
(+.f64 (+.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im)))) (*.f64 (*.f64 (pow.f64 x.re 2) (cos.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 2)) 1/2))) (*.f64 (pow.f64 x.re 4) (+.f64 (*.f64 (sin.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 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im)))) (*.f64 -1/4 (/.f64 y.im (pow.f64 x.im 4)))))))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 x.re 2) (*.f64 y.im (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im)))))) (pow.f64 x.im 2))) (+.f64 (sin.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 1/8 (/.f64 (*.f64 (pow.f64 y.im 2) (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))) (pow.f64 x.im 6))) (*.f64 (+.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 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) (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/4 (/.f64 (*.f64 y.im (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 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im)))) (+.f64 (+.f64 (*.f64 (pow.f64 x.re 4) (+.f64 (*.f64 -1/8 (*.f64 (sin.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 (cos.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 1/8 (*.f64 (sin.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 (cos.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 1/2 (*.f64 (*.f64 y.im (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))) (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2))))))
(+.f64 (*.f64 1/2 (*.f64 (*.f64 (pow.f64 x.re 2) (cos.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 2)))) (+.f64 (+.f64 (sin.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 (sin.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 (cos.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 (sin.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 (cos.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 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im)))) (+.f64 (*.f64 1/2 (*.f64 y.im (*.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 2) (pow.f64 x.im 2))))) (+.f64 (*.f64 (pow.f64 x.re 4) (+.f64 (*.f64 (sin.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 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im)))) (*.f64 -1/4 (/.f64 y.im (pow.f64 x.im 4)))))) (*.f64 (pow.f64 x.re 6) (+.f64 (*.f64 (sin.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 (cos.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 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im)))) (+.f64 (*.f64 (*.f64 (pow.f64 x.re 2) (cos.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 2)) 1/2)) (+.f64 (*.f64 (pow.f64 x.re 4) (+.f64 (*.f64 (sin.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 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im)))) (*.f64 -1/4 (/.f64 y.im (pow.f64 x.im 4)))))) (*.f64 (pow.f64 x.re 6) (+.f64 (*.f64 (sin.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 (cos.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))))))))))
(sin.f64 (+.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.re)) y.im)) (*.f64 y.re (atan2.f64 x.im x.re))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 1 x.re)) (*.f64 y.im -1))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 1 x.re)) (neg.f64 y.im))))
(sin.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 -1 (*.f64 (log.f64 (/.f64 1 x.re)) y.im)) (*.f64 y.re (atan2.f64 x.im x.re)))) (*.f64 1/2 (/.f64 (*.f64 y.im (*.f64 (pow.f64 x.im 2) (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 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)))) (*.f64 1/2 (*.f64 (*.f64 (pow.f64 x.im 2) (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 1 x.re)) (*.f64 y.im -1))))) (/.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 1/2 (*.f64 (*.f64 (pow.f64 x.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 y.im (pow.f64 x.re 2)))))
(+.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 y.im (*.f64 (*.f64 (pow.f64 x.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)))))) (pow.f64 x.re 2))) 1/2)))
(+.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 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 (pow.f64 x.im 2) (pow.f64 x.re 2)) 1/2)))
(+.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 (*.f64 1/2 (/.f64 (*.f64 y.im (*.f64 (pow.f64 x.im 2) (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 2))) (+.f64 (*.f64 -1/4 (/.f64 (*.f64 y.im (*.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))) (*.f64 -1/8 (/.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 (pow.f64 y.im 2) (pow.f64 x.im 4))) (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 1/2 (*.f64 (*.f64 (pow.f64 x.im 2) (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 1 x.re)) (*.f64 y.im -1))))) (/.f64 y.im (pow.f64 x.re 2)))) (+.f64 (*.f64 -1/4 (*.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 y.im (pow.f64 x.re 4)))) (*.f64 -1/8 (*.f64 (*.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.re)) (*.f64 y.im -1)))) (pow.f64 x.re 4)))))))
(+.f64 (+.f64 (*.f64 -1/4 (*.f64 y.im (/.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/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 (pow.f64 y.im 2) (pow.f64 x.im 4)) (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 1/2 (*.f64 (*.f64 (pow.f64 x.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 y.im (pow.f64 x.re 2))))))
(+.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 y.im (*.f64 (*.f64 (pow.f64 x.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)))))) (pow.f64 x.re 2))) 1/2))) (+.f64 (*.f64 y.im (*.f64 (*.f64 (pow.f64 x.im 4) (/.f64 (cos.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))) -1/4)) (*.f64 -1/8 (*.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 (pow.f64 y.im 2) (/.f64 (pow.f64 x.im 4) (pow.f64 x.re 4)))))))
(+.f64 (*.f64 (*.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 (pow.f64 x.im 2) (pow.f64 x.re 2)) 1/2)) (+.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 y.im (*.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 (pow.f64 x.im 4) (pow.f64 x.re 4))) -1/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 (pow.f64 y.im 2) (/.f64 (pow.f64 x.im 4) (pow.f64 x.re 4))) -1/8)))))
(+.f64 (*.f64 1/8 (/.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 (pow.f64 y.im 2) (pow.f64 x.im 6))) (pow.f64 x.re 6))) (+.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))) (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 (sin.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 y.im (*.f64 (pow.f64 x.im 2) (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 2))) (+.f64 (*.f64 -1/8 (/.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 (pow.f64 y.im 2) (pow.f64 x.im 4))) (pow.f64 x.re 4))) (*.f64 -1/4 (/.f64 (*.f64 y.im (*.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))))))))
(+.f64 (*.f64 1/8 (*.f64 (*.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 (log.f64 (/.f64 1 x.re)) (*.f64 y.im -1)))) (pow.f64 x.re 6)))) (+.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/2 (*.f64 (*.f64 (pow.f64 x.im 2) (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 1 x.re)) (*.f64 y.im -1))))) (/.f64 y.im (pow.f64 x.re 2)))) (+.f64 (*.f64 -1/4 (*.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 y.im (pow.f64 x.re 4)))) (*.f64 -1/8 (*.f64 (*.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.re)) (*.f64 y.im -1)))) (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)) (*.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 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 (pow.f64 y.im 2) (pow.f64 x.im 6)) (pow.f64 x.re 6)))) (+.f64 (*.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 (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 6))) (+.f64 (+.f64 (*.f64 -1/4 (*.f64 y.im (/.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/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 (pow.f64 y.im 2) (pow.f64 x.im 4)) (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 1/2 (*.f64 (*.f64 (pow.f64 x.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 y.im (pow.f64 x.re 2))))))))
(+.f64 (*.f64 1/8 (*.f64 (pow.f64 y.im 2) (/.f64 (*.f64 (pow.f64 x.im 6) (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 6)))) (+.f64 (*.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 (cos.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 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 y.im (*.f64 (*.f64 (pow.f64 x.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)))))) (pow.f64 x.re 2))) 1/2))) (+.f64 (*.f64 y.im (*.f64 (*.f64 (pow.f64 x.im 4) (/.f64 (cos.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))) -1/4)) (*.f64 -1/8 (*.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 (pow.f64 y.im 2) (/.f64 (pow.f64 x.im 4) (pow.f64 x.re 4)))))))))
(+.f64 (*.f64 1/8 (*.f64 (pow.f64 x.im 6) (*.f64 (pow.f64 y.im 2) (/.f64 (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 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 y.im (*.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 (pow.f64 x.im 4) (pow.f64 x.re 4))) -1/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 (pow.f64 y.im 2) (/.f64 (pow.f64 x.im 4) (pow.f64 x.re 4))) -1/8)))) (+.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 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 (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 2) (pow.f64 x.re 2)) 1/2)))))
(sin.f64 (+.f64 (*.f64 -1 (*.f64 y.im (log.f64 (/.f64 -1 x.re)))) (*.f64 y.re (atan2.f64 x.im x.re))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (*.f64 (log.f64 (/.f64 -1 x.re)) -1))))
(sin.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 -1 (*.f64 y.im (log.f64 (/.f64 -1 x.re)))) (*.f64 y.re (atan2.f64 x.im x.re)))) (*.f64 1/2 (/.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 y.im (pow.f64 x.im 2))) (pow.f64 x.re 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)))) (*.f64 1/2 (*.f64 (*.f64 y.im (pow.f64 x.im 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)))) (pow.f64 x.re 2)))))
(+.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 y.im (pow.f64 x.im 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)))))) (pow.f64 x.re 2)) 1/2)))
(+.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 (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 y.im (/.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))) 1/2)))
(+.f64 (*.f64 -1/4 (/.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 y.im (pow.f64 x.im 4))) (pow.f64 x.re 4))) (+.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 (*.f64 -1/8 (/.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 (pow.f64 y.im 2) (pow.f64 x.im 4))) (pow.f64 x.re 4))) (*.f64 1/2 (/.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 y.im (pow.f64 x.im 2))) (pow.f64 x.re 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)))) (+.f64 (+.f64 (*.f64 1/2 (*.f64 (*.f64 y.im (pow.f64 x.im 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)))) (pow.f64 x.re 2)))) (*.f64 -1/8 (*.f64 (*.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 (*.f64 (log.f64 (/.f64 -1 x.re)) -1)))) (pow.f64 x.re 4))))) (*.f64 -1/4 (*.f64 (*.f64 y.im (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 (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 -1/4 (*.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 y.im (pow.f64 x.im 4)) (pow.f64 x.re 4)))) (+.f64 (*.f64 (*.f64 y.im (pow.f64 x.im 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)))))) (pow.f64 x.re 2)) 1/2)) (*.f64 -1/8 (*.f64 (*.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 (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 (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 y.im (/.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))) 1/2)) (+.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 y.im 2) (/.f64 (pow.f64 x.im 4) (pow.f64 x.re 4))) -1/8)) (*.f64 -1/4 (*.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 y.im (/.f64 (pow.f64 x.im 4) (pow.f64 x.re 4))))))))
(+.f64 (*.f64 -1/4 (/.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 y.im (pow.f64 x.im 4))) (pow.f64 x.re 4))) (+.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 (/.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))) (cos.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 (*.f64 -1/8 (/.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 (pow.f64 y.im 2) (pow.f64 x.im 4))) (pow.f64 x.re 4))) (+.f64 (*.f64 1/2 (/.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 y.im (pow.f64 x.im 2))) (pow.f64 x.re 2))) (*.f64 1/8 (/.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 (pow.f64 y.im 2) (pow.f64 x.im 6))) (pow.f64 x.re 6))))))))
(+.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (*.f64 (log.f64 (/.f64 -1 x.re)) -1)))) (+.f64 (+.f64 (*.f64 -1/8 (*.f64 (*.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 (*.f64 (log.f64 (/.f64 -1 x.re)) -1)))) (pow.f64 x.re 4)))) (+.f64 (+.f64 (*.f64 1/2 (*.f64 (*.f64 y.im (pow.f64 x.im 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)))) (pow.f64 x.re 2)))) (*.f64 1/8 (*.f64 (*.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 (*.f64 (log.f64 (/.f64 -1 x.re)) -1)))) (pow.f64 x.re 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)))) (/.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 -1/4 (*.f64 (*.f64 y.im (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 (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 -1/4 (*.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 y.im (pow.f64 x.im 4)) (pow.f64 x.re 4)))) (+.f64 (*.f64 (*.f64 y.im (pow.f64 x.im 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)))))) (pow.f64 x.re 2)) 1/2)) (+.f64 (+.f64 (*.f64 -1/8 (*.f64 (*.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 (neg.f64 (log.f64 (/.f64 -1 x.re)))))) (pow.f64 x.re 4)))) (*.f64 (*.f64 (pow.f64 y.im 2) (pow.f64 x.im 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)))))) (pow.f64 x.re 6)) 1/8))) (*.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 (cos.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 6)))))))
(+.f64 (*.f64 -1/4 (*.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 y.im (/.f64 (pow.f64 x.im 4) (pow.f64 x.re 4))))) (+.f64 (+.f64 (*.f64 1/8 (*.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 (pow.f64 y.im 2) (/.f64 (pow.f64 x.im 6) (pow.f64 x.re 6))))) (+.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 y.im (/.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))) 1/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 (+.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 (sin.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 y.im 2) (/.f64 (pow.f64 x.im 4) (pow.f64 x.re 4))) -1/8)))))
(+.f64 (*.f64 -1/4 (*.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 y.im (/.f64 (pow.f64 x.im 4) (pow.f64 x.re 4))))) (+.f64 (+.f64 (*.f64 1/8 (*.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 (pow.f64 y.im 2) (/.f64 (pow.f64 x.im 6) (pow.f64 x.re 6))))) (*.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 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 2) (pow.f64 x.re 2))) 1/2)))) (+.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 (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 y.im 2) (/.f64 (pow.f64 x.im 4) (pow.f64 x.re 4))) -1/8)))))
(sin.f64 (+.f64 (*.f64 y.im (log.f64 x.re)) (*.f64 y.re (atan2.f64 x.im x.re))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.re))))
(+.f64 (sin.f64 (+.f64 (*.f64 y.im (log.f64 x.re)) (*.f64 y.re (atan2.f64 x.im x.re)))) (*.f64 1/2 (/.f64 (*.f64 y.im (*.f64 (pow.f64 x.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 2))))
(+.f64 (sin.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) (cos.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 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.re)))) (*.f64 y.im (*.f64 (*.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 2) (pow.f64 x.re 2))) 1/2)))
(+.f64 (*.f64 (+.f64 (*.f64 -1/8 (/.f64 (*.f64 (sin.f64 (+.f64 (*.f64 y.im (log.f64 x.re)) (*.f64 y.re (atan2.f64 x.im x.re)))) (pow.f64 y.im 2)) (pow.f64 x.re 4))) (*.f64 -1/4 (/.f64 (*.f64 y.im (cos.f64 (+.f64 (*.f64 y.im (log.f64 x.re)) (*.f64 y.re (atan2.f64 x.im x.re))))) (pow.f64 x.re 4)))) (pow.f64 x.im 4)) (+.f64 (sin.f64 (+.f64 (*.f64 y.im (log.f64 x.re)) (*.f64 y.re (atan2.f64 x.im x.re)))) (*.f64 1/2 (/.f64 (*.f64 y.im (*.f64 (pow.f64 x.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 2)))))
(+.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.re)))) (+.f64 (*.f64 1/2 (*.f64 (*.f64 (pow.f64 x.im 2) (cos.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 4) (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 y.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 4)))) (*.f64 -1/4 (*.f64 (cos.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 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.re)))) (+.f64 (*.f64 1/2 (*.f64 (*.f64 (pow.f64 x.im 2) (cos.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 4) (+.f64 (*.f64 -1/8 (*.f64 (sin.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 y.im (/.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 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.re)))) (+.f64 (*.f64 y.im (*.f64 (*.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 2) (pow.f64 x.re 2))) 1/2)) (*.f64 (pow.f64 x.im 4) (+.f64 (*.f64 -1/8 (*.f64 (sin.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 y.im (/.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 (+.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.re)))) (*.f64 y.im (*.f64 (*.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 2) (pow.f64 x.re 2))) 1/2))) (*.f64 (pow.f64 x.im 4) (+.f64 (*.f64 -1/8 (*.f64 (sin.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 (cos.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 (+.f64 (*.f64 1/8 (/.f64 (*.f64 (sin.f64 (+.f64 (*.f64 y.im (log.f64 x.re)) (*.f64 y.re (atan2.f64 x.im x.re)))) (pow.f64 y.im 2)) (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)))) (cos.f64 (+.f64 (*.f64 y.im (log.f64 x.re)) (*.f64 y.re (atan2.f64 x.im x.re)))))) (pow.f64 x.im 6)) (+.f64 (*.f64 (+.f64 (*.f64 -1/8 (/.f64 (*.f64 (sin.f64 (+.f64 (*.f64 y.im (log.f64 x.re)) (*.f64 y.re (atan2.f64 x.im x.re)))) (pow.f64 y.im 2)) (pow.f64 x.re 4))) (*.f64 -1/4 (/.f64 (*.f64 y.im (cos.f64 (+.f64 (*.f64 y.im (log.f64 x.re)) (*.f64 y.re (atan2.f64 x.im x.re))))) (pow.f64 x.re 4)))) (pow.f64 x.im 4)) (+.f64 (sin.f64 (+.f64 (*.f64 y.im (log.f64 x.re)) (*.f64 y.re (atan2.f64 x.im x.re)))) (*.f64 1/2 (/.f64 (*.f64 y.im (*.f64 (pow.f64 x.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 2))))))
(+.f64 (*.f64 (pow.f64 x.im 4) (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 y.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 4)))) (*.f64 -1/4 (*.f64 (cos.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 (sin.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) (cos.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 (pow.f64 y.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 6)))) (*.f64 (cos.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 (sin.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) (cos.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 (*.f64 (pow.f64 x.im 6) (+.f64 (*.f64 1/8 (*.f64 (sin.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 (cos.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 (pow.f64 x.im 4) (+.f64 (*.f64 -1/8 (*.f64 (sin.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 y.im (/.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 (+.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.re)))) (*.f64 y.im (*.f64 (*.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 2) (pow.f64 x.re 2))) 1/2))) (+.f64 (*.f64 (pow.f64 x.im 4) (+.f64 (*.f64 -1/8 (*.f64 (sin.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 y.im (/.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 (pow.f64 x.im 6) (+.f64 (*.f64 1/8 (*.f64 (sin.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 (cos.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 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.re)))) (*.f64 y.im (*.f64 (*.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 2) (pow.f64 x.re 2))) 1/2))) (+.f64 (*.f64 (pow.f64 x.im 4) (+.f64 (*.f64 -1/8 (*.f64 (sin.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 (cos.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 (sin.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 (cos.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)))))))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.im)) 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))))
(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 (*.f64 (pow.f64 x.re 2) (*.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.im)) y.im)))) y.im)) (pow.f64 x.im 2))) (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.im)) y.im)))))
(+.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 1/2 (*.f64 (*.f64 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))))) (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 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 1/2 (*.f64 (pow.f64 x.re 2) (/.f64 (*.f64 y.im (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 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 1/2 (*.f64 y.im (*.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 2) (pow.f64 x.im 2))))))
(+.f64 (*.f64 -1/8 (/.f64 (*.f64 (pow.f64 x.re 4) (*.f64 (pow.f64 y.im 2) (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 1/2 (/.f64 (*.f64 (pow.f64 x.re 2) (*.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.im)) y.im)))) y.im)) (pow.f64 x.im 2))) (+.f64 (*.f64 -1/4 (/.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)))) y.im)) (pow.f64 x.im 4))) (sin.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/2 (*.f64 (*.f64 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))))) (/.f64 (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 (log.f64 (/.f64 1 x.im)) (*.f64 y.im -1)))) (*.f64 -1/4 (*.f64 (*.f64 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))))) (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4))))) (*.f64 -1/8 (*.f64 (*.f64 (pow.f64 y.im 2) (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 1/2 (*.f64 (pow.f64 x.re 2) (/.f64 (*.f64 y.im (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 2)))) (+.f64 (*.f64 -1/8 (*.f64 (*.f64 (pow.f64 y.im 2) (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 y.im (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) (pow.f64 x.im 4)) -1/4)))))
(+.f64 (*.f64 1/2 (*.f64 y.im (*.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 2) (pow.f64 x.im 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 (*.f64 -1/4 (*.f64 y.im (*.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 4) (pow.f64 x.im 4))))) (*.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 (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 (*.f64 y.im (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/4 (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4))) (*.f64 1/2 (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2))))) (*.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 (pow.f64 y.im 2) (pow.f64 x.im 4))) -1/8))))
(+.f64 (*.f64 -1/8 (/.f64 (*.f64 (pow.f64 x.re 4) (*.f64 (pow.f64 y.im 2) (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 (+.f64 (*.f64 -1/48 (*.f64 (pow.f64 x.re 6) (pow.f64 y.im 3))) (*.f64 1/720 (*.f64 (+.f64 (*.f64 90 (pow.f64 x.re 6)) (*.f64 30 (pow.f64 x.re 6))) 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))))) (pow.f64 x.im 6)) (+.f64 (*.f64 1/8 (/.f64 (*.f64 (pow.f64 x.re 6) (*.f64 (pow.f64 y.im 2) (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 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 x.re 2) (*.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.im)) y.im)))) y.im)) (pow.f64 x.im 2))) (+.f64 (*.f64 -1/4 (/.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)))) y.im)) (pow.f64 x.im 4))) (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.im)) y.im)))))))))
(+.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 (*.f64 (pow.f64 x.re 6) (*.f64 (pow.f64 y.im 3) -1/48)) (*.f64 (+.f64 (*.f64 (pow.f64 x.re 6) 90) (*.f64 (pow.f64 x.re 6) 30)) (*.f64 y.im 1/720))) (pow.f64 x.im 6))) (+.f64 (+.f64 (*.f64 1/2 (*.f64 (*.f64 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))))) (/.f64 (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 (log.f64 (/.f64 1 x.im)) (*.f64 y.im -1)))) (*.f64 -1/4 (*.f64 (*.f64 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))))) (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4))))) (*.f64 1/8 (*.f64 (*.f64 (pow.f64 y.im 2) (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 6) (pow.f64 x.im 6)))))) (*.f64 -1/8 (*.f64 (*.f64 (pow.f64 y.im 2) (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 -1/8 (*.f64 (*.f64 (pow.f64 y.im 2) (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 (*.f64 1/2 (*.f64 (pow.f64 x.re 2) (/.f64 (*.f64 y.im (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 2)))) (+.f64 (+.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 (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) (pow.f64 x.im 4)) -1/4))) (*.f64 (*.f64 (pow.f64 y.im 2) (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) (pow.f64 x.im 6)) 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 (*.f64 (pow.f64 x.re 6) (*.f64 -1/48 (pow.f64 y.im 3))) (*.f64 (*.f64 (pow.f64 x.re 6) 120) (*.f64 y.im 1/720))) (pow.f64 x.im 6))))))
(+.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 (pow.f64 y.im 2) (pow.f64 x.im 4))) -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 1/2 (*.f64 y.im (*.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 2) (pow.f64 x.im 2))))) (*.f64 -1/4 (*.f64 y.im (*.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 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 (*.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 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 (pow.f64 y.im 2) (/.f64 (pow.f64 x.re 6) (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 (pow.f64 x.re 6) (+.f64 (*.f64 -1/48 (pow.f64 y.im 3)) (*.f64 120 (*.f64 y.im 1/720)))) (pow.f64 x.im 6))) (+.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 (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/4 (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4))) (*.f64 1/2 (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))))) (*.f64 (*.f64 (pow.f64 y.im 2) (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/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)))))))
(sin.f64 (+.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 -1 x.im)) y.im)) (*.f64 y.re (atan2.f64 x.im x.re))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 -1 x.im)) (*.f64 y.im -1))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 -1 x.im)) (neg.f64 y.im))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (neg.f64 (log.f64 (/.f64 -1 x.im))))))
(+.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 1/2 (/.f64 (*.f64 (pow.f64 x.re 2) (*.f64 (cos.f64 (+.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 -1 x.im)) y.im)) (*.f64 y.re (atan2.f64 x.im x.re)))) 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.im)) (*.f64 y.im -1)))) (*.f64 1/2 (*.f64 (*.f64 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))))) (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 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 1/2 (*.f64 (pow.f64 x.re 2) (/.f64 (*.f64 y.im (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 2)))))
(+.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (neg.f64 (log.f64 (/.f64 -1 x.im)))))) (*.f64 1/2 (*.f64 y.im (*.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (neg.f64 (log.f64 (/.f64 -1 x.im)))))) (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2))))))
(+.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/2 (/.f64 (*.f64 (pow.f64 x.re 2) (*.f64 (cos.f64 (+.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 -1 x.im)) y.im)) (*.f64 y.re (atan2.f64 x.im x.re)))) y.im)) (pow.f64 x.im 2))) (+.f64 (*.f64 -1/8 (/.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) (pow.f64 y.im 2))) (pow.f64 x.im 4))) (*.f64 -1/4 (/.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)))) 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.im)) (*.f64 y.im -1)))) (+.f64 (*.f64 -1/8 (/.f64 (*.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 (pow.f64 x.re 4) (pow.f64 y.im 2))) (pow.f64 x.im 4))) (+.f64 (*.f64 -1/4 (*.f64 (*.f64 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))))) (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4)))) (*.f64 1/2 (*.f64 (*.f64 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))))) (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 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 (*.f64 -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 (pow.f64 x.re 4) (pow.f64 y.im 2)) (pow.f64 x.im 4)))) (+.f64 (*.f64 1/2 (*.f64 (pow.f64 x.re 2) (/.f64 (*.f64 y.im (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 2)))) (*.f64 (*.f64 y.im (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) (pow.f64 x.im 4)) -1/4)))))
(+.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (neg.f64 (log.f64 (/.f64 -1 x.im)))))) (+.f64 (*.f64 1/2 (*.f64 y.im (*.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (neg.f64 (log.f64 (/.f64 -1 x.im)))))) (/.f64 (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 (neg.f64 (log.f64 (/.f64 -1 x.im)))))) (*.f64 (*.f64 (pow.f64 x.re 4) (/.f64 (pow.f64 y.im 2) (pow.f64 x.im 4))) -1/8)) (*.f64 (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.im)))))) (/.f64 y.im (pow.f64 x.im 4))) -1/4)))))
(+.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (neg.f64 (log.f64 (/.f64 -1 x.im)))))) (+.f64 (*.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (neg.f64 (log.f64 (/.f64 -1 x.im)))))) (*.f64 (*.f64 (pow.f64 y.im 2) (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4))) -1/8)) (*.f64 (*.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))))))) (+.f64 (*.f64 -1/4 (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4))) (*.f64 1/2 (/.f64 (pow.f64 x.re 2) (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 (+.f64 (*.f64 90 (pow.f64 x.re 6)) (*.f64 30 (pow.f64 x.re 6))) 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))))) (pow.f64 x.im 6)) (+.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/2 (/.f64 (*.f64 (pow.f64 x.re 2) (*.f64 (cos.f64 (+.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 -1 x.im)) y.im)) (*.f64 y.re (atan2.f64 x.im x.re)))) y.im)) (pow.f64 x.im 2))) (+.f64 (*.f64 -1/8 (/.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) (pow.f64 y.im 2))) (pow.f64 x.im 4))) (+.f64 (*.f64 1/8 (/.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 6) (pow.f64 y.im 2))) (pow.f64 x.im 6))) (*.f64 -1/4 (/.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)))) 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.im)) (*.f64 y.im -1)))) (+.f64 (+.f64 (*.f64 1/2 (*.f64 (*.f64 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))))) (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))) (+.f64 (*.f64 1/8 (*.f64 (*.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 (log.f64 (/.f64 -1 x.im)) (*.f64 y.im -1)))) (pow.f64 x.im 6)))) (+.f64 (*.f64 -1/8 (/.f64 (*.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 (pow.f64 x.re 4) (pow.f64 y.im 2))) (pow.f64 x.im 4))) (*.f64 -1/4 (*.f64 (*.f64 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))))) (/.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)) (*.f64 y.im -1)))) (/.f64 (+.f64 (*.f64 (pow.f64 x.re 6) (*.f64 (pow.f64 y.im 3) -1/48)) (*.f64 (+.f64 (*.f64 (pow.f64 x.re 6) 90) (*.f64 (pow.f64 x.re 6) 30)) (*.f64 y.im 1/720))) (pow.f64 x.im 6)))))
(+.f64 (+.f64 (*.f64 -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 (pow.f64 x.re 4) (pow.f64 y.im 2)) (pow.f64 x.im 4)))) (+.f64 (*.f64 1/2 (*.f64 (pow.f64 x.re 2) (/.f64 (*.f64 y.im (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 2)))) (+.f64 (*.f64 (*.f64 y.im (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) (pow.f64 x.im 4)) -1/4)) (*.f64 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 (pow.f64 y.im 2) (pow.f64 x.re 6)) (pow.f64 x.im 6))))))) (+.f64 (*.f64 (+.f64 (*.f64 (pow.f64 x.re 6) (*.f64 -1/48 (pow.f64 y.im 3))) (*.f64 (*.f64 (pow.f64 x.re 6) 120) (*.f64 y.im 1/720))) (/.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 6))) (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 y.im (*.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (neg.f64 (log.f64 (/.f64 -1 x.im)))))) (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 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.im)))))) (/.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))) (pow.f64 x.im 6))) (+.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (neg.f64 (log.f64 (/.f64 -1 x.im)))))) (+.f64 (*.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (neg.f64 (log.f64 (/.f64 -1 x.im)))))) (*.f64 (*.f64 (pow.f64 x.re 4) (/.f64 (pow.f64 y.im 2) (pow.f64 x.im 4))) -1/8)) (+.f64 (*.f64 (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.im)))))) (/.f64 y.im (pow.f64 x.im 4))) -1/4)) (*.f64 1/8 (*.f64 (pow.f64 x.re 6) (*.f64 (pow.f64 y.im 2) (/.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (neg.f64 (log.f64 (/.f64 -1 x.im)))))) (pow.f64 x.im 6))))))))))
(+.f64 (+.f64 (*.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (neg.f64 (log.f64 (/.f64 -1 x.im)))))) (*.f64 (*.f64 (pow.f64 y.im 2) (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 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.im)))))) (*.f64 (*.f64 (pow.f64 y.im 2) (/.f64 (pow.f64 x.re 6) (pow.f64 x.im 6))) 1/8)) (*.f64 (*.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))))))) (+.f64 (*.f64 -1/4 (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4))) (*.f64 1/2 (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2))))))) (+.f64 (sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (neg.f64 (log.f64 (/.f64 -1 x.im)))))) (*.f64 (cos.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (neg.f64 (log.f64 (/.f64 -1 x.im)))))) (/.f64 (*.f64 (pow.f64 x.re 6) (+.f64 (*.f64 -1/48 (pow.f64 y.im 3)) (*.f64 120 (*.f64 y.im 1/720)))) (pow.f64 x.im 6)))))
(sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))
(+.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 y.im (*.f64 (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 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 y.im (*.f64 (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))) (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))))))
(+.f64 (*.f64 -1/2 (*.f64 (sin.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.im 2) (pow.f64 x.re 2)))) 2)))) (+.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 y.im (*.f64 (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 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 y.im (*.f64 (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))) (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 (pow.f64 y.im 2) (pow.f64 (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))) 2)) -1/2)))
(+.f64 (*.f64 y.im (*.f64 (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))) (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 (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))) (pow.f64 y.im 2)))) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))))
(+.f64 (+.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 y.im (*.f64 (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))) (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re)))))) (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 -1/2 (*.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 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (+.f64 (*.f64 y.im (*.f64 (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))) (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))))) (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 -1/2 (*.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 -1/2 (*.f64 (sin.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.im 2) (pow.f64 x.re 2)))) 2)))) (+.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 y.im 3) (*.f64 (pow.f64 (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)))) 3) (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re)))))) (*.f64 y.im (*.f64 (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 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 (*.f64 (pow.f64 y.im 2) (pow.f64 (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))) 2)) -1/2)) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))) 3) (*.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (pow.f64 y.im 3)))) (+.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 y.im (*.f64 (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))) (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))))))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 (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))) (pow.f64 y.im 2)))) (+.f64 (*.f64 y.im (*.f64 (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))) (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))))) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))) 3) (*.f64 (pow.f64 y.im 3) (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re)))))) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))))))
(+.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (+.f64 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 -1/2 (*.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 y.im (*.f64 (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))) (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))))) (*.f64 (pow.f64 y.im 3) (*.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 (pow.f64 (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))) 3) -1/6))))))
(+.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (+.f64 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 -1/2 (*.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 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (+.f64 (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2))))) (*.f64 (*.f64 (pow.f64 y.im 3) (pow.f64 (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))) 3)) -1/6)))))
(sin.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))))
(sin.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)))))))
(sin.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))))
(sin.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)))))))
(sin.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))))
(sin.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)))))))
(sin.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))))
(sin.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)))))))
(sin.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))))
(sin.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)))))))
(sin.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))))
(sin.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)))))))
(sin.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))))
(sin.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)))))))
(sin.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))))
(sin.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)))))))
(sin.f64 (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))))))
(sin.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.im 2) (pow.f64 x.re 2)))))) (*.f64 y.re (*.f64 (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 (sin.f64 (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))))) (*.f64 y.re (*.f64 (atan2.f64 x.im x.re) (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 (cos.f64 (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))))) (*.f64 y.re (atan2.f64 x.im x.re))))
(+.f64 (sin.f64 (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))))) (*.f64 (atan2.f64 x.im x.re) (*.f64 y.re (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 (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 2) (pow.f64 (atan2.f64 x.im x.re) 2)))) (+.f64 (sin.f64 (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)))))) (*.f64 y.re (*.f64 (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 (sin.f64 (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))))) (+.f64 (*.f64 y.re (*.f64 (atan2.f64 x.im x.re) (cos.f64 (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))))))) (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))))) (*.f64 (pow.f64 y.re 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 y.re (atan2.f64 x.im x.re))) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))))) (*.f64 (pow.f64 y.re 2) (pow.f64 (atan2.f64 x.im x.re) 2)))) (sin.f64 (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2))))))))
(+.f64 (+.f64 (sin.f64 (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))))) (*.f64 y.re (*.f64 (atan2.f64 x.im x.re) (cos.f64 (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2))))))))) (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))))) (*.f64 (pow.f64 y.re 2) (pow.f64 (atan2.f64 x.im x.re) 2)))))
(+.f64 (+.f64 (sin.f64 (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))))) (*.f64 (atan2.f64 x.im x.re) (*.f64 y.re (cos.f64 (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2))))))))) (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))))) (*.f64 (pow.f64 y.re 2) (pow.f64 (atan2.f64 x.im x.re) 2)))))
(+.f64 (*.f64 -1/2 (*.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 2) (pow.f64 (atan2.f64 x.im x.re) 2)))) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 y.re 3) (*.f64 (pow.f64 (atan2.f64 x.im x.re) 3) (cos.f64 (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))))))))) (+.f64 (sin.f64 (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)))))) (*.f64 y.re (*.f64 (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 (sin.f64 (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))))) (*.f64 (pow.f64 y.re 2) (pow.f64 (atan2.f64 x.im x.re) 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 (*.f64 (atan2.f64 x.im x.re) (cos.f64 (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))))))) (*.f64 (pow.f64 y.re 3) (*.f64 (*.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) 3)) -1/6)))))
(+.f64 (sin.f64 (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))))) (+.f64 (+.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 (atan2.f64 x.im x.re))) (*.f64 -1/6 (*.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) 3) (pow.f64 y.re 3))))) (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))))) (*.f64 (pow.f64 y.re 2) (pow.f64 (atan2.f64 x.im x.re) 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/2 (*.f64 (sin.f64 (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))))) (*.f64 (pow.f64 y.re 2) (pow.f64 (atan2.f64 x.im x.re) 2)))) (+.f64 (*.f64 y.re (*.f64 (atan2.f64 x.im x.re) (cos.f64 (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))))))) (*.f64 -1/6 (*.f64 (cos.f64 (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))))) (*.f64 (pow.f64 y.re 3) (pow.f64 (atan2.f64 x.im x.re) 3)))))))
(+.f64 (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 (sin.f64 (*.f64 y.im (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))))) (*.f64 (pow.f64 y.re 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 y.re (atan2.f64 x.im x.re)) (*.f64 (*.f64 (pow.f64 y.re 3) (pow.f64 (atan2.f64 x.im x.re) 3)) -1/6)))))
(sin.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))))
(sin.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)))))))
(sin.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))))
(sin.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)))))))
(sin.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))))
(sin.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)))))))
(sin.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))))
(sin.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)))))))
(sin.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))))
(sin.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)))))))
(sin.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))))
(sin.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)))))))
(sin.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))))
(sin.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)))))))
(sin.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))))
(sin.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 (*.f64 1/2 (/.f64 (pow.f64 x.re 2) x.im)) (+.f64 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/2 (/.f64 (pow.f64 x.re 2) x.im)) (+.f64 x.im (+.f64 (*.f64 1/16 (/.f64 (pow.f64 x.re 6) (pow.f64 x.im 5))) (*.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 (*.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/2 (/.f64 (pow.f64 x.re 2) x.im)) (+.f64 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 (+.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 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/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 x.re (+.f64 (*.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 1/16 (/.f64 (pow.f64 x.im 6) (pow.f64 x.re 5))))))
(+.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 (*.f64 1/8 (/.f64 (pow.f64 x.im 4) (pow.f64 x.re 3))) (+.f64 (neg.f64 x.re) (*.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 -1/2 (/.f64 (pow.f64 x.im 2) x.re)) (+.f64 (+.f64 (*.f64 x.re -1) (*.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 -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 (+.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 (neg.f64 x.re) (*.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 (+.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 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/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 x.re (+.f64 (*.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 1/16 (/.f64 (pow.f64 x.im 6) (pow.f64 x.re 5))))))
(+.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 (*.f64 1/2 (/.f64 (pow.f64 x.re 2) x.im)) (+.f64 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/2 (/.f64 (pow.f64 x.re 2) x.im)) (+.f64 x.im (+.f64 (*.f64 1/16 (/.f64 (pow.f64 x.re 6) (pow.f64 x.im 5))) (*.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 (*.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/2 (/.f64 (pow.f64 x.re 2) x.im)) (+.f64 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 (neg.f64 x.im) (*.f64 1/8 (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 3)))))
(+.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 (*.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)) (neg.f64 x.im)))
(+.f64 (neg.f64 x.im) (+.f64 (+.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 (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 (sin.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)
(sin.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)))))))
(+.f64 0 (sin.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))))
(sin.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)))))))
(-.f64 (sin.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)
(sin.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)))))))
(-.f64 0 (sin.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.im) (-.f64 (*.f64 (atan2.f64 x.im x.re) y.re) (PI.f64)))))
(sin.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)))))))
(*.f64 (sin.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)
(sin.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)))))))
(*.f64 1 (sin.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))))
(sin.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)))))))
(*.f64 2 (/.f64 (sin.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))
(sin.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)))))))
(*.f64 (*.f64 (sin.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)
(sin.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)))))))
(*.f64 1/2 (*.f64 (sin.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))
(sin.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)))))))
(*.f64 (/.f64 (sin.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)
(sin.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)))))))
(*.f64 (sin.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.im) (-.f64 (*.f64 (atan2.f64 x.im x.re) y.re) (PI.f64)))) -1)
(sin.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)))))))
(/.f64 (sin.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)
(sin.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)))))))
(/.f64 (*.f64 (sin.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)
(sin.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)))))))
(/.f64 (*.f64 (sin.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)
(sin.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)))))))
(/.f64 (+.f64 (*.f64 (sin.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 (sin.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)
(sin.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)))))))
(/.f64 (sin.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.im) (-.f64 (*.f64 (atan2.f64 x.im x.re) y.re) (PI.f64)))) -1)
(sin.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)))))))
(neg.f64 (sin.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.im) (-.f64 (*.f64 (atan2.f64 x.im x.re) y.re) (PI.f64)))))
(sin.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)))))))
(+.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 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 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 (/.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 (*.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) 4) (*.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 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 (*.f64 y.im (atan2.f64 x.im x.re)) 4) 4)
(*.f64 (atan2.f64 x.im x.re) y.im)
(/.f64 (+.f64 (*.f64 (*.f64 y.im (atan2.f64 x.im x.re)) 4) (*.f64 (*.f64 y.im (atan2.f64 x.im x.re)) 4)) 8)
(*.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 (*.f64 (atan2.f64 x.im x.re) y.re) 4) 4)
(*.f64 y.re (atan2.f64 x.im x.re))
(/.f64 (+.f64 (*.f64 (*.f64 (atan2.f64 x.im x.re) y.re) 4) (*.f64 (*.f64 (atan2.f64 x.im x.re) y.re) 4)) 8)
(*.f64 y.re (atan2.f64 x.im x.re))

eval2.2s (4.1%)

Compiler

Compiled 20062 to 8134 computations (59.5% saved)

prune63.0ms (0.1%)

Pruning

6 alts after pruning (6 fresh and 0 done)

PrunedKeptTotal
New2916297
Fresh000
Picked101
Done000
Total2926298
Error
18.6b
Counts
298 → 6
Alt Table
Click to see full alt table
StatusErrorProgram
43.3b
(*.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))) (sin.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))))
27.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))) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))))
46.9b
(*.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))) (neg.f64 (sin.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.im) (-.f64 (*.f64 (atan2.f64 x.im x.re) y.re) (PI.f64))))))
49.6b
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.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))))
50.4b
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.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))))
50.5b
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 x.im) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.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 420 to 240 computations (42.9% saved)

localize95.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
1.2b
(*.f64 y.re (atan2.f64 x.im x.re))
2.2b
(*.f64 (atan2.f64 x.im x.re) y.im)
17.7b
(sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))
30.4b
(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.re
@-inf
(sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))
0.0ms
x.im
@-inf
(sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))
0.0ms
x.im
@0
(sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))
0.0ms
x.im
@inf
(sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))
0.0ms
x.re
@inf
(sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))

rewrite123.0ms (0.2%)

Algorithm
batch-egg-rewrite
Rules
1474×bool.json-1
1474×bool.json-2
1436×rational.json-1
1436×rational.json-2
1436×rational.json-4
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0930
19130
226230
355030
4114830
5256430
6560830
Stop Event
node limit
Counts
2 → 70
Calls
Call 1
Inputs
(sin.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 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 -1 (-.f64 1 (neg.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 1/2) (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 1 (neg.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (neg.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (neg.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 1/2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 8) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 8)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (neg.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))) (neg.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))))) -2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 8)) (*.f64 2 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 8))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (neg.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))))))) (#(struct:change #<rule egg-rr> (2) ((x not (not (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))))))) (#(struct:change #<rule egg-rr> (2) ((x and (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))))))) (#(struct:change #<rule egg-rr> (2) ((x or (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))))))))
((#(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 (PI.f64) (-.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (PI.f64)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (PI.f64)) (PI.f64))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (PI.f64)) (-.f64 (neg.f64 (PI.f64)) (*.f64 (PI.f64) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (PI.f64) 1/2) (-.f64 (*.f64 (PI.f64) 1/2) (-.f64 (PI.f64) (*.f64 y.re (atan2.f64 x.im x.re)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (PI.f64) 2) (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (PI.f64) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 (PI.f64)) (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (PI.f64)))))) (#(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 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (PI.f64)) (neg.f64 (PI.f64)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (PI.f64) -2)) (*.f64 (PI.f64) 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y.re (*.f64 (atan2.f64 x.im x.re) 1/2)) (*.f64 y.re (*.f64 (atan2.f64 x.im x.re) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (PI.f64) 1) (-.f64 (-.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (PI.f64)) -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 (*.f64 y.re (atan2.f64 x.im x.re)) -1) (-.f64 (PI.f64) (+.f64 1 (PI.f64))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (-.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (PI.f64)) -1) (-.f64 (PI.f64) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (-.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (PI.f64)) -1) (-.f64 (-.f64 -1 (PI.f64)) (*.f64 (PI.f64) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 1 (PI.f64)) (-.f64 -1 (-.f64 (neg.f64 (PI.f64)) (*.f64 y.re (atan2.f64 x.im x.re)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (PI.f64) -2) (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (PI.f64) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (PI.f64) -2) (-.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (PI.f64) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (-.f64 -1 (PI.f64))) (+.f64 1 (PI.f64)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 -1 (-.f64 (neg.f64 (PI.f64)) (*.f64 y.re (atan2.f64 x.im x.re)))) (-.f64 1 (PI.f64)))))) (#(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 (neg.f64 (*.f64 y.re (atan2.f64 x.im x.re))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (PI.f64) (-.f64 (PI.f64) (*.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)) (PI.f64)) (neg.f64 (PI.f64)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (PI.f64) 2) (-.f64 (*.f64 (PI.f64) 2) (*.f64 y.re (atan2.f64 x.im x.re))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (neg.f64 (PI.f64)) (-.f64 (neg.f64 (PI.f64)) (*.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)) (PI.f64)) (PI.f64))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (PI.f64) -2)) (*.f64 (PI.f64) -2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (*.f64 (PI.f64) 2) (PI.f64)) (-.f64 (PI.f64) (*.f64 y.re (atan2.f64 x.im x.re))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (neg.f64 (PI.f64)) (*.f64 (PI.f64) -2)) (-.f64 (PI.f64) (*.f64 y.re (atan2.f64 x.im x.re))))))) (#(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 (*.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 (neg.f64 (*.f64 y.re (atan2.f64 x.im x.re))) -1)))) (#(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 (*.f64 y.re (atan2.f64 x.im x.re)) 8)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (neg.f64 (*.f64 y.re (atan2.f64 x.im x.re)))) -2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 (*.f64 y.re (atan2.f64 x.im x.re)) 8)) (*.f64 2 (*.f64 (*.f64 y.re (atan2.f64 x.im x.re)) 8))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 2 (neg.f64 (*.f64 y.re (atan2.f64 x.im x.re)))) -1) 2)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (neg.f64 (*.f64 y.re (atan2.f64 x.im x.re))))))) (#(struct:change #<rule egg-rr> (2) ((x not (not (*.f64 y.re (atan2.f64 x.im x.re))))))) (#(struct:change #<rule egg-rr> (2) ((x and (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.re (atan2.f64 x.im x.re)))))) (#(struct:change #<rule egg-rr> (2) ((x or (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.re (atan2.f64 x.im x.re)))))))

simplify202.0ms (0.4%)

Algorithm
egg-herbie
Rules
1760×rational.json-simplify-35
1426×rational.json-simplify-1
970×rational.json-simplify-2
854×rational.json-simplify-52
730×rational.json-simplify-41
Iterations

Useful iterations: 5 (0.0ms)

IterNodesCost
01631368
13431368
28111368
332431368
451591360
559421352
668881352
773281352
877631352
Stop Event
node limit
Counts
74 → 92
Calls
Call 1
Inputs
(*.f64 y.re (atan2.f64 x.im x.re))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 y.re 3) (pow.f64 (atan2.f64 x.im x.re) 3))) (*.f64 y.re (atan2.f64 x.im x.re)))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 y.re 3) (pow.f64 (atan2.f64 x.im x.re) 3))) (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 1/120 (*.f64 (pow.f64 y.re 5) (pow.f64 (atan2.f64 x.im x.re) 5)))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 y.re 3) (pow.f64 (atan2.f64 x.im x.re) 3))) (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (+.f64 (*.f64 -1/5040 (*.f64 (pow.f64 y.re 7) (pow.f64 (atan2.f64 x.im x.re) 7))) (*.f64 1/120 (*.f64 (pow.f64 y.re 5) (pow.f64 (atan2.f64 x.im x.re) 5))))))
(+.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 0)
(+.f64 0 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))))
(+.f64 -1 (-.f64 1 (neg.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))))))
(+.f64 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 1/2) (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 1/2))
(+.f64 (-.f64 1 (neg.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))))) -1)
(-.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 0)
(-.f64 0 (neg.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 1)
(*.f64 1 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))))
(*.f64 2 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 1/2))
(*.f64 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 2) 1/2)
(*.f64 4 (/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 4))
(*.f64 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 4) 1/4)
(*.f64 1/2 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 2))
(*.f64 -1 (neg.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))))
(*.f64 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 1/2) 2)
(*.f64 (neg.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))) -1)
(*.f64 1/4 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 4))
(*.f64 (/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 4) 4)
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 1)
(/.f64 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 2) 2)
(/.f64 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 4) 4)
(/.f64 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 8) 8)
(/.f64 (neg.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))) -1)
(/.f64 (*.f64 2 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 8)) 16)
(/.f64 (+.f64 (neg.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))) (neg.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))))) -2)
(/.f64 (+.f64 (*.f64 2 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 8)) (*.f64 2 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 8))) 32)
(neg.f64 (neg.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))))
(+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) 0)
(+.f64 0 (*.f64 y.re (atan2.f64 x.im x.re)))
(+.f64 (PI.f64) (-.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (PI.f64)))
(+.f64 (-.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (PI.f64)) (PI.f64))
(+.f64 (-.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (PI.f64)) (-.f64 (neg.f64 (PI.f64)) (*.f64 (PI.f64) -2)))
(+.f64 (*.f64 (PI.f64) 1/2) (-.f64 (*.f64 (PI.f64) 1/2) (-.f64 (PI.f64) (*.f64 y.re (atan2.f64 x.im x.re)))))
(+.f64 (*.f64 (PI.f64) 2) (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (PI.f64) -2)))
(+.f64 (neg.f64 (PI.f64)) (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (PI.f64)))
(+.f64 -1 (-.f64 (*.f64 y.re (atan2.f64 x.im x.re)) -1))
(+.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (PI.f64)) (neg.f64 (PI.f64)))
(+.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (PI.f64) -2)) (*.f64 (PI.f64) 2))
(+.f64 (*.f64 y.re (*.f64 (atan2.f64 x.im x.re) 1/2)) (*.f64 y.re (*.f64 (atan2.f64 x.im x.re) 1/2)))
(+.f64 (-.f64 (PI.f64) 1) (-.f64 (-.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (PI.f64)) -1))
(+.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) (-.f64 (PI.f64) (+.f64 1 (PI.f64))))
(+.f64 (-.f64 (-.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (PI.f64)) -1) (-.f64 (PI.f64) 1))
(+.f64 (-.f64 (-.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (PI.f64)) -1) (-.f64 (-.f64 -1 (PI.f64)) (*.f64 (PI.f64) -2)))
(+.f64 (-.f64 1 (PI.f64)) (-.f64 -1 (-.f64 (neg.f64 (PI.f64)) (*.f64 y.re (atan2.f64 x.im x.re)))))
(+.f64 (*.f64 (PI.f64) -2) (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (PI.f64) 2)))
(+.f64 (*.f64 (PI.f64) -2) (-.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (PI.f64) -2)))
(+.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (-.f64 -1 (PI.f64))) (+.f64 1 (PI.f64)))
(+.f64 (-.f64 -1 (-.f64 (neg.f64 (PI.f64)) (*.f64 y.re (atan2.f64 x.im x.re)))) (-.f64 1 (PI.f64)))
(-.f64 (*.f64 y.re (atan2.f64 x.im x.re)) 0)
(-.f64 0 (neg.f64 (*.f64 y.re (atan2.f64 x.im x.re))))
(-.f64 (PI.f64) (-.f64 (PI.f64) (*.f64 y.re (atan2.f64 x.im x.re))))
(-.f64 (-.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (PI.f64)) (neg.f64 (PI.f64)))
(-.f64 (*.f64 (PI.f64) 2) (-.f64 (*.f64 (PI.f64) 2) (*.f64 y.re (atan2.f64 x.im x.re))))
(-.f64 (neg.f64 (PI.f64)) (-.f64 (neg.f64 (PI.f64)) (*.f64 y.re (atan2.f64 x.im x.re))))
(-.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (PI.f64)) (PI.f64))
(-.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (PI.f64) -2)) (*.f64 (PI.f64) -2))
(-.f64 (-.f64 (*.f64 (PI.f64) 2) (PI.f64)) (-.f64 (PI.f64) (*.f64 y.re (atan2.f64 x.im x.re))))
(-.f64 (-.f64 (neg.f64 (PI.f64)) (*.f64 (PI.f64) -2)) (-.f64 (PI.f64) (*.f64 y.re (atan2.f64 x.im x.re))))
(/.f64 (*.f64 y.re (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 (neg.f64 (*.f64 y.re (atan2.f64 x.im x.re))) -1)
(/.f64 (*.f64 (*.f64 y.re (atan2.f64 x.im x.re)) 8) 8)
(/.f64 (*.f64 2 (*.f64 (*.f64 y.re (atan2.f64 x.im x.re)) 8)) 16)
(/.f64 (*.f64 2 (neg.f64 (*.f64 y.re (atan2.f64 x.im x.re)))) -2)
(/.f64 (+.f64 (*.f64 2 (*.f64 (*.f64 y.re (atan2.f64 x.im x.re)) 8)) (*.f64 2 (*.f64 (*.f64 y.re (atan2.f64 x.im x.re)) 8))) 32)
(/.f64 (/.f64 (*.f64 2 (neg.f64 (*.f64 y.re (atan2.f64 x.im x.re)))) -1) 2)
(neg.f64 (neg.f64 (*.f64 y.re (atan2.f64 x.im x.re))))
Outputs
(*.f64 y.re (atan2.f64 x.im x.re))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 y.re 3) (pow.f64 (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)) (*.f64 (pow.f64 y.re 3) (*.f64 (pow.f64 (atan2.f64 x.im x.re) 3) -1/6)))
(+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 -1/6 (*.f64 (pow.f64 y.re 3) (pow.f64 (atan2.f64 x.im x.re) 3))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 y.re 3) (pow.f64 (atan2.f64 x.im x.re) 3))) (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 1/120 (*.f64 (pow.f64 y.re 5) (pow.f64 (atan2.f64 x.im x.re) 5)))))
(+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (+.f64 (*.f64 (pow.f64 y.re 5) (*.f64 (pow.f64 (atan2.f64 x.im x.re) 5) 1/120)) (*.f64 (pow.f64 y.re 3) (*.f64 (pow.f64 (atan2.f64 x.im x.re) 3) -1/6))))
(+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 y.re 3) (pow.f64 (atan2.f64 x.im x.re) 3))) (*.f64 1/120 (*.f64 (pow.f64 y.re 5) (pow.f64 (atan2.f64 x.im x.re) 5)))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 y.re 3) (pow.f64 (atan2.f64 x.im x.re) 3))) (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (+.f64 (*.f64 -1/5040 (*.f64 (pow.f64 y.re 7) (pow.f64 (atan2.f64 x.im x.re) 7))) (*.f64 1/120 (*.f64 (pow.f64 y.re 5) (pow.f64 (atan2.f64 x.im x.re) 5))))))
(+.f64 (*.f64 (pow.f64 y.re 3) (*.f64 (pow.f64 (atan2.f64 x.im x.re) 3) -1/6)) (+.f64 (*.f64 -1/5040 (*.f64 (pow.f64 y.re 7) (pow.f64 (atan2.f64 x.im x.re) 7))) (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (pow.f64 y.re 5) (*.f64 (pow.f64 (atan2.f64 x.im x.re) 5) 1/120)))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 y.re 3) (pow.f64 (atan2.f64 x.im x.re) 3))) (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 y.re 5) (pow.f64 (atan2.f64 x.im x.re) 5))) (*.f64 -1/5040 (*.f64 (pow.f64 y.re 7) (pow.f64 (atan2.f64 x.im x.re) 7))))))
(+.f64 (*.f64 1/120 (*.f64 (pow.f64 y.re 5) (pow.f64 (atan2.f64 x.im x.re) 5))) (+.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 -1/5040 (*.f64 (pow.f64 y.re 7) (pow.f64 (atan2.f64 x.im x.re) 7)))) (*.f64 -1/6 (*.f64 (pow.f64 y.re 3) (pow.f64 (atan2.f64 x.im x.re) 3)))))
(+.f64 (*.f64 1/120 (*.f64 (pow.f64 y.re 5) (pow.f64 (atan2.f64 x.im x.re) 5))) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 y.re 3) (pow.f64 (atan2.f64 x.im x.re) 3))) (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 -1/5040 (*.f64 (pow.f64 y.re 7) (pow.f64 (atan2.f64 x.im x.re) 7))))))
(+.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 0)
(sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))
(+.f64 0 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))))
(sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))
(+.f64 -1 (-.f64 1 (neg.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))))))
(sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))
(+.f64 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 1/2) (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 1/2))
(sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))
(+.f64 (-.f64 1 (neg.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))))) -1)
(sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))
(-.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 0)
(sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))
(-.f64 0 (neg.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))))
(sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 1)
(sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))
(*.f64 1 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))))
(sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))
(*.f64 2 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 1/2))
(sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))
(*.f64 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 2) 1/2)
(sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))
(*.f64 4 (/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 4))
(sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))
(*.f64 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 4) 1/4)
(sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))
(*.f64 1/2 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 2))
(sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))
(*.f64 -1 (neg.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))))
(sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))
(*.f64 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 1/2) 2)
(sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))
(*.f64 (neg.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))) -1)
(sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))
(*.f64 1/4 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 4))
(sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))
(*.f64 (/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 4) 4)
(sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 1)
(sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))
(/.f64 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 2) 2)
(sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))
(/.f64 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 4) 4)
(sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))
(/.f64 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 8) 8)
(sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))
(/.f64 (neg.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))) -1)
(sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))
(/.f64 (*.f64 2 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 8)) 16)
(sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))
(/.f64 (+.f64 (neg.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))) (neg.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))))) -2)
(sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))
(/.f64 (+.f64 (*.f64 2 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 8)) (*.f64 2 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 8))) 32)
(sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))
(neg.f64 (neg.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))))
(sin.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 (PI.f64) (-.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (PI.f64)))
(*.f64 y.re (atan2.f64 x.im x.re))
(+.f64 (-.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (PI.f64)) (PI.f64))
(*.f64 y.re (atan2.f64 x.im x.re))
(+.f64 (-.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (PI.f64)) (-.f64 (neg.f64 (PI.f64)) (*.f64 (PI.f64) -2)))
(*.f64 y.re (atan2.f64 x.im x.re))
(+.f64 (*.f64 (PI.f64) 1/2) (-.f64 (*.f64 (PI.f64) 1/2) (-.f64 (PI.f64) (*.f64 y.re (atan2.f64 x.im x.re)))))
(+.f64 (*.f64 1/2 (PI.f64)) (-.f64 (*.f64 1/2 (PI.f64)) (-.f64 (PI.f64) (*.f64 y.re (atan2.f64 x.im x.re)))))
(+.f64 (*.f64 1/2 (PI.f64)) (-.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (-.f64 (PI.f64) (*.f64 1/2 (PI.f64)))))
(+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (+.f64 (*.f64 1/2 (PI.f64)) (-.f64 (*.f64 1/2 (PI.f64)) (PI.f64))))
(+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (+.f64 (*.f64 1/2 (PI.f64)) (*.f64 (PI.f64) -1/2)))
(+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 0 (*.f64 (PI.f64) -1/2)))
(+.f64 (*.f64 (PI.f64) 2) (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (PI.f64) -2)))
(*.f64 y.re (atan2.f64 x.im x.re))
(+.f64 (neg.f64 (PI.f64)) (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (PI.f64)))
(*.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 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (PI.f64)) (neg.f64 (PI.f64)))
(*.f64 y.re (atan2.f64 x.im x.re))
(+.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (PI.f64) -2)) (*.f64 (PI.f64) 2))
(*.f64 y.re (atan2.f64 x.im x.re))
(+.f64 (*.f64 y.re (*.f64 (atan2.f64 x.im x.re) 1/2)) (*.f64 y.re (*.f64 (atan2.f64 x.im x.re) 1/2)))
(*.f64 y.re (atan2.f64 x.im x.re))
(+.f64 (-.f64 (PI.f64) 1) (-.f64 (-.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (PI.f64)) -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 (*.f64 y.re (atan2.f64 x.im x.re)) -1) (-.f64 (PI.f64) (+.f64 1 (PI.f64))))
(*.f64 y.re (atan2.f64 x.im x.re))
(+.f64 (-.f64 (-.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (PI.f64)) -1) (-.f64 (PI.f64) 1))
(*.f64 y.re (atan2.f64 x.im x.re))
(+.f64 (-.f64 (-.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (PI.f64)) -1) (-.f64 (-.f64 -1 (PI.f64)) (*.f64 (PI.f64) -2)))
(+.f64 (+.f64 1 (-.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (PI.f64))) (-.f64 (-.f64 -1 (PI.f64)) (*.f64 -2 (PI.f64))))
(+.f64 1 (+.f64 (-.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (PI.f64)) (-.f64 (-.f64 -1 (PI.f64)) (*.f64 -2 (PI.f64)))))
(+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (+.f64 (-.f64 1 (PI.f64)) (-.f64 (-.f64 -1 (PI.f64)) (*.f64 -2 (PI.f64)))))
(+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (+.f64 (-.f64 (-.f64 -1 (PI.f64)) (*.f64 -2 (PI.f64))) (-.f64 1 (PI.f64))))
(+.f64 (-.f64 1 (PI.f64)) (-.f64 -1 (-.f64 (neg.f64 (PI.f64)) (*.f64 y.re (atan2.f64 x.im x.re)))))
(*.f64 y.re (atan2.f64 x.im x.re))
(+.f64 (*.f64 (PI.f64) -2) (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (PI.f64) 2)))
(*.f64 y.re (atan2.f64 x.im x.re))
(+.f64 (*.f64 (PI.f64) -2) (-.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (PI.f64) -2)))
(*.f64 y.re (atan2.f64 x.im x.re))
(+.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (-.f64 -1 (PI.f64))) (+.f64 1 (PI.f64)))
(*.f64 y.re (atan2.f64 x.im x.re))
(+.f64 (-.f64 -1 (-.f64 (neg.f64 (PI.f64)) (*.f64 y.re (atan2.f64 x.im x.re)))) (-.f64 1 (PI.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 (neg.f64 (*.f64 y.re (atan2.f64 x.im x.re))))
(*.f64 y.re (atan2.f64 x.im x.re))
(-.f64 (PI.f64) (-.f64 (PI.f64) (*.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)) (PI.f64)) (neg.f64 (PI.f64)))
(*.f64 y.re (atan2.f64 x.im x.re))
(-.f64 (*.f64 (PI.f64) 2) (-.f64 (*.f64 (PI.f64) 2) (*.f64 y.re (atan2.f64 x.im x.re))))
(*.f64 y.re (atan2.f64 x.im x.re))
(-.f64 (neg.f64 (PI.f64)) (-.f64 (neg.f64 (PI.f64)) (*.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)) (PI.f64)) (PI.f64))
(*.f64 y.re (atan2.f64 x.im x.re))
(-.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (PI.f64) -2)) (*.f64 (PI.f64) -2))
(*.f64 y.re (atan2.f64 x.im x.re))
(-.f64 (-.f64 (*.f64 (PI.f64) 2) (PI.f64)) (-.f64 (PI.f64) (*.f64 y.re (atan2.f64 x.im x.re))))
(*.f64 y.re (atan2.f64 x.im x.re))
(-.f64 (-.f64 (neg.f64 (PI.f64)) (*.f64 (PI.f64) -2)) (-.f64 (PI.f64) (*.f64 y.re (atan2.f64 x.im x.re))))
(*.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 (*.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 (neg.f64 (*.f64 y.re (atan2.f64 x.im x.re))) -1)
(*.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 (*.f64 y.re (atan2.f64 x.im x.re)) 8)) 16)
(*.f64 y.re (atan2.f64 x.im x.re))
(/.f64 (*.f64 2 (neg.f64 (*.f64 y.re (atan2.f64 x.im x.re)))) -2)
(*.f64 y.re (atan2.f64 x.im x.re))
(/.f64 (+.f64 (*.f64 2 (*.f64 (*.f64 y.re (atan2.f64 x.im x.re)) 8)) (*.f64 2 (*.f64 (*.f64 y.re (atan2.f64 x.im x.re)) 8))) 32)
(*.f64 y.re (atan2.f64 x.im x.re))
(/.f64 (/.f64 (*.f64 2 (neg.f64 (*.f64 y.re (atan2.f64 x.im x.re)))) -1) 2)
(*.f64 y.re (atan2.f64 x.im x.re))
(neg.f64 (neg.f64 (*.f64 y.re (atan2.f64 x.im x.re))))
(*.f64 y.re (atan2.f64 x.im x.re))

localize34.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
1.2b
(*.f64 (atan2.f64 x.im x.re) y.re)
2.2b
(*.f64 (atan2.f64 x.im x.re) y.im)
30.4b
(sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))
31.8b
(sin.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)

localize60.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
1.2b
(*.f64 (atan2.f64 x.im x.re) y.re)
2.2b
(*.f64 (atan2.f64 x.im x.re) y.im)
30.4b
(sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))
31.8b
(sin.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)

localize464.0ms (0.9%)

Local error

Found 4 expressions with local error:

NewErrorProgram
1.2b
(*.f64 (atan2.f64 x.im x.re) y.re)
2.2b
(*.f64 (atan2.f64 x.im x.re) y.im)
16.7b
(sin.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))
30.4b
(sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))
Compiler

Compiled 154 to 20 computations (87% saved)

series287.0ms (0.5%)

Counts
1 → 48
Calls

12 calls:

TimeVariablePointExpression
172.0ms
x.im
@-inf
(sin.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))
96.0ms
x.im
@0
(sin.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))
10.0ms
x.re
@0
(sin.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))
6.0ms
x.im
@inf
(sin.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))
1.0ms
x.re
@inf
(sin.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))

rewrite99.0ms (0.2%)

Algorithm
batch-egg-rewrite
Rules
1920×bool.json-1
1920×bool.json-2
1078×rational.json-1
1078×rational.json-2
1078×rational.json-4
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01333
112933
234033
370633
4152233
5353833
6723933
Stop Event
node limit
Counts
1 → 28
Calls
Call 1
Inputs
(sin.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (sin.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 (sin.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 -1 (-.f64 1 (neg.f64 (sin.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 (sin.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 1/2) (*.f64 (sin.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 1 (neg.f64 (sin.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 (sin.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 (neg.f64 (sin.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 (sin.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 (sin.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 (sin.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 (sin.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 (sin.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 (sin.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 (sin.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 -1 (neg.f64 (sin.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 (sin.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 (neg.f64 (sin.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/4 (*.f64 (sin.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 (sin.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 (sin.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 (sin.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 (sin.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 2 (*.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 4)) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (sin.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 2 (*.f64 2 (*.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 4))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (neg.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))) (neg.f64 (sin.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 (*.f64 2 (*.f64 2 (*.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 4))) (*.f64 2 (*.f64 2 (*.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 4)))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (neg.f64 (sin.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 not (not (sin.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 and (sin.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) (sin.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 or (sin.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) (sin.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))))))))

simplify258.0ms (0.5%)

Algorithm
egg-herbie
Rules
2536×rational.json-simplify-1
1818×rational.json-simplify-35
1052×rational.json-simplify-41
974×rational.json-simplify-2
876×rational.json-simplify-26
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01233072
12603056
25773056
313043014
426543014
542003014
655253014
763233014
868313014
971543014
1076503014
Stop Event
node limit
Counts
76 → 65
Calls
Call 1
Inputs
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.im)) 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))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.im)) 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))))
(sin.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))))
(sin.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))))
(sin.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))))
(sin.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))))
(sin.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) (*.f64 y.im (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/2 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 (pow.f64 (log.f64 x.im) 2) (pow.f64 y.im 2)))) (*.f64 (log.f64 x.im) (*.f64 y.im (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 (*.f64 (pow.f64 y.im 3) (*.f64 (pow.f64 (log.f64 x.im) 3) (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re)))))) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 (pow.f64 (log.f64 x.im) 2) (pow.f64 y.im 2)))) (*.f64 (log.f64 x.im) (*.f64 y.im (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))))))))
(sin.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 y.re (atan2.f64 x.im x.re))))
(sin.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 y.re (atan2.f64 x.im x.re))))
(sin.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 y.re (atan2.f64 x.im x.re))))
(sin.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 y.re (atan2.f64 x.im x.re))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(sin.f64 (*.f64 y.im (log.f64 x.im)))
(+.f64 (sin.f64 (*.f64 y.im (log.f64 x.im))) (*.f64 y.re (*.f64 (atan2.f64 x.im x.re) (cos.f64 (*.f64 y.im (log.f64 x.im))))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 y.re 2) (*.f64 (pow.f64 (atan2.f64 x.im x.re) 2) (sin.f64 (*.f64 y.im (log.f64 x.im)))))) (+.f64 (sin.f64 (*.f64 y.im (log.f64 x.im))) (*.f64 y.re (*.f64 (atan2.f64 x.im x.re) (cos.f64 (*.f64 y.im (log.f64 x.im)))))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 y.re 2) (*.f64 (pow.f64 (atan2.f64 x.im x.re) 2) (sin.f64 (*.f64 y.im (log.f64 x.im)))))) (+.f64 (sin.f64 (*.f64 y.im (log.f64 x.im))) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 y.re 3) (*.f64 (pow.f64 (atan2.f64 x.im x.re) 3) (cos.f64 (*.f64 y.im (log.f64 x.im)))))) (*.f64 y.re (*.f64 (atan2.f64 x.im x.re) (cos.f64 (*.f64 y.im (log.f64 x.im))))))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(+.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 0)
(+.f64 0 (sin.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))))
(+.f64 -1 (-.f64 1 (neg.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))))))
(+.f64 (*.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 1/2) (*.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 1/2))
(+.f64 (-.f64 1 (neg.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))))) -1)
(-.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 0)
(-.f64 0 (neg.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))))
(*.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 1)
(*.f64 1 (sin.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))))
(*.f64 2 (*.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 1/2))
(*.f64 (*.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 2) 1/2)
(*.f64 4 (/.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 4))
(*.f64 (*.f64 (sin.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 (sin.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 2))
(*.f64 -1 (neg.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))))
(*.f64 (*.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 1/2) 2)
(*.f64 (neg.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))) -1)
(*.f64 1/4 (*.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 4))
(*.f64 (/.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 4) 4)
(/.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 1)
(/.f64 (*.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 2) 2)
(/.f64 (*.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 4) 4)
(/.f64 (*.f64 2 (*.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 4)) 8)
(/.f64 (neg.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))) -1)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 4))) 16)
(/.f64 (+.f64 (neg.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))) (neg.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))))) -2)
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 4))) (*.f64 2 (*.f64 2 (*.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 4)))) 32)
(neg.f64 (neg.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))))
Outputs
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.im)) 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))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 1 x.im)) (neg.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))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 1 x.im)) (*.f64 y.im -1))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 1 x.im)) (neg.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))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 1 x.im)) (*.f64 y.im -1))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 1 x.im)) (neg.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))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 1 x.im)) (*.f64 y.im -1))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 1 x.im)) (neg.f64 y.im))))
(sin.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))))
(sin.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)))))))
(sin.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)))))))
(sin.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))))
(sin.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)))))))
(sin.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)))))))
(sin.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))))
(sin.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)))))))
(sin.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)))))))
(sin.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))))
(sin.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)))))))
(sin.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)))))))
(sin.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) (*.f64 y.im (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))))))
(+.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 y.im (*.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (log.f64 x.im))))
(+.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 (cos.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 y.im (*.f64 (log.f64 x.im) (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/2 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 (pow.f64 (log.f64 x.im) 2) (pow.f64 y.im 2)))) (*.f64 (log.f64 x.im) (*.f64 y.im (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 (*.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (log.f64 x.im))) (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 (*.f64 (pow.f64 (log.f64 x.im) 2) (pow.f64 y.im 2)) -1/2))))
(+.f64 (+.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 (cos.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 -1/2 (*.f64 (pow.f64 (log.f64 x.im) 2) (pow.f64 y.im 2)))))
(+.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (+.f64 (*.f64 y.im (*.f64 (log.f64 x.im) (cos.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 (log.f64 x.im) 2) (*.f64 (pow.f64 y.im 2) -1/2)))))
(+.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (+.f64 (*.f64 y.im (*.f64 (log.f64 x.im) (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))))) (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 -1/2 (*.f64 (pow.f64 (log.f64 x.im) 2) (pow.f64 y.im 2))))))
(+.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 y.im 3) (*.f64 (pow.f64 (log.f64 x.im) 3) (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re)))))) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 (pow.f64 (log.f64 x.im) 2) (pow.f64 y.im 2)))) (*.f64 (log.f64 x.im) (*.f64 y.im (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))))))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 y.im 3) (*.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (pow.f64 (log.f64 x.im) 3)))) (+.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (+.f64 (*.f64 y.im (*.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (log.f64 x.im))) (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 (*.f64 (pow.f64 (log.f64 x.im) 2) (pow.f64 y.im 2)) -1/2)))))
(+.f64 (+.f64 (+.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 (cos.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 -1/2 (*.f64 (pow.f64 (log.f64 x.im) 2) (pow.f64 y.im 2))))) (*.f64 -1/6 (*.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 (pow.f64 (log.f64 x.im) 3) (pow.f64 y.im 3)))))
(+.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (+.f64 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 (pow.f64 (log.f64 x.im) 2) (*.f64 (pow.f64 y.im 2) -1/2))) (+.f64 (*.f64 y.im (*.f64 (log.f64 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 (*.f64 (pow.f64 y.im 3) (pow.f64 (log.f64 x.im) 3)) -1/6)))))
(+.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (+.f64 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 -1/2 (*.f64 (pow.f64 (log.f64 x.im) 2) (pow.f64 y.im 2)))) (*.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (+.f64 (*.f64 y.im (log.f64 x.im)) (*.f64 -1/6 (*.f64 (pow.f64 y.im 3) (pow.f64 (log.f64 x.im) 3)))))))
(sin.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 y.re (atan2.f64 x.im x.re))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(sin.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 y.re (atan2.f64 x.im x.re))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(sin.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 y.re (atan2.f64 x.im x.re))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(sin.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 y.re (atan2.f64 x.im x.re))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(sin.f64 (*.f64 y.im (log.f64 x.im)))
(+.f64 (sin.f64 (*.f64 y.im (log.f64 x.im))) (*.f64 y.re (*.f64 (atan2.f64 x.im x.re) (cos.f64 (*.f64 y.im (log.f64 x.im))))))
(+.f64 (sin.f64 (*.f64 y.im (log.f64 x.im))) (*.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (cos.f64 (*.f64 y.im (log.f64 x.im)))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 y.re 2) (*.f64 (pow.f64 (atan2.f64 x.im x.re) 2) (sin.f64 (*.f64 y.im (log.f64 x.im)))))) (+.f64 (sin.f64 (*.f64 y.im (log.f64 x.im))) (*.f64 y.re (*.f64 (atan2.f64 x.im x.re) (cos.f64 (*.f64 y.im (log.f64 x.im)))))))
(+.f64 (sin.f64 (*.f64 y.im (log.f64 x.im))) (+.f64 (*.f64 y.re (*.f64 (atan2.f64 x.im x.re) (cos.f64 (*.f64 y.im (log.f64 x.im))))) (*.f64 -1/2 (*.f64 (pow.f64 y.re 2) (*.f64 (sin.f64 (*.f64 y.im (log.f64 x.im))) (pow.f64 (atan2.f64 x.im x.re) 2))))))
(+.f64 (sin.f64 (*.f64 y.im (log.f64 x.im))) (+.f64 (*.f64 y.re (*.f64 (atan2.f64 x.im x.re) (cos.f64 (*.f64 y.im (log.f64 x.im))))) (*.f64 (*.f64 (sin.f64 (*.f64 y.im (log.f64 x.im))) (pow.f64 (atan2.f64 x.im x.re) 2)) (*.f64 (pow.f64 y.re 2) -1/2))))
(+.f64 (sin.f64 (*.f64 y.im (log.f64 x.im))) (+.f64 (*.f64 y.re (*.f64 (atan2.f64 x.im x.re) (cos.f64 (*.f64 y.im (log.f64 x.im))))) (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 y.im (log.f64 x.im))) (*.f64 (pow.f64 y.re 2) (pow.f64 (atan2.f64 x.im x.re) 2))))))
(+.f64 (sin.f64 (*.f64 y.im (log.f64 x.im))) (+.f64 (*.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (cos.f64 (*.f64 y.im (log.f64 x.im)))) (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 y.im (log.f64 x.im))) (*.f64 (pow.f64 y.re 2) (pow.f64 (atan2.f64 x.im x.re) 2))))))
(+.f64 (+.f64 (sin.f64 (*.f64 y.im (log.f64 x.im))) (*.f64 y.re (*.f64 (atan2.f64 x.im x.re) (cos.f64 (*.f64 y.im (log.f64 x.im)))))) (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 y.im (log.f64 x.im))) (*.f64 (pow.f64 y.re 2) (pow.f64 (atan2.f64 x.im x.re) 2)))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 y.re 2) (*.f64 (pow.f64 (atan2.f64 x.im x.re) 2) (sin.f64 (*.f64 y.im (log.f64 x.im)))))) (+.f64 (sin.f64 (*.f64 y.im (log.f64 x.im))) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 y.re 3) (*.f64 (pow.f64 (atan2.f64 x.im x.re) 3) (cos.f64 (*.f64 y.im (log.f64 x.im)))))) (*.f64 y.re (*.f64 (atan2.f64 x.im x.re) (cos.f64 (*.f64 y.im (log.f64 x.im))))))))
(+.f64 (sin.f64 (*.f64 y.im (log.f64 x.im))) (+.f64 (+.f64 (*.f64 y.re (*.f64 (atan2.f64 x.im x.re) (cos.f64 (*.f64 y.im (log.f64 x.im))))) (*.f64 -1/6 (*.f64 (pow.f64 (atan2.f64 x.im x.re) 3) (*.f64 (cos.f64 (*.f64 y.im (log.f64 x.im))) (pow.f64 y.re 3))))) (*.f64 -1/2 (*.f64 (pow.f64 y.re 2) (*.f64 (sin.f64 (*.f64 y.im (log.f64 x.im))) (pow.f64 (atan2.f64 x.im x.re) 2))))))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (*.f64 y.im (log.f64 x.im))) (*.f64 (pow.f64 (atan2.f64 x.im x.re) 3) (pow.f64 y.re 3)))) (+.f64 (sin.f64 (*.f64 y.im (log.f64 x.im))) (+.f64 (*.f64 y.re (*.f64 (atan2.f64 x.im x.re) (cos.f64 (*.f64 y.im (log.f64 x.im))))) (*.f64 (*.f64 (sin.f64 (*.f64 y.im (log.f64 x.im))) (pow.f64 (atan2.f64 x.im x.re) 2)) (*.f64 (pow.f64 y.re 2) -1/2)))))
(+.f64 (sin.f64 (*.f64 y.im (log.f64 x.im))) (+.f64 (*.f64 y.re (*.f64 (atan2.f64 x.im x.re) (cos.f64 (*.f64 y.im (log.f64 x.im))))) (+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (*.f64 y.im (log.f64 x.im))) (*.f64 (pow.f64 y.re 3) (pow.f64 (atan2.f64 x.im x.re) 3)))) (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 y.im (log.f64 x.im))) (*.f64 (pow.f64 y.re 2) (pow.f64 (atan2.f64 x.im x.re) 2)))))))
(+.f64 (sin.f64 (*.f64 y.im (log.f64 x.im))) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 y.im (log.f64 x.im))) (*.f64 (pow.f64 y.re 2) (pow.f64 (atan2.f64 x.im x.re) 2)))) (*.f64 (cos.f64 (*.f64 y.im (log.f64 x.im))) (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 -1/6 (*.f64 (pow.f64 y.re 3) (pow.f64 (atan2.f64 x.im x.re) 3)))))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(+.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 0)
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(+.f64 0 (sin.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(+.f64 -1 (-.f64 1 (neg.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(+.f64 (*.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 1/2) (*.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 1/2))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(+.f64 (-.f64 1 (neg.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))))) -1)
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(-.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 0)
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(-.f64 0 (neg.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(*.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 1)
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(*.f64 1 (sin.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(*.f64 2 (*.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 1/2))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(*.f64 (*.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 2) 1/2)
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(*.f64 4 (/.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 4))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(*.f64 (*.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 4) 1/4)
(sin.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 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 2))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(*.f64 -1 (neg.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(*.f64 (*.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 1/2) 2)
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(*.f64 (neg.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))) -1)
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(*.f64 1/4 (*.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 4))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(*.f64 (/.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 4) 4)
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(/.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 1)
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(/.f64 (*.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 2) 2)
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(/.f64 (*.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 4) 4)
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(/.f64 (*.f64 2 (*.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 4)) 8)
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(/.f64 (neg.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))) -1)
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 4))) 16)
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(/.f64 (+.f64 (neg.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))) (neg.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))))) -2)
(sin.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 (sin.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 4))) (*.f64 2 (*.f64 2 (*.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 4)))) 32)
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))
(neg.f64 (neg.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.im))))

localize39.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
1.2b
(*.f64 (atan2.f64 x.im x.re) y.re)
2.2b
(*.f64 (atan2.f64 x.im x.re) y.im)
30.4b
(sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))
31.8b
(sin.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 161 to 21 computations (87% saved)

eval722.0ms (1.4%)

Compiler

Compiled 57998 to 24523 computations (57.7% saved)

prune627.0ms (1.2%)

Pruning

13 alts after pruning (12 fresh and 1 done)

PrunedKeptTotal
New997121009
Fresh101
Picked101
Done314
Total1002131015
Error
2.9b
Counts
1015 → 13
Alt Table
Click to see full alt table
StatusErrorProgram
27.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))) (*.f64 y.re (atan2.f64 x.im x.re)))
39.1b
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))))
50.9b
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.im)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))))
42.1b
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))))
45.1b
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.im)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))))
50.4b
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.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))))
51.4b
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.im)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))))
38.9b
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))))
44.4b
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))))
56.5b
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (neg.f64 (sin.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.im) (-.f64 (*.f64 (atan2.f64 x.im x.re) y.re) (PI.f64))))))
51.6b
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 x.im) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))))
42.1b
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 x.im) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))))
44.6b
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 x.im) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))))
Compiler

Compiled 680 to 402 computations (40.9% saved)

localize42.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re)
1.2b
(*.f64 y.re (atan2.f64 x.im x.re))
2.2b
(*.f64 (atan2.f64 x.im x.re) y.im)
30.4b
(sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))
Compiler

Compiled 121 to 16 computations (86.8% saved)

series35.0ms (0.1%)

Counts
1 → 36
Calls

9 calls:

TimeVariablePointExpression
33.0ms
y.re
@0
(*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re)
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)
0.0ms
y.re
@inf
(*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re)

rewrite52.0ms (0.1%)

Algorithm
batch-egg-rewrite
Rules
1510×rational.json-simplify-35
1160×bool.json-1
1160×bool.json-2
1146×rational.json-1
1146×rational.json-2
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01233
111733
230633
374633
4283133
Stop Event
node limit
Counts
1 → 8
Calls
Call 1
Inputs
(*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re)
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 (log.f64 (sqrt.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 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re) 4)) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re) 4)) (*.f64 2 (*.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re) 4))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x not (not (*.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 and (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re) (*.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 or (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re) (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re))))))

simplify164.0ms (0.3%)

Algorithm
egg-herbie
Rules
1056×rational.json-simplify-35
1048×rational.json-simplify-41
872×rational.json-simplify-61
764×rational.json-simplify-54
746×rational.json-simplify-1
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01292508
13032404
25662380
310932260
427782260
563602260
673832260
Stop Event
node limit
Counts
44 → 121
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 (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 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) (+.f64 y.re y.re)) 2)
(/.f64 (*.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re) 4) 4)
(/.f64 (*.f64 2 (*.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re) 4)) 8)
(/.f64 (+.f64 (*.f64 2 (*.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re) 4)) (*.f64 2 (*.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re) 4))) 16)
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 -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 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 (*.f64 1/2 (/.f64 (*.f64 y.re (pow.f64 x.re 2)) (pow.f64 x.im 2))) (*.f64 y.re (*.f64 (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4)) -1/4))))
(+.f64 (*.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/4 (/.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 y.re (+.f64 (log.f64 x.im) (+.f64 (*.f64 -1/4 (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4))) (*.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/2 (/.f64 (*.f64 y.re (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 -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 (*.f64 1/2 (/.f64 (*.f64 y.re (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 1/6 (*.f64 (pow.f64 x.re 6) (/.f64 y.re (pow.f64 x.im 6)))))))
(+.f64 (*.f64 y.re (*.f64 -1/4 (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4)))) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 x.re 6) (/.f64 y.re (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 (*.f64 y.re (+.f64 (*.f64 -1/4 (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4))) (*.f64 1/2 (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2))))) (*.f64 y.re (+.f64 (log.f64 x.im) (*.f64 1/6 (/.f64 (pow.f64 x.re 6) (pow.f64 x.im 6))))))
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.re)) y.re))
(*.f64 (log.f64 (/.f64 1 x.re)) (*.f64 y.re -1))
(neg.f64 (*.f64 y.re (log.f64 (/.f64 1 x.re))))
(*.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 (log.f64 (/.f64 1 x.re)) (*.f64 y.re -1)) (*.f64 1/2 (*.f64 (pow.f64 x.im 2) (/.f64 y.re (pow.f64 x.re 2)))))
(+.f64 (neg.f64 (*.f64 y.re (log.f64 (/.f64 1 x.re)))) (*.f64 1/2 (*.f64 y.re (/.f64 (pow.f64 x.im 2) (pow.f64 x.re 2)))))
(*.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 -1/4 (*.f64 (pow.f64 x.im 4) (/.f64 y.re (pow.f64 x.re 4)))) (+.f64 (*.f64 (log.f64 (/.f64 1 x.re)) (*.f64 y.re -1)) (*.f64 1/2 (*.f64 (pow.f64 x.im 2) (/.f64 y.re (pow.f64 x.re 2))))))
(+.f64 (neg.f64 (*.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 -1/4 (*.f64 y.re (/.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/2 (/.f64 (pow.f64 x.im 2) (pow.f64 x.re 2))))) (*.f64 (/.f64 y.re (pow.f64 x.re 4)) (*.f64 -1/4 (pow.f64 x.im 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 (log.f64 (/.f64 1 x.re)) (*.f64 y.re -1)) (*.f64 -1/4 (*.f64 (pow.f64 x.im 4) (/.f64 y.re (pow.f64 x.re 4))))) (*.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 (neg.f64 (*.f64 y.re (log.f64 (/.f64 1 x.re)))) (*.f64 -1/4 (*.f64 y.re (/.f64 (pow.f64 x.im 4) (pow.f64 x.re 4))))) (*.f64 1/720 (*.f64 y.re (/.f64 (*.f64 (pow.f64 x.im 6) 120) (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 (neg.f64 (*.f64 y.re (log.f64 (/.f64 1 x.re)))) (*.f64 -1/4 (*.f64 y.re (/.f64 (pow.f64 x.im 4) (pow.f64 x.re 4))))) (*.f64 1/720 (*.f64 y.re (*.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 (*.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 -1 (*.f64 y.re (log.f64 (/.f64 -1 x.re))))
(*.f64 y.re (*.f64 (log.f64 (/.f64 -1 x.re)) -1))
(*.f64 y.re (neg.f64 (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 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 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 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 (*.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 (/.f64 y.re (pow.f64 x.re 4)) (*.f64 -1/4 (pow.f64 x.im 4))) (*.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 (/.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 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 (+.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 1/720 (*.f64 y.re (/.f64 (*.f64 (pow.f64 x.im 6) 120) (pow.f64 x.re 6))))))
(+.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 (+.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 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/4 (*.f64 (pow.f64 x.im 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 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 (*.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 (log.f64 x.re)))
(+.f64 (*.f64 (/.f64 y.re (pow.f64 x.re 4)) (*.f64 -1/4 (pow.f64 x.im 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 (/.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/4 (/.f64 (pow.f64 x.im 4) (pow.f64 x.re 4))))))
(+.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/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 (*.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 (*.f64 1/2 (*.f64 (pow.f64 x.im 2) (/.f64 y.re (pow.f64 x.re 2)))) (*.f64 (/.f64 y.re (pow.f64 x.re 4)) (*.f64 -1/4 (pow.f64 x.im 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 (/.f64 y.re (pow.f64 x.re 4)) (*.f64 -1/4 (pow.f64 x.im 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 (log.f64 (/.f64 1 x.im)) (*.f64 y.re -1))
(neg.f64 (*.f64 y.re (log.f64 (/.f64 1 x.im))))
(*.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 (log.f64 (/.f64 1 x.im)) (*.f64 y.re -1)))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 y.re (pow.f64 x.re 2)) (pow.f64 x.im 2))) (neg.f64 (*.f64 y.re (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 y.re (+.f64 (*.f64 1/2 (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2))) (neg.f64 (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 (*.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 (log.f64 (/.f64 1 x.im)) (*.f64 y.re -1))))
(+.f64 (*.f64 y.re (*.f64 (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4)) -1/4)) (+.f64 (*.f64 1/2 (/.f64 (*.f64 y.re (pow.f64 x.re 2)) (pow.f64 x.im 2))) (neg.f64 (*.f64 y.re (log.f64 (/.f64 1 x.im))))))
(+.f64 (*.f64 y.re (*.f64 -1/4 (/.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))) (neg.f64 (*.f64 y.re (log.f64 (/.f64 1 x.im))))))
(+.f64 (*.f64 y.re (*.f64 1/2 (/.f64 (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 1/2 (*.f64 (pow.f64 x.re 2) (/.f64 y.re (pow.f64 x.im 2)))) (*.f64 y.re (+.f64 (*.f64 -1/4 (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4))) (neg.f64 (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 (*.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 (log.f64 (/.f64 1 x.im)) (*.f64 y.re -1)))))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 y.re (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 (neg.f64 (*.f64 y.re (log.f64 (/.f64 1 x.im)))) (*.f64 1/720 (*.f64 y.re (/.f64 (*.f64 (pow.f64 x.re 6) 120) (pow.f64 x.im 6)))))))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 y.re (pow.f64 x.re 2)) (pow.f64 x.im 2))) (+.f64 (*.f64 y.re (*.f64 -1/4 (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4)))) (+.f64 (neg.f64 (*.f64 y.re (log.f64 (/.f64 1 x.im)))) (*.f64 1/720 (*.f64 y.re (/.f64 (*.f64 (pow.f64 x.re 6) 120) (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 1/2 (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2))))) (*.f64 y.re (+.f64 (*.f64 120 (*.f64 (/.f64 (pow.f64 x.re 6) (pow.f64 x.im 6)) 1/720)) (neg.f64 (log.f64 (/.f64 1 x.im))))))
(*.f64 -1 (*.f64 (log.f64 (/.f64 -1 x.im)) y.re))
(*.f64 (log.f64 (/.f64 -1 x.im)) (*.f64 y.re -1))
(*.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 (log.f64 (/.f64 -1 x.im)) (*.f64 y.re -1)))
(+.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 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/2 (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2))) (neg.f64 (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 (*.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 (log.f64 (/.f64 -1 x.im)) (*.f64 y.re -1)) (*.f64 -1/4 (*.f64 y.re (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4))))))
(+.f64 (*.f64 y.re (*.f64 (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4)) -1/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 y.re (*.f64 -1/4 (/.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 y.re (*.f64 1/2 (/.f64 (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 1/2 (*.f64 (pow.f64 x.re 2) (/.f64 y.re (pow.f64 x.im 2)))) (*.f64 y.re (+.f64 (*.f64 -1/4 (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4))) (neg.f64 (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 (*.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/2 (/.f64 (*.f64 y.re (pow.f64 x.re 2)) (pow.f64 x.im 2))) (+.f64 (+.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 (log.f64 (/.f64 -1 x.im)) (*.f64 y.re -1))) (*.f64 -1/4 (*.f64 y.re (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4))))))
(+.f64 (*.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 (*.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 (pow.f64 x.re 6) 120) (pow.f64 x.im 6)))))))
(+.f64 (+.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.re (*.f64 -1/4 (/.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/4 (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4))))) (*.f64 y.re (+.f64 (*.f64 120 (*.f64 (/.f64 (pow.f64 x.re 6) (pow.f64 x.im 6)) 1/720)) (*.f64 1/2 (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2))))))
(+.f64 (*.f64 y.re (+.f64 (*.f64 -1/4 (/.f64 (pow.f64 x.re 4) (pow.f64 x.im 4))) (*.f64 1/2 (/.f64 (pow.f64 x.re 2) (pow.f64 x.im 2))))) (*.f64 y.re (+.f64 (*.f64 120 (*.f64 (/.f64 (pow.f64 x.re 6) (pow.f64 x.im 6)) 1/720)) (neg.f64 (log.f64 (/.f64 -1 x.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 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 (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 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) (+.f64 y.re y.re)) 2)
(*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))))
(/.f64 (*.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re) 4) 4)
(*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))))
(/.f64 (*.f64 2 (*.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re) 4)) 8)
(*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))))
(/.f64 (+.f64 (*.f64 2 (*.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re) 4)) (*.f64 2 (*.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re) 4))) 16)
(*.f64 y.re (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))))

localize19.0ms (0%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(*.f64 (log.f64 x.im) y.re)
1.2b
(*.f64 y.re (atan2.f64 x.im x.re))
2.2b
(*.f64 (atan2.f64 x.im x.re) y.im)
17.7b
(sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))
Compiler

Compiled 72 to 13 computations (81.9% saved)

series80.0ms (0.1%)

Counts
1 → 24
Calls

6 calls:

TimeVariablePointExpression
78.0ms
y.re
@0
(*.f64 (log.f64 x.im) y.re)
0.0ms
x.im
@-inf
(*.f64 (log.f64 x.im) y.re)
0.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)

rewrite92.0ms (0.2%)

Algorithm
batch-egg-rewrite
Rules
1622×bool.json-1
1622×bool.json-2
1588×rational.json-1
1588×rational.json-2
1140×rational.json-simplify-2
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0711
16911
219411
340311
480911
5173911
6371311
7667211
Stop Event
node limit
Counts
1 → 11
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 (log.f64 x.im) (*.f64 y.re 1/2)) (*.f64 (log.f64 x.im) (*.f64 y.re 1/2)))))) (#(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 not (not (*.f64 (log.f64 x.im) y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x and (*.f64 (log.f64 x.im) y.re) (*.f64 (log.f64 x.im) y.re))))) (#(struct:change #<rule egg-rr> (2) ((x or (*.f64 (log.f64 x.im) y.re) (*.f64 (log.f64 x.im) y.re))))))

simplify1.0s (1.9%)

Algorithm
egg-herbie
Rules
8286×rational.json-simplify-41
4050×rational.json-simplify-35
2880×rational.json-simplify-2
1810×rational.json-simplify-53
760×rational.json-simplify-1
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
050521
1111505
2215505
3452505
41365505
52662505
63653505
73832505
83963505
94091505
104216505
114341505
124896505
135039505
145097505
155097505
165222505
175347505
185472505
195597505
205722505
215990505
226316505
236494505
246644505
256773505
266898505
276898505
287194505
297194505
Stop Event
node limit
Counts
35 → 18
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 (log.f64 x.im) (*.f64 y.re 1/2)) (*.f64 (log.f64 x.im) (*.f64 y.re 1/2)))
(-.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)
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 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 (+.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 (log.f64 x.im) (*.f64 y.re 1/2)) (*.f64 (log.f64 x.im) (*.f64 y.re 1/2)))
(*.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))

localize21.0ms (0%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.4b
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.im)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))))
1.2b
(*.f64 y.re (atan2.f64 x.im x.re))
2.2b
(*.f64 (atan2.f64 x.im x.re) y.im)
17.7b
(sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))
Compiler

Compiled 79 to 14 computations (82.3% saved)

series34.0ms (0.1%)

Counts
1 → 48
Calls

12 calls:

TimeVariablePointExpression
11.0ms
x.re
@0
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.im)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))))
9.0ms
x.im
@0
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.im)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))))
7.0ms
x.im
@inf
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.im)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))))
1.0ms
y.re
@-inf
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.im)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))))
1.0ms
y.re
@0
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.im)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))))

rewrite100.0ms (0.2%)

Algorithm
batch-egg-rewrite
Rules
1364×bool.json-1
1364×bool.json-2
1326×rational.json-1
1326×rational.json-2
1326×rational.json-4
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01759
117059
244259
393859
4199059
5458159
Stop Event
node limit
Counts
1 → 12
Calls
Call 1
Inputs
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.im)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.im)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.im)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.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))) 1/2)) (*.f64 (sin.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))) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.im)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 (neg.f64 x.im)) y.re))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.im)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.im)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 2)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 2) (*.f64 2 (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 (neg.f64 x.im)) y.re)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.im)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 4)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.im)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 4))) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.im)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 4)))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.im)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 4)))) (*.f64 2 (*.f64 2 (*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.im)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 4))))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x not (not (*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.im)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))))))))) (#(struct:change #<rule egg-rr> (2) ((x and (*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.im)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.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))) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))))))) (#(struct:change #<rule egg-rr> (2) ((x or (*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.im)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.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))) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))))))))

simplify1.2s (2.2%)

Algorithm
egg-herbie
Rules
1622×rational.json-simplify-35
1072×rational.json-simplify-1
1030×rational.json-simplify-43
890×rational.json-simplify-2
694×rational.json-simplify-41
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01364476
13164310
26044152
311924130
426694130
541784130
651424130
763334130
873804130
Stop Event
node limit
Counts
60 → 60
Calls
Call 1
Inputs
(*.f64 (exp.f64 (-.f64 (*.f64 y.re (+.f64 (log.f64 -1) (log.f64 x.im))) (*.f64 y.im (atan2.f64 x.im x.re)))) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))))
(*.f64 (exp.f64 (-.f64 (*.f64 y.re (+.f64 (log.f64 -1) (log.f64 x.im))) (*.f64 y.im (atan2.f64 x.im x.re)))) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))))
(*.f64 (exp.f64 (-.f64 (*.f64 y.re (+.f64 (log.f64 -1) (log.f64 x.im))) (*.f64 y.im (atan2.f64 x.im x.re)))) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))))
(*.f64 (exp.f64 (-.f64 (*.f64 y.re (+.f64 (log.f64 -1) (log.f64 x.im))) (*.f64 y.im (atan2.f64 x.im x.re)))) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 1 x.im)))) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 1 x.im)))) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 1 x.im)))) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 1 x.im)))) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 -1 (*.f64 y.re (log.f64 (/.f64 -1 x.im)))) (*.f64 y.im (atan2.f64 x.im x.re)))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 -1 (*.f64 y.re (log.f64 (/.f64 -1 x.im)))) (*.f64 y.im (atan2.f64 x.im x.re)))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 -1 (*.f64 y.re (log.f64 (/.f64 -1 x.im)))) (*.f64 y.im (atan2.f64 x.im x.re)))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 -1 (*.f64 y.re (log.f64 (/.f64 -1 x.im)))) (*.f64 y.im (atan2.f64 x.im x.re)))))
(*.f64 (exp.f64 (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re)))) (*.f64 y.re (atan2.f64 x.im x.re)))
(+.f64 (*.f64 (exp.f64 (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re)))) (*.f64 (pow.f64 y.re 2) (*.f64 (atan2.f64 x.im x.re) (log.f64 (neg.f64 x.im))))) (*.f64 (exp.f64 (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re)))) (*.f64 y.re (atan2.f64 x.im x.re))))
(+.f64 (*.f64 (exp.f64 (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re)))) (*.f64 (pow.f64 y.re 2) (*.f64 (atan2.f64 x.im x.re) (log.f64 (neg.f64 x.im))))) (+.f64 (*.f64 (pow.f64 y.re 3) (+.f64 (*.f64 -1/6 (*.f64 (exp.f64 (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re)))) (pow.f64 (atan2.f64 x.im x.re) 3))) (*.f64 1/2 (*.f64 (exp.f64 (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re)))) (*.f64 (atan2.f64 x.im x.re) (pow.f64 (log.f64 (neg.f64 x.im)) 2)))))) (*.f64 (exp.f64 (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re)))) (*.f64 y.re (atan2.f64 x.im x.re)))))
(+.f64 (*.f64 (exp.f64 (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re)))) (*.f64 (pow.f64 y.re 2) (*.f64 (atan2.f64 x.im x.re) (log.f64 (neg.f64 x.im))))) (+.f64 (*.f64 (+.f64 (*.f64 1/6 (*.f64 (exp.f64 (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re)))) (*.f64 (atan2.f64 x.im x.re) (pow.f64 (log.f64 (neg.f64 x.im)) 3)))) (*.f64 -1/6 (*.f64 (exp.f64 (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re)))) (*.f64 (pow.f64 (atan2.f64 x.im x.re) 3) (log.f64 (neg.f64 x.im)))))) (pow.f64 y.re 4)) (+.f64 (*.f64 (pow.f64 y.re 3) (+.f64 (*.f64 -1/6 (*.f64 (exp.f64 (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re)))) (pow.f64 (atan2.f64 x.im x.re) 3))) (*.f64 1/2 (*.f64 (exp.f64 (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re)))) (*.f64 (atan2.f64 x.im x.re) (pow.f64 (log.f64 (neg.f64 x.im)) 2)))))) (*.f64 (exp.f64 (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re)))) (*.f64 y.re (atan2.f64 x.im x.re))))))
(*.f64 (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))))
(*.f64 (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))))
(*.f64 (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))))
(*.f64 (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))))
(*.f64 (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))))
(*.f64 (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))))
(*.f64 (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))))
(*.f64 (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 y.im (atan2.f64 x.im x.re)))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 y.im (atan2.f64 x.im x.re)))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 y.im (atan2.f64 x.im x.re)))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 y.im (atan2.f64 x.im x.re)))))
(*.f64 (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))))
(*.f64 (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))))
(*.f64 (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))))
(*.f64 (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))))
(*.f64 (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))))
(*.f64 (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))))
(*.f64 (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))))
(*.f64 (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))))
(*.f64 (pow.f64 (neg.f64 x.im) y.re) (sin.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 (pow.f64 (neg.f64 x.im) y.re) (*.f64 y.im (atan2.f64 x.im x.re))))) (*.f64 (pow.f64 (neg.f64 x.im) y.re) (sin.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 (pow.f64 (neg.f64 x.im) y.re) (*.f64 y.im (atan2.f64 x.im x.re))))) (+.f64 (*.f64 (pow.f64 (neg.f64 x.im) y.re) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))) (*.f64 1/2 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 (pow.f64 (neg.f64 x.im) y.re) (*.f64 (pow.f64 y.im 2) (pow.f64 (atan2.f64 x.im x.re) 2)))))))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 (pow.f64 (neg.f64 x.im) y.re) (*.f64 y.im (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 (neg.f64 x.im) y.re) (*.f64 (pow.f64 y.im 3) (pow.f64 (atan2.f64 x.im x.re) 3))))) (+.f64 (*.f64 (pow.f64 (neg.f64 x.im) y.re) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))) (*.f64 1/2 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 (pow.f64 (neg.f64 x.im) y.re) (*.f64 (pow.f64 y.im 2) (pow.f64 (atan2.f64 x.im x.re) 2))))))))
(*.f64 (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))))
(*.f64 (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))))
(*.f64 (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))))
(*.f64 (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 y.im (atan2.f64 x.im x.re)))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 y.im (atan2.f64 x.im x.re)))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 y.im (atan2.f64 x.im x.re)))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 y.im (atan2.f64 x.im x.re)))))
(+.f64 (*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.im)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))) 0)
(+.f64 0 (*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.im)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))))
(+.f64 (*.f64 (sin.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))) 1/2)) (*.f64 (sin.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))) 1/2)))
(-.f64 (*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.im)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))) 0)
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 (neg.f64 x.im)) y.re))))
(/.f64 (*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.im)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))) 1)
(/.f64 (*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.im)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 2)) 2)
(/.f64 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 2) (*.f64 2 (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 (neg.f64 x.im)) y.re)))))
(/.f64 (*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.im)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 4)) 4)
(/.f64 (*.f64 2 (*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.im)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 4))) 8)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.im)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 4)))) 16)
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.im)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 4)))) (*.f64 2 (*.f64 2 (*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.im)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 4))))) 32)
Outputs
(*.f64 (exp.f64 (-.f64 (*.f64 y.re (+.f64 (log.f64 -1) (log.f64 x.im))) (*.f64 y.im (atan2.f64 x.im x.re)))) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))))
(*.f64 (exp.f64 (-.f64 (*.f64 y.re (+.f64 (log.f64 -1) (log.f64 x.im))) (*.f64 y.im (atan2.f64 x.im x.re)))) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))))
(*.f64 (exp.f64 (-.f64 (*.f64 y.re (+.f64 (log.f64 -1) (log.f64 x.im))) (*.f64 y.im (atan2.f64 x.im x.re)))) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))))
(*.f64 (exp.f64 (-.f64 (*.f64 y.re (+.f64 (log.f64 -1) (log.f64 x.im))) (*.f64 y.im (atan2.f64 x.im x.re)))) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 1 x.im)))) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 1 x.im))))) (*.f64 y.im (atan2.f64 x.im x.re)))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 1 x.im))))) (*.f64 y.im (atan2.f64 x.im x.re)))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 1 x.im)))) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 1 x.im))))) (*.f64 y.im (atan2.f64 x.im x.re)))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 1 x.im))))) (*.f64 y.im (atan2.f64 x.im x.re)))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 1 x.im)))) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 1 x.im))))) (*.f64 y.im (atan2.f64 x.im x.re)))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 1 x.im))))) (*.f64 y.im (atan2.f64 x.im x.re)))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 1 x.im)))) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 1 x.im))))) (*.f64 y.im (atan2.f64 x.im x.re)))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 1 x.im))))) (*.f64 y.im (atan2.f64 x.im x.re)))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 -1 (*.f64 y.re (log.f64 (/.f64 -1 x.im)))) (*.f64 y.im (atan2.f64 x.im x.re)))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (*.f64 (log.f64 (/.f64 -1 x.im)) -1)) (*.f64 y.im (atan2.f64 x.im x.re)))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (neg.f64 (*.f64 y.re (log.f64 (/.f64 -1 x.im)))) (*.f64 y.im (atan2.f64 x.im x.re)))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (log.f64 (/.f64 -1 x.im)) (neg.f64 y.re)) (*.f64 y.im (atan2.f64 x.im x.re)))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (neg.f64 (log.f64 (/.f64 -1 x.im)))) (*.f64 y.im (atan2.f64 x.im x.re)))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 -1 (*.f64 y.re (log.f64 (/.f64 -1 x.im)))) (*.f64 y.im (atan2.f64 x.im x.re)))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (*.f64 (log.f64 (/.f64 -1 x.im)) -1)) (*.f64 y.im (atan2.f64 x.im x.re)))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (neg.f64 (*.f64 y.re (log.f64 (/.f64 -1 x.im)))) (*.f64 y.im (atan2.f64 x.im x.re)))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (log.f64 (/.f64 -1 x.im)) (neg.f64 y.re)) (*.f64 y.im (atan2.f64 x.im x.re)))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (neg.f64 (log.f64 (/.f64 -1 x.im)))) (*.f64 y.im (atan2.f64 x.im x.re)))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 -1 (*.f64 y.re (log.f64 (/.f64 -1 x.im)))) (*.f64 y.im (atan2.f64 x.im x.re)))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (*.f64 (log.f64 (/.f64 -1 x.im)) -1)) (*.f64 y.im (atan2.f64 x.im x.re)))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (neg.f64 (*.f64 y.re (log.f64 (/.f64 -1 x.im)))) (*.f64 y.im (atan2.f64 x.im x.re)))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (log.f64 (/.f64 -1 x.im)) (neg.f64 y.re)) (*.f64 y.im (atan2.f64 x.im x.re)))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (neg.f64 (log.f64 (/.f64 -1 x.im)))) (*.f64 y.im (atan2.f64 x.im x.re)))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 -1 (*.f64 y.re (log.f64 (/.f64 -1 x.im)))) (*.f64 y.im (atan2.f64 x.im x.re)))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (*.f64 (log.f64 (/.f64 -1 x.im)) -1)) (*.f64 y.im (atan2.f64 x.im x.re)))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (neg.f64 (*.f64 y.re (log.f64 (/.f64 -1 x.im)))) (*.f64 y.im (atan2.f64 x.im x.re)))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (log.f64 (/.f64 -1 x.im)) (neg.f64 y.re)) (*.f64 y.im (atan2.f64 x.im x.re)))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (neg.f64 (log.f64 (/.f64 -1 x.im)))) (*.f64 y.im (atan2.f64 x.im x.re)))))
(*.f64 (exp.f64 (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re)))) (*.f64 y.re (atan2.f64 x.im x.re)))
(*.f64 y.re (*.f64 (atan2.f64 x.im x.re) (exp.f64 (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re))))))
(*.f64 y.re (*.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))))
(+.f64 (*.f64 (exp.f64 (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re)))) (*.f64 (pow.f64 y.re 2) (*.f64 (atan2.f64 x.im x.re) (log.f64 (neg.f64 x.im))))) (*.f64 (exp.f64 (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re)))) (*.f64 y.re (atan2.f64 x.im x.re))))
(+.f64 (*.f64 y.re (*.f64 (atan2.f64 x.im x.re) (exp.f64 (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re)))))) (*.f64 (exp.f64 (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re)))) (*.f64 (atan2.f64 x.im x.re) (*.f64 (log.f64 (neg.f64 x.im)) (pow.f64 y.re 2)))))
(*.f64 (exp.f64 (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re)))) (+.f64 (*.f64 (pow.f64 y.re 2) (*.f64 (atan2.f64 x.im x.re) (log.f64 (neg.f64 x.im)))) (*.f64 y.re (atan2.f64 x.im x.re))))
(*.f64 (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))) (*.f64 (atan2.f64 x.im x.re) (+.f64 y.re (*.f64 (pow.f64 y.re 2) (log.f64 (neg.f64 x.im))))))
(*.f64 (atan2.f64 x.im x.re) (*.f64 (+.f64 y.re (*.f64 (pow.f64 y.re 2) (log.f64 (neg.f64 x.im)))) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))))
(+.f64 (*.f64 (exp.f64 (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re)))) (*.f64 (pow.f64 y.re 2) (*.f64 (atan2.f64 x.im x.re) (log.f64 (neg.f64 x.im))))) (+.f64 (*.f64 (pow.f64 y.re 3) (+.f64 (*.f64 -1/6 (*.f64 (exp.f64 (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re)))) (pow.f64 (atan2.f64 x.im x.re) 3))) (*.f64 1/2 (*.f64 (exp.f64 (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re)))) (*.f64 (atan2.f64 x.im x.re) (pow.f64 (log.f64 (neg.f64 x.im)) 2)))))) (*.f64 (exp.f64 (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re)))) (*.f64 y.re (atan2.f64 x.im x.re)))))
(+.f64 (*.f64 (pow.f64 y.re 3) (+.f64 (*.f64 (exp.f64 (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re)))) (*.f64 (pow.f64 (atan2.f64 x.im x.re) 3) -1/6)) (*.f64 (exp.f64 (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re)))) (*.f64 (*.f64 (atan2.f64 x.im x.re) (pow.f64 (log.f64 (neg.f64 x.im)) 2)) 1/2)))) (+.f64 (*.f64 y.re (*.f64 (atan2.f64 x.im x.re) (exp.f64 (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re)))))) (*.f64 (exp.f64 (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re)))) (*.f64 (atan2.f64 x.im x.re) (*.f64 (log.f64 (neg.f64 x.im)) (pow.f64 y.re 2))))))
(+.f64 (*.f64 (exp.f64 (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re)))) (+.f64 (*.f64 (pow.f64 y.re 2) (*.f64 (atan2.f64 x.im x.re) (log.f64 (neg.f64 x.im)))) (*.f64 y.re (atan2.f64 x.im x.re)))) (*.f64 (pow.f64 y.re 3) (+.f64 (*.f64 (exp.f64 (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re)))) (*.f64 -1/6 (pow.f64 (atan2.f64 x.im x.re) 3))) (*.f64 (exp.f64 (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re)))) (*.f64 1/2 (*.f64 (atan2.f64 x.im x.re) (pow.f64 (log.f64 (neg.f64 x.im)) 2)))))))
(+.f64 (*.f64 (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))) (*.f64 (atan2.f64 x.im x.re) (+.f64 y.re (*.f64 (pow.f64 y.re 2) (log.f64 (neg.f64 x.im)))))) (*.f64 (pow.f64 y.re 3) (*.f64 (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))) (+.f64 (*.f64 -1/6 (pow.f64 (atan2.f64 x.im x.re) 3)) (*.f64 (atan2.f64 x.im x.re) (*.f64 (pow.f64 (log.f64 (neg.f64 x.im)) 2) 1/2))))))
(+.f64 (*.f64 (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))) (*.f64 (atan2.f64 x.im x.re) (+.f64 y.re (*.f64 (pow.f64 y.re 2) (log.f64 (neg.f64 x.im)))))) (*.f64 (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))) (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 (atan2.f64 x.im x.re) 3)) (*.f64 (atan2.f64 x.im x.re) (*.f64 1/2 (pow.f64 (log.f64 (neg.f64 x.im)) 2)))) (pow.f64 y.re 3))))
(+.f64 (*.f64 (atan2.f64 x.im x.re) (*.f64 (+.f64 y.re (*.f64 (pow.f64 y.re 2) (log.f64 (neg.f64 x.im)))) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))))) (*.f64 (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))) (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 (atan2.f64 x.im x.re) 3)) (*.f64 (atan2.f64 x.im x.re) (*.f64 1/2 (pow.f64 (log.f64 (neg.f64 x.im)) 2)))) (pow.f64 y.re 3))))
(+.f64 (*.f64 (exp.f64 (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re)))) (*.f64 (pow.f64 y.re 2) (*.f64 (atan2.f64 x.im x.re) (log.f64 (neg.f64 x.im))))) (+.f64 (*.f64 (+.f64 (*.f64 1/6 (*.f64 (exp.f64 (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re)))) (*.f64 (atan2.f64 x.im x.re) (pow.f64 (log.f64 (neg.f64 x.im)) 3)))) (*.f64 -1/6 (*.f64 (exp.f64 (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re)))) (*.f64 (pow.f64 (atan2.f64 x.im x.re) 3) (log.f64 (neg.f64 x.im)))))) (pow.f64 y.re 4)) (+.f64 (*.f64 (pow.f64 y.re 3) (+.f64 (*.f64 -1/6 (*.f64 (exp.f64 (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re)))) (pow.f64 (atan2.f64 x.im x.re) 3))) (*.f64 1/2 (*.f64 (exp.f64 (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re)))) (*.f64 (atan2.f64 x.im x.re) (pow.f64 (log.f64 (neg.f64 x.im)) 2)))))) (*.f64 (exp.f64 (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re)))) (*.f64 y.re (atan2.f64 x.im x.re))))))
(+.f64 (*.f64 (+.f64 (*.f64 (exp.f64 (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re)))) (*.f64 (*.f64 (atan2.f64 x.im x.re) (pow.f64 (log.f64 (neg.f64 x.im)) 3)) 1/6)) (*.f64 (exp.f64 (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re)))) (*.f64 (*.f64 (log.f64 (neg.f64 x.im)) (pow.f64 (atan2.f64 x.im x.re) 3)) -1/6))) (pow.f64 y.re 4)) (+.f64 (*.f64 (pow.f64 y.re 3) (+.f64 (*.f64 (exp.f64 (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re)))) (*.f64 (pow.f64 (atan2.f64 x.im x.re) 3) -1/6)) (*.f64 (exp.f64 (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re)))) (*.f64 (*.f64 (atan2.f64 x.im x.re) (pow.f64 (log.f64 (neg.f64 x.im)) 2)) 1/2)))) (+.f64 (*.f64 y.re (*.f64 (atan2.f64 x.im x.re) (exp.f64 (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re)))))) (*.f64 (exp.f64 (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re)))) (*.f64 (atan2.f64 x.im x.re) (*.f64 (log.f64 (neg.f64 x.im)) (pow.f64 y.re 2)))))))
(+.f64 (*.f64 (pow.f64 y.re 3) (+.f64 (*.f64 (exp.f64 (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re)))) (*.f64 -1/6 (pow.f64 (atan2.f64 x.im x.re) 3))) (*.f64 (exp.f64 (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re)))) (*.f64 1/2 (*.f64 (atan2.f64 x.im x.re) (pow.f64 (log.f64 (neg.f64 x.im)) 2)))))) (+.f64 (*.f64 (exp.f64 (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re)))) (+.f64 (*.f64 (pow.f64 y.re 2) (*.f64 (atan2.f64 x.im x.re) (log.f64 (neg.f64 x.im)))) (*.f64 y.re (atan2.f64 x.im x.re)))) (*.f64 (+.f64 (*.f64 (exp.f64 (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re)))) (*.f64 1/6 (*.f64 (atan2.f64 x.im x.re) (pow.f64 (log.f64 (neg.f64 x.im)) 3)))) (*.f64 (exp.f64 (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re)))) (*.f64 -1/6 (*.f64 (log.f64 (neg.f64 x.im)) (pow.f64 (atan2.f64 x.im x.re) 3))))) (pow.f64 y.re 4))))
(+.f64 (*.f64 (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))) (*.f64 (atan2.f64 x.im x.re) (+.f64 y.re (*.f64 (pow.f64 y.re 2) (log.f64 (neg.f64 x.im)))))) (+.f64 (*.f64 (pow.f64 y.re 3) (*.f64 (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))) (+.f64 (*.f64 -1/6 (pow.f64 (atan2.f64 x.im x.re) 3)) (*.f64 (atan2.f64 x.im x.re) (*.f64 (pow.f64 (log.f64 (neg.f64 x.im)) 2) 1/2))))) (*.f64 (*.f64 (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))) (+.f64 (*.f64 (log.f64 (neg.f64 x.im)) (*.f64 -1/6 (pow.f64 (atan2.f64 x.im x.re) 3))) (*.f64 (atan2.f64 x.im x.re) (*.f64 (pow.f64 (log.f64 (neg.f64 x.im)) 3) 1/6)))) (pow.f64 y.re 4))))
(+.f64 (*.f64 (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))) (*.f64 (atan2.f64 x.im x.re) (+.f64 y.re (*.f64 (pow.f64 y.re 2) (log.f64 (neg.f64 x.im)))))) (+.f64 (*.f64 (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))) (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 (atan2.f64 x.im x.re) 3)) (*.f64 (atan2.f64 x.im x.re) (*.f64 1/2 (pow.f64 (log.f64 (neg.f64 x.im)) 2)))) (pow.f64 y.re 3))) (*.f64 (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))) (*.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.im)) (*.f64 -1/6 (pow.f64 (atan2.f64 x.im x.re) 3))) (*.f64 (atan2.f64 x.im x.re) (*.f64 1/6 (pow.f64 (log.f64 (neg.f64 x.im)) 3)))) (pow.f64 y.re 4)))))
(+.f64 (*.f64 (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))) (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 (atan2.f64 x.im x.re) 3)) (*.f64 (atan2.f64 x.im x.re) (*.f64 1/2 (pow.f64 (log.f64 (neg.f64 x.im)) 2)))) (pow.f64 y.re 3))) (+.f64 (*.f64 (atan2.f64 x.im x.re) (*.f64 (+.f64 y.re (*.f64 (pow.f64 y.re 2) (log.f64 (neg.f64 x.im)))) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))))) (*.f64 (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))) (*.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.im)) (*.f64 -1/6 (pow.f64 (atan2.f64 x.im x.re) 3))) (*.f64 (atan2.f64 x.im x.re) (*.f64 1/6 (pow.f64 (log.f64 (neg.f64 x.im)) 3)))) (pow.f64 y.re 4)))))
(*.f64 (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 y.im (atan2.f64 x.im x.re)))))
(*.f64 (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 y.im (atan2.f64 x.im x.re)))))
(*.f64 (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 y.im (atan2.f64 x.im x.re)))))
(*.f64 (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 y.im (atan2.f64 x.im x.re)))))
(*.f64 (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 y.im (atan2.f64 x.im x.re)))))
(*.f64 (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 y.im (atan2.f64 x.im x.re)))))
(*.f64 (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 y.im (atan2.f64 x.im x.re)))))
(*.f64 (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 y.im (atan2.f64 x.im x.re)))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 y.im (atan2.f64 x.im x.re)))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 y.im (atan2.f64 x.im x.re)))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 y.im (atan2.f64 x.im x.re)))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 y.im (atan2.f64 x.im x.re)))))
(*.f64 (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 y.im (atan2.f64 x.im x.re)))))
(*.f64 (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 y.im (atan2.f64 x.im x.re)))))
(*.f64 (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 y.im (atan2.f64 x.im x.re)))))
(*.f64 (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 y.im (atan2.f64 x.im x.re)))))
(*.f64 (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 y.im (atan2.f64 x.im x.re)))))
(*.f64 (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 y.im (atan2.f64 x.im x.re)))))
(*.f64 (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 y.im (atan2.f64 x.im x.re)))))
(*.f64 (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 y.im (atan2.f64 x.im x.re)))))
(*.f64 (pow.f64 (neg.f64 x.im) y.re) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (pow.f64 (neg.f64 x.im) y.re))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 (pow.f64 (neg.f64 x.im) y.re) (*.f64 y.im (atan2.f64 x.im x.re))))) (*.f64 (pow.f64 (neg.f64 x.im) y.re) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))))
(+.f64 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (pow.f64 (neg.f64 x.im) y.re)) (*.f64 -1 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 y.im (*.f64 (atan2.f64 x.im x.re) (pow.f64 (neg.f64 x.im) y.re))))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (+.f64 (pow.f64 (neg.f64 x.im) y.re) (neg.f64 (*.f64 y.im (*.f64 (atan2.f64 x.im x.re) (pow.f64 (neg.f64 x.im) y.re))))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (+.f64 (pow.f64 (neg.f64 x.im) y.re) (*.f64 y.im (neg.f64 (*.f64 (atan2.f64 x.im x.re) (pow.f64 (neg.f64 x.im) y.re))))))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 (pow.f64 (neg.f64 x.im) y.re) (*.f64 y.im (atan2.f64 x.im x.re))))) (+.f64 (*.f64 (pow.f64 (neg.f64 x.im) y.re) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))) (*.f64 1/2 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 (pow.f64 (neg.f64 x.im) y.re) (*.f64 (pow.f64 y.im 2) (pow.f64 (atan2.f64 x.im x.re) 2)))))))
(+.f64 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (pow.f64 (neg.f64 x.im) y.re)) (+.f64 (*.f64 1/2 (*.f64 (pow.f64 (neg.f64 x.im) y.re) (*.f64 (*.f64 (pow.f64 y.im 2) (pow.f64 (atan2.f64 x.im x.re) 2)) (sin.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 (*.f64 (atan2.f64 x.im x.re) (pow.f64 (neg.f64 x.im) y.re)))))))
(+.f64 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 1/2 (*.f64 (pow.f64 (neg.f64 x.im) y.re) (*.f64 (pow.f64 y.im 2) (pow.f64 (atan2.f64 x.im x.re) 2))))) (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (+.f64 (pow.f64 (neg.f64 x.im) y.re) (neg.f64 (*.f64 y.im (*.f64 (atan2.f64 x.im x.re) (pow.f64 (neg.f64 x.im) y.re)))))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (+.f64 (neg.f64 (*.f64 y.im (*.f64 (atan2.f64 x.im x.re) (pow.f64 (neg.f64 x.im) y.re)))) (+.f64 (pow.f64 (neg.f64 x.im) y.re) (*.f64 1/2 (*.f64 (pow.f64 (neg.f64 x.im) y.re) (*.f64 (pow.f64 y.im 2) (pow.f64 (atan2.f64 x.im x.re) 2)))))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (+.f64 (*.f64 y.im (neg.f64 (*.f64 (atan2.f64 x.im x.re) (pow.f64 (neg.f64 x.im) y.re)))) (+.f64 (pow.f64 (neg.f64 x.im) y.re) (*.f64 (pow.f64 (atan2.f64 x.im x.re) 2) (*.f64 1/2 (*.f64 (pow.f64 (neg.f64 x.im) y.re) (pow.f64 y.im 2)))))))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 (pow.f64 (neg.f64 x.im) y.re) (*.f64 y.im (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 (neg.f64 x.im) y.re) (*.f64 (pow.f64 y.im 3) (pow.f64 (atan2.f64 x.im x.re) 3))))) (+.f64 (*.f64 (pow.f64 (neg.f64 x.im) y.re) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))) (*.f64 1/2 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 (pow.f64 (neg.f64 x.im) y.re) (*.f64 (pow.f64 y.im 2) (pow.f64 (atan2.f64 x.im x.re) 2))))))))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 y.im (*.f64 (atan2.f64 x.im x.re) (pow.f64 (neg.f64 x.im) y.re))))) (+.f64 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (pow.f64 (neg.f64 x.im) y.re)) (+.f64 (*.f64 1/2 (*.f64 (pow.f64 (neg.f64 x.im) y.re) (*.f64 (*.f64 (pow.f64 y.im 2) (pow.f64 (atan2.f64 x.im x.re) 2)) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))))) (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 (*.f64 (pow.f64 (neg.f64 x.im) y.re) (*.f64 (pow.f64 (atan2.f64 x.im x.re) 3) (pow.f64 y.im 3))) -1/6)))))
(+.f64 (+.f64 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 1/2 (*.f64 (pow.f64 (neg.f64 x.im) y.re) (*.f64 (pow.f64 y.im 2) (pow.f64 (atan2.f64 x.im x.re) 2))))) (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (+.f64 (pow.f64 (neg.f64 x.im) y.re) (neg.f64 (*.f64 y.im (*.f64 (atan2.f64 x.im x.re) (pow.f64 (neg.f64 x.im) y.re))))))) (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 -1/6 (*.f64 (pow.f64 (atan2.f64 x.im x.re) 3) (*.f64 (pow.f64 y.im 3) (pow.f64 (neg.f64 x.im) y.re))))))
(+.f64 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (+.f64 (neg.f64 (*.f64 y.im (*.f64 (atan2.f64 x.im x.re) (pow.f64 (neg.f64 x.im) y.re)))) (*.f64 1/2 (*.f64 (pow.f64 (neg.f64 x.im) y.re) (*.f64 (pow.f64 y.im 2) (pow.f64 (atan2.f64 x.im x.re) 2)))))) (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 (atan2.f64 x.im x.re) 3) (*.f64 (pow.f64 (neg.f64 x.im) y.re) (pow.f64 y.im 3)))) (pow.f64 (neg.f64 x.im) y.re))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 (atan2.f64 x.im x.re) 3) (*.f64 (pow.f64 (neg.f64 x.im) y.re) (pow.f64 y.im 3)))) (+.f64 (*.f64 y.im (neg.f64 (*.f64 (atan2.f64 x.im x.re) (pow.f64 (neg.f64 x.im) y.re)))) (+.f64 (pow.f64 (neg.f64 x.im) y.re) (*.f64 (pow.f64 (atan2.f64 x.im x.re) 2) (*.f64 1/2 (*.f64 (pow.f64 (neg.f64 x.im) y.re) (pow.f64 y.im 2))))))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (+.f64 (pow.f64 (neg.f64 x.im) y.re) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 (atan2.f64 x.im x.re) 3) (*.f64 (pow.f64 (neg.f64 x.im) y.re) (pow.f64 y.im 3)))) (+.f64 (*.f64 y.im (neg.f64 (*.f64 (atan2.f64 x.im x.re) (pow.f64 (neg.f64 x.im) y.re)))) (*.f64 (pow.f64 (atan2.f64 x.im x.re) 2) (*.f64 1/2 (*.f64 (pow.f64 (neg.f64 x.im) y.re) (pow.f64 y.im 2))))))))
(*.f64 (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 y.im (atan2.f64 x.im x.re)))))
(*.f64 (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 y.im (atan2.f64 x.im x.re)))))
(*.f64 (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 y.im (atan2.f64 x.im x.re)))))
(*.f64 (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 y.im (atan2.f64 x.im x.re)))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 y.im (atan2.f64 x.im x.re)))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 y.im (atan2.f64 x.im x.re)))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 y.im (atan2.f64 x.im x.re)))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 y.im (atan2.f64 x.im x.re)))))
(+.f64 (*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.im)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))) 0)
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 y.im (atan2.f64 x.im x.re)))))
(+.f64 0 (*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.im)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 y.im (atan2.f64 x.im x.re)))))
(+.f64 (*.f64 (sin.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))) 1/2)) (*.f64 (sin.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))) 1/2)))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 y.im (atan2.f64 x.im x.re)))))
(-.f64 (*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.im)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))) 0)
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 y.im (atan2.f64 x.im x.re)))))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 (neg.f64 x.im)) y.re))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 y.im (atan2.f64 x.im x.re)))))
(/.f64 (*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.im)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))) 1)
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 y.im (atan2.f64 x.im x.re)))))
(/.f64 (*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.im)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 2)) 2)
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 y.im (atan2.f64 x.im x.re)))))
(/.f64 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 2) (*.f64 2 (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 (neg.f64 x.im)) y.re)))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 y.im (atan2.f64 x.im x.re)))))
(/.f64 (*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.im)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 4)) 4)
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 y.im (atan2.f64 x.im x.re)))))
(/.f64 (*.f64 2 (*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.im)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 4))) 8)
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 y.im (atan2.f64 x.im x.re)))))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.im)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 4)))) 16)
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 y.im (atan2.f64 x.im x.re)))))
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.im)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 4)))) (*.f64 2 (*.f64 2 (*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.im)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 4))))) 32)
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 y.im (atan2.f64 x.im x.re)))))

localize21.0ms (0%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(*.f64 (log.f64 x.im) y.im)
1.2b
(*.f64 (atan2.f64 x.im x.re) y.re)
2.2b
(*.f64 (atan2.f64 x.im x.re) y.im)
16.7b
(sin.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))
Compiler

Compiled 96 to 15 computations (84.4% saved)

series96.0ms (0.2%)

Counts
1 → 8
Calls

6 calls:

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

rewrite1.1s (2.1%)

Algorithm
batch-egg-rewrite
Rules
1622×bool.json-1
1622×bool.json-2
1588×rational.json-1
1588×rational.json-2
1140×rational.json-simplify-2
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0711
16911
219411
340311
480911
5173911
6371311
7667211
Stop Event
node limit
Counts
1 → 11
Calls
Call 1
Inputs
(*.f64 (log.f64 x.im) y.im)
Outputs
((#(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 (*.f64 (log.f64 x.im) (*.f64 y.im 1/2)) (*.f64 (log.f64 x.im) (*.f64 y.im 1/2)))))) (#(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 (log.f64 x.im) (*.f64 y.im 4)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 y.im 8) (log.f64 x.im)) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (*.f64 y.im 8) (log.f64 x.im))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y.im 8) (log.f64 x.im)))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y.im 8) (log.f64 x.im)))) (*.f64 2 (*.f64 2 (*.f64 (*.f64 y.im 8) (log.f64 x.im))))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x not (not (*.f64 (log.f64 x.im) y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x and (*.f64 (log.f64 x.im) y.im) (*.f64 (log.f64 x.im) y.im))))) (#(struct:change #<rule egg-rr> (2) ((x or (*.f64 (log.f64 x.im) y.im) (*.f64 (log.f64 x.im) y.im))))))

simplify1.0s (1.9%)

Algorithm
egg-herbie
Rules
8546×rational.json-simplify-41
4032×rational.json-simplify-35
2884×rational.json-simplify-2
1812×rational.json-simplify-53
762×rational.json-simplify-1
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
049345
1111329
2216329
3452329
41365329
52657329
63621329
73800329
83931329
94059329
104184329
114309329
124865329
135008329
145066329
155066329
165191329
175316329
185441329
195566329
205691329
215959329
226285329
236463329
246613329
256742329
266867329
276867329
287173329
297173329
Stop Event
node limit
Counts
19 → 17
Calls
Call 1
Inputs
(*.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 (*.f64 (log.f64 x.im) y.im) 0)
(+.f64 0 (*.f64 (log.f64 x.im) y.im))
(+.f64 (*.f64 (log.f64 x.im) (*.f64 y.im 1/2)) (*.f64 (log.f64 x.im) (*.f64 y.im 1/2)))
(-.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 (log.f64 x.im) (*.f64 y.im 4)) 4)
(/.f64 (*.f64 (*.f64 y.im 8) (log.f64 x.im)) 8)
(/.f64 (*.f64 2 (*.f64 (*.f64 y.im 8) (log.f64 x.im))) 16)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y.im 8) (log.f64 x.im)))) 32)
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y.im 8) (log.f64 x.im)))) (*.f64 2 (*.f64 2 (*.f64 (*.f64 y.im 8) (log.f64 x.im))))) 64)
Outputs
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.im)) y.im))
(*.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)) (neg.f64 y.im))
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.im)) y.im))
(*.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)) (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 (*.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 (*.f64 (log.f64 x.im) (*.f64 y.im 1/2)) (*.f64 (log.f64 x.im) (*.f64 y.im 1/2)))
(*.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 (log.f64 x.im) (*.f64 y.im 4)) 4)
(*.f64 y.im (log.f64 x.im))
(/.f64 (*.f64 (*.f64 y.im 8) (log.f64 x.im)) 8)
(*.f64 y.im (log.f64 x.im))
(/.f64 (*.f64 2 (*.f64 (*.f64 y.im 8) (log.f64 x.im))) 16)
(*.f64 y.im (log.f64 x.im))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y.im 8) (log.f64 x.im)))) 32)
(*.f64 y.im (log.f64 x.im))
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 y.im 8) (log.f64 x.im)))) (*.f64 2 (*.f64 2 (*.f64 (*.f64 y.im 8) (log.f64 x.im))))) 64)
(*.f64 y.im (log.f64 x.im))

localize29.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(*.f64 (log.f64 (neg.f64 x.re)) y.im)
1.2b
(*.f64 (atan2.f64 x.im x.re) y.re)
2.2b
(*.f64 (atan2.f64 x.im x.re) y.im)
14.6b
(sin.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))
Compiler

Compiled 105 to 17 computations (83.8% saved)

series1.1s (2%)

Counts
2 → 72
Calls

18 calls:

TimeVariablePointExpression
972.0ms
y.im
@-inf
(sin.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))
75.0ms
x.re
@0
(sin.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))
12.0ms
y.im
@0
(*.f64 (log.f64 (neg.f64 x.re)) y.im)
12.0ms
x.im
@0
(sin.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))
8.0ms
x.re
@inf
(sin.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))

rewrite74.0ms (0.1%)

Algorithm
batch-egg-rewrite
Rules
1246×bool.json-1
1246×bool.json-2
1208×rational.json-1
1208×rational.json-2
1208×rational.json-4
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01452
114252
238052
379952
4174352
5405052
Stop Event
node limit
Counts
2 → 43
Calls
Call 1
Inputs
(sin.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))
(*.f64 (log.f64 (neg.f64 x.re)) y.im)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (sin.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (sin.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 -1 (-.f64 1 (neg.f64 (sin.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 -1 (-.f64 1 (sin.f64 (neg.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 1/2) (*.f64 (sin.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 1 (neg.f64 (sin.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (sin.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (neg.f64 (sin.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (sin.f64 (neg.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (sin.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (neg.f64 (sin.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (sin.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (/.f64 (sin.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) 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 (sin.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 1/2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (sin.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 (sin.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 (neg.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sin.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (sin.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 4)) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (sin.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (sin.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 4))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sin.f64 (neg.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (neg.f64 (sin.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))) (neg.f64 (sin.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))))) -2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (sin.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 4))) (*.f64 2 (*.f64 2 (*.f64 (sin.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 4)))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (neg.f64 (sin.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (sin.f64 (neg.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))))))) (#(struct:change #<rule egg-rr> (2) ((x not (not (sin.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))))))) (#(struct:change #<rule egg-rr> (2) ((x and (sin.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) (sin.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))))))) (#(struct:change #<rule egg-rr> (2) ((x or (sin.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) (sin.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (log.f64 (neg.f64 x.re)) y.im))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (log.f64 (neg.f64 x.re)) (*.f64 y.im 1/2)) (*.f64 (log.f64 (neg.f64 x.re)) (*.f64 y.im 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (log.f64 (neg.f64 x.re)) (+.f64 y.im y.im)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (log.f64 (neg.f64 x.re)) (*.f64 y.im 4)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (log.f64 (neg.f64 x.re)) (*.f64 y.im 4))) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (log.f64 (neg.f64 x.re)) (*.f64 y.im 4)))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (log.f64 (neg.f64 x.re)) (*.f64 y.im 4)))) (*.f64 2 (*.f64 2 (*.f64 (log.f64 (neg.f64 x.re)) (*.f64 y.im 4))))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x not (not (*.f64 (log.f64 (neg.f64 x.re)) y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x and (*.f64 (log.f64 (neg.f64 x.re)) y.im) (*.f64 (log.f64 (neg.f64 x.re)) y.im))))) (#(struct:change #<rule egg-rr> (2) ((x or (*.f64 (log.f64 (neg.f64 x.re)) y.im) (*.f64 (log.f64 (neg.f64 x.re)) y.im))))))

simplify1.2s (2.2%)

Algorithm
egg-herbie
Rules
1866×rational.json-simplify-35
1204×rational.json-simplify-26
1172×rational.json-simplify-2
888×rational.json-simplify-48
850×rational.json-simplify-1
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01554223
13394191
27364191
316994145
429874145
540254145
658014145
767674145
874454145
Stop Event
node limit
Counts
115 → 87
Calls
Call 1
Inputs
(sin.f64 (+.f64 (*.f64 (+.f64 (log.f64 -1) (log.f64 x.re)) y.im) (*.f64 y.re (atan2.f64 x.im x.re))))
(sin.f64 (+.f64 (*.f64 (+.f64 (log.f64 -1) (log.f64 x.re)) y.im) (*.f64 y.re (atan2.f64 x.im x.re))))
(sin.f64 (+.f64 (*.f64 (+.f64 (log.f64 -1) (log.f64 x.re)) y.im) (*.f64 y.re (atan2.f64 x.im x.re))))
(sin.f64 (+.f64 (*.f64 (+.f64 (log.f64 -1) (log.f64 x.re)) y.im) (*.f64 y.re (atan2.f64 x.im x.re))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 1 x.re))) (log.f64 -1)) y.im)))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 1 x.re))) (log.f64 -1)) y.im)))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 1 x.re))) (log.f64 -1)) y.im)))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 1 x.re))) (log.f64 -1)) 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))))
(sin.f64 (+.f64 (*.f64 -1 (*.f64 y.im (log.f64 (/.f64 -1 x.re)))) (*.f64 y.re (atan2.f64 x.im x.re))))
(sin.f64 (+.f64 (*.f64 -1 (*.f64 y.im (log.f64 (/.f64 -1 x.re)))) (*.f64 y.re (atan2.f64 x.im x.re))))
(sin.f64 (+.f64 (*.f64 -1 (*.f64 y.im (log.f64 (/.f64 -1 x.re)))) (*.f64 y.re (atan2.f64 x.im x.re))))
(sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))
(+.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 y.im (*.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (log.f64 (neg.f64 x.re)))))
(+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 (pow.f64 y.im 2) (pow.f64 (log.f64 (neg.f64 x.re)) 2)))) (+.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 y.im (*.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (log.f64 (neg.f64 x.re))))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 y.im 3) (*.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (pow.f64 (log.f64 (neg.f64 x.re)) 3)))) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 (pow.f64 y.im 2) (pow.f64 (log.f64 (neg.f64 x.re)) 2)))) (+.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 y.im (*.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (log.f64 (neg.f64 x.re)))))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (neg.f64 x.re)))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (neg.f64 x.re)))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (neg.f64 x.re)))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (neg.f64 x.re)))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (neg.f64 x.re)))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (neg.f64 x.re)))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (neg.f64 x.re)))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (neg.f64 x.re)))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (neg.f64 x.re)))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (neg.f64 x.re)))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (neg.f64 x.re)))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (neg.f64 x.re)))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (neg.f64 x.re)))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (neg.f64 x.re)))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (neg.f64 x.re)))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (neg.f64 x.re)))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (neg.f64 x.re)))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (neg.f64 x.re)))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (neg.f64 x.re)))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (neg.f64 x.re)))))
(sin.f64 (*.f64 y.im (log.f64 (neg.f64 x.re))))
(+.f64 (*.f64 y.re (*.f64 (atan2.f64 x.im x.re) (cos.f64 (*.f64 y.im (log.f64 (neg.f64 x.re)))))) (sin.f64 (*.f64 y.im (log.f64 (neg.f64 x.re)))))
(+.f64 (*.f64 y.re (*.f64 (atan2.f64 x.im x.re) (cos.f64 (*.f64 y.im (log.f64 (neg.f64 x.re)))))) (+.f64 (sin.f64 (*.f64 y.im (log.f64 (neg.f64 x.re)))) (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 y.im (log.f64 (neg.f64 x.re)))) (*.f64 (pow.f64 y.re 2) (pow.f64 (atan2.f64 x.im x.re) 2))))))
(+.f64 (*.f64 y.re (*.f64 (atan2.f64 x.im x.re) (cos.f64 (*.f64 y.im (log.f64 (neg.f64 x.re)))))) (+.f64 (sin.f64 (*.f64 y.im (log.f64 (neg.f64 x.re)))) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 y.im (log.f64 (neg.f64 x.re)))) (*.f64 (pow.f64 y.re 2) (pow.f64 (atan2.f64 x.im x.re) 2)))) (*.f64 -1/6 (*.f64 (pow.f64 y.re 3) (*.f64 (pow.f64 (atan2.f64 x.im x.re) 3) (cos.f64 (*.f64 y.im (log.f64 (neg.f64 x.re))))))))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (neg.f64 x.re)))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (neg.f64 x.re)))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (neg.f64 x.re)))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (neg.f64 x.re)))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (neg.f64 x.re)))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (neg.f64 x.re)))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (neg.f64 x.re)))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (neg.f64 x.re)))))
(*.f64 (+.f64 (log.f64 -1) (log.f64 x.re)) y.im)
(*.f64 (+.f64 (log.f64 -1) (log.f64 x.re)) y.im)
(*.f64 (+.f64 (log.f64 -1) (log.f64 x.re)) y.im)
(*.f64 (+.f64 (log.f64 -1) (log.f64 x.re)) y.im)
(*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 1 x.re))) (log.f64 -1)) y.im)
(*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 1 x.re))) (log.f64 -1)) y.im)
(*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 1 x.re))) (log.f64 -1)) y.im)
(*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 1 x.re))) (log.f64 -1)) y.im)
(*.f64 -1 (*.f64 (log.f64 (/.f64 -1 x.re)) y.im))
(*.f64 -1 (*.f64 (log.f64 (/.f64 -1 x.re)) y.im))
(*.f64 -1 (*.f64 (log.f64 (/.f64 -1 x.re)) y.im))
(*.f64 -1 (*.f64 (log.f64 (/.f64 -1 x.re)) y.im))
(*.f64 y.im (log.f64 (neg.f64 x.re)))
(*.f64 y.im (log.f64 (neg.f64 x.re)))
(*.f64 y.im (log.f64 (neg.f64 x.re)))
(*.f64 y.im (log.f64 (neg.f64 x.re)))
(*.f64 y.im (log.f64 (neg.f64 x.re)))
(*.f64 y.im (log.f64 (neg.f64 x.re)))
(*.f64 y.im (log.f64 (neg.f64 x.re)))
(*.f64 y.im (log.f64 (neg.f64 x.re)))
(*.f64 y.im (log.f64 (neg.f64 x.re)))
(*.f64 y.im (log.f64 (neg.f64 x.re)))
(*.f64 y.im (log.f64 (neg.f64 x.re)))
(*.f64 y.im (log.f64 (neg.f64 x.re)))
(+.f64 (sin.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 0)
(+.f64 0 (sin.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))))
(+.f64 -1 (-.f64 1 (neg.f64 (sin.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))))))
(+.f64 -1 (-.f64 1 (sin.f64 (neg.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))))))
(+.f64 (*.f64 (sin.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 1/2) (*.f64 (sin.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 1/2))
(+.f64 (-.f64 1 (neg.f64 (sin.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))))) -1)
(-.f64 (sin.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 0)
(-.f64 0 (neg.f64 (sin.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))))
(-.f64 0 (sin.f64 (neg.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))))
(*.f64 (sin.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 1)
(*.f64 1 (sin.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))))
(*.f64 -1 (neg.f64 (sin.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))))
(*.f64 2 (*.f64 (sin.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 1/2))
(*.f64 (*.f64 (sin.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 2) 1/2)
(*.f64 4 (/.f64 (sin.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 4))
(*.f64 (*.f64 (sin.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 4) 1/4)
(*.f64 1/2 (*.f64 (sin.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 2))
(*.f64 (*.f64 (sin.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 1/2) 2)
(*.f64 (neg.f64 (sin.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))) -1)
(*.f64 1/4 (*.f64 (sin.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 4))
(*.f64 (/.f64 (sin.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 4) 4)
(*.f64 (sin.f64 (neg.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))) -1)
(/.f64 (sin.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 1)
(/.f64 (*.f64 (sin.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 2) 2)
(/.f64 (*.f64 (sin.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 4) 4)
(/.f64 (*.f64 2 (*.f64 (sin.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 4)) 8)
(/.f64 (neg.f64 (sin.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))) -1)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (sin.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 4))) 16)
(/.f64 (sin.f64 (neg.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))) -1)
(/.f64 (+.f64 (neg.f64 (sin.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))) (neg.f64 (sin.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))))) -2)
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (sin.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 4))) (*.f64 2 (*.f64 2 (*.f64 (sin.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 4)))) 32)
(neg.f64 (neg.f64 (sin.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))))
(neg.f64 (sin.f64 (neg.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))))
(+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) 0)
(+.f64 0 (*.f64 (log.f64 (neg.f64 x.re)) y.im))
(+.f64 (*.f64 (log.f64 (neg.f64 x.re)) (*.f64 y.im 1/2)) (*.f64 (log.f64 (neg.f64 x.re)) (*.f64 y.im 1/2)))
(-.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) 0)
(/.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) 1)
(/.f64 (*.f64 (log.f64 (neg.f64 x.re)) (+.f64 y.im y.im)) 2)
(/.f64 (*.f64 (log.f64 (neg.f64 x.re)) (*.f64 y.im 4)) 4)
(/.f64 (*.f64 2 (*.f64 (log.f64 (neg.f64 x.re)) (*.f64 y.im 4))) 8)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (log.f64 (neg.f64 x.re)) (*.f64 y.im 4)))) 16)
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (log.f64 (neg.f64 x.re)) (*.f64 y.im 4)))) (*.f64 2 (*.f64 2 (*.f64 (log.f64 (neg.f64 x.re)) (*.f64 y.im 4))))) 32)
Outputs
(sin.f64 (+.f64 (*.f64 (+.f64 (log.f64 -1) (log.f64 x.re)) y.im) (*.f64 y.re (atan2.f64 x.im x.re))))
(sin.f64 (+.f64 (*.f64 (+.f64 (log.f64 -1) (log.f64 x.re)) y.im) (*.f64 y.re (atan2.f64 x.im x.re))))
(sin.f64 (+.f64 (*.f64 (+.f64 (log.f64 -1) (log.f64 x.re)) y.im) (*.f64 y.re (atan2.f64 x.im x.re))))
(sin.f64 (+.f64 (*.f64 (+.f64 (log.f64 -1) (log.f64 x.re)) y.im) (*.f64 y.re (atan2.f64 x.im x.re))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 1 x.re))) (log.f64 -1)) y.im)))
(sin.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.re)))))))
(sin.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.re)))))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 1 x.re))) (log.f64 -1)) y.im)))
(sin.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.re)))))))
(sin.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.re)))))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 1 x.re))) (log.f64 -1)) y.im)))
(sin.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.re)))))))
(sin.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.re)))))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 1 x.re))) (log.f64 -1)) y.im)))
(sin.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.re)))))))
(sin.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.re)))))))
(sin.f64 (+.f64 (*.f64 -1 (*.f64 y.im (log.f64 (/.f64 -1 x.re)))) (*.f64 y.re (atan2.f64 x.im x.re))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 -1 x.re)) (*.f64 y.im -1))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (neg.f64 (log.f64 (/.f64 -1 x.re))))))
(sin.f64 (+.f64 (*.f64 -1 (*.f64 y.im (log.f64 (/.f64 -1 x.re)))) (*.f64 y.re (atan2.f64 x.im x.re))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 -1 x.re)) (*.f64 y.im -1))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (neg.f64 (log.f64 (/.f64 -1 x.re))))))
(sin.f64 (+.f64 (*.f64 -1 (*.f64 y.im (log.f64 (/.f64 -1 x.re)))) (*.f64 y.re (atan2.f64 x.im x.re))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 -1 x.re)) (*.f64 y.im -1))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (neg.f64 (log.f64 (/.f64 -1 x.re))))))
(sin.f64 (+.f64 (*.f64 -1 (*.f64 y.im (log.f64 (/.f64 -1 x.re)))) (*.f64 y.re (atan2.f64 x.im x.re))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 -1 x.re)) (*.f64 y.im -1))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (neg.f64 (log.f64 (/.f64 -1 x.re))))))
(sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))
(+.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 y.im (*.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (log.f64 (neg.f64 x.re)))))
(+.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 y.im (log.f64 (neg.f64 x.re)))))
(+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 (pow.f64 y.im 2) (pow.f64 (log.f64 (neg.f64 x.re)) 2)))) (+.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 y.im (*.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (log.f64 (neg.f64 x.re))))))
(+.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (+.f64 (*.f64 y.im (*.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (log.f64 (neg.f64 x.re)))) (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 (*.f64 (pow.f64 y.im 2) (pow.f64 (log.f64 (neg.f64 x.re)) 2)) -1/2))))
(+.f64 (+.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 y.im (log.f64 (neg.f64 x.re))))) (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 -1/2 (*.f64 (pow.f64 y.im 2) (pow.f64 (log.f64 (neg.f64 x.re)) 2)))))
(+.f64 (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 y.im (log.f64 (neg.f64 x.re)))) (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 (pow.f64 y.im 2) (*.f64 (pow.f64 (log.f64 (neg.f64 x.re)) 2) -1/2)))))
(+.f64 (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 y.im (log.f64 (neg.f64 x.re)))) (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 (pow.f64 y.im 2) (*.f64 -1/2 (pow.f64 (log.f64 (neg.f64 x.re)) 2))))))
(+.f64 (*.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 y.im (log.f64 (neg.f64 x.re)))) (+.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 -1/2 (*.f64 (pow.f64 y.im 2) (pow.f64 (log.f64 (neg.f64 x.re)) 2))))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 y.im 3) (*.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (pow.f64 (log.f64 (neg.f64 x.re)) 3)))) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 (pow.f64 y.im 2) (pow.f64 (log.f64 (neg.f64 x.re)) 2)))) (+.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 y.im (*.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (log.f64 (neg.f64 x.re)))))))
(+.f64 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 (*.f64 (pow.f64 y.im 2) (pow.f64 (log.f64 (neg.f64 x.re)) 2)) -1/2)) (+.f64 (+.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 y.im (*.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (log.f64 (neg.f64 x.re))))) (*.f64 -1/6 (*.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 (pow.f64 (log.f64 (neg.f64 x.re)) 3) (pow.f64 y.im 3))))))
(+.f64 (+.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 y.im (log.f64 (neg.f64 x.re))))) (+.f64 (*.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 (*.f64 (pow.f64 y.im 3) (pow.f64 (log.f64 (neg.f64 x.re)) 3)) -1/6)) (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 -1/2 (*.f64 (pow.f64 y.im 2) (pow.f64 (log.f64 (neg.f64 x.re)) 2))))))
(+.f64 (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 (pow.f64 y.im 3) (pow.f64 (log.f64 (neg.f64 x.re)) 3)))) (+.f64 (*.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 y.im (log.f64 (neg.f64 x.re)))) (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 (pow.f64 y.im 2) (*.f64 (pow.f64 (log.f64 (neg.f64 x.re)) 2) -1/2))))))
(+.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (+.f64 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 (pow.f64 y.im 2) (*.f64 -1/2 (pow.f64 (log.f64 (neg.f64 x.re)) 2)))) (*.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 y.im 3) (pow.f64 (log.f64 (neg.f64 x.re)) 3))) (*.f64 y.im (log.f64 (neg.f64 x.re)))))))
(+.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (+.f64 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 (pow.f64 y.im 2) (*.f64 -1/2 (pow.f64 (log.f64 (neg.f64 x.re)) 2)))) (*.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (+.f64 (*.f64 y.im (log.f64 (neg.f64 x.re))) (*.f64 -1/6 (*.f64 (pow.f64 y.im 3) (pow.f64 (log.f64 (neg.f64 x.re)) 3)))))))
(+.f64 (+.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 -1/2 (*.f64 (pow.f64 y.im 2) (pow.f64 (log.f64 (neg.f64 x.re)) 2))))) (*.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (+.f64 (*.f64 y.im (log.f64 (neg.f64 x.re))) (*.f64 -1/6 (*.f64 (pow.f64 y.im 3) (pow.f64 (log.f64 (neg.f64 x.re)) 3))))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (neg.f64 x.re)))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (neg.f64 x.re)))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (neg.f64 x.re)))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (neg.f64 x.re)))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (neg.f64 x.re)))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (neg.f64 x.re)))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (neg.f64 x.re)))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (neg.f64 x.re)))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (neg.f64 x.re)))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (neg.f64 x.re)))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (neg.f64 x.re)))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (neg.f64 x.re)))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (neg.f64 x.re)))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (neg.f64 x.re)))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (neg.f64 x.re)))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (neg.f64 x.re)))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (neg.f64 x.re)))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (neg.f64 x.re)))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (neg.f64 x.re)))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (neg.f64 x.re)))))
(sin.f64 (*.f64 y.im (log.f64 (neg.f64 x.re))))
(+.f64 (*.f64 y.re (*.f64 (atan2.f64 x.im x.re) (cos.f64 (*.f64 y.im (log.f64 (neg.f64 x.re)))))) (sin.f64 (*.f64 y.im (log.f64 (neg.f64 x.re)))))
(+.f64 (sin.f64 (*.f64 y.im (log.f64 (neg.f64 x.re)))) (*.f64 y.re (*.f64 (atan2.f64 x.im x.re) (cos.f64 (*.f64 y.im (log.f64 (neg.f64 x.re)))))))
(+.f64 (sin.f64 (*.f64 y.im (log.f64 (neg.f64 x.re)))) (*.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (cos.f64 (*.f64 y.im (log.f64 (neg.f64 x.re))))))
(+.f64 (*.f64 y.re (*.f64 (atan2.f64 x.im x.re) (cos.f64 (*.f64 y.im (log.f64 (neg.f64 x.re)))))) (+.f64 (sin.f64 (*.f64 y.im (log.f64 (neg.f64 x.re)))) (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 y.im (log.f64 (neg.f64 x.re)))) (*.f64 (pow.f64 y.re 2) (pow.f64 (atan2.f64 x.im x.re) 2))))))
(+.f64 (*.f64 y.re (*.f64 (atan2.f64 x.im x.re) (cos.f64 (*.f64 y.im (log.f64 (neg.f64 x.re)))))) (+.f64 (sin.f64 (*.f64 y.im (log.f64 (neg.f64 x.re)))) (*.f64 (sin.f64 (*.f64 y.im (log.f64 (neg.f64 x.re)))) (*.f64 (*.f64 (pow.f64 y.re 2) (pow.f64 (atan2.f64 x.im x.re) 2)) -1/2))))
(+.f64 (+.f64 (sin.f64 (*.f64 y.im (log.f64 (neg.f64 x.re)))) (*.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (cos.f64 (*.f64 y.im (log.f64 (neg.f64 x.re)))))) (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 y.im (log.f64 (neg.f64 x.re)))) (*.f64 (pow.f64 y.re 2) (pow.f64 (atan2.f64 x.im x.re) 2)))))
(+.f64 (*.f64 y.re (*.f64 (atan2.f64 x.im x.re) (cos.f64 (*.f64 y.im (log.f64 (neg.f64 x.re)))))) (+.f64 (sin.f64 (*.f64 y.im (log.f64 (neg.f64 x.re)))) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 y.im (log.f64 (neg.f64 x.re)))) (*.f64 (pow.f64 y.re 2) (pow.f64 (atan2.f64 x.im x.re) 2)))) (*.f64 -1/6 (*.f64 (pow.f64 y.re 3) (*.f64 (pow.f64 (atan2.f64 x.im x.re) 3) (cos.f64 (*.f64 y.im (log.f64 (neg.f64 x.re))))))))))
(+.f64 (sin.f64 (*.f64 y.im (log.f64 (neg.f64 x.re)))) (+.f64 (+.f64 (*.f64 (sin.f64 (*.f64 y.im (log.f64 (neg.f64 x.re)))) (*.f64 (*.f64 (pow.f64 y.re 2) (pow.f64 (atan2.f64 x.im x.re) 2)) -1/2)) (*.f64 -1/6 (*.f64 (pow.f64 (atan2.f64 x.im x.re) 3) (*.f64 (cos.f64 (*.f64 y.im (log.f64 (neg.f64 x.re)))) (pow.f64 y.re 3))))) (*.f64 y.re (*.f64 (atan2.f64 x.im x.re) (cos.f64 (*.f64 y.im (log.f64 (neg.f64 x.re))))))))
(+.f64 (*.f64 y.re (*.f64 (atan2.f64 x.im x.re) (cos.f64 (*.f64 y.im (log.f64 (neg.f64 x.re)))))) (+.f64 (sin.f64 (*.f64 y.im (log.f64 (neg.f64 x.re)))) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 y.im (log.f64 (neg.f64 x.re)))) (*.f64 (pow.f64 y.re 2) (pow.f64 (atan2.f64 x.im x.re) 2)))) (*.f64 -1/6 (*.f64 (cos.f64 (*.f64 y.im (log.f64 (neg.f64 x.re)))) (*.f64 (pow.f64 (atan2.f64 x.im x.re) 3) (pow.f64 y.re 3)))))))
(+.f64 (+.f64 (sin.f64 (*.f64 y.im (log.f64 (neg.f64 x.re)))) (*.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (cos.f64 (*.f64 y.im (log.f64 (neg.f64 x.re)))))) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 y.im (log.f64 (neg.f64 x.re)))) (*.f64 (pow.f64 y.re 2) (pow.f64 (atan2.f64 x.im x.re) 2)))) (*.f64 (*.f64 (cos.f64 (*.f64 y.im (log.f64 (neg.f64 x.re)))) (pow.f64 (atan2.f64 x.im x.re) 3)) (*.f64 -1/6 (pow.f64 y.re 3)))))
(+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 y.im (log.f64 (neg.f64 x.re)))) (*.f64 (pow.f64 y.re 2) (pow.f64 (atan2.f64 x.im x.re) 2)))) (+.f64 (sin.f64 (*.f64 y.im (log.f64 (neg.f64 x.re)))) (*.f64 (cos.f64 (*.f64 y.im (log.f64 (neg.f64 x.re)))) (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 -1/6 (*.f64 (pow.f64 y.re 3) (pow.f64 (atan2.f64 x.im x.re) 3)))))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (neg.f64 x.re)))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (neg.f64 x.re)))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (neg.f64 x.re)))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (neg.f64 x.re)))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (neg.f64 x.re)))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (neg.f64 x.re)))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (neg.f64 x.re)))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (neg.f64 x.re)))))
(*.f64 (+.f64 (log.f64 -1) (log.f64 x.re)) y.im)
(*.f64 (+.f64 (log.f64 -1) (log.f64 x.re)) y.im)
(*.f64 (+.f64 (log.f64 -1) (log.f64 x.re)) y.im)
(*.f64 (+.f64 (log.f64 -1) (log.f64 x.re)) y.im)
(*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 1 x.re))) (log.f64 -1)) y.im)
(*.f64 y.im (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 1 x.re)))))
(*.f64 y.im (+.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.im)
(*.f64 y.im (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 1 x.re)))))
(*.f64 y.im (+.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.im)
(*.f64 y.im (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 1 x.re)))))
(*.f64 y.im (+.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.im)
(*.f64 y.im (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 1 x.re)))))
(*.f64 y.im (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 1 x.re)))))
(*.f64 -1 (*.f64 (log.f64 (/.f64 -1 x.re)) y.im))
(*.f64 (log.f64 (/.f64 -1 x.re)) (*.f64 y.im -1))
(*.f64 y.im (neg.f64 (log.f64 (/.f64 -1 x.re))))
(*.f64 -1 (*.f64 (log.f64 (/.f64 -1 x.re)) y.im))
(*.f64 (log.f64 (/.f64 -1 x.re)) (*.f64 y.im -1))
(*.f64 y.im (neg.f64 (log.f64 (/.f64 -1 x.re))))
(*.f64 -1 (*.f64 (log.f64 (/.f64 -1 x.re)) y.im))
(*.f64 (log.f64 (/.f64 -1 x.re)) (*.f64 y.im -1))
(*.f64 y.im (neg.f64 (log.f64 (/.f64 -1 x.re))))
(*.f64 -1 (*.f64 (log.f64 (/.f64 -1 x.re)) y.im))
(*.f64 (log.f64 (/.f64 -1 x.re)) (*.f64 y.im -1))
(*.f64 y.im (neg.f64 (log.f64 (/.f64 -1 x.re))))
(*.f64 y.im (log.f64 (neg.f64 x.re)))
(*.f64 y.im (log.f64 (neg.f64 x.re)))
(*.f64 y.im (log.f64 (neg.f64 x.re)))
(*.f64 y.im (log.f64 (neg.f64 x.re)))
(*.f64 y.im (log.f64 (neg.f64 x.re)))
(*.f64 y.im (log.f64 (neg.f64 x.re)))
(*.f64 y.im (log.f64 (neg.f64 x.re)))
(*.f64 y.im (log.f64 (neg.f64 x.re)))
(*.f64 y.im (log.f64 (neg.f64 x.re)))
(*.f64 y.im (log.f64 (neg.f64 x.re)))
(*.f64 y.im (log.f64 (neg.f64 x.re)))
(*.f64 y.im (log.f64 (neg.f64 x.re)))
(+.f64 (sin.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 0)
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (neg.f64 x.re)))))
(+.f64 0 (sin.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (neg.f64 x.re)))))
(+.f64 -1 (-.f64 1 (neg.f64 (sin.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (neg.f64 x.re)))))
(+.f64 -1 (-.f64 1 (sin.f64 (neg.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (neg.f64 x.re)))))
(+.f64 (*.f64 (sin.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 1/2) (*.f64 (sin.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 1/2))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (neg.f64 x.re)))))
(+.f64 (-.f64 1 (neg.f64 (sin.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))))) -1)
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (neg.f64 x.re)))))
(-.f64 (sin.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 0)
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (neg.f64 x.re)))))
(-.f64 0 (neg.f64 (sin.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (neg.f64 x.re)))))
(-.f64 0 (sin.f64 (neg.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (neg.f64 x.re)))))
(*.f64 (sin.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 1)
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (neg.f64 x.re)))))
(*.f64 1 (sin.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (neg.f64 x.re)))))
(*.f64 -1 (neg.f64 (sin.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (neg.f64 x.re)))))
(*.f64 2 (*.f64 (sin.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 1/2))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (neg.f64 x.re)))))
(*.f64 (*.f64 (sin.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 2) 1/2)
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (neg.f64 x.re)))))
(*.f64 4 (/.f64 (sin.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 4))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (neg.f64 x.re)))))
(*.f64 (*.f64 (sin.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 4) 1/4)
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (neg.f64 x.re)))))
(*.f64 1/2 (*.f64 (sin.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 2))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (neg.f64 x.re)))))
(*.f64 (*.f64 (sin.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 1/2) 2)
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (neg.f64 x.re)))))
(*.f64 (neg.f64 (sin.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))) -1)
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (neg.f64 x.re)))))
(*.f64 1/4 (*.f64 (sin.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 4))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (neg.f64 x.re)))))
(*.f64 (/.f64 (sin.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 4) 4)
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (neg.f64 x.re)))))
(*.f64 (sin.f64 (neg.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))) -1)
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (neg.f64 x.re)))))
(/.f64 (sin.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 1)
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (neg.f64 x.re)))))
(/.f64 (*.f64 (sin.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 2) 2)
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (neg.f64 x.re)))))
(/.f64 (*.f64 (sin.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 4) 4)
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (neg.f64 x.re)))))
(/.f64 (*.f64 2 (*.f64 (sin.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 4)) 8)
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (neg.f64 x.re)))))
(/.f64 (neg.f64 (sin.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))) -1)
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (neg.f64 x.re)))))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (sin.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 4))) 16)
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (neg.f64 x.re)))))
(/.f64 (sin.f64 (neg.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))) -1)
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (neg.f64 x.re)))))
(/.f64 (+.f64 (neg.f64 (sin.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))) (neg.f64 (sin.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))))) -2)
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (neg.f64 x.re)))))
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (sin.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 4))) (*.f64 2 (*.f64 2 (*.f64 (sin.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 4)))) 32)
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (neg.f64 x.re)))))
(neg.f64 (neg.f64 (sin.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (neg.f64 x.re)))))
(neg.f64 (sin.f64 (neg.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (neg.f64 x.re)))))
(+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) 0)
(*.f64 y.im (log.f64 (neg.f64 x.re)))
(+.f64 0 (*.f64 (log.f64 (neg.f64 x.re)) y.im))
(*.f64 y.im (log.f64 (neg.f64 x.re)))
(+.f64 (*.f64 (log.f64 (neg.f64 x.re)) (*.f64 y.im 1/2)) (*.f64 (log.f64 (neg.f64 x.re)) (*.f64 y.im 1/2)))
(*.f64 y.im (log.f64 (neg.f64 x.re)))
(-.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) 0)
(*.f64 y.im (log.f64 (neg.f64 x.re)))
(/.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) 1)
(*.f64 y.im (log.f64 (neg.f64 x.re)))
(/.f64 (*.f64 (log.f64 (neg.f64 x.re)) (+.f64 y.im y.im)) 2)
(*.f64 y.im (log.f64 (neg.f64 x.re)))
(/.f64 (*.f64 (log.f64 (neg.f64 x.re)) (*.f64 y.im 4)) 4)
(*.f64 y.im (log.f64 (neg.f64 x.re)))
(/.f64 (*.f64 2 (*.f64 (log.f64 (neg.f64 x.re)) (*.f64 y.im 4))) 8)
(*.f64 y.im (log.f64 (neg.f64 x.re)))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (log.f64 (neg.f64 x.re)) (*.f64 y.im 4)))) 16)
(*.f64 y.im (log.f64 (neg.f64 x.re)))
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (log.f64 (neg.f64 x.re)) (*.f64 y.im 4)))) (*.f64 2 (*.f64 2 (*.f64 (log.f64 (neg.f64 x.re)) (*.f64 y.im 4))))) 32)
(*.f64 y.im (log.f64 (neg.f64 x.re)))

eval209.0ms (0.4%)

Compiler

Compiled 23872 to 7963 computations (66.6% saved)

prune267.0ms (0.5%)

Pruning

21 alts after pruning (18 fresh and 3 done)

PrunedKeptTotal
New71712729
Fresh167
Picked011
Done325
Total72121742
Error
2.9b
Counts
742 → 21
Alt Table
Click to see full alt table
StatusErrorProgram
45.1b
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 (neg.f64 x.im)) y.re))))
42.3b
(*.f64 (pow.f64 (neg.f64 x.im) y.re) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))))
51.1b
(*.f64 (atan2.f64 x.im x.re) (*.f64 (+.f64 y.re (*.f64 (pow.f64 y.re 2) (log.f64 (neg.f64 x.im)))) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))))
42.3b
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (*.f64 y.re (atan2.f64 x.im x.re)))
39.1b
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))))
50.9b
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.im)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))))
42.1b
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))))
49.7b
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.im)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.f64 (+.f64 (-.f64 (*.f64 y.re (atan2.f64 x.im x.re)) -1) -1)))
44.4b
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (*.f64 y.re (atan2.f64 x.im x.re)))
50.4b
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.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))))
51.4b
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.im)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))))
38.9b
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))))
56.5b
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (neg.f64 (sin.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.im) (-.f64 (*.f64 (atan2.f64 x.im x.re) y.re) (PI.f64))))))
44.6b
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 x.im) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (*.f64 y.re (atan2.f64 x.im x.re)))
49.2b
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 x.im) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.f64 (+.f64 (-.f64 (*.f64 y.re (atan2.f64 x.im x.re)) -1) -1)))
51.6b
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 x.im) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))))
42.1b
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 x.im) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))))
54.9b
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 x.im) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.f64 (*.f64 y.im (log.f64 (neg.f64 x.re)))))
46.7b
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 x.im) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.f64 (*.f64 y.im (log.f64 x.im))))
34.4b
(*.f64 (exp.f64 (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re)))) (*.f64 y.re (atan2.f64 x.im x.re)))
34.4b
(*.f64 y.re (*.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))))
Compiler

Compiled 949 to 578 computations (39.1% saved)

localize98.0ms (0.2%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(*.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))))
1.1b
(*.f64 y.re (*.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))))
2.2b
(*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))
Compiler

Compiled 52 to 10 computations (80.8% saved)

series10.0ms (0%)

Counts
3 → 120
Calls

30 calls:

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

rewrite102.0ms (0.2%)

Algorithm
batch-egg-rewrite
Rules
1808×bool.json-1
1808×bool.json-2
1766×rational.json-1
1090×bool.json-3
1038×rational.json-2
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01389
113189
235389
377589
4161489
5370689
6667189
Stop Event
node limit
Counts
3 → 34
Calls
Call 1
Inputs
(*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))
(*.f64 y.re (*.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))))
(*.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 -1 (-.f64 1 (*.f64 y.im (atan2.f64 x.im x.re))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y.im (*.f64 (atan2.f64 x.im x.re) -1/2)) (*.f64 y.im (*.f64 (atan2.f64 x.im x.re) -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 y.im (neg.f64 (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 (neg.f64 (atan2.f64 x.im x.re))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y.im (*.f64 (atan2.f64 x.im x.re) -2)) 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 y.im (atan2.f64 x.im x.re)) -1)))) (#(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 2 (*.f64 2 (*.f64 y.im (*.f64 (atan2.f64 x.im x.re) -4)))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 y.im (*.f64 (atan2.f64 x.im x.re) -4)))) (*.f64 2 (*.f64 2 (*.f64 y.im (*.f64 (atan2.f64 x.im x.re) -4))))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (*.f64 y.im (atan2.f64 x.im x.re)))))) (#(struct:change #<rule egg-rr> (2) ((x not (not (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))))))) (#(struct:change #<rule egg-rr> (2) ((x and (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))) (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))))) (#(struct:change #<rule egg-rr> (2) ((x or (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))) (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (atan2.f64 x.im x.re) (*.f64 y.re (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (atan2.f64 x.im x.re) (*.f64 y.re (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))) (/.f64 (*.f64 (atan2.f64 x.im x.re) y.re) 2)) (*.f64 (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))) (/.f64 (*.f64 (atan2.f64 x.im x.re) y.re) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (atan2.f64 x.im x.re) (*.f64 y.re (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (atan2.f64 x.im x.re) (*.f64 y.re (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (atan2.f64 x.im x.re) (*.f64 y.re (*.f64 (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))) 2))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (atan2.f64 x.im x.re) (*.f64 (*.f64 y.re (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))) 4)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (atan2.f64 x.im x.re) (*.f64 (*.f64 y.re (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))) 4))) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (atan2.f64 x.im x.re) (*.f64 (*.f64 y.re (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))) 4)))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (atan2.f64 x.im x.re) (*.f64 (*.f64 y.re (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))) 4)))) (*.f64 2 (*.f64 2 (*.f64 (atan2.f64 x.im x.re) (*.f64 (*.f64 y.re (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))) 4))))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x not (not (*.f64 (atan2.f64 x.im x.re) (*.f64 y.re (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))))))))) (#(struct:change #<rule egg-rr> (2) ((x and (*.f64 (atan2.f64 x.im x.re) (*.f64 y.re (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))))) (*.f64 (atan2.f64 x.im x.re) (*.f64 y.re (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))))))))) (#(struct:change #<rule egg-rr> (2) ((x or (*.f64 (atan2.f64 x.im x.re) (*.f64 y.re (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))))) (*.f64 (atan2.f64 x.im x.re) (*.f64 y.re (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))) (*.f64 (atan2.f64 x.im x.re) 1/2)) (*.f64 (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))) (*.f64 (atan2.f64 x.im x.re) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))) (*.f64 (atan2.f64 x.im x.re) 2)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))) (*.f64 (atan2.f64 x.im x.re) 4)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))) (*.f64 (atan2.f64 x.im x.re) 4))) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))) (*.f64 (atan2.f64 x.im x.re) 4)))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))) (*.f64 (atan2.f64 x.im x.re) 4)))) (*.f64 2 (*.f64 2 (*.f64 (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))) (*.f64 (atan2.f64 x.im x.re) 4))))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x not (not (*.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))))))))) (#(struct:change #<rule egg-rr> (2) ((x and (*.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))) (*.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))))))) (#(struct:change #<rule egg-rr> (2) ((x or (*.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))) (*.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))))))))

simplify727.0ms (1.4%)

Algorithm
egg-herbie
Rules
1534×rational.json-simplify-35
1194×rational.json-simplify-55
1120×rational.json-simplify-2
916×rational.json-simplify-51
786×rational.json-simplify-1
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01344854
13234830
26864812
316464422
434834422
544774422
662744422
774744422
Stop Event
node limit
Counts
154 → 76
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 (atan2.f64 x.im x.re) y.im))
(*.f64 -1 (*.f64 (atan2.f64 x.im x.re) y.im))
(*.f64 -1 (*.f64 (atan2.f64 x.im x.re) y.im))
(*.f64 -1 (*.f64 (atan2.f64 x.im x.re) y.im))
(*.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 (atan2.f64 x.im x.re) y.im))
(*.f64 -1 (*.f64 (atan2.f64 x.im x.re) y.im))
(*.f64 -1 (*.f64 (atan2.f64 x.im x.re) y.im))
(*.f64 -1 (*.f64 (atan2.f64 x.im x.re) y.im))
(*.f64 -1 (*.f64 (atan2.f64 x.im x.re) y.im))
(*.f64 -1 (*.f64 (atan2.f64 x.im x.re) y.im))
(*.f64 -1 (*.f64 (atan2.f64 x.im x.re) y.im))
(*.f64 -1 (*.f64 (atan2.f64 x.im x.re) y.im))
(*.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 y.re (*.f64 (exp.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))) (atan2.f64 x.im x.re)))
(*.f64 y.re (*.f64 (exp.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))) (atan2.f64 x.im x.re)))
(*.f64 y.re (*.f64 (exp.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))) (atan2.f64 x.im x.re)))
(*.f64 y.re (*.f64 (exp.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))) (atan2.f64 x.im x.re)))
(*.f64 y.re (*.f64 (exp.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))) (atan2.f64 x.im x.re)))
(*.f64 y.re (*.f64 (exp.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))) (atan2.f64 x.im x.re)))
(*.f64 y.re (*.f64 (exp.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))) (atan2.f64 x.im x.re)))
(*.f64 y.re (*.f64 (exp.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))) (atan2.f64 x.im x.re)))
(*.f64 y.re (*.f64 (exp.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))) (atan2.f64 x.im x.re)))
(*.f64 y.re (*.f64 (exp.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))) (atan2.f64 x.im x.re)))
(*.f64 y.re (*.f64 (exp.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))) (atan2.f64 x.im x.re)))
(*.f64 y.re (*.f64 (exp.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))) (atan2.f64 x.im x.re)))
(*.f64 y.re (*.f64 (exp.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))) (atan2.f64 x.im x.re)))
(*.f64 y.re (*.f64 (exp.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))) (atan2.f64 x.im x.re)))
(*.f64 y.re (*.f64 (exp.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))) (atan2.f64 x.im x.re)))
(*.f64 y.re (*.f64 (exp.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))) (atan2.f64 x.im x.re)))
(*.f64 (exp.f64 (*.f64 -1 (*.f64 (atan2.f64 x.im x.re) y.im))) (*.f64 y.re (atan2.f64 x.im x.re)))
(*.f64 (exp.f64 (*.f64 -1 (*.f64 (atan2.f64 x.im x.re) y.im))) (*.f64 y.re (atan2.f64 x.im x.re)))
(*.f64 (exp.f64 (*.f64 -1 (*.f64 (atan2.f64 x.im x.re) y.im))) (*.f64 y.re (atan2.f64 x.im x.re)))
(*.f64 (exp.f64 (*.f64 -1 (*.f64 (atan2.f64 x.im x.re) y.im))) (*.f64 y.re (atan2.f64 x.im x.re)))
(*.f64 y.re (*.f64 (exp.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))) (atan2.f64 x.im x.re)))
(*.f64 y.re (*.f64 (exp.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))) (atan2.f64 x.im x.re)))
(*.f64 y.re (*.f64 (exp.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))) (atan2.f64 x.im x.re)))
(*.f64 y.re (*.f64 (exp.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))) (atan2.f64 x.im x.re)))
(*.f64 y.re (*.f64 (exp.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))) (atan2.f64 x.im x.re)))
(*.f64 y.re (*.f64 (exp.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))) (atan2.f64 x.im x.re)))
(*.f64 y.re (*.f64 (exp.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))) (atan2.f64 x.im x.re)))
(*.f64 y.re (*.f64 (exp.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))) (atan2.f64 x.im x.re)))
(*.f64 (exp.f64 (*.f64 -1 (*.f64 (atan2.f64 x.im x.re) y.im))) (*.f64 y.re (atan2.f64 x.im x.re)))
(*.f64 (exp.f64 (*.f64 -1 (*.f64 (atan2.f64 x.im x.re) y.im))) (*.f64 y.re (atan2.f64 x.im x.re)))
(*.f64 (exp.f64 (*.f64 -1 (*.f64 (atan2.f64 x.im x.re) y.im))) (*.f64 y.re (atan2.f64 x.im x.re)))
(*.f64 (exp.f64 (*.f64 -1 (*.f64 (atan2.f64 x.im x.re) y.im))) (*.f64 y.re (atan2.f64 x.im x.re)))
(*.f64 (exp.f64 (*.f64 -1 (*.f64 (atan2.f64 x.im x.re) y.im))) (*.f64 y.re (atan2.f64 x.im x.re)))
(*.f64 (exp.f64 (*.f64 -1 (*.f64 (atan2.f64 x.im x.re) y.im))) (*.f64 y.re (atan2.f64 x.im x.re)))
(*.f64 (exp.f64 (*.f64 -1 (*.f64 (atan2.f64 x.im x.re) y.im))) (*.f64 y.re (atan2.f64 x.im x.re)))
(*.f64 (exp.f64 (*.f64 -1 (*.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 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 -1 (*.f64 y.re (*.f64 (pow.f64 (atan2.f64 x.im x.re) 2) y.im))))
(+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (+.f64 (*.f64 1/2 (*.f64 y.re (*.f64 (pow.f64 (atan2.f64 x.im x.re) 3) (pow.f64 y.im 2)))) (*.f64 -1 (*.f64 y.re (*.f64 (pow.f64 (atan2.f64 x.im x.re) 2) y.im)))))
(+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (+.f64 (*.f64 1/2 (*.f64 y.re (*.f64 (pow.f64 (atan2.f64 x.im x.re) 3) (pow.f64 y.im 2)))) (+.f64 (*.f64 -1 (*.f64 y.re (*.f64 (pow.f64 (atan2.f64 x.im x.re) 2) y.im))) (*.f64 -1/6 (*.f64 y.re (*.f64 (pow.f64 (atan2.f64 x.im x.re) 4) (pow.f64 y.im 3)))))))
(*.f64 (exp.f64 (*.f64 -1 (*.f64 (atan2.f64 x.im x.re) y.im))) (*.f64 y.re (atan2.f64 x.im x.re)))
(*.f64 (exp.f64 (*.f64 -1 (*.f64 (atan2.f64 x.im x.re) y.im))) (*.f64 y.re (atan2.f64 x.im x.re)))
(*.f64 (exp.f64 (*.f64 -1 (*.f64 (atan2.f64 x.im x.re) y.im))) (*.f64 y.re (atan2.f64 x.im x.re)))
(*.f64 (exp.f64 (*.f64 -1 (*.f64 (atan2.f64 x.im x.re) y.im))) (*.f64 y.re (atan2.f64 x.im x.re)))
(*.f64 y.re (*.f64 (exp.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))) (atan2.f64 x.im x.re)))
(*.f64 y.re (*.f64 (exp.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))) (atan2.f64 x.im x.re)))
(*.f64 y.re (*.f64 (exp.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))) (atan2.f64 x.im x.re)))
(*.f64 y.re (*.f64 (exp.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))) (atan2.f64 x.im x.re)))
(*.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))))
(*.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))))
(*.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))))
(*.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))))
(*.f64 (exp.f64 (*.f64 -1 (*.f64 (atan2.f64 x.im x.re) y.im))) (atan2.f64 x.im x.re))
(*.f64 (exp.f64 (*.f64 -1 (*.f64 (atan2.f64 x.im x.re) y.im))) (atan2.f64 x.im x.re))
(*.f64 (exp.f64 (*.f64 -1 (*.f64 (atan2.f64 x.im x.re) y.im))) (atan2.f64 x.im x.re))
(*.f64 (exp.f64 (*.f64 -1 (*.f64 (atan2.f64 x.im x.re) y.im))) (atan2.f64 x.im x.re))
(*.f64 (exp.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))) (atan2.f64 x.im x.re))
(*.f64 (exp.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))) (atan2.f64 x.im x.re))
(*.f64 (exp.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))) (atan2.f64 x.im x.re))
(*.f64 (exp.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))) (atan2.f64 x.im x.re))
(*.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))))
(*.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))))
(*.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))))
(*.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))))
(*.f64 (exp.f64 (*.f64 -1 (*.f64 (atan2.f64 x.im x.re) y.im))) (atan2.f64 x.im x.re))
(*.f64 (exp.f64 (*.f64 -1 (*.f64 (atan2.f64 x.im x.re) y.im))) (atan2.f64 x.im x.re))
(*.f64 (exp.f64 (*.f64 -1 (*.f64 (atan2.f64 x.im x.re) y.im))) (atan2.f64 x.im x.re))
(*.f64 (exp.f64 (*.f64 -1 (*.f64 (atan2.f64 x.im x.re) y.im))) (atan2.f64 x.im x.re))
(*.f64 (exp.f64 (*.f64 -1 (*.f64 (atan2.f64 x.im x.re) y.im))) (atan2.f64 x.im x.re))
(*.f64 (exp.f64 (*.f64 -1 (*.f64 (atan2.f64 x.im x.re) y.im))) (atan2.f64 x.im x.re))
(*.f64 (exp.f64 (*.f64 -1 (*.f64 (atan2.f64 x.im x.re) y.im))) (atan2.f64 x.im x.re))
(*.f64 (exp.f64 (*.f64 -1 (*.f64 (atan2.f64 x.im x.re) y.im))) (atan2.f64 x.im x.re))
(atan2.f64 x.im x.re)
(+.f64 (*.f64 -1 (*.f64 y.im (pow.f64 (atan2.f64 x.im x.re) 2))) (atan2.f64 x.im x.re))
(+.f64 (*.f64 -1 (*.f64 y.im (pow.f64 (atan2.f64 x.im x.re) 2))) (+.f64 (atan2.f64 x.im x.re) (*.f64 1/2 (*.f64 (pow.f64 y.im 2) (pow.f64 (atan2.f64 x.im x.re) 3)))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 y.im 3) (pow.f64 (atan2.f64 x.im x.re) 4))) (+.f64 (*.f64 -1 (*.f64 y.im (pow.f64 (atan2.f64 x.im x.re) 2))) (+.f64 (atan2.f64 x.im x.re) (*.f64 1/2 (*.f64 (pow.f64 y.im 2) (pow.f64 (atan2.f64 x.im x.re) 3))))))
(*.f64 (exp.f64 (*.f64 -1 (*.f64 (atan2.f64 x.im x.re) y.im))) (atan2.f64 x.im x.re))
(*.f64 (exp.f64 (*.f64 -1 (*.f64 (atan2.f64 x.im x.re) y.im))) (atan2.f64 x.im x.re))
(*.f64 (exp.f64 (*.f64 -1 (*.f64 (atan2.f64 x.im x.re) y.im))) (atan2.f64 x.im x.re))
(*.f64 (exp.f64 (*.f64 -1 (*.f64 (atan2.f64 x.im x.re) y.im))) (atan2.f64 x.im x.re))
(*.f64 (exp.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))) (atan2.f64 x.im x.re))
(*.f64 (exp.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))) (atan2.f64 x.im x.re))
(*.f64 (exp.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))) (atan2.f64 x.im x.re))
(*.f64 (exp.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))) (atan2.f64 x.im x.re))
(+.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))) 0)
(+.f64 0 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))
(+.f64 -1 (-.f64 1 (*.f64 y.im (atan2.f64 x.im x.re))))
(+.f64 (*.f64 y.im (*.f64 (atan2.f64 x.im x.re) -1/2)) (*.f64 y.im (*.f64 (atan2.f64 x.im x.re) -1/2)))
(-.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))) 0)
(-.f64 0 (*.f64 y.im (atan2.f64 x.im x.re)))
(/.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))) 1)
(/.f64 (*.f64 y.im (*.f64 (atan2.f64 x.im x.re) -2)) 2)
(/.f64 (*.f64 y.im (*.f64 (atan2.f64 x.im x.re) -4)) 4)
(/.f64 (*.f64 y.im (atan2.f64 x.im x.re)) -1)
(/.f64 (*.f64 2 (*.f64 y.im (*.f64 (atan2.f64 x.im x.re) -4))) 8)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 y.im (*.f64 (atan2.f64 x.im x.re) -4)))) 16)
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 y.im (*.f64 (atan2.f64 x.im x.re) -4)))) (*.f64 2 (*.f64 2 (*.f64 y.im (*.f64 (atan2.f64 x.im x.re) -4))))) 32)
(neg.f64 (*.f64 y.im (atan2.f64 x.im x.re)))
(+.f64 (*.f64 (atan2.f64 x.im x.re) (*.f64 y.re (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))))) 0)
(+.f64 0 (*.f64 (atan2.f64 x.im x.re) (*.f64 y.re (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))))))
(+.f64 (*.f64 (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))) (/.f64 (*.f64 (atan2.f64 x.im x.re) y.re) 2)) (*.f64 (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))) (/.f64 (*.f64 (atan2.f64 x.im x.re) y.re) 2)))
(-.f64 (*.f64 (atan2.f64 x.im x.re) (*.f64 y.re (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))))) 0)
(/.f64 (*.f64 (atan2.f64 x.im x.re) (*.f64 y.re (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))))) 1)
(/.f64 (*.f64 (atan2.f64 x.im x.re) (*.f64 y.re (*.f64 (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))) 2))) 2)
(/.f64 (*.f64 (atan2.f64 x.im x.re) (*.f64 (*.f64 y.re (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))) 4)) 4)
(/.f64 (*.f64 2 (*.f64 (atan2.f64 x.im x.re) (*.f64 (*.f64 y.re (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))) 4))) 8)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (atan2.f64 x.im x.re) (*.f64 (*.f64 y.re (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))) 4)))) 16)
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (atan2.f64 x.im x.re) (*.f64 (*.f64 y.re (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))) 4)))) (*.f64 2 (*.f64 2 (*.f64 (atan2.f64 x.im x.re) (*.f64 (*.f64 y.re (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))) 4))))) 32)
(+.f64 (*.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))) 0)
(+.f64 0 (*.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))))
(+.f64 (*.f64 (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))) (*.f64 (atan2.f64 x.im x.re) 1/2)) (*.f64 (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))) (*.f64 (atan2.f64 x.im x.re) 1/2)))
(-.f64 (*.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))) 0)
(/.f64 (*.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))) 1)
(/.f64 (*.f64 (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))) (*.f64 (atan2.f64 x.im x.re) 2)) 2)
(/.f64 (*.f64 (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))) (*.f64 (atan2.f64 x.im x.re) 4)) 4)
(/.f64 (*.f64 2 (*.f64 (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))) (*.f64 (atan2.f64 x.im x.re) 4))) 8)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))) (*.f64 (atan2.f64 x.im x.re) 4)))) 16)
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))) (*.f64 (atan2.f64 x.im x.re) 4)))) (*.f64 2 (*.f64 2 (*.f64 (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))) (*.f64 (atan2.f64 x.im x.re) 4))))) 32)
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 (atan2.f64 x.im x.re) y.im))
(*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))
(*.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 (atan2.f64 x.im x.re) y.im))
(*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))
(*.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 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 (atan2.f64 x.im x.re) y.im))
(*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))
(*.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 (atan2.f64 x.im x.re) y.im))
(*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))
(*.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 (atan2.f64 x.im x.re) y.im))
(*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))
(*.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 (atan2.f64 x.im x.re) y.im))
(*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))
(*.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 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 y.re (*.f64 (exp.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))) (atan2.f64 x.im x.re)))
(*.f64 (*.f64 (atan2.f64 x.im x.re) y.re) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))))
(*.f64 (atan2.f64 x.im x.re) (*.f64 y.re (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))))
(*.f64 (atan2.f64 x.im x.re) (/.f64 y.re (exp.f64 (*.f64 y.im (atan2.f64 x.im x.re)))))
(*.f64 y.re (*.f64 (exp.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))) (atan2.f64 x.im x.re)))
(*.f64 (*.f64 (atan2.f64 x.im x.re) y.re) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))))
(*.f64 (atan2.f64 x.im x.re) (*.f64 y.re (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))))
(*.f64 (atan2.f64 x.im x.re) (/.f64 y.re (exp.f64 (*.f64 y.im (atan2.f64 x.im x.re)))))
(*.f64 y.re (*.f64 (exp.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))) (atan2.f64 x.im x.re)))
(*.f64 (*.f64 (atan2.f64 x.im x.re) y.re) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))))
(*.f64 (atan2.f64 x.im x.re) (*.f64 y.re (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))))
(*.f64 (atan2.f64 x.im x.re) (/.f64 y.re (exp.f64 (*.f64 y.im (atan2.f64 x.im x.re)))))
(*.f64 y.re (*.f64 (exp.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))) (atan2.f64 x.im x.re)))
(*.f64 (*.f64 (atan2.f64 x.im x.re) y.re) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))))
(*.f64 (atan2.f64 x.im x.re) (*.f64 y.re (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))))
(*.f64 (atan2.f64 x.im x.re) (/.f64 y.re (exp.f64 (*.f64 y.im (atan2.f64 x.im x.re)))))
(*.f64 y.re (*.f64 (exp.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))) (atan2.f64 x.im x.re)))
(*.f64 (*.f64 (atan2.f64 x.im x.re) y.re) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))))
(*.f64 (atan2.f64 x.im x.re) (*.f64 y.re (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))))
(*.f64 (atan2.f64 x.im x.re) (/.f64 y.re (exp.f64 (*.f64 y.im (atan2.f64 x.im x.re)))))
(*.f64 y.re (*.f64 (exp.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))) (atan2.f64 x.im x.re)))
(*.f64 (*.f64 (atan2.f64 x.im x.re) y.re) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))))
(*.f64 (atan2.f64 x.im x.re) (*.f64 y.re (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))))
(*.f64 (atan2.f64 x.im x.re) (/.f64 y.re (exp.f64 (*.f64 y.im (atan2.f64 x.im x.re)))))
(*.f64 y.re (*.f64 (exp.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))) (atan2.f64 x.im x.re)))
(*.f64 (*.f64 (atan2.f64 x.im x.re) y.re) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))))
(*.f64 (atan2.f64 x.im x.re) (*.f64 y.re (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))))
(*.f64 (atan2.f64 x.im x.re) (/.f64 y.re (exp.f64 (*.f64 y.im (atan2.f64 x.im x.re)))))
(*.f64 y.re (*.f64 (exp.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))) (atan2.f64 x.im x.re)))
(*.f64 (*.f64 (atan2.f64 x.im x.re) y.re) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))))
(*.f64 (atan2.f64 x.im x.re) (*.f64 y.re (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))))
(*.f64 (atan2.f64 x.im x.re) (/.f64 y.re (exp.f64 (*.f64 y.im (atan2.f64 x.im x.re)))))
(*.f64 y.re (*.f64 (exp.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))) (atan2.f64 x.im x.re)))
(*.f64 (*.f64 (atan2.f64 x.im x.re) y.re) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))))
(*.f64 (atan2.f64 x.im x.re) (*.f64 y.re (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))))
(*.f64 (atan2.f64 x.im x.re) (/.f64 y.re (exp.f64 (*.f64 y.im (atan2.f64 x.im x.re)))))
(*.f64 y.re (*.f64 (exp.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))) (atan2.f64 x.im x.re)))
(*.f64 (*.f64 (atan2.f64 x.im x.re) y.re) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))))
(*.f64 (atan2.f64 x.im x.re) (*.f64 y.re (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))))
(*.f64 (atan2.f64 x.im x.re) (/.f64 y.re (exp.f64 (*.f64 y.im (atan2.f64 x.im x.re)))))
(*.f64 y.re (*.f64 (exp.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))) (atan2.f64 x.im x.re)))
(*.f64 (*.f64 (atan2.f64 x.im x.re) y.re) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))))
(*.f64 (atan2.f64 x.im x.re) (*.f64 y.re (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))))
(*.f64 (atan2.f64 x.im x.re) (/.f64 y.re (exp.f64 (*.f64 y.im (atan2.f64 x.im x.re)))))
(*.f64 y.re (*.f64 (exp.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))) (atan2.f64 x.im x.re)))
(*.f64 (*.f64 (atan2.f64 x.im x.re) y.re) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))))
(*.f64 (atan2.f64 x.im x.re) (*.f64 y.re (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))))
(*.f64 (atan2.f64 x.im x.re) (/.f64 y.re (exp.f64 (*.f64 y.im (atan2.f64 x.im x.re)))))
(*.f64 y.re (*.f64 (exp.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))) (atan2.f64 x.im x.re)))
(*.f64 (*.f64 (atan2.f64 x.im x.re) y.re) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))))
(*.f64 (atan2.f64 x.im x.re) (*.f64 y.re (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))))
(*.f64 (atan2.f64 x.im x.re) (/.f64 y.re (exp.f64 (*.f64 y.im (atan2.f64 x.im x.re)))))
(*.f64 y.re (*.f64 (exp.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))) (atan2.f64 x.im x.re)))
(*.f64 (*.f64 (atan2.f64 x.im x.re) y.re) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))))
(*.f64 (atan2.f64 x.im x.re) (*.f64 y.re (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))))
(*.f64 (atan2.f64 x.im x.re) (/.f64 y.re (exp.f64 (*.f64 y.im (atan2.f64 x.im x.re)))))
(*.f64 y.re (*.f64 (exp.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))) (atan2.f64 x.im x.re)))
(*.f64 (*.f64 (atan2.f64 x.im x.re) y.re) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))))
(*.f64 (atan2.f64 x.im x.re) (*.f64 y.re (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))))
(*.f64 (atan2.f64 x.im x.re) (/.f64 y.re (exp.f64 (*.f64 y.im (atan2.f64 x.im x.re)))))
(*.f64 y.re (*.f64 (exp.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))) (atan2.f64 x.im x.re)))
(*.f64 (*.f64 (atan2.f64 x.im x.re) y.re) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))))
(*.f64 (atan2.f64 x.im x.re) (*.f64 y.re (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))))
(*.f64 (atan2.f64 x.im x.re) (/.f64 y.re (exp.f64 (*.f64 y.im (atan2.f64 x.im x.re)))))
(*.f64 (exp.f64 (*.f64 -1 (*.f64 (atan2.f64 x.im x.re) y.im))) (*.f64 y.re (atan2.f64 x.im x.re)))
(*.f64 (*.f64 (atan2.f64 x.im x.re) y.re) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))))
(*.f64 (atan2.f64 x.im x.re) (*.f64 y.re (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))))
(*.f64 (atan2.f64 x.im x.re) (/.f64 y.re (exp.f64 (*.f64 y.im (atan2.f64 x.im x.re)))))
(*.f64 (exp.f64 (*.f64 -1 (*.f64 (atan2.f64 x.im x.re) y.im))) (*.f64 y.re (atan2.f64 x.im x.re)))
(*.f64 (*.f64 (atan2.f64 x.im x.re) y.re) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))))
(*.f64 (atan2.f64 x.im x.re) (*.f64 y.re (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))))
(*.f64 (atan2.f64 x.im x.re) (/.f64 y.re (exp.f64 (*.f64 y.im (atan2.f64 x.im x.re)))))
(*.f64 (exp.f64 (*.f64 -1 (*.f64 (atan2.f64 x.im x.re) y.im))) (*.f64 y.re (atan2.f64 x.im x.re)))
(*.f64 (*.f64 (atan2.f64 x.im x.re) y.re) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))))
(*.f64 (atan2.f64 x.im x.re) (*.f64 y.re (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))))
(*.f64 (atan2.f64 x.im x.re) (/.f64 y.re (exp.f64 (*.f64 y.im (atan2.f64 x.im x.re)))))
(*.f64 (exp.f64 (*.f64 -1 (*.f64 (atan2.f64 x.im x.re) y.im))) (*.f64 y.re (atan2.f64 x.im x.re)))
(*.f64 (*.f64 (atan2.f64 x.im x.re) y.re) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))))
(*.f64 (atan2.f64 x.im x.re) (*.f64 y.re (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))))
(*.f64 (atan2.f64 x.im x.re) (/.f64 y.re (exp.f64 (*.f64 y.im (atan2.f64 x.im x.re)))))
(*.f64 y.re (*.f64 (exp.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))) (atan2.f64 x.im x.re)))
(*.f64 (*.f64 (atan2.f64 x.im x.re) y.re) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))))
(*.f64 (atan2.f64 x.im x.re) (*.f64 y.re (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))))
(*.f64 (atan2.f64 x.im x.re) (/.f64 y.re (exp.f64 (*.f64 y.im (atan2.f64 x.im x.re)))))
(*.f64 y.re (*.f64 (exp.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))) (atan2.f64 x.im x.re)))
(*.f64 (*.f64 (atan2.f64 x.im x.re) y.re) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))))
(*.f64 (atan2.f64 x.im x.re) (*.f64 y.re (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))))
(*.f64 (atan2.f64 x.im x.re) (/.f64 y.re (exp.f64 (*.f64 y.im (atan2.f64 x.im x.re)))))
(*.f64 y.re (*.f64 (exp.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))) (atan2.f64 x.im x.re)))
(*.f64 (*.f64 (atan2.f64 x.im x.re) y.re) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))))
(*.f64 (atan2.f64 x.im x.re) (*.f64 y.re (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))))
(*.f64 (atan2.f64 x.im x.re) (/.f64 y.re (exp.f64 (*.f64 y.im (atan2.f64 x.im x.re)))))
(*.f64 y.re (*.f64 (exp.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))) (atan2.f64 x.im x.re)))
(*.f64 (*.f64 (atan2.f64 x.im x.re) y.re) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))))
(*.f64 (atan2.f64 x.im x.re) (*.f64 y.re (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))))
(*.f64 (atan2.f64 x.im x.re) (/.f64 y.re (exp.f64 (*.f64 y.im (atan2.f64 x.im x.re)))))
(*.f64 y.re (*.f64 (exp.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))) (atan2.f64 x.im x.re)))
(*.f64 (*.f64 (atan2.f64 x.im x.re) y.re) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))))
(*.f64 (atan2.f64 x.im x.re) (*.f64 y.re (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))))
(*.f64 (atan2.f64 x.im x.re) (/.f64 y.re (exp.f64 (*.f64 y.im (atan2.f64 x.im x.re)))))
(*.f64 y.re (*.f64 (exp.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))) (atan2.f64 x.im x.re)))
(*.f64 (*.f64 (atan2.f64 x.im x.re) y.re) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))))
(*.f64 (atan2.f64 x.im x.re) (*.f64 y.re (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))))
(*.f64 (atan2.f64 x.im x.re) (/.f64 y.re (exp.f64 (*.f64 y.im (atan2.f64 x.im x.re)))))
(*.f64 y.re (*.f64 (exp.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))) (atan2.f64 x.im x.re)))
(*.f64 (*.f64 (atan2.f64 x.im x.re) y.re) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))))
(*.f64 (atan2.f64 x.im x.re) (*.f64 y.re (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))))
(*.f64 (atan2.f64 x.im x.re) (/.f64 y.re (exp.f64 (*.f64 y.im (atan2.f64 x.im x.re)))))
(*.f64 y.re (*.f64 (exp.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))) (atan2.f64 x.im x.re)))
(*.f64 (*.f64 (atan2.f64 x.im x.re) y.re) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))))
(*.f64 (atan2.f64 x.im x.re) (*.f64 y.re (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))))
(*.f64 (atan2.f64 x.im x.re) (/.f64 y.re (exp.f64 (*.f64 y.im (atan2.f64 x.im x.re)))))
(*.f64 (exp.f64 (*.f64 -1 (*.f64 (atan2.f64 x.im x.re) y.im))) (*.f64 y.re (atan2.f64 x.im x.re)))
(*.f64 (*.f64 (atan2.f64 x.im x.re) y.re) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))))
(*.f64 (atan2.f64 x.im x.re) (*.f64 y.re (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))))
(*.f64 (atan2.f64 x.im x.re) (/.f64 y.re (exp.f64 (*.f64 y.im (atan2.f64 x.im x.re)))))
(*.f64 (exp.f64 (*.f64 -1 (*.f64 (atan2.f64 x.im x.re) y.im))) (*.f64 y.re (atan2.f64 x.im x.re)))
(*.f64 (*.f64 (atan2.f64 x.im x.re) y.re) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))))
(*.f64 (atan2.f64 x.im x.re) (*.f64 y.re (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))))
(*.f64 (atan2.f64 x.im x.re) (/.f64 y.re (exp.f64 (*.f64 y.im (atan2.f64 x.im x.re)))))
(*.f64 (exp.f64 (*.f64 -1 (*.f64 (atan2.f64 x.im x.re) y.im))) (*.f64 y.re (atan2.f64 x.im x.re)))
(*.f64 (*.f64 (atan2.f64 x.im x.re) y.re) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))))
(*.f64 (atan2.f64 x.im x.re) (*.f64 y.re (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))))
(*.f64 (atan2.f64 x.im x.re) (/.f64 y.re (exp.f64 (*.f64 y.im (atan2.f64 x.im x.re)))))
(*.f64 (exp.f64 (*.f64 -1 (*.f64 (atan2.f64 x.im x.re) y.im))) (*.f64 y.re (atan2.f64 x.im x.re)))
(*.f64 (*.f64 (atan2.f64 x.im x.re) y.re) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))))
(*.f64 (atan2.f64 x.im x.re) (*.f64 y.re (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))))
(*.f64 (atan2.f64 x.im x.re) (/.f64 y.re (exp.f64 (*.f64 y.im (atan2.f64 x.im x.re)))))
(*.f64 (exp.f64 (*.f64 -1 (*.f64 (atan2.f64 x.im x.re) y.im))) (*.f64 y.re (atan2.f64 x.im x.re)))
(*.f64 (*.f64 (atan2.f64 x.im x.re) y.re) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))))
(*.f64 (atan2.f64 x.im x.re) (*.f64 y.re (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))))
(*.f64 (atan2.f64 x.im x.re) (/.f64 y.re (exp.f64 (*.f64 y.im (atan2.f64 x.im x.re)))))
(*.f64 (exp.f64 (*.f64 -1 (*.f64 (atan2.f64 x.im x.re) y.im))) (*.f64 y.re (atan2.f64 x.im x.re)))
(*.f64 (*.f64 (atan2.f64 x.im x.re) y.re) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))))
(*.f64 (atan2.f64 x.im x.re) (*.f64 y.re (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))))
(*.f64 (atan2.f64 x.im x.re) (/.f64 y.re (exp.f64 (*.f64 y.im (atan2.f64 x.im x.re)))))
(*.f64 (exp.f64 (*.f64 -1 (*.f64 (atan2.f64 x.im x.re) y.im))) (*.f64 y.re (atan2.f64 x.im x.re)))
(*.f64 (*.f64 (atan2.f64 x.im x.re) y.re) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))))
(*.f64 (atan2.f64 x.im x.re) (*.f64 y.re (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))))
(*.f64 (atan2.f64 x.im x.re) (/.f64 y.re (exp.f64 (*.f64 y.im (atan2.f64 x.im x.re)))))
(*.f64 (exp.f64 (*.f64 -1 (*.f64 (atan2.f64 x.im x.re) y.im))) (*.f64 y.re (atan2.f64 x.im x.re)))
(*.f64 (*.f64 (atan2.f64 x.im x.re) y.re) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))))
(*.f64 (atan2.f64 x.im x.re) (*.f64 y.re (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))))
(*.f64 (atan2.f64 x.im x.re) (/.f64 y.re (exp.f64 (*.f64 y.im (atan2.f64 x.im x.re)))))
(*.f64 y.re (atan2.f64 x.im x.re))
(*.f64 (atan2.f64 x.im x.re) y.re)
(+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 -1 (*.f64 y.re (*.f64 (pow.f64 (atan2.f64 x.im x.re) 2) y.im))))
(+.f64 (*.f64 (atan2.f64 x.im x.re) y.re) (*.f64 -1 (*.f64 y.re (*.f64 y.im (pow.f64 (atan2.f64 x.im x.re) 2)))))
(*.f64 y.re (+.f64 (atan2.f64 x.im x.re) (*.f64 (pow.f64 (atan2.f64 x.im x.re) 2) (neg.f64 y.im))))
(+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (+.f64 (*.f64 1/2 (*.f64 y.re (*.f64 (pow.f64 (atan2.f64 x.im x.re) 3) (pow.f64 y.im 2)))) (*.f64 -1 (*.f64 y.re (*.f64 (pow.f64 (atan2.f64 x.im x.re) 2) y.im)))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 (atan2.f64 x.im x.re) 3) (*.f64 (pow.f64 y.im 2) y.re))) (+.f64 (*.f64 (atan2.f64 x.im x.re) y.re) (*.f64 -1 (*.f64 y.re (*.f64 y.im (pow.f64 (atan2.f64 x.im x.re) 2))))))
(+.f64 (*.f64 y.re (+.f64 (atan2.f64 x.im x.re) (*.f64 (pow.f64 (atan2.f64 x.im x.re) 2) (neg.f64 y.im)))) (*.f64 y.re (*.f64 1/2 (*.f64 (pow.f64 (atan2.f64 x.im x.re) 3) (pow.f64 y.im 2)))))
(*.f64 y.re (+.f64 (+.f64 (atan2.f64 x.im x.re) (*.f64 (pow.f64 (atan2.f64 x.im x.re) 2) (neg.f64 y.im))) (*.f64 1/2 (*.f64 (pow.f64 (atan2.f64 x.im x.re) 3) (pow.f64 y.im 2)))))
(*.f64 y.re (+.f64 (*.f64 (pow.f64 (atan2.f64 x.im x.re) 2) (neg.f64 y.im)) (+.f64 (atan2.f64 x.im x.re) (*.f64 1/2 (*.f64 (pow.f64 (atan2.f64 x.im x.re) 3) (pow.f64 y.im 2))))))
(+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (+.f64 (*.f64 1/2 (*.f64 y.re (*.f64 (pow.f64 (atan2.f64 x.im x.re) 3) (pow.f64 y.im 2)))) (+.f64 (*.f64 -1 (*.f64 y.re (*.f64 (pow.f64 (atan2.f64 x.im x.re) 2) y.im))) (*.f64 -1/6 (*.f64 y.re (*.f64 (pow.f64 (atan2.f64 x.im x.re) 4) (pow.f64 y.im 3)))))))
(+.f64 (*.f64 (atan2.f64 x.im x.re) y.re) (+.f64 (*.f64 -1 (*.f64 y.re (*.f64 y.im (pow.f64 (atan2.f64 x.im x.re) 2)))) (+.f64 (*.f64 y.re (*.f64 -1/6 (*.f64 (pow.f64 (atan2.f64 x.im x.re) 4) (pow.f64 y.im 3)))) (*.f64 1/2 (*.f64 (pow.f64 (atan2.f64 x.im x.re) 3) (*.f64 (pow.f64 y.im 2) y.re))))))
(+.f64 (*.f64 (atan2.f64 x.im x.re) y.re) (+.f64 (*.f64 y.re (*.f64 1/2 (*.f64 (pow.f64 (atan2.f64 x.im x.re) 3) (pow.f64 y.im 2)))) (+.f64 (*.f64 y.re (*.f64 (pow.f64 (atan2.f64 x.im x.re) 2) (neg.f64 y.im))) (*.f64 -1/6 (*.f64 y.re (*.f64 (pow.f64 (atan2.f64 x.im x.re) 4) (pow.f64 y.im 3)))))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 y.im 3) (*.f64 y.re (pow.f64 (atan2.f64 x.im x.re) 4)))) (*.f64 y.re (+.f64 (+.f64 (atan2.f64 x.im x.re) (*.f64 (pow.f64 (atan2.f64 x.im x.re) 2) (neg.f64 y.im))) (*.f64 1/2 (*.f64 (pow.f64 (atan2.f64 x.im x.re) 3) (pow.f64 y.im 2))))))
(*.f64 y.re (+.f64 (*.f64 (pow.f64 (atan2.f64 x.im x.re) 2) (neg.f64 y.im)) (+.f64 (atan2.f64 x.im x.re) (+.f64 (*.f64 1/2 (*.f64 (pow.f64 (atan2.f64 x.im x.re) 3) (pow.f64 y.im 2))) (*.f64 -1/6 (*.f64 (pow.f64 (atan2.f64 x.im x.re) 4) (pow.f64 y.im 3)))))))
(*.f64 y.re (+.f64 (atan2.f64 x.im x.re) (+.f64 (*.f64 1/2 (*.f64 (pow.f64 (atan2.f64 x.im x.re) 3) (pow.f64 y.im 2))) (+.f64 (*.f64 (pow.f64 (atan2.f64 x.im x.re) 2) (neg.f64 y.im)) (*.f64 -1/6 (*.f64 (pow.f64 (atan2.f64 x.im x.re) 4) (pow.f64 y.im 3)))))))
(*.f64 (exp.f64 (*.f64 -1 (*.f64 (atan2.f64 x.im x.re) y.im))) (*.f64 y.re (atan2.f64 x.im x.re)))
(*.f64 (*.f64 (atan2.f64 x.im x.re) y.re) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))))
(*.f64 (atan2.f64 x.im x.re) (*.f64 y.re (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))))
(*.f64 (atan2.f64 x.im x.re) (/.f64 y.re (exp.f64 (*.f64 y.im (atan2.f64 x.im x.re)))))
(*.f64 (exp.f64 (*.f64 -1 (*.f64 (atan2.f64 x.im x.re) y.im))) (*.f64 y.re (atan2.f64 x.im x.re)))
(*.f64 (*.f64 (atan2.f64 x.im x.re) y.re) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))))
(*.f64 (atan2.f64 x.im x.re) (*.f64 y.re (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))))
(*.f64 (atan2.f64 x.im x.re) (/.f64 y.re (exp.f64 (*.f64 y.im (atan2.f64 x.im x.re)))))
(*.f64 (exp.f64 (*.f64 -1 (*.f64 (atan2.f64 x.im x.re) y.im))) (*.f64 y.re (atan2.f64 x.im x.re)))
(*.f64 (*.f64 (atan2.f64 x.im x.re) y.re) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))))
(*.f64 (atan2.f64 x.im x.re) (*.f64 y.re (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))))
(*.f64 (atan2.f64 x.im x.re) (/.f64 y.re (exp.f64 (*.f64 y.im (atan2.f64 x.im x.re)))))
(*.f64 (exp.f64 (*.f64 -1 (*.f64 (atan2.f64 x.im x.re) y.im))) (*.f64 y.re (atan2.f64 x.im x.re)))
(*.f64 (*.f64 (atan2.f64 x.im x.re) y.re) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))))
(*.f64 (atan2.f64 x.im x.re) (*.f64 y.re (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))))
(*.f64 (atan2.f64 x.im x.re) (/.f64 y.re (exp.f64 (*.f64 y.im (atan2.f64 x.im x.re)))))
(*.f64 y.re (*.f64 (exp.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))) (atan2.f64 x.im x.re)))
(*.f64 (*.f64 (atan2.f64 x.im x.re) y.re) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))))
(*.f64 (atan2.f64 x.im x.re) (*.f64 y.re (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))))
(*.f64 (atan2.f64 x.im x.re) (/.f64 y.re (exp.f64 (*.f64 y.im (atan2.f64 x.im x.re)))))
(*.f64 y.re (*.f64 (exp.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))) (atan2.f64 x.im x.re)))
(*.f64 (*.f64 (atan2.f64 x.im x.re) y.re) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))))
(*.f64 (atan2.f64 x.im x.re) (*.f64 y.re (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))))
(*.f64 (atan2.f64 x.im x.re) (/.f64 y.re (exp.f64 (*.f64 y.im (atan2.f64 x.im x.re)))))
(*.f64 y.re (*.f64 (exp.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))) (atan2.f64 x.im x.re)))
(*.f64 (*.f64 (atan2.f64 x.im x.re) y.re) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))))
(*.f64 (atan2.f64 x.im x.re) (*.f64 y.re (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))))
(*.f64 (atan2.f64 x.im x.re) (/.f64 y.re (exp.f64 (*.f64 y.im (atan2.f64 x.im x.re)))))
(*.f64 y.re (*.f64 (exp.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))) (atan2.f64 x.im x.re)))
(*.f64 (*.f64 (atan2.f64 x.im x.re) y.re) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))))
(*.f64 (atan2.f64 x.im x.re) (*.f64 y.re (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))))
(*.f64 (atan2.f64 x.im x.re) (/.f64 y.re (exp.f64 (*.f64 y.im (atan2.f64 x.im x.re)))))
(*.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))))
(*.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))))
(/.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(*.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))))
(*.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))))
(/.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(*.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))))
(*.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))))
(/.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(*.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))))
(*.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))))
(/.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(*.f64 (exp.f64 (*.f64 -1 (*.f64 (atan2.f64 x.im x.re) y.im))) (atan2.f64 x.im x.re))
(*.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))))
(/.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(*.f64 (exp.f64 (*.f64 -1 (*.f64 (atan2.f64 x.im x.re) y.im))) (atan2.f64 x.im x.re))
(*.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))))
(/.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(*.f64 (exp.f64 (*.f64 -1 (*.f64 (atan2.f64 x.im x.re) y.im))) (atan2.f64 x.im x.re))
(*.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))))
(/.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(*.f64 (exp.f64 (*.f64 -1 (*.f64 (atan2.f64 x.im x.re) y.im))) (atan2.f64 x.im x.re))
(*.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))))
(/.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(*.f64 (exp.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))) (atan2.f64 x.im x.re))
(*.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))))
(/.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(*.f64 (exp.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))) (atan2.f64 x.im x.re))
(*.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))))
(/.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(*.f64 (exp.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))) (atan2.f64 x.im x.re))
(*.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))))
(/.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(*.f64 (exp.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))) (atan2.f64 x.im x.re))
(*.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))))
(/.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(*.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))))
(*.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))))
(/.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(*.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))))
(*.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))))
(/.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(*.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))))
(*.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))))
(/.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(*.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))))
(*.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))))
(/.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(*.f64 (exp.f64 (*.f64 -1 (*.f64 (atan2.f64 x.im x.re) y.im))) (atan2.f64 x.im x.re))
(*.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))))
(/.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(*.f64 (exp.f64 (*.f64 -1 (*.f64 (atan2.f64 x.im x.re) y.im))) (atan2.f64 x.im x.re))
(*.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))))
(/.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(*.f64 (exp.f64 (*.f64 -1 (*.f64 (atan2.f64 x.im x.re) y.im))) (atan2.f64 x.im x.re))
(*.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))))
(/.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(*.f64 (exp.f64 (*.f64 -1 (*.f64 (atan2.f64 x.im x.re) y.im))) (atan2.f64 x.im x.re))
(*.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))))
(/.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(*.f64 (exp.f64 (*.f64 -1 (*.f64 (atan2.f64 x.im x.re) y.im))) (atan2.f64 x.im x.re))
(*.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))))
(/.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(*.f64 (exp.f64 (*.f64 -1 (*.f64 (atan2.f64 x.im x.re) y.im))) (atan2.f64 x.im x.re))
(*.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))))
(/.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(*.f64 (exp.f64 (*.f64 -1 (*.f64 (atan2.f64 x.im x.re) y.im))) (atan2.f64 x.im x.re))
(*.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))))
(/.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(*.f64 (exp.f64 (*.f64 -1 (*.f64 (atan2.f64 x.im x.re) y.im))) (atan2.f64 x.im x.re))
(*.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))))
(/.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(atan2.f64 x.im x.re)
(+.f64 (*.f64 -1 (*.f64 y.im (pow.f64 (atan2.f64 x.im x.re) 2))) (atan2.f64 x.im x.re))
(+.f64 (atan2.f64 x.im x.re) (*.f64 -1 (*.f64 y.im (pow.f64 (atan2.f64 x.im x.re) 2))))
(+.f64 (atan2.f64 x.im x.re) (*.f64 (pow.f64 (atan2.f64 x.im x.re) 2) (neg.f64 y.im)))
(+.f64 (*.f64 -1 (*.f64 y.im (pow.f64 (atan2.f64 x.im x.re) 2))) (+.f64 (atan2.f64 x.im x.re) (*.f64 1/2 (*.f64 (pow.f64 y.im 2) (pow.f64 (atan2.f64 x.im x.re) 3)))))
(+.f64 (atan2.f64 x.im x.re) (+.f64 (*.f64 1/2 (*.f64 (pow.f64 (atan2.f64 x.im x.re) 3) (pow.f64 y.im 2))) (*.f64 -1 (*.f64 y.im (pow.f64 (atan2.f64 x.im x.re) 2)))))
(+.f64 (*.f64 (pow.f64 (atan2.f64 x.im x.re) 2) (neg.f64 y.im)) (+.f64 (atan2.f64 x.im x.re) (*.f64 1/2 (*.f64 (pow.f64 (atan2.f64 x.im x.re) 3) (pow.f64 y.im 2)))))
(+.f64 (+.f64 (atan2.f64 x.im x.re) (*.f64 (pow.f64 (atan2.f64 x.im x.re) 2) (neg.f64 y.im))) (*.f64 1/2 (*.f64 (pow.f64 (atan2.f64 x.im x.re) 3) (pow.f64 y.im 2))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 y.im 3) (pow.f64 (atan2.f64 x.im x.re) 4))) (+.f64 (*.f64 -1 (*.f64 y.im (pow.f64 (atan2.f64 x.im x.re) 2))) (+.f64 (atan2.f64 x.im x.re) (*.f64 1/2 (*.f64 (pow.f64 y.im 2) (pow.f64 (atan2.f64 x.im x.re) 3))))))
(+.f64 (*.f64 -1 (*.f64 y.im (pow.f64 (atan2.f64 x.im x.re) 2))) (+.f64 (+.f64 (atan2.f64 x.im x.re) (*.f64 1/2 (*.f64 (pow.f64 (atan2.f64 x.im x.re) 3) (pow.f64 y.im 2)))) (*.f64 -1/6 (*.f64 (pow.f64 (atan2.f64 x.im x.re) 4) (pow.f64 y.im 3)))))
(+.f64 (+.f64 (*.f64 (pow.f64 (atan2.f64 x.im x.re) 2) (neg.f64 y.im)) (+.f64 (atan2.f64 x.im x.re) (*.f64 1/2 (*.f64 (pow.f64 (atan2.f64 x.im x.re) 3) (pow.f64 y.im 2))))) (*.f64 -1/6 (*.f64 (pow.f64 (atan2.f64 x.im x.re) 4) (pow.f64 y.im 3))))
(+.f64 (*.f64 (pow.f64 (atan2.f64 x.im x.re) 2) (neg.f64 y.im)) (+.f64 (atan2.f64 x.im x.re) (+.f64 (*.f64 1/2 (*.f64 (pow.f64 (atan2.f64 x.im x.re) 3) (pow.f64 y.im 2))) (*.f64 -1/6 (*.f64 (pow.f64 (atan2.f64 x.im x.re) 4) (pow.f64 y.im 3))))))
(+.f64 (atan2.f64 x.im x.re) (+.f64 (*.f64 1/2 (*.f64 (pow.f64 (atan2.f64 x.im x.re) 3) (pow.f64 y.im 2))) (+.f64 (*.f64 (pow.f64 (atan2.f64 x.im x.re) 2) (neg.f64 y.im)) (*.f64 -1/6 (*.f64 (pow.f64 (atan2.f64 x.im x.re) 4) (pow.f64 y.im 3))))))
(*.f64 (exp.f64 (*.f64 -1 (*.f64 (atan2.f64 x.im x.re) y.im))) (atan2.f64 x.im x.re))
(*.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))))
(/.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(*.f64 (exp.f64 (*.f64 -1 (*.f64 (atan2.f64 x.im x.re) y.im))) (atan2.f64 x.im x.re))
(*.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))))
(/.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(*.f64 (exp.f64 (*.f64 -1 (*.f64 (atan2.f64 x.im x.re) y.im))) (atan2.f64 x.im x.re))
(*.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))))
(/.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(*.f64 (exp.f64 (*.f64 -1 (*.f64 (atan2.f64 x.im x.re) y.im))) (atan2.f64 x.im x.re))
(*.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))))
(/.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(*.f64 (exp.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))) (atan2.f64 x.im x.re))
(*.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))))
(/.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(*.f64 (exp.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))) (atan2.f64 x.im x.re))
(*.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))))
(/.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(*.f64 (exp.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))) (atan2.f64 x.im x.re))
(*.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))))
(/.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(*.f64 (exp.f64 (*.f64 -1 (*.f64 y.im (atan2.f64 x.im x.re)))) (atan2.f64 x.im x.re))
(*.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))))
(/.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(+.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))) 0)
(*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))
(+.f64 0 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))
(*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))
(+.f64 -1 (-.f64 1 (*.f64 y.im (atan2.f64 x.im x.re))))
(*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))
(+.f64 (*.f64 y.im (*.f64 (atan2.f64 x.im x.re) -1/2)) (*.f64 y.im (*.f64 (atan2.f64 x.im x.re) -1/2)))
(*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))
(-.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))) 0)
(*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))
(-.f64 0 (*.f64 y.im (atan2.f64 x.im x.re)))
(*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))
(/.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))) 1)
(*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))
(/.f64 (*.f64 y.im (*.f64 (atan2.f64 x.im x.re) -2)) 2)
(*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))
(/.f64 (*.f64 y.im (*.f64 (atan2.f64 x.im x.re) -4)) 4)
(*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))
(/.f64 (*.f64 y.im (atan2.f64 x.im x.re)) -1)
(*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))
(/.f64 (*.f64 2 (*.f64 y.im (*.f64 (atan2.f64 x.im x.re) -4))) 8)
(*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 y.im (*.f64 (atan2.f64 x.im x.re) -4)))) 16)
(*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 y.im (*.f64 (atan2.f64 x.im x.re) -4)))) (*.f64 2 (*.f64 2 (*.f64 y.im (*.f64 (atan2.f64 x.im x.re) -4))))) 32)
(*.f64 y.im (neg.f64 (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 (atan2.f64 x.im x.re) (*.f64 y.re (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))))) 0)
(*.f64 (*.f64 (atan2.f64 x.im x.re) y.re) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))))
(*.f64 (atan2.f64 x.im x.re) (*.f64 y.re (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))))
(*.f64 (atan2.f64 x.im x.re) (/.f64 y.re (exp.f64 (*.f64 y.im (atan2.f64 x.im x.re)))))
(+.f64 0 (*.f64 (atan2.f64 x.im x.re) (*.f64 y.re (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))))))
(*.f64 (*.f64 (atan2.f64 x.im x.re) y.re) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))))
(*.f64 (atan2.f64 x.im x.re) (*.f64 y.re (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))))
(*.f64 (atan2.f64 x.im x.re) (/.f64 y.re (exp.f64 (*.f64 y.im (atan2.f64 x.im x.re)))))
(+.f64 (*.f64 (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))) (/.f64 (*.f64 (atan2.f64 x.im x.re) y.re) 2)) (*.f64 (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))) (/.f64 (*.f64 (atan2.f64 x.im x.re) y.re) 2)))
(*.f64 (*.f64 (atan2.f64 x.im x.re) y.re) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))))
(*.f64 (atan2.f64 x.im x.re) (*.f64 y.re (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))))
(*.f64 (atan2.f64 x.im x.re) (/.f64 y.re (exp.f64 (*.f64 y.im (atan2.f64 x.im x.re)))))
(-.f64 (*.f64 (atan2.f64 x.im x.re) (*.f64 y.re (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))))) 0)
(*.f64 (*.f64 (atan2.f64 x.im x.re) y.re) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))))
(*.f64 (atan2.f64 x.im x.re) (*.f64 y.re (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))))
(*.f64 (atan2.f64 x.im x.re) (/.f64 y.re (exp.f64 (*.f64 y.im (atan2.f64 x.im x.re)))))
(/.f64 (*.f64 (atan2.f64 x.im x.re) (*.f64 y.re (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))))) 1)
(*.f64 (*.f64 (atan2.f64 x.im x.re) y.re) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))))
(*.f64 (atan2.f64 x.im x.re) (*.f64 y.re (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))))
(*.f64 (atan2.f64 x.im x.re) (/.f64 y.re (exp.f64 (*.f64 y.im (atan2.f64 x.im x.re)))))
(/.f64 (*.f64 (atan2.f64 x.im x.re) (*.f64 y.re (*.f64 (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))) 2))) 2)
(*.f64 (*.f64 (atan2.f64 x.im x.re) y.re) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))))
(*.f64 (atan2.f64 x.im x.re) (*.f64 y.re (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))))
(*.f64 (atan2.f64 x.im x.re) (/.f64 y.re (exp.f64 (*.f64 y.im (atan2.f64 x.im x.re)))))
(/.f64 (*.f64 (atan2.f64 x.im x.re) (*.f64 (*.f64 y.re (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))) 4)) 4)
(*.f64 (*.f64 (atan2.f64 x.im x.re) y.re) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))))
(*.f64 (atan2.f64 x.im x.re) (*.f64 y.re (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))))
(*.f64 (atan2.f64 x.im x.re) (/.f64 y.re (exp.f64 (*.f64 y.im (atan2.f64 x.im x.re)))))
(/.f64 (*.f64 2 (*.f64 (atan2.f64 x.im x.re) (*.f64 (*.f64 y.re (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))) 4))) 8)
(*.f64 (*.f64 (atan2.f64 x.im x.re) y.re) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))))
(*.f64 (atan2.f64 x.im x.re) (*.f64 y.re (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))))
(*.f64 (atan2.f64 x.im x.re) (/.f64 y.re (exp.f64 (*.f64 y.im (atan2.f64 x.im x.re)))))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (atan2.f64 x.im x.re) (*.f64 (*.f64 y.re (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))) 4)))) 16)
(*.f64 (*.f64 (atan2.f64 x.im x.re) y.re) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))))
(*.f64 (atan2.f64 x.im x.re) (*.f64 y.re (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))))
(*.f64 (atan2.f64 x.im x.re) (/.f64 y.re (exp.f64 (*.f64 y.im (atan2.f64 x.im x.re)))))
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (atan2.f64 x.im x.re) (*.f64 (*.f64 y.re (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))) 4)))) (*.f64 2 (*.f64 2 (*.f64 (atan2.f64 x.im x.re) (*.f64 (*.f64 y.re (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))) 4))))) 32)
(*.f64 (*.f64 (atan2.f64 x.im x.re) y.re) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))))
(*.f64 (atan2.f64 x.im x.re) (*.f64 y.re (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))))
(*.f64 (atan2.f64 x.im x.re) (/.f64 y.re (exp.f64 (*.f64 y.im (atan2.f64 x.im x.re)))))
(+.f64 (*.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))) 0)
(*.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))))
(/.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(+.f64 0 (*.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))))
(*.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))))
(/.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(+.f64 (*.f64 (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))) (*.f64 (atan2.f64 x.im x.re) 1/2)) (*.f64 (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))) (*.f64 (atan2.f64 x.im x.re) 1/2)))
(*.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))))
(/.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(-.f64 (*.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))) 0)
(*.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))))
(/.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(/.f64 (*.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))) 1)
(*.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))))
(/.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(/.f64 (*.f64 (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))) (*.f64 (atan2.f64 x.im x.re) 2)) 2)
(*.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))))
(/.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(/.f64 (*.f64 (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))) (*.f64 (atan2.f64 x.im x.re) 4)) 4)
(*.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))))
(/.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(/.f64 (*.f64 2 (*.f64 (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))) (*.f64 (atan2.f64 x.im x.re) 4))) 8)
(*.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))))
(/.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))) (*.f64 (atan2.f64 x.im x.re) 4)))) 16)
(*.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))))
(/.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))) (*.f64 (atan2.f64 x.im x.re) 4)))) (*.f64 2 (*.f64 2 (*.f64 (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))) (*.f64 (atan2.f64 x.im x.re) 4))))) 32)
(*.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re)))))
(/.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 y.im (atan2.f64 x.im x.re))))

localize14.0ms (0%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.4b
(*.f64 (pow.f64 (neg.f64 x.im) y.re) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))))
1.2b
(*.f64 y.re (atan2.f64 x.im x.re))
17.7b
(sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))
Compiler

Compiled 38 to 10 computations (73.7% saved)

series4.0ms (0%)

Counts
1 → 24
Calls

9 calls:

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

rewrite96.0ms (0.2%)

Algorithm
batch-egg-rewrite
Rules
1878×bool.json-1
1878×bool.json-2
982×rational.json-simplify-35
976×rational.json-1
976×rational.json-2
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01233
112333
234133
371833
4152633
5343433
6722933
Stop Event
node limit
Counts
1 → 10
Calls
Call 1
Inputs
(*.f64 (pow.f64 (neg.f64 x.im) y.re) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (pow.f64 (neg.f64 x.im) y.re) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (pow.f64 (neg.f64 x.im) y.re) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (pow.f64 (neg.f64 x.im) y.re) (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 1/2)) (*.f64 (pow.f64 (neg.f64 x.im) y.re) (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (pow.f64 (neg.f64 x.im) y.re) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 (neg.f64 x.im) y.re) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 (pow.f64 (neg.f64 x.im) y.re) 2)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 (neg.f64 x.im) y.re) (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 4)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (pow.f64 (neg.f64 x.im) y.re) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))) 8) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (*.f64 (pow.f64 (neg.f64 x.im) y.re) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))) 8)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 (*.f64 (pow.f64 (neg.f64 x.im) y.re) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))) 8)) (*.f64 2 (*.f64 (*.f64 (pow.f64 (neg.f64 x.im) y.re) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))) 8))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x not (not (*.f64 (pow.f64 (neg.f64 x.im) y.re) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))))))))) (#(struct:change #<rule egg-rr> (2) ((x and (*.f64 (pow.f64 (neg.f64 x.im) y.re) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))) (*.f64 (pow.f64 (neg.f64 x.im) y.re) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))))))) (#(struct:change #<rule egg-rr> (2) ((x or (*.f64 (pow.f64 (neg.f64 x.im) y.re) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))) (*.f64 (pow.f64 (neg.f64 x.im) y.re) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))))))))

simplify369.0ms (0.7%)

Algorithm
egg-herbie
Rules
1698×rational.json-simplify-35
1226×rational.json-simplify-2
1022×rational.json-simplify-48
1004×rational.json-simplify-59
776×rational.json-simplify-1
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
0891616
11901576
23331564
36621564
420661548
533851548
639361548
745091548
858381548
969871548
Stop Event
node limit
Counts
34 → 34
Calls
Call 1
Inputs
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (*.f64 y.re (+.f64 (log.f64 -1) (log.f64 x.im)))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (*.f64 y.re (+.f64 (log.f64 -1) (log.f64 x.im)))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (*.f64 y.re (+.f64 (log.f64 -1) (log.f64 x.im)))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (*.f64 y.re (+.f64 (log.f64 -1) (log.f64 x.im)))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 1 x.im)))) y.re)))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 1 x.im)))) y.re)))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 1 x.im)))) y.re)))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 1 x.im)))) y.re)))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (*.f64 -1 (*.f64 y.re (log.f64 (/.f64 -1 x.im))))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (*.f64 -1 (*.f64 y.re (log.f64 (/.f64 -1 x.im))))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (*.f64 -1 (*.f64 y.re (log.f64 (/.f64 -1 x.im))))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (*.f64 -1 (*.f64 y.re (log.f64 (/.f64 -1 x.im))))))
(*.f64 y.re (atan2.f64 x.im x.re))
(+.f64 (*.f64 (pow.f64 y.re 2) (*.f64 (atan2.f64 x.im x.re) (log.f64 (neg.f64 x.im)))) (*.f64 y.re (atan2.f64 x.im x.re)))
(+.f64 (*.f64 (pow.f64 y.re 2) (*.f64 (atan2.f64 x.im x.re) (log.f64 (neg.f64 x.im)))) (+.f64 (*.f64 (pow.f64 y.re 3) (+.f64 (*.f64 -1/6 (pow.f64 (atan2.f64 x.im x.re) 3)) (*.f64 1/2 (*.f64 (atan2.f64 x.im x.re) (pow.f64 (log.f64 (neg.f64 x.im)) 2))))) (*.f64 y.re (atan2.f64 x.im x.re))))
(+.f64 (*.f64 (pow.f64 y.re 2) (*.f64 (atan2.f64 x.im x.re) (log.f64 (neg.f64 x.im)))) (+.f64 (*.f64 (pow.f64 y.re 3) (+.f64 (*.f64 -1/6 (pow.f64 (atan2.f64 x.im x.re) 3)) (*.f64 1/2 (*.f64 (atan2.f64 x.im x.re) (pow.f64 (log.f64 (neg.f64 x.im)) 2))))) (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (+.f64 (*.f64 1/6 (*.f64 (atan2.f64 x.im x.re) (pow.f64 (log.f64 (neg.f64 x.im)) 3))) (*.f64 -1/6 (*.f64 (pow.f64 (atan2.f64 x.im x.re) 3) (log.f64 (neg.f64 x.im))))) (pow.f64 y.re 4)))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (pow.f64 (neg.f64 x.im) y.re))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (pow.f64 (neg.f64 x.im) y.re))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (pow.f64 (neg.f64 x.im) y.re))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (pow.f64 (neg.f64 x.im) y.re))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (pow.f64 (neg.f64 x.im) y.re))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (pow.f64 (neg.f64 x.im) y.re))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (pow.f64 (neg.f64 x.im) y.re))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (pow.f64 (neg.f64 x.im) y.re))
(+.f64 (*.f64 (pow.f64 (neg.f64 x.im) y.re) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))) 0)
(+.f64 0 (*.f64 (pow.f64 (neg.f64 x.im) y.re) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))))
(+.f64 (*.f64 (pow.f64 (neg.f64 x.im) y.re) (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 1/2)) (*.f64 (pow.f64 (neg.f64 x.im) y.re) (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 1/2)))
(-.f64 (*.f64 (pow.f64 (neg.f64 x.im) y.re) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))) 0)
(/.f64 (*.f64 (pow.f64 (neg.f64 x.im) y.re) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))) 1)
(/.f64 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 (pow.f64 (neg.f64 x.im) y.re) 2)) 2)
(/.f64 (*.f64 (pow.f64 (neg.f64 x.im) y.re) (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 4)) 4)
(/.f64 (*.f64 (*.f64 (pow.f64 (neg.f64 x.im) y.re) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))) 8) 8)
(/.f64 (*.f64 2 (*.f64 (*.f64 (pow.f64 (neg.f64 x.im) y.re) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))) 8)) 16)
(/.f64 (+.f64 (*.f64 2 (*.f64 (*.f64 (pow.f64 (neg.f64 x.im) y.re) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))) 8)) (*.f64 2 (*.f64 (*.f64 (pow.f64 (neg.f64 x.im) y.re) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))) 8))) 32)
Outputs
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (*.f64 y.re (+.f64 (log.f64 -1) (log.f64 x.im)))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (*.f64 y.re (+.f64 (log.f64 -1) (log.f64 x.im)))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (*.f64 y.re (+.f64 (log.f64 -1) (log.f64 x.im)))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (*.f64 y.re (+.f64 (log.f64 -1) (log.f64 x.im)))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 1 x.im)))) y.re)))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (*.f64 y.re (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 1 x.im)))))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (*.f64 y.re (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 1 x.im)))))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 1 x.im)))) y.re)))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (*.f64 y.re (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 1 x.im)))))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (*.f64 y.re (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 1 x.im)))))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 1 x.im)))) y.re)))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (*.f64 y.re (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 1 x.im)))))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (*.f64 y.re (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 1 x.im)))))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 1 x.im)))) y.re)))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (*.f64 y.re (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 1 x.im)))))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (*.f64 y.re (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 1 x.im)))))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (*.f64 -1 (*.f64 y.re (log.f64 (/.f64 -1 x.im))))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (*.f64 y.re (*.f64 (log.f64 (/.f64 -1 x.im)) -1))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (*.f64 y.re (neg.f64 (log.f64 (/.f64 -1 x.im))))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (*.f64 (log.f64 (/.f64 -1 x.im)) (neg.f64 y.re))))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (*.f64 y.re (log.f64 (/.f64 -1 x.im)))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (*.f64 -1 (*.f64 y.re (log.f64 (/.f64 -1 x.im))))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (*.f64 y.re (*.f64 (log.f64 (/.f64 -1 x.im)) -1))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (*.f64 y.re (neg.f64 (log.f64 (/.f64 -1 x.im))))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (*.f64 (log.f64 (/.f64 -1 x.im)) (neg.f64 y.re))))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (*.f64 y.re (log.f64 (/.f64 -1 x.im)))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (*.f64 -1 (*.f64 y.re (log.f64 (/.f64 -1 x.im))))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (*.f64 y.re (*.f64 (log.f64 (/.f64 -1 x.im)) -1))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (*.f64 y.re (neg.f64 (log.f64 (/.f64 -1 x.im))))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (*.f64 (log.f64 (/.f64 -1 x.im)) (neg.f64 y.re))))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (*.f64 y.re (log.f64 (/.f64 -1 x.im)))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (*.f64 -1 (*.f64 y.re (log.f64 (/.f64 -1 x.im))))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (*.f64 y.re (*.f64 (log.f64 (/.f64 -1 x.im)) -1))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (*.f64 y.re (neg.f64 (log.f64 (/.f64 -1 x.im))))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (*.f64 (log.f64 (/.f64 -1 x.im)) (neg.f64 y.re))))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (*.f64 y.re (log.f64 (/.f64 -1 x.im)))))
(*.f64 y.re (atan2.f64 x.im x.re))
(+.f64 (*.f64 (pow.f64 y.re 2) (*.f64 (atan2.f64 x.im x.re) (log.f64 (neg.f64 x.im)))) (*.f64 y.re (atan2.f64 x.im x.re)))
(+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (pow.f64 y.re 2) (*.f64 (atan2.f64 x.im x.re) (log.f64 (neg.f64 x.im)))))
(*.f64 (atan2.f64 x.im x.re) (+.f64 y.re (*.f64 (pow.f64 y.re 2) (log.f64 (neg.f64 x.im)))))
(+.f64 (*.f64 (pow.f64 y.re 2) (*.f64 (atan2.f64 x.im x.re) (log.f64 (neg.f64 x.im)))) (+.f64 (*.f64 (pow.f64 y.re 3) (+.f64 (*.f64 -1/6 (pow.f64 (atan2.f64 x.im x.re) 3)) (*.f64 1/2 (*.f64 (atan2.f64 x.im x.re) (pow.f64 (log.f64 (neg.f64 x.im)) 2))))) (*.f64 y.re (atan2.f64 x.im x.re))))
(+.f64 (*.f64 (pow.f64 y.re 2) (*.f64 (atan2.f64 x.im x.re) (log.f64 (neg.f64 x.im)))) (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (pow.f64 y.re 3) (+.f64 (*.f64 -1/6 (pow.f64 (atan2.f64 x.im x.re) 3)) (*.f64 1/2 (*.f64 (atan2.f64 x.im x.re) (pow.f64 (log.f64 (neg.f64 x.im)) 2)))))))
(+.f64 (*.f64 (atan2.f64 x.im x.re) (+.f64 y.re (*.f64 (pow.f64 y.re 2) (log.f64 (neg.f64 x.im))))) (*.f64 (pow.f64 y.re 3) (+.f64 (*.f64 -1/6 (pow.f64 (atan2.f64 x.im x.re) 3)) (*.f64 (pow.f64 (log.f64 (neg.f64 x.im)) 2) (*.f64 (atan2.f64 x.im x.re) 1/2)))))
(+.f64 (*.f64 (atan2.f64 x.im x.re) (+.f64 y.re (*.f64 (pow.f64 y.re 2) (log.f64 (neg.f64 x.im))))) (*.f64 (pow.f64 y.re 3) (+.f64 (*.f64 -1/6 (pow.f64 (atan2.f64 x.im x.re) 3)) (*.f64 1/2 (*.f64 (atan2.f64 x.im x.re) (pow.f64 (log.f64 (neg.f64 x.im)) 2))))))
(+.f64 (*.f64 (pow.f64 y.re 2) (*.f64 (atan2.f64 x.im x.re) (log.f64 (neg.f64 x.im)))) (+.f64 (*.f64 (pow.f64 y.re 3) (+.f64 (*.f64 -1/6 (pow.f64 (atan2.f64 x.im x.re) 3)) (*.f64 1/2 (*.f64 (atan2.f64 x.im x.re) (pow.f64 (log.f64 (neg.f64 x.im)) 2))))) (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (+.f64 (*.f64 1/6 (*.f64 (atan2.f64 x.im x.re) (pow.f64 (log.f64 (neg.f64 x.im)) 3))) (*.f64 -1/6 (*.f64 (pow.f64 (atan2.f64 x.im x.re) 3) (log.f64 (neg.f64 x.im))))) (pow.f64 y.re 4)))))
(+.f64 (*.f64 (pow.f64 y.re 2) (*.f64 (atan2.f64 x.im x.re) (log.f64 (neg.f64 x.im)))) (+.f64 (*.f64 (pow.f64 y.re 3) (+.f64 (*.f64 -1/6 (pow.f64 (atan2.f64 x.im x.re) 3)) (*.f64 1/2 (*.f64 (atan2.f64 x.im x.re) (pow.f64 (log.f64 (neg.f64 x.im)) 2))))) (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (+.f64 (*.f64 (atan2.f64 x.im x.re) (*.f64 (pow.f64 (log.f64 (neg.f64 x.im)) 3) 1/6)) (*.f64 -1/6 (*.f64 (log.f64 (neg.f64 x.im)) (pow.f64 (atan2.f64 x.im x.re) 3)))) (pow.f64 y.re 4)))))
(+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (+.f64 (+.f64 (*.f64 (pow.f64 y.re 3) (+.f64 (*.f64 -1/6 (pow.f64 (atan2.f64 x.im x.re) 3)) (*.f64 (pow.f64 (log.f64 (neg.f64 x.im)) 2) (*.f64 (atan2.f64 x.im x.re) 1/2)))) (*.f64 (+.f64 (*.f64 (pow.f64 (log.f64 (neg.f64 x.im)) 3) (*.f64 (atan2.f64 x.im x.re) 1/6)) (*.f64 (log.f64 (neg.f64 x.im)) (*.f64 -1/6 (pow.f64 (atan2.f64 x.im x.re) 3)))) (pow.f64 y.re 4))) (*.f64 (atan2.f64 x.im x.re) (*.f64 (pow.f64 y.re 2) (log.f64 (neg.f64 x.im))))))
(+.f64 (*.f64 (pow.f64 y.re 3) (+.f64 (*.f64 -1/6 (pow.f64 (atan2.f64 x.im x.re) 3)) (*.f64 (pow.f64 (log.f64 (neg.f64 x.im)) 2) (*.f64 (atan2.f64 x.im x.re) 1/2)))) (+.f64 (*.f64 (+.f64 (*.f64 (atan2.f64 x.im x.re) (*.f64 1/6 (pow.f64 (log.f64 (neg.f64 x.im)) 3))) (*.f64 (log.f64 (neg.f64 x.im)) (*.f64 -1/6 (pow.f64 (atan2.f64 x.im x.re) 3)))) (pow.f64 y.re 4)) (*.f64 (atan2.f64 x.im x.re) (+.f64 y.re (*.f64 (pow.f64 y.re 2) (log.f64 (neg.f64 x.im)))))))
(+.f64 (*.f64 (atan2.f64 x.im x.re) (+.f64 y.re (*.f64 (pow.f64 y.re 2) (log.f64 (neg.f64 x.im))))) (+.f64 (*.f64 (pow.f64 y.re 3) (+.f64 (*.f64 -1/6 (pow.f64 (atan2.f64 x.im x.re) 3)) (*.f64 (pow.f64 (log.f64 (neg.f64 x.im)) 2) (*.f64 (atan2.f64 x.im x.re) 1/2)))) (*.f64 (+.f64 (*.f64 (pow.f64 (log.f64 (neg.f64 x.im)) 3) (*.f64 (atan2.f64 x.im x.re) 1/6)) (*.f64 (log.f64 (neg.f64 x.im)) (*.f64 -1/6 (pow.f64 (atan2.f64 x.im x.re) 3)))) (pow.f64 y.re 4))))
(+.f64 (*.f64 (atan2.f64 x.im x.re) (+.f64 y.re (*.f64 (pow.f64 y.re 2) (log.f64 (neg.f64 x.im))))) (+.f64 (*.f64 (pow.f64 y.re 3) (+.f64 (*.f64 -1/6 (pow.f64 (atan2.f64 x.im x.re) 3)) (*.f64 1/2 (*.f64 (atan2.f64 x.im x.re) (pow.f64 (log.f64 (neg.f64 x.im)) 2))))) (*.f64 (+.f64 (*.f64 1/6 (*.f64 (atan2.f64 x.im x.re) (pow.f64 (log.f64 (neg.f64 x.im)) 3))) (*.f64 (log.f64 (neg.f64 x.im)) (*.f64 -1/6 (pow.f64 (atan2.f64 x.im x.re) 3)))) (pow.f64 y.re 4))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (pow.f64 (neg.f64 x.im) y.re))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (pow.f64 (neg.f64 x.im) y.re))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (pow.f64 (neg.f64 x.im) y.re))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (pow.f64 (neg.f64 x.im) y.re))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (pow.f64 (neg.f64 x.im) y.re))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (pow.f64 (neg.f64 x.im) y.re))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (pow.f64 (neg.f64 x.im) y.re))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (pow.f64 (neg.f64 x.im) y.re))
(+.f64 (*.f64 (pow.f64 (neg.f64 x.im) y.re) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))) 0)
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (pow.f64 (neg.f64 x.im) y.re))
(+.f64 0 (*.f64 (pow.f64 (neg.f64 x.im) y.re) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (pow.f64 (neg.f64 x.im) y.re))
(+.f64 (*.f64 (pow.f64 (neg.f64 x.im) y.re) (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 1/2)) (*.f64 (pow.f64 (neg.f64 x.im) y.re) (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 1/2)))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (pow.f64 (neg.f64 x.im) y.re))
(-.f64 (*.f64 (pow.f64 (neg.f64 x.im) y.re) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))) 0)
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (pow.f64 (neg.f64 x.im) y.re))
(/.f64 (*.f64 (pow.f64 (neg.f64 x.im) y.re) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))) 1)
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (pow.f64 (neg.f64 x.im) y.re))
(/.f64 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 (pow.f64 (neg.f64 x.im) y.re) 2)) 2)
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (pow.f64 (neg.f64 x.im) y.re))
(/.f64 (*.f64 (pow.f64 (neg.f64 x.im) y.re) (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 4)) 4)
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (pow.f64 (neg.f64 x.im) y.re))
(/.f64 (*.f64 (*.f64 (pow.f64 (neg.f64 x.im) y.re) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))) 8) 8)
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (pow.f64 (neg.f64 x.im) y.re))
(/.f64 (*.f64 2 (*.f64 (*.f64 (pow.f64 (neg.f64 x.im) y.re) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))) 8)) 16)
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (pow.f64 (neg.f64 x.im) y.re))
(/.f64 (+.f64 (*.f64 2 (*.f64 (*.f64 (pow.f64 (neg.f64 x.im) y.re) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))) 8)) (*.f64 2 (*.f64 (*.f64 (pow.f64 (neg.f64 x.im) y.re) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))) 8))) 32)
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (pow.f64 (neg.f64 x.im) y.re))

localize18.0ms (0%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(exp.f64 (-.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)
1.2b
(*.f64 y.re (atan2.f64 x.im x.re))
2.2b
(*.f64 (atan2.f64 x.im x.re) y.im)
Compiler

Compiled 72 to 13 computations (81.9% saved)

series117.0ms (0.2%)

Counts
2 → 72
Calls

18 calls:

TimeVariablePointExpression
102.0ms
y.im
@0
(exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)))
10.0ms
y.re
@0
(*.f64 (log.f64 (neg.f64 x.re)) y.re)
0.0ms
y.re
@0
(exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)))
0.0ms
x.im
@0
(exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)))
0.0ms
x.re
@0
(*.f64 (log.f64 (neg.f64 x.re)) y.re)

rewrite116.0ms (0.2%)

Algorithm
batch-egg-rewrite
Rules
1798×bool.json-1
1798×bool.json-2
1756×rational.json-1
1084×bool.json-3
1058×rational.json-simplify-35
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01452
113752
235352
374752
4156252
5353652
6680752
Stop Event
node limit
Counts
2 → 41
Calls
Call 1
Inputs
(*.f64 (log.f64 (neg.f64 x.re)) y.re)
(exp.f64 (-.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 (neg.f64 x.re)) y.re) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (log.f64 (neg.f64 x.re)) y.re))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (log.f64 (neg.f64 x.re)) (*.f64 y.re 1/2)) (*.f64 (log.f64 (neg.f64 x.re)) (*.f64 y.re 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (log.f64 (neg.f64 x.re)) (+.f64 y.re y.re)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (log.f64 (neg.f64 x.re)) (*.f64 y.re 4)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (log.f64 (neg.f64 x.re)) (*.f64 y.re 4))) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (log.f64 (neg.f64 x.re)) (*.f64 y.re 4)))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (log.f64 (neg.f64 x.re)) (*.f64 y.re 4)))) (*.f64 2 (*.f64 2 (*.f64 (log.f64 (neg.f64 x.re)) (*.f64 y.re 4))))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x not (not (*.f64 (log.f64 (neg.f64 x.re)) y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x and (*.f64 (log.f64 (neg.f64 x.re)) y.re) (*.f64 (log.f64 (neg.f64 x.re)) y.re))))) (#(struct:change #<rule egg-rr> (2) ((x or (*.f64 (log.f64 (neg.f64 x.re)) y.re) (*.f64 (log.f64 (neg.f64 x.re)) y.re))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) 1/2) (*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.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 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.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 4 (/.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.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 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.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 (exp.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re)) (exp.f64 (neg.f64 (*.f64 (atan2.f64 x.im x.re) y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (exp.f64 (neg.f64 (*.f64 (atan2.f64 x.im x.re) y.im))) (exp.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (exp.f64 -1) (exp.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re) (-.f64 1 (*.f64 (atan2.f64 x.im x.re) y.im)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (exp.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re) (-.f64 1 (*.f64 (atan2.f64 x.im x.re) y.im)))) (exp.f64 -1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 (neg.f64 x.re)) y.re))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 -1 (-.f64 0 (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 (neg.f64 x.re)) y.re)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 2 (*.f64 2 (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 (neg.f64 x.re)) y.re)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) 2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 4 (+.f64 (*.f64 2 (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 (neg.f64 x.re)) y.re)))) (*.f64 2 (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 (neg.f64 x.re)) y.re))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.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 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) 4)) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (exp.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re)) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (exp.f64 (neg.f64 (*.f64 (atan2.f64 x.im x.re) y.im))) (exp.f64 (neg.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) 4))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) 4))) (*.f64 2 (*.f64 2 (*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) 4)))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 1 (exp.f64 (neg.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re)))) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x not (not (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)))))))) (#(struct:change #<rule egg-rr> (2) ((x and (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x or (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))))))))

simplify200.0ms (0.4%)

Algorithm
egg-herbie
Rules
1038×rational.json-simplify-44
986×rational.json-simplify-53
928×rational.json-simplify-1
884×rational.json-simplify-47
830×rational.json-simplify-2
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01584121
13394037
27513975
316613959
446843959
563623959
Stop Event
node limit
Counts
113 → 91
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)))
(exp.f64 (-.f64 (*.f64 (+.f64 (log.f64 -1) (log.f64 x.re)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)))
(exp.f64 (-.f64 (*.f64 (+.f64 (log.f64 -1) (log.f64 x.re)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)))
(exp.f64 (-.f64 (*.f64 (+.f64 (log.f64 -1) (log.f64 x.re)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)))
(exp.f64 (-.f64 (*.f64 (+.f64 (log.f64 -1) (log.f64 x.re)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)))
(exp.f64 (-.f64 (*.f64 y.re (+.f64 (*.f64 -1 (log.f64 (/.f64 1 x.re))) (log.f64 -1))) (*.f64 (atan2.f64 x.im x.re) y.im)))
(exp.f64 (-.f64 (*.f64 y.re (+.f64 (*.f64 -1 (log.f64 (/.f64 1 x.re))) (log.f64 -1))) (*.f64 (atan2.f64 x.im x.re) y.im)))
(exp.f64 (-.f64 (*.f64 y.re (+.f64 (*.f64 -1 (log.f64 (/.f64 1 x.re))) (log.f64 -1))) (*.f64 (atan2.f64 x.im x.re) y.im)))
(exp.f64 (-.f64 (*.f64 y.re (+.f64 (*.f64 -1 (log.f64 (/.f64 1 x.re))) (log.f64 -1))) (*.f64 (atan2.f64 x.im x.re) y.im)))
(exp.f64 (-.f64 (*.f64 -1 (*.f64 y.re (log.f64 (/.f64 -1 x.re)))) (*.f64 (atan2.f64 x.im x.re) y.im)))
(exp.f64 (-.f64 (*.f64 -1 (*.f64 y.re (log.f64 (/.f64 -1 x.re)))) (*.f64 (atan2.f64 x.im x.re) y.im)))
(exp.f64 (-.f64 (*.f64 -1 (*.f64 y.re (log.f64 (/.f64 -1 x.re)))) (*.f64 (atan2.f64 x.im x.re) y.im)))
(exp.f64 (-.f64 (*.f64 -1 (*.f64 y.re (log.f64 (/.f64 -1 x.re)))) (*.f64 (atan2.f64 x.im x.re) y.im)))
(exp.f64 (neg.f64 (*.f64 (atan2.f64 x.im x.re) y.im)))
(+.f64 (exp.f64 (neg.f64 (*.f64 (atan2.f64 x.im x.re) y.im))) (*.f64 (exp.f64 (neg.f64 (*.f64 (atan2.f64 x.im x.re) y.im))) (*.f64 y.re (log.f64 (neg.f64 x.re)))))
(+.f64 (exp.f64 (neg.f64 (*.f64 (atan2.f64 x.im x.re) y.im))) (+.f64 (*.f64 (exp.f64 (neg.f64 (*.f64 (atan2.f64 x.im x.re) y.im))) (*.f64 y.re (log.f64 (neg.f64 x.re)))) (*.f64 1/2 (*.f64 (exp.f64 (neg.f64 (*.f64 (atan2.f64 x.im x.re) y.im))) (*.f64 (pow.f64 y.re 2) (pow.f64 (log.f64 (neg.f64 x.re)) 2))))))
(+.f64 (*.f64 1/6 (*.f64 (exp.f64 (neg.f64 (*.f64 (atan2.f64 x.im x.re) y.im))) (*.f64 (pow.f64 y.re 3) (pow.f64 (log.f64 (neg.f64 x.re)) 3)))) (+.f64 (exp.f64 (neg.f64 (*.f64 (atan2.f64 x.im x.re) y.im))) (+.f64 (*.f64 (exp.f64 (neg.f64 (*.f64 (atan2.f64 x.im x.re) y.im))) (*.f64 y.re (log.f64 (neg.f64 x.re)))) (*.f64 1/2 (*.f64 (exp.f64 (neg.f64 (*.f64 (atan2.f64 x.im x.re) y.im))) (*.f64 (pow.f64 y.re 2) (pow.f64 (log.f64 (neg.f64 x.re)) 2)))))))
(exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 y.im (atan2.f64 x.im x.re))))
(exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 y.im (atan2.f64 x.im x.re))))
(exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 y.im (atan2.f64 x.im x.re))))
(exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 y.im (atan2.f64 x.im x.re))))
(exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 y.im (atan2.f64 x.im x.re))))
(exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 y.im (atan2.f64 x.im x.re))))
(exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 y.im (atan2.f64 x.im x.re))))
(exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 y.im (atan2.f64 x.im x.re))))
(exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 (atan2.f64 x.im x.re) y.im)))
(exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 (atan2.f64 x.im x.re) y.im)))
(exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 (atan2.f64 x.im x.re) y.im)))
(exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 (atan2.f64 x.im x.re) y.im)))
(exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 (atan2.f64 x.im x.re) y.im)))
(exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 (atan2.f64 x.im x.re) y.im)))
(exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 (atan2.f64 x.im x.re) y.im)))
(exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 (atan2.f64 x.im x.re) y.im)))
(exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 (atan2.f64 x.im x.re) y.im)))
(exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 (atan2.f64 x.im x.re) y.im)))
(exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 (atan2.f64 x.im x.re) y.im)))
(exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 (atan2.f64 x.im x.re) y.im)))
(pow.f64 (neg.f64 x.re) y.re)
(+.f64 (pow.f64 (neg.f64 x.re) y.re) (*.f64 -1 (*.f64 (pow.f64 (neg.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))))
(+.f64 (pow.f64 (neg.f64 x.re) y.re) (+.f64 (*.f64 -1 (*.f64 (pow.f64 (neg.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (*.f64 1/2 (*.f64 (pow.f64 (neg.f64 x.re) y.re) (*.f64 (pow.f64 (atan2.f64 x.im x.re) 2) (pow.f64 y.im 2))))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 (neg.f64 x.re) y.re) (*.f64 (pow.f64 (atan2.f64 x.im x.re) 3) (pow.f64 y.im 3)))) (+.f64 (pow.f64 (neg.f64 x.re) y.re) (+.f64 (*.f64 -1 (*.f64 (pow.f64 (neg.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (*.f64 1/2 (*.f64 (pow.f64 (neg.f64 x.re) y.re) (*.f64 (pow.f64 (atan2.f64 x.im x.re) 2) (pow.f64 y.im 2)))))))
(exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 (atan2.f64 x.im x.re) y.im)))
(exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 (atan2.f64 x.im x.re) y.im)))
(exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 (atan2.f64 x.im x.re) y.im)))
(exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 (atan2.f64 x.im x.re) y.im)))
(exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 y.im (atan2.f64 x.im x.re))))
(exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 y.im (atan2.f64 x.im x.re))))
(exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 y.im (atan2.f64 x.im x.re))))
(exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 y.im (atan2.f64 x.im x.re))))
(+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re) 0)
(+.f64 0 (*.f64 (log.f64 (neg.f64 x.re)) y.re))
(+.f64 (*.f64 (log.f64 (neg.f64 x.re)) (*.f64 y.re 1/2)) (*.f64 (log.f64 (neg.f64 x.re)) (*.f64 y.re 1/2)))
(-.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re) 0)
(/.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re) 1)
(/.f64 (*.f64 (log.f64 (neg.f64 x.re)) (+.f64 y.re y.re)) 2)
(/.f64 (*.f64 (log.f64 (neg.f64 x.re)) (*.f64 y.re 4)) 4)
(/.f64 (*.f64 2 (*.f64 (log.f64 (neg.f64 x.re)) (*.f64 y.re 4))) 8)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (log.f64 (neg.f64 x.re)) (*.f64 y.re 4)))) 16)
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (log.f64 (neg.f64 x.re)) (*.f64 y.re 4)))) (*.f64 2 (*.f64 2 (*.f64 (log.f64 (neg.f64 x.re)) (*.f64 y.re 4))))) 32)
(+.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) 0)
(+.f64 0 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))))
(+.f64 (*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) 1/2) (*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) 1/2))
(-.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) 0)
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) 1)
(*.f64 1 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))))
(*.f64 2 (*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) 1/2))
(*.f64 (*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) 2) 1/2)
(*.f64 4 (/.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) 4))
(*.f64 (*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) 4) 1/4)
(*.f64 1/2 (*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) 2))
(*.f64 (*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) 1/2) 2)
(*.f64 (exp.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re)) (exp.f64 (neg.f64 (*.f64 (atan2.f64 x.im x.re) y.im))))
(*.f64 (exp.f64 (neg.f64 (*.f64 (atan2.f64 x.im x.re) y.im))) (exp.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re)))
(*.f64 1/4 (*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) 4))
(*.f64 (/.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) 4) 4)
(*.f64 (exp.f64 -1) (exp.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re) (-.f64 1 (*.f64 (atan2.f64 x.im x.re) y.im)))))
(*.f64 (exp.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re) (-.f64 1 (*.f64 (atan2.f64 x.im x.re) y.im)))) (exp.f64 -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 1 (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 (neg.f64 x.re)) y.re))))
(/.f64 -1 (-.f64 0 (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 (neg.f64 x.re)) y.re)))))
(/.f64 2 (*.f64 2 (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 (neg.f64 x.re)) y.re)))))
(/.f64 (*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) 2) 2)
(/.f64 4 (+.f64 (*.f64 2 (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 (neg.f64 x.re)) y.re)))) (*.f64 2 (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 (neg.f64 x.re)) y.re))))))
(/.f64 (*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) 4) 4)
(/.f64 (*.f64 2 (*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) 4)) 8)
(/.f64 (exp.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re)) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im)))
(/.f64 (exp.f64 (neg.f64 (*.f64 (atan2.f64 x.im x.re) y.im))) (exp.f64 (neg.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re))))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) 4))) 16)
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) 4))) (*.f64 2 (*.f64 2 (*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) 4)))) 32)
(/.f64 (/.f64 1 (exp.f64 (neg.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re)))) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im)))
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)))
(exp.f64 (-.f64 (*.f64 (+.f64 (log.f64 -1) (log.f64 x.re)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)))
(exp.f64 (-.f64 (*.f64 (+.f64 (log.f64 -1) (log.f64 x.re)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)))
(exp.f64 (-.f64 (*.f64 (+.f64 (log.f64 -1) (log.f64 x.re)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)))
(exp.f64 (-.f64 (*.f64 (+.f64 (log.f64 -1) (log.f64 x.re)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)))
(exp.f64 (-.f64 (*.f64 y.re (+.f64 (*.f64 -1 (log.f64 (/.f64 1 x.re))) (log.f64 -1))) (*.f64 (atan2.f64 x.im x.re) y.im)))
(exp.f64 (-.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)))
(exp.f64 (-.f64 (*.f64 y.re (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 1 x.re))))) (*.f64 (atan2.f64 x.im x.re) y.im)))
(exp.f64 (-.f64 (*.f64 y.re (+.f64 (*.f64 -1 (log.f64 (/.f64 1 x.re))) (log.f64 -1))) (*.f64 (atan2.f64 x.im x.re) y.im)))
(exp.f64 (-.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)))
(exp.f64 (-.f64 (*.f64 y.re (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 1 x.re))))) (*.f64 (atan2.f64 x.im x.re) y.im)))
(exp.f64 (-.f64 (*.f64 y.re (+.f64 (*.f64 -1 (log.f64 (/.f64 1 x.re))) (log.f64 -1))) (*.f64 (atan2.f64 x.im x.re) y.im)))
(exp.f64 (-.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)))
(exp.f64 (-.f64 (*.f64 y.re (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 1 x.re))))) (*.f64 (atan2.f64 x.im x.re) y.im)))
(exp.f64 (-.f64 (*.f64 y.re (+.f64 (*.f64 -1 (log.f64 (/.f64 1 x.re))) (log.f64 -1))) (*.f64 (atan2.f64 x.im x.re) y.im)))
(exp.f64 (-.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)))
(exp.f64 (-.f64 (*.f64 y.re (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 1 x.re))))) (*.f64 (atan2.f64 x.im x.re) y.im)))
(exp.f64 (-.f64 (*.f64 -1 (*.f64 y.re (log.f64 (/.f64 -1 x.re)))) (*.f64 (atan2.f64 x.im x.re) y.im)))
(exp.f64 (-.f64 (*.f64 y.re (neg.f64 (log.f64 (/.f64 -1 x.re)))) (*.f64 (atan2.f64 x.im x.re) y.im)))
(exp.f64 (-.f64 (*.f64 (log.f64 (/.f64 -1 x.re)) (neg.f64 y.re)) (*.f64 (atan2.f64 x.im x.re) y.im)))
(exp.f64 (-.f64 (*.f64 -1 (*.f64 y.re (log.f64 (/.f64 -1 x.re)))) (*.f64 (atan2.f64 x.im x.re) y.im)))
(exp.f64 (-.f64 (*.f64 y.re (neg.f64 (log.f64 (/.f64 -1 x.re)))) (*.f64 (atan2.f64 x.im x.re) y.im)))
(exp.f64 (-.f64 (*.f64 (log.f64 (/.f64 -1 x.re)) (neg.f64 y.re)) (*.f64 (atan2.f64 x.im x.re) y.im)))
(exp.f64 (-.f64 (*.f64 -1 (*.f64 y.re (log.f64 (/.f64 -1 x.re)))) (*.f64 (atan2.f64 x.im x.re) y.im)))
(exp.f64 (-.f64 (*.f64 y.re (neg.f64 (log.f64 (/.f64 -1 x.re)))) (*.f64 (atan2.f64 x.im x.re) y.im)))
(exp.f64 (-.f64 (*.f64 (log.f64 (/.f64 -1 x.re)) (neg.f64 y.re)) (*.f64 (atan2.f64 x.im x.re) y.im)))
(exp.f64 (-.f64 (*.f64 -1 (*.f64 y.re (log.f64 (/.f64 -1 x.re)))) (*.f64 (atan2.f64 x.im x.re) y.im)))
(exp.f64 (-.f64 (*.f64 y.re (neg.f64 (log.f64 (/.f64 -1 x.re)))) (*.f64 (atan2.f64 x.im x.re) y.im)))
(exp.f64 (-.f64 (*.f64 (log.f64 (/.f64 -1 x.re)) (neg.f64 y.re)) (*.f64 (atan2.f64 x.im x.re) y.im)))
(exp.f64 (neg.f64 (*.f64 (atan2.f64 x.im x.re) y.im)))
(exp.f64 (*.f64 (atan2.f64 x.im x.re) (neg.f64 y.im)))
(+.f64 (exp.f64 (neg.f64 (*.f64 (atan2.f64 x.im x.re) y.im))) (*.f64 (exp.f64 (neg.f64 (*.f64 (atan2.f64 x.im x.re) y.im))) (*.f64 y.re (log.f64 (neg.f64 x.re)))))
(+.f64 (exp.f64 (neg.f64 (*.f64 (atan2.f64 x.im x.re) y.im))) (*.f64 y.re (*.f64 (log.f64 (neg.f64 x.re)) (exp.f64 (neg.f64 (*.f64 (atan2.f64 x.im x.re) y.im))))))
(+.f64 (exp.f64 (*.f64 (atan2.f64 x.im x.re) (neg.f64 y.im))) (*.f64 y.re (/.f64 (log.f64 (neg.f64 x.re)) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im)))))
(+.f64 (exp.f64 (neg.f64 (*.f64 (atan2.f64 x.im x.re) y.im))) (+.f64 (*.f64 (exp.f64 (neg.f64 (*.f64 (atan2.f64 x.im x.re) y.im))) (*.f64 y.re (log.f64 (neg.f64 x.re)))) (*.f64 1/2 (*.f64 (exp.f64 (neg.f64 (*.f64 (atan2.f64 x.im x.re) y.im))) (*.f64 (pow.f64 y.re 2) (pow.f64 (log.f64 (neg.f64 x.re)) 2))))))
(+.f64 (exp.f64 (neg.f64 (*.f64 (atan2.f64 x.im x.re) y.im))) (+.f64 (*.f64 y.re (*.f64 (log.f64 (neg.f64 x.re)) (exp.f64 (neg.f64 (*.f64 (atan2.f64 x.im x.re) y.im))))) (*.f64 (exp.f64 (neg.f64 (*.f64 (atan2.f64 x.im x.re) y.im))) (*.f64 (*.f64 (pow.f64 y.re 2) (pow.f64 (log.f64 (neg.f64 x.re)) 2)) 1/2))))
(+.f64 (exp.f64 (neg.f64 (*.f64 (atan2.f64 x.im x.re) y.im))) (*.f64 (exp.f64 (neg.f64 (*.f64 (atan2.f64 x.im x.re) y.im))) (+.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 1/2 (*.f64 (pow.f64 y.re 2) (pow.f64 (log.f64 (neg.f64 x.re)) 2))))))
(+.f64 (exp.f64 (*.f64 (atan2.f64 x.im x.re) (neg.f64 y.im))) (*.f64 (exp.f64 (*.f64 (atan2.f64 x.im x.re) (neg.f64 y.im))) (+.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 1/2 (*.f64 (pow.f64 y.re 2) (pow.f64 (log.f64 (neg.f64 x.re)) 2))))))
(+.f64 (*.f64 1/6 (*.f64 (exp.f64 (neg.f64 (*.f64 (atan2.f64 x.im x.re) y.im))) (*.f64 (pow.f64 y.re 3) (pow.f64 (log.f64 (neg.f64 x.re)) 3)))) (+.f64 (exp.f64 (neg.f64 (*.f64 (atan2.f64 x.im x.re) y.im))) (+.f64 (*.f64 (exp.f64 (neg.f64 (*.f64 (atan2.f64 x.im x.re) y.im))) (*.f64 y.re (log.f64 (neg.f64 x.re)))) (*.f64 1/2 (*.f64 (exp.f64 (neg.f64 (*.f64 (atan2.f64 x.im x.re) y.im))) (*.f64 (pow.f64 y.re 2) (pow.f64 (log.f64 (neg.f64 x.re)) 2)))))))
(+.f64 (exp.f64 (neg.f64 (*.f64 (atan2.f64 x.im x.re) y.im))) (+.f64 (+.f64 (*.f64 y.re (*.f64 (log.f64 (neg.f64 x.re)) (exp.f64 (neg.f64 (*.f64 (atan2.f64 x.im x.re) y.im))))) (*.f64 (exp.f64 (neg.f64 (*.f64 (atan2.f64 x.im x.re) y.im))) (*.f64 (*.f64 (pow.f64 y.re 2) (pow.f64 (log.f64 (neg.f64 x.re)) 2)) 1/2))) (*.f64 1/6 (*.f64 (pow.f64 y.re 3) (*.f64 (pow.f64 (log.f64 (neg.f64 x.re)) 3) (exp.f64 (neg.f64 (*.f64 (atan2.f64 x.im x.re) y.im))))))))
(+.f64 (exp.f64 (neg.f64 (*.f64 (atan2.f64 x.im x.re) y.im))) (+.f64 (*.f64 (exp.f64 (neg.f64 (*.f64 (atan2.f64 x.im x.re) y.im))) (+.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 1/2 (*.f64 (pow.f64 y.re 2) (pow.f64 (log.f64 (neg.f64 x.re)) 2))))) (*.f64 (*.f64 (pow.f64 y.re 3) (pow.f64 (log.f64 (neg.f64 x.re)) 3)) (*.f64 1/6 (exp.f64 (neg.f64 (*.f64 (atan2.f64 x.im x.re) y.im)))))))
(+.f64 (exp.f64 (*.f64 (atan2.f64 x.im x.re) (neg.f64 y.im))) (*.f64 (exp.f64 (*.f64 (atan2.f64 x.im x.re) (neg.f64 y.im))) (+.f64 (*.f64 (pow.f64 (log.f64 (neg.f64 x.re)) 3) (*.f64 (pow.f64 y.re 3) 1/6)) (+.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 1/2 (*.f64 (pow.f64 y.re 2) (pow.f64 (log.f64 (neg.f64 x.re)) 2)))))))
(+.f64 (exp.f64 (*.f64 (atan2.f64 x.im x.re) (neg.f64 y.im))) (*.f64 (exp.f64 (*.f64 (atan2.f64 x.im x.re) (neg.f64 y.im))) (+.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (+.f64 (*.f64 1/2 (*.f64 (pow.f64 y.re 2) (pow.f64 (log.f64 (neg.f64 x.re)) 2))) (*.f64 1/6 (*.f64 (pow.f64 y.re 3) (pow.f64 (log.f64 (neg.f64 x.re)) 3)))))))
(+.f64 (exp.f64 (*.f64 (atan2.f64 x.im x.re) (neg.f64 y.im))) (*.f64 (exp.f64 (*.f64 (atan2.f64 x.im x.re) (neg.f64 y.im))) (+.f64 (*.f64 1/2 (*.f64 (pow.f64 y.re 2) (pow.f64 (log.f64 (neg.f64 x.re)) 2))) (+.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 (pow.f64 y.re 3) (*.f64 1/6 (pow.f64 (log.f64 (neg.f64 x.re)) 3)))))))
(exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 y.im (atan2.f64 x.im x.re))))
(exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 (atan2.f64 x.im x.re) y.im)))
(exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 y.im (atan2.f64 x.im x.re))))
(exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 (atan2.f64 x.im x.re) y.im)))
(exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 y.im (atan2.f64 x.im x.re))))
(exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 (atan2.f64 x.im x.re) y.im)))
(exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 y.im (atan2.f64 x.im x.re))))
(exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 (atan2.f64 x.im x.re) y.im)))
(exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 y.im (atan2.f64 x.im x.re))))
(exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 (atan2.f64 x.im x.re) y.im)))
(exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 y.im (atan2.f64 x.im x.re))))
(exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 (atan2.f64 x.im x.re) y.im)))
(exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 y.im (atan2.f64 x.im x.re))))
(exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 (atan2.f64 x.im x.re) y.im)))
(exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 y.im (atan2.f64 x.im x.re))))
(exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 (atan2.f64 x.im x.re) y.im)))
(exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 (atan2.f64 x.im x.re) y.im)))
(exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 (atan2.f64 x.im x.re) y.im)))
(exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 (atan2.f64 x.im x.re) y.im)))
(exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 (atan2.f64 x.im x.re) y.im)))
(exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 (atan2.f64 x.im x.re) y.im)))
(exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 (atan2.f64 x.im x.re) y.im)))
(exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 (atan2.f64 x.im x.re) y.im)))
(exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 (atan2.f64 x.im x.re) y.im)))
(exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 (atan2.f64 x.im x.re) y.im)))
(exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 (atan2.f64 x.im x.re) y.im)))
(exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 (atan2.f64 x.im x.re) y.im)))
(exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 (atan2.f64 x.im x.re) y.im)))
(pow.f64 (neg.f64 x.re) y.re)
(+.f64 (pow.f64 (neg.f64 x.re) y.re) (*.f64 -1 (*.f64 (pow.f64 (neg.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))))
(+.f64 (pow.f64 (neg.f64 x.re) y.re) (*.f64 (pow.f64 (neg.f64 x.re) y.re) (neg.f64 (*.f64 (atan2.f64 x.im x.re) y.im))))
(+.f64 (pow.f64 (neg.f64 x.re) y.re) (*.f64 (neg.f64 (*.f64 (atan2.f64 x.im x.re) y.im)) (pow.f64 (neg.f64 x.re) y.re)))
(+.f64 (pow.f64 (neg.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) (*.f64 (neg.f64 y.im) (pow.f64 (neg.f64 x.re) y.re))))
(+.f64 (pow.f64 (neg.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) (*.f64 (pow.f64 (neg.f64 x.re) y.re) (neg.f64 y.im))))
(+.f64 (pow.f64 (neg.f64 x.re) y.re) (*.f64 (*.f64 (atan2.f64 x.im x.re) (neg.f64 y.im)) (pow.f64 (neg.f64 x.re) y.re)))
(+.f64 (pow.f64 (neg.f64 x.re) y.re) (+.f64 (*.f64 -1 (*.f64 (pow.f64 (neg.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (*.f64 1/2 (*.f64 (pow.f64 (neg.f64 x.re) y.re) (*.f64 (pow.f64 (atan2.f64 x.im x.re) 2) (pow.f64 y.im 2))))))
(+.f64 (pow.f64 (neg.f64 x.re) y.re) (+.f64 (*.f64 (pow.f64 (neg.f64 x.re) y.re) (neg.f64 (*.f64 (atan2.f64 x.im x.re) y.im))) (*.f64 1/2 (*.f64 (pow.f64 (neg.f64 x.re) y.re) (*.f64 (pow.f64 (atan2.f64 x.im x.re) 2) (pow.f64 y.im 2))))))
(+.f64 (pow.f64 (neg.f64 x.re) y.re) (+.f64 (*.f64 (neg.f64 (*.f64 (atan2.f64 x.im x.re) y.im)) (pow.f64 (neg.f64 x.re) y.re)) (*.f64 1/2 (*.f64 (pow.f64 (neg.f64 x.re) y.re) (*.f64 (pow.f64 (atan2.f64 x.im x.re) 2) (pow.f64 y.im 2))))))
(+.f64 (pow.f64 (neg.f64 x.re) y.re) (*.f64 (pow.f64 (neg.f64 x.re) y.re) (+.f64 (*.f64 1/2 (*.f64 (pow.f64 (atan2.f64 x.im x.re) 2) (pow.f64 y.im 2))) (*.f64 (atan2.f64 x.im x.re) (neg.f64 y.im)))))
(+.f64 (pow.f64 (neg.f64 x.re) y.re) (*.f64 (pow.f64 (neg.f64 x.re) y.re) (+.f64 (*.f64 (atan2.f64 x.im x.re) (neg.f64 y.im)) (*.f64 1/2 (*.f64 (pow.f64 (atan2.f64 x.im x.re) 2) (pow.f64 y.im 2))))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 (neg.f64 x.re) y.re) (*.f64 (pow.f64 (atan2.f64 x.im x.re) 3) (pow.f64 y.im 3)))) (+.f64 (pow.f64 (neg.f64 x.re) y.re) (+.f64 (*.f64 -1 (*.f64 (pow.f64 (neg.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (*.f64 1/2 (*.f64 (pow.f64 (neg.f64 x.re) y.re) (*.f64 (pow.f64 (atan2.f64 x.im x.re) 2) (pow.f64 y.im 2)))))))
(+.f64 (pow.f64 (neg.f64 x.re) y.re) (+.f64 (+.f64 (*.f64 (pow.f64 (neg.f64 x.re) y.re) (neg.f64 (*.f64 (atan2.f64 x.im x.re) y.im))) (*.f64 1/2 (*.f64 (pow.f64 (neg.f64 x.re) y.re) (*.f64 (pow.f64 (atan2.f64 x.im x.re) 2) (pow.f64 y.im 2))))) (*.f64 (pow.f64 (neg.f64 x.re) y.re) (*.f64 (*.f64 (pow.f64 (atan2.f64 x.im x.re) 3) (pow.f64 y.im 3)) -1/6))))
(+.f64 (+.f64 (*.f64 (neg.f64 (*.f64 (atan2.f64 x.im x.re) y.im)) (pow.f64 (neg.f64 x.re) y.re)) (*.f64 1/2 (*.f64 (pow.f64 (neg.f64 x.re) y.re) (*.f64 (pow.f64 (atan2.f64 x.im x.re) 2) (pow.f64 y.im 2))))) (+.f64 (*.f64 (pow.f64 (neg.f64 x.re) y.re) (*.f64 -1/6 (*.f64 (pow.f64 (atan2.f64 x.im x.re) 3) (pow.f64 y.im 3)))) (pow.f64 (neg.f64 x.re) y.re)))
(+.f64 (*.f64 (pow.f64 (neg.f64 x.re) y.re) (+.f64 (*.f64 1/2 (*.f64 (pow.f64 (atan2.f64 x.im x.re) 2) (pow.f64 y.im 2))) (*.f64 (atan2.f64 x.im x.re) (neg.f64 y.im)))) (+.f64 (pow.f64 (neg.f64 x.re) y.re) (*.f64 (pow.f64 (neg.f64 x.re) y.re) (*.f64 -1/6 (*.f64 (pow.f64 (atan2.f64 x.im x.re) 3) (pow.f64 y.im 3))))))
(+.f64 (pow.f64 (neg.f64 x.re) y.re) (*.f64 (pow.f64 (neg.f64 x.re) y.re) (+.f64 (*.f64 (pow.f64 (atan2.f64 x.im x.re) 3) (*.f64 -1/6 (pow.f64 y.im 3))) (+.f64 (*.f64 (atan2.f64 x.im x.re) (neg.f64 y.im)) (*.f64 1/2 (*.f64 (pow.f64 (atan2.f64 x.im x.re) 2) (pow.f64 y.im 2)))))))
(+.f64 (pow.f64 (neg.f64 x.re) y.re) (*.f64 (pow.f64 (neg.f64 x.re) y.re) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 (atan2.f64 x.im x.re) 3) (pow.f64 y.im 3))) (+.f64 (*.f64 (atan2.f64 x.im x.re) (neg.f64 y.im)) (*.f64 1/2 (*.f64 (pow.f64 (atan2.f64 x.im x.re) 2) (pow.f64 y.im 2)))))))
(exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 (atan2.f64 x.im x.re) y.im)))
(exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 (atan2.f64 x.im x.re) y.im)))
(exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 (atan2.f64 x.im x.re) y.im)))
(exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 (atan2.f64 x.im x.re) y.im)))
(exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 y.im (atan2.f64 x.im x.re))))
(exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 (atan2.f64 x.im x.re) y.im)))
(exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 y.im (atan2.f64 x.im x.re))))
(exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 (atan2.f64 x.im x.re) y.im)))
(exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 y.im (atan2.f64 x.im x.re))))
(exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 (atan2.f64 x.im x.re) y.im)))
(exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 y.im (atan2.f64 x.im x.re))))
(exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 (atan2.f64 x.im x.re) y.im)))
(+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re) 0)
(*.f64 y.re (log.f64 (neg.f64 x.re)))
(+.f64 0 (*.f64 (log.f64 (neg.f64 x.re)) y.re))
(*.f64 y.re (log.f64 (neg.f64 x.re)))
(+.f64 (*.f64 (log.f64 (neg.f64 x.re)) (*.f64 y.re 1/2)) (*.f64 (log.f64 (neg.f64 x.re)) (*.f64 y.re 1/2)))
(*.f64 y.re (log.f64 (neg.f64 x.re)))
(-.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re) 0)
(*.f64 y.re (log.f64 (neg.f64 x.re)))
(/.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re) 1)
(*.f64 y.re (log.f64 (neg.f64 x.re)))
(/.f64 (*.f64 (log.f64 (neg.f64 x.re)) (+.f64 y.re y.re)) 2)
(*.f64 y.re (log.f64 (neg.f64 x.re)))
(/.f64 (*.f64 (log.f64 (neg.f64 x.re)) (*.f64 y.re 4)) 4)
(*.f64 y.re (log.f64 (neg.f64 x.re)))
(/.f64 (*.f64 2 (*.f64 (log.f64 (neg.f64 x.re)) (*.f64 y.re 4))) 8)
(*.f64 y.re (log.f64 (neg.f64 x.re)))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (log.f64 (neg.f64 x.re)) (*.f64 y.re 4)))) 16)
(*.f64 y.re (log.f64 (neg.f64 x.re)))
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (log.f64 (neg.f64 x.re)) (*.f64 y.re 4)))) (*.f64 2 (*.f64 2 (*.f64 (log.f64 (neg.f64 x.re)) (*.f64 y.re 4))))) 32)
(*.f64 y.re (log.f64 (neg.f64 x.re)))
(+.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) 0)
(exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 (atan2.f64 x.im x.re) y.im)))
(+.f64 0 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))))
(exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 (atan2.f64 x.im x.re) y.im)))
(+.f64 (*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) 1/2) (*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) 1/2))
(exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 (atan2.f64 x.im x.re) y.im)))
(-.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) 0)
(exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 (atan2.f64 x.im x.re) y.im)))
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) 1)
(exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 (atan2.f64 x.im x.re) y.im)))
(*.f64 1 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))))
(exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 (atan2.f64 x.im x.re) y.im)))
(*.f64 2 (*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) 1/2))
(exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 (atan2.f64 x.im x.re) y.im)))
(*.f64 (*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) 2) 1/2)
(exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 (atan2.f64 x.im x.re) y.im)))
(*.f64 4 (/.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) 4))
(exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 (atan2.f64 x.im x.re) y.im)))
(*.f64 (*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) 4) 1/4)
(exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 (atan2.f64 x.im x.re) y.im)))
(*.f64 1/2 (*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) 2))
(exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 (atan2.f64 x.im x.re) y.im)))
(*.f64 (*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) 1/2) 2)
(exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 (atan2.f64 x.im x.re) y.im)))
(*.f64 (exp.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re)) (exp.f64 (neg.f64 (*.f64 (atan2.f64 x.im x.re) y.im))))
(exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 (atan2.f64 x.im x.re) y.im)))
(*.f64 (exp.f64 (neg.f64 (*.f64 (atan2.f64 x.im x.re) y.im))) (exp.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re)))
(exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 (atan2.f64 x.im x.re) y.im)))
(*.f64 1/4 (*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) 4))
(exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 (atan2.f64 x.im x.re) y.im)))
(*.f64 (/.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) 4) 4)
(exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 (atan2.f64 x.im x.re) y.im)))
(*.f64 (exp.f64 -1) (exp.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re) (-.f64 1 (*.f64 (atan2.f64 x.im x.re) y.im)))))
(exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 (atan2.f64 x.im x.re) y.im)))
(*.f64 (exp.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re) (-.f64 1 (*.f64 (atan2.f64 x.im x.re) y.im)))) (exp.f64 -1))
(exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 (atan2.f64 x.im x.re) y.im)))
(/.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) 1)
(exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 (atan2.f64 x.im x.re) y.im)))
(/.f64 1 (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 (neg.f64 x.re)) y.re))))
(exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 (atan2.f64 x.im x.re) y.im)))
(/.f64 -1 (-.f64 0 (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 (neg.f64 x.re)) y.re)))))
(exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 (atan2.f64 x.im x.re) y.im)))
(/.f64 2 (*.f64 2 (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 (neg.f64 x.re)) y.re)))))
(exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 (atan2.f64 x.im x.re) y.im)))
(/.f64 (*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) 2) 2)
(exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 (atan2.f64 x.im x.re) y.im)))
(/.f64 4 (+.f64 (*.f64 2 (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 (neg.f64 x.re)) y.re)))) (*.f64 2 (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 (neg.f64 x.re)) y.re))))))
(exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 (atan2.f64 x.im x.re) y.im)))
(/.f64 (*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) 4) 4)
(exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 (atan2.f64 x.im x.re) y.im)))
(/.f64 (*.f64 2 (*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) 4)) 8)
(exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 (atan2.f64 x.im x.re) y.im)))
(/.f64 (exp.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re)) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im)))
(exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 (atan2.f64 x.im x.re) y.im)))
(/.f64 (exp.f64 (neg.f64 (*.f64 (atan2.f64 x.im x.re) y.im))) (exp.f64 (neg.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re))))
(exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 (atan2.f64 x.im x.re) y.im)))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) 4))) 16)
(exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 (atan2.f64 x.im x.re) y.im)))
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) 4))) (*.f64 2 (*.f64 2 (*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) 4)))) 32)
(exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 (atan2.f64 x.im x.re) y.im)))
(/.f64 (/.f64 1 (exp.f64 (neg.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re)))) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im)))
(exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.re))) (*.f64 (atan2.f64 x.im x.re) y.im)))

localize20.0ms (0%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.4b
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 (neg.f64 x.im)) y.re))))
1.2b
(*.f64 y.re (atan2.f64 x.im x.re))
2.2b
(*.f64 (atan2.f64 x.im x.re) y.im)
17.7b
(sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))
Compiler

Compiled 79 to 14 computations (82.3% saved)

series172.0ms (0.3%)

Counts
1 → 48
Calls

12 calls:

TimeVariablePointExpression
163.0ms
x.im
@0
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 (neg.f64 x.im)) y.re))))
1.0ms
y.re
@0
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 (neg.f64 x.im)) y.re))))
1.0ms
y.im
@0
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 (neg.f64 x.im)) y.re))))
1.0ms
x.im
@inf
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 (neg.f64 x.im)) y.re))))
1.0ms
x.im
@-inf
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 (neg.f64 x.im)) y.re))))

rewrite94.0ms (0.2%)

Algorithm
batch-egg-rewrite
Rules
882×rational.json-simplify-35
814×bool.json-1
814×bool.json-2
786×rational.json-1
786×rational.json-2
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01759
117259
247259
3108159
4257059
5643859
Stop Event
node limit
Counts
1 → 39
Calls
Call 1
Inputs
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 (neg.f64 x.im)) y.re))))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im)))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 -1 (-.f64 1 (/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (neg.f64 (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 y.re (log.f64 (neg.f64 x.im)))))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im)))) 2) (/.f64 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im)))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (neg.f64 (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 y.re (log.f64 (neg.f64 x.im))))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 (*.f64 2 (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im)))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 (/.f64 2 (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 y.re (log.f64 (neg.f64 x.im)))))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (neg.f64 (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 y.re (log.f64 (neg.f64 x.im))))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (*.f64 (/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (neg.f64 (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 y.re (log.f64 (neg.f64 x.im))))))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 2) (/.f64 (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 2) (*.f64 (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 2) (*.f64 (*.f64 (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))) 1/2) 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (/.f64 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (/.f64 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im)))) 2) 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 2) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im)))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (/.f64 (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (/.f64 (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))) 2) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 2) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im)))) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 4) (/.f64 (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 4) (*.f64 (/.f64 (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))) 4) 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 4) (*.f64 1/4 (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 4) (*.f64 1/2 (/.f64 (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))) (neg.f64 (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))) (*.f64 (neg.f64 (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))) (*.f64 -1 (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 2) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))) 2) (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))) 1/2) (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (neg.f64 (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 y.re (log.f64 (neg.f64 x.im))))))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im)))) 2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))) 4) (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im)))) (neg.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (neg.f64 (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 y.re (log.f64 (neg.f64 x.im))))))))))) (#(struct:change #<rule egg-rr> (2) ((x not (not (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))))))))) (#(struct:change #<rule egg-rr> (2) ((x and (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im)))) (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im)))))))) (#(struct:change #<rule egg-rr> (2) ((x or (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im)))) (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im)))))))))

simplify398.0ms (0.7%)

Algorithm
egg-herbie
Rules
1548×rational.json-simplify-51
1048×rational.json-simplify-2
1018×rational.json-simplify-49
708×rational.json-simplify-41
664×rational.json-simplify-53
Iterations

Useful iterations: 6 (0.0ms)

IterNodesCost
02016855
14536355
28666271
317166167
442596039
563326035
668856023
Stop Event
node limit
Counts
87 → 99
Calls
Call 1
Inputs
(/.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im)))
(+.f64 (/.f64 (*.f64 (pow.f64 y.re 2) (*.f64 (atan2.f64 x.im x.re) (log.f64 (neg.f64 x.im)))) (exp.f64 (*.f64 y.im (atan2.f64 x.im x.re)))) (/.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im))))
(+.f64 (/.f64 (*.f64 (pow.f64 y.re 2) (*.f64 (atan2.f64 x.im x.re) (log.f64 (neg.f64 x.im)))) (exp.f64 (*.f64 y.im (atan2.f64 x.im x.re)))) (+.f64 (/.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im))) (*.f64 (pow.f64 y.re 3) (-.f64 (*.f64 -1/6 (/.f64 (pow.f64 (atan2.f64 x.im x.re) 3) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im)))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (atan2.f64 x.im x.re) (pow.f64 (log.f64 (neg.f64 x.im)) 2)) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im)))) (*.f64 1/2 (/.f64 (*.f64 (atan2.f64 x.im x.re) (pow.f64 (log.f64 (neg.f64 x.im)) 2)) (exp.f64 (*.f64 y.im (atan2.f64 x.im x.re))))))))))
(+.f64 (/.f64 (*.f64 (pow.f64 y.re 2) (*.f64 (atan2.f64 x.im x.re) (log.f64 (neg.f64 x.im)))) (exp.f64 (*.f64 y.im (atan2.f64 x.im x.re)))) (+.f64 (/.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im))) (+.f64 (*.f64 -1 (*.f64 (pow.f64 y.re 4) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (atan2.f64 x.im x.re) (pow.f64 (log.f64 (neg.f64 x.im)) 3)) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im)))) (+.f64 (*.f64 -1 (*.f64 (-.f64 (*.f64 -1/6 (/.f64 (pow.f64 (atan2.f64 x.im x.re) 3) (exp.f64 (*.f64 y.im (atan2.f64 x.im x.re))))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (atan2.f64 x.im x.re) (pow.f64 (log.f64 (neg.f64 x.im)) 2)) (exp.f64 (*.f64 y.im (atan2.f64 x.im x.re))))) (*.f64 1/2 (/.f64 (*.f64 (atan2.f64 x.im x.re) (pow.f64 (log.f64 (neg.f64 x.im)) 2)) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im)))))) (log.f64 (neg.f64 x.im)))) (*.f64 -1/6 (/.f64 (*.f64 (atan2.f64 x.im x.re) (pow.f64 (log.f64 (neg.f64 x.im)) 3)) (exp.f64 (*.f64 y.im (atan2.f64 x.im x.re))))))))) (*.f64 (pow.f64 y.re 3) (-.f64 (*.f64 -1/6 (/.f64 (pow.f64 (atan2.f64 x.im x.re) 3) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im)))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (atan2.f64 x.im x.re) (pow.f64 (log.f64 (neg.f64 x.im)) 2)) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im)))) (*.f64 1/2 (/.f64 (*.f64 (atan2.f64 x.im x.re) (pow.f64 (log.f64 (neg.f64 x.im)) 2)) (exp.f64 (*.f64 y.im (atan2.f64 x.im x.re)))))))))))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 y.re (log.f64 (neg.f64 x.im))))))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 y.re (log.f64 (neg.f64 x.im))))))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 y.re (log.f64 (neg.f64 x.im))))))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 y.re (log.f64 (neg.f64 x.im))))))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 y.re (log.f64 (neg.f64 x.im))))))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 y.re (log.f64 (neg.f64 x.im))))))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 y.re (log.f64 (neg.f64 x.im))))))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 y.re (log.f64 (neg.f64 x.im))))))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 y.re (+.f64 (log.f64 -1) (log.f64 x.im))))))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 y.re (+.f64 (log.f64 -1) (log.f64 x.im))))))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 y.re (+.f64 (log.f64 -1) (log.f64 x.im))))))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 y.re (+.f64 (log.f64 -1) (log.f64 x.im))))))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 1 x.im)))) y.re))))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 1 x.im)))) y.re))))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 1 x.im)))) y.re))))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 1 x.im)))) y.re))))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 -1 (*.f64 y.re (log.f64 (/.f64 -1 x.im)))))))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 -1 (*.f64 y.re (log.f64 (/.f64 -1 x.im)))))))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 -1 (*.f64 y.re (log.f64 (/.f64 -1 x.im)))))))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 -1 (*.f64 y.re (log.f64 (/.f64 -1 x.im)))))))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 y.re (log.f64 (neg.f64 x.im))))))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 y.re (log.f64 (neg.f64 x.im))))))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 y.re (log.f64 (neg.f64 x.im))))))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 y.re (log.f64 (neg.f64 x.im))))))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 y.re (log.f64 (neg.f64 x.im))))))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 y.re (log.f64 (neg.f64 x.im))))))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 y.re (log.f64 (neg.f64 x.im))))))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 y.re (log.f64 (neg.f64 x.im))))))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 y.re (log.f64 (neg.f64 x.im))))))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 y.re (log.f64 (neg.f64 x.im))))))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 y.re (log.f64 (neg.f64 x.im))))))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 y.re (log.f64 (neg.f64 x.im))))))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (neg.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))))))
(+.f64 (/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (neg.f64 (*.f64 y.re (log.f64 (neg.f64 x.im)))))) (*.f64 -1 (/.f64 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 y.im (atan2.f64 x.im x.re))) (exp.f64 (neg.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))))))))
(+.f64 (/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (neg.f64 (*.f64 y.re (log.f64 (neg.f64 x.im)))))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 y.im (atan2.f64 x.im x.re))) (exp.f64 (neg.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))))))) (*.f64 -1 (*.f64 (+.f64 (*.f64 1/2 (/.f64 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (pow.f64 (atan2.f64 x.im x.re) 2)) (exp.f64 (neg.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))))))) (*.f64 -1 (/.f64 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (pow.f64 (atan2.f64 x.im x.re) 2)) (exp.f64 (neg.f64 (*.f64 y.re (log.f64 (neg.f64 x.im)))))))) (pow.f64 y.im 2)))))
(+.f64 (/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (neg.f64 (*.f64 y.re (log.f64 (neg.f64 x.im)))))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 y.im (atan2.f64 x.im x.re))) (exp.f64 (neg.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))))))) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/2 (/.f64 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (pow.f64 (atan2.f64 x.im x.re) 2)) (exp.f64 (neg.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))))))) (*.f64 -1 (/.f64 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (pow.f64 (atan2.f64 x.im x.re) 2)) (exp.f64 (neg.f64 (*.f64 y.re (log.f64 (neg.f64 x.im)))))))) (pow.f64 y.im 2))) (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (pow.f64 (atan2.f64 x.im x.re) 3)) (exp.f64 (neg.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))))))) (+.f64 (*.f64 1/6 (/.f64 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (pow.f64 (atan2.f64 x.im x.re) 3)) (exp.f64 (neg.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))))))) (*.f64 -1 (*.f64 (+.f64 (*.f64 1/2 (/.f64 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (pow.f64 (atan2.f64 x.im x.re) 2)) (exp.f64 (neg.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))))))) (*.f64 -1 (/.f64 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (pow.f64 (atan2.f64 x.im x.re) 2)) (exp.f64 (neg.f64 (*.f64 y.re (log.f64 (neg.f64 x.im)))))))) (atan2.f64 x.im x.re))))) (pow.f64 y.im 3))))))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 y.re (log.f64 (neg.f64 x.im))))))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 y.re (log.f64 (neg.f64 x.im))))))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 y.re (log.f64 (neg.f64 x.im))))))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 y.re (log.f64 (neg.f64 x.im))))))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.im (atan2.f64 x.im x.re)) (*.f64 y.re (log.f64 (neg.f64 x.im))))))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.im (atan2.f64 x.im x.re)) (*.f64 y.re (log.f64 (neg.f64 x.im))))))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.im (atan2.f64 x.im x.re)) (*.f64 y.re (log.f64 (neg.f64 x.im))))))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.im (atan2.f64 x.im x.re)) (*.f64 y.re (log.f64 (neg.f64 x.im))))))
(+.f64 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im)))) 0)
(+.f64 0 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im)))))
(+.f64 -1 (-.f64 1 (/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (neg.f64 (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 y.re (log.f64 (neg.f64 x.im)))))))))
(+.f64 (/.f64 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im)))) 2) (/.f64 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im)))) 2))
(-.f64 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im)))) 0)
(-.f64 0 (/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (neg.f64 (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 y.re (log.f64 (neg.f64 x.im))))))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 (*.f64 2 (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im)))) 1/2))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 (/.f64 2 (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 y.re (log.f64 (neg.f64 x.im)))))) 1/2))
(*.f64 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im)))) 1)
(*.f64 1 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im)))))
(*.f64 -1 (/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (neg.f64 (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 y.re (log.f64 (neg.f64 x.im))))))))
(*.f64 -1 (*.f64 (/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (neg.f64 (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 y.re (log.f64 (neg.f64 x.im))))))) 1))
(*.f64 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 2) (/.f64 (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))) 2))
(*.f64 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 2) (*.f64 (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))) 1/2))
(*.f64 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 2) (*.f64 (*.f64 (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))) 1/2) 1))
(*.f64 2 (/.f64 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im)))) 2))
(*.f64 2 (*.f64 (/.f64 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im)))) 2) 1))
(*.f64 2 (*.f64 (/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 2) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im)))))
(*.f64 2 (*.f64 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im)))) 1/2))
(*.f64 2 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (/.f64 (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))) 2)))
(*.f64 2 (*.f64 (/.f64 (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))) 2) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))))
(*.f64 (*.f64 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 2) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im)))) 1/2)
(*.f64 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 4) (/.f64 (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))) 4))
(*.f64 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 4) (*.f64 (/.f64 (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))) 4) 1))
(*.f64 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 4) (*.f64 1/4 (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im)))))
(*.f64 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 4) (*.f64 1/2 (/.f64 (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))) 2)))
(*.f64 (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))))
(*.f64 (neg.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))) (neg.f64 (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im)))))
(*.f64 (neg.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))) (*.f64 (neg.f64 (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im)))) 1))
(*.f64 (neg.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))) (*.f64 -1 (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im)))))
(*.f64 1/2 (*.f64 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 2) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im)))))
(*.f64 (/.f64 (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))) 2) (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 2))
(*.f64 (*.f64 (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))) 1/2) (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 2))
(*.f64 (/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (neg.f64 (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 y.re (log.f64 (neg.f64 x.im))))))) -1)
(*.f64 (/.f64 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im)))) 2) 2)
(*.f64 (/.f64 (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))) 4) (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 4))
(*.f64 (neg.f64 (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im)))) (neg.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))))
(neg.f64 (/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (neg.f64 (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 y.re (log.f64 (neg.f64 x.im))))))))
Outputs
(/.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im)))
(*.f64 (atan2.f64 x.im x.re) (/.f64 y.re (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im))))
(*.f64 y.re (/.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im))))
(+.f64 (/.f64 (*.f64 (pow.f64 y.re 2) (*.f64 (atan2.f64 x.im x.re) (log.f64 (neg.f64 x.im)))) (exp.f64 (*.f64 y.im (atan2.f64 x.im x.re)))) (/.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im))))
(+.f64 (*.f64 (atan2.f64 x.im x.re) (/.f64 y.re (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im)))) (*.f64 (*.f64 (atan2.f64 x.im x.re) (log.f64 (neg.f64 x.im))) (/.f64 (pow.f64 y.re 2) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im)))))
(+.f64 (*.f64 y.re (/.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im)))) (*.f64 (pow.f64 y.re 2) (/.f64 (*.f64 (atan2.f64 x.im x.re) (log.f64 (neg.f64 x.im))) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im)))))
(+.f64 (*.f64 y.re (/.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im)))) (*.f64 (*.f64 (pow.f64 y.re 2) (log.f64 (neg.f64 x.im))) (/.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im)))))
(*.f64 (/.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im))) (+.f64 (*.f64 (pow.f64 y.re 2) (log.f64 (neg.f64 x.im))) y.re))
(*.f64 (/.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im))) (+.f64 y.re (*.f64 (pow.f64 y.re 2) (log.f64 (neg.f64 x.im)))))
(+.f64 (/.f64 (*.f64 (pow.f64 y.re 2) (*.f64 (atan2.f64 x.im x.re) (log.f64 (neg.f64 x.im)))) (exp.f64 (*.f64 y.im (atan2.f64 x.im x.re)))) (+.f64 (/.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im))) (*.f64 (pow.f64 y.re 3) (-.f64 (*.f64 -1/6 (/.f64 (pow.f64 (atan2.f64 x.im x.re) 3) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im)))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (atan2.f64 x.im x.re) (pow.f64 (log.f64 (neg.f64 x.im)) 2)) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im)))) (*.f64 1/2 (/.f64 (*.f64 (atan2.f64 x.im x.re) (pow.f64 (log.f64 (neg.f64 x.im)) 2)) (exp.f64 (*.f64 y.im (atan2.f64 x.im x.re))))))))))
(+.f64 (*.f64 (atan2.f64 x.im x.re) (/.f64 y.re (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im)))) (+.f64 (*.f64 (pow.f64 y.re 3) (-.f64 (*.f64 -1/6 (/.f64 (pow.f64 (atan2.f64 x.im x.re) 3) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im)))) (+.f64 (*.f64 -1 (*.f64 (pow.f64 (log.f64 (neg.f64 x.im)) 2) (/.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im))))) (*.f64 (*.f64 (pow.f64 (log.f64 (neg.f64 x.im)) 2) (/.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im)))) 1/2)))) (*.f64 (*.f64 (atan2.f64 x.im x.re) (log.f64 (neg.f64 x.im))) (/.f64 (pow.f64 y.re 2) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im))))))
(+.f64 (*.f64 y.re (/.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im)))) (+.f64 (*.f64 (pow.f64 y.re 2) (/.f64 (*.f64 (atan2.f64 x.im x.re) (log.f64 (neg.f64 x.im))) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im)))) (*.f64 (pow.f64 y.re 3) (-.f64 (*.f64 -1/6 (/.f64 (pow.f64 (atan2.f64 x.im x.re) 3) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im)))) (*.f64 (*.f64 (pow.f64 (log.f64 (neg.f64 x.im)) 2) (/.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im)))) -1/2)))))
(+.f64 (*.f64 y.re (/.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im)))) (+.f64 (*.f64 (*.f64 (pow.f64 y.re 2) (log.f64 (neg.f64 x.im))) (/.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im)))) (*.f64 (pow.f64 y.re 3) (-.f64 (*.f64 -1/6 (/.f64 (pow.f64 (atan2.f64 x.im x.re) 3) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im)))) (*.f64 (*.f64 (pow.f64 (log.f64 (neg.f64 x.im)) 2) (/.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im)))) -1/2)))))
(+.f64 (*.f64 (/.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im))) (+.f64 (*.f64 (pow.f64 y.re 2) (log.f64 (neg.f64 x.im))) y.re)) (*.f64 (pow.f64 y.re 3) (-.f64 (*.f64 -1/6 (/.f64 (pow.f64 (atan2.f64 x.im x.re) 3) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im)))) (*.f64 (*.f64 (atan2.f64 x.im x.re) (/.f64 (pow.f64 (log.f64 (neg.f64 x.im)) 2) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im)))) -1/2))))
(+.f64 (*.f64 (/.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im))) (+.f64 y.re (*.f64 (pow.f64 y.re 2) (log.f64 (neg.f64 x.im))))) (*.f64 (pow.f64 y.re 3) (-.f64 (*.f64 -1/6 (/.f64 (pow.f64 (atan2.f64 x.im x.re) 3) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im)))) (*.f64 (pow.f64 (log.f64 (neg.f64 x.im)) 2) (*.f64 (/.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im))) -1/2)))))
(+.f64 (*.f64 (/.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im))) (+.f64 y.re (*.f64 (pow.f64 y.re 2) (log.f64 (neg.f64 x.im))))) (*.f64 (pow.f64 y.re 3) (-.f64 (*.f64 -1/6 (/.f64 (pow.f64 (atan2.f64 x.im x.re) 3) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im)))) (*.f64 (*.f64 (atan2.f64 x.im x.re) (/.f64 (pow.f64 (log.f64 (neg.f64 x.im)) 2) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im)))) -1/2))))
(+.f64 (/.f64 (*.f64 (pow.f64 y.re 2) (*.f64 (atan2.f64 x.im x.re) (log.f64 (neg.f64 x.im)))) (exp.f64 (*.f64 y.im (atan2.f64 x.im x.re)))) (+.f64 (/.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im))) (+.f64 (*.f64 -1 (*.f64 (pow.f64 y.re 4) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (atan2.f64 x.im x.re) (pow.f64 (log.f64 (neg.f64 x.im)) 3)) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im)))) (+.f64 (*.f64 -1 (*.f64 (-.f64 (*.f64 -1/6 (/.f64 (pow.f64 (atan2.f64 x.im x.re) 3) (exp.f64 (*.f64 y.im (atan2.f64 x.im x.re))))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (atan2.f64 x.im x.re) (pow.f64 (log.f64 (neg.f64 x.im)) 2)) (exp.f64 (*.f64 y.im (atan2.f64 x.im x.re))))) (*.f64 1/2 (/.f64 (*.f64 (atan2.f64 x.im x.re) (pow.f64 (log.f64 (neg.f64 x.im)) 2)) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im)))))) (log.f64 (neg.f64 x.im)))) (*.f64 -1/6 (/.f64 (*.f64 (atan2.f64 x.im x.re) (pow.f64 (log.f64 (neg.f64 x.im)) 3)) (exp.f64 (*.f64 y.im (atan2.f64 x.im x.re))))))))) (*.f64 (pow.f64 y.re 3) (-.f64 (*.f64 -1/6 (/.f64 (pow.f64 (atan2.f64 x.im x.re) 3) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im)))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (atan2.f64 x.im x.re) (pow.f64 (log.f64 (neg.f64 x.im)) 2)) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im)))) (*.f64 1/2 (/.f64 (*.f64 (atan2.f64 x.im x.re) (pow.f64 (log.f64 (neg.f64 x.im)) 2)) (exp.f64 (*.f64 y.im (atan2.f64 x.im x.re)))))))))))
(+.f64 (*.f64 (*.f64 (atan2.f64 x.im x.re) (log.f64 (neg.f64 x.im))) (/.f64 (pow.f64 y.re 2) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im)))) (+.f64 (*.f64 (atan2.f64 x.im x.re) (/.f64 y.re (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im)))) (+.f64 (*.f64 (pow.f64 y.re 3) (-.f64 (*.f64 -1/6 (/.f64 (pow.f64 (atan2.f64 x.im x.re) 3) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im)))) (+.f64 (*.f64 -1 (*.f64 (pow.f64 (log.f64 (neg.f64 x.im)) 2) (/.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im))))) (*.f64 (*.f64 (pow.f64 (log.f64 (neg.f64 x.im)) 2) (/.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im)))) 1/2)))) (*.f64 -1 (*.f64 (pow.f64 y.re 4) (+.f64 (*.f64 -1 (*.f64 (log.f64 (neg.f64 x.im)) (-.f64 (*.f64 -1/6 (/.f64 (pow.f64 (atan2.f64 x.im x.re) 3) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im)))) (+.f64 (*.f64 -1 (*.f64 (pow.f64 (log.f64 (neg.f64 x.im)) 2) (/.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im))))) (*.f64 (*.f64 (pow.f64 (log.f64 (neg.f64 x.im)) 2) (/.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im)))) 1/2))))) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 (log.f64 (neg.f64 x.im)) 3) (/.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im))))) (*.f64 1/2 (*.f64 (pow.f64 (log.f64 (neg.f64 x.im)) 3) (/.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im))))))))))))
(+.f64 (*.f64 (pow.f64 y.re 2) (/.f64 (*.f64 (atan2.f64 x.im x.re) (log.f64 (neg.f64 x.im))) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im)))) (+.f64 (*.f64 y.re (/.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im)))) (+.f64 (*.f64 (pow.f64 y.re 3) (-.f64 (*.f64 -1/6 (/.f64 (pow.f64 (atan2.f64 x.im x.re) 3) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im)))) (*.f64 (*.f64 (pow.f64 (log.f64 (neg.f64 x.im)) 2) (/.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im)))) -1/2))) (neg.f64 (*.f64 (pow.f64 y.re 4) (+.f64 (*.f64 (-.f64 (*.f64 -1/6 (/.f64 (pow.f64 (atan2.f64 x.im x.re) 3) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im)))) (*.f64 (*.f64 (pow.f64 (log.f64 (neg.f64 x.im)) 2) (/.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im)))) -1/2)) (neg.f64 (log.f64 (neg.f64 x.im)))) (*.f64 (*.f64 (pow.f64 (log.f64 (neg.f64 x.im)) 3) (/.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im)))) 1/3)))))))
(+.f64 (*.f64 y.re (/.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im)))) (+.f64 (*.f64 (pow.f64 y.re 3) (-.f64 (*.f64 -1/6 (/.f64 (pow.f64 (atan2.f64 x.im x.re) 3) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im)))) (*.f64 (*.f64 (pow.f64 (log.f64 (neg.f64 x.im)) 2) (/.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im)))) -1/2))) (+.f64 (*.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.im)) (neg.f64 (-.f64 (*.f64 -1/6 (/.f64 (pow.f64 (atan2.f64 x.im x.re) 3) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im)))) (*.f64 (*.f64 (pow.f64 (log.f64 (neg.f64 x.im)) 2) (/.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im)))) -1/2)))) (*.f64 (*.f64 (atan2.f64 x.im x.re) (/.f64 (pow.f64 (log.f64 (neg.f64 x.im)) 3) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im)))) 1/3)) (neg.f64 (pow.f64 y.re 4))) (*.f64 (*.f64 (pow.f64 y.re 2) (log.f64 (neg.f64 x.im))) (/.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im)))))))
(+.f64 (*.f64 (/.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im))) (+.f64 (*.f64 (pow.f64 y.re 2) (log.f64 (neg.f64 x.im))) y.re)) (+.f64 (*.f64 (pow.f64 y.re 3) (-.f64 (*.f64 -1/6 (/.f64 (pow.f64 (atan2.f64 x.im x.re) 3) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im)))) (*.f64 (*.f64 (atan2.f64 x.im x.re) (/.f64 (pow.f64 (log.f64 (neg.f64 x.im)) 2) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im)))) -1/2))) (*.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.im)) (neg.f64 (-.f64 (*.f64 -1/6 (/.f64 (pow.f64 (atan2.f64 x.im x.re) 3) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im)))) (*.f64 (*.f64 (atan2.f64 x.im x.re) (/.f64 (pow.f64 (log.f64 (neg.f64 x.im)) 2) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im)))) -1/2)))) (*.f64 (/.f64 (*.f64 (atan2.f64 x.im x.re) (pow.f64 (log.f64 (neg.f64 x.im)) 3)) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im))) 1/3)) (neg.f64 (pow.f64 y.re 4)))))
(+.f64 (*.f64 (/.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im))) (+.f64 y.re (*.f64 (pow.f64 y.re 2) (log.f64 (neg.f64 x.im))))) (+.f64 (*.f64 (pow.f64 y.re 3) (-.f64 (*.f64 -1/6 (/.f64 (pow.f64 (atan2.f64 x.im x.re) 3) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im)))) (*.f64 (pow.f64 (log.f64 (neg.f64 x.im)) 2) (*.f64 (/.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im))) -1/2)))) (*.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.im)) (neg.f64 (-.f64 (*.f64 -1/6 (/.f64 (pow.f64 (atan2.f64 x.im x.re) 3) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im)))) (*.f64 (pow.f64 (log.f64 (neg.f64 x.im)) 2) (*.f64 (/.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im))) -1/2))))) (*.f64 (pow.f64 (log.f64 (neg.f64 x.im)) 3) (*.f64 (/.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im))) 1/3))) (neg.f64 (pow.f64 y.re 4)))))
(+.f64 (*.f64 (/.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im))) (+.f64 y.re (*.f64 (pow.f64 y.re 2) (log.f64 (neg.f64 x.im))))) (+.f64 (*.f64 (pow.f64 y.re 3) (-.f64 (*.f64 -1/6 (/.f64 (pow.f64 (atan2.f64 x.im x.re) 3) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im)))) (*.f64 (pow.f64 (log.f64 (neg.f64 x.im)) 2) (*.f64 (/.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im))) -1/2)))) (*.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.im)) (-.f64 (*.f64 (pow.f64 (log.f64 (neg.f64 x.im)) 2) (*.f64 (/.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im))) -1/2)) (*.f64 -1/6 (/.f64 (pow.f64 (atan2.f64 x.im x.re) 3) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im)))))) (*.f64 (pow.f64 (log.f64 (neg.f64 x.im)) 3) (*.f64 (/.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im))) 1/3))) (neg.f64 (pow.f64 y.re 4)))))
(+.f64 (*.f64 (/.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im))) (+.f64 y.re (*.f64 (pow.f64 y.re 2) (log.f64 (neg.f64 x.im))))) (+.f64 (*.f64 (pow.f64 y.re 3) (-.f64 (*.f64 -1/6 (/.f64 (pow.f64 (atan2.f64 x.im x.re) 3) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im)))) (*.f64 (*.f64 (atan2.f64 x.im x.re) (/.f64 (pow.f64 (log.f64 (neg.f64 x.im)) 2) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im)))) -1/2))) (*.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.im)) (-.f64 (*.f64 (*.f64 (atan2.f64 x.im x.re) (/.f64 (pow.f64 (log.f64 (neg.f64 x.im)) 2) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im)))) -1/2) (*.f64 -1/6 (/.f64 (pow.f64 (atan2.f64 x.im x.re) 3) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im)))))) (*.f64 (pow.f64 (log.f64 (neg.f64 x.im)) 3) (*.f64 (/.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im))) 1/3))) (neg.f64 (pow.f64 y.re 4)))))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 y.re (log.f64 (neg.f64 x.im))))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 y.re (log.f64 (neg.f64 x.im))))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 y.re (log.f64 (neg.f64 x.im))))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 y.re (log.f64 (neg.f64 x.im))))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 y.re (log.f64 (neg.f64 x.im))))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 y.re (log.f64 (neg.f64 x.im))))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 y.re (log.f64 (neg.f64 x.im))))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 y.re (log.f64 (neg.f64 x.im))))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 y.re (+.f64 (log.f64 -1) (log.f64 x.im))))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (+.f64 (log.f64 -1) (log.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 y.re (+.f64 (log.f64 -1) (log.f64 x.im))))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (+.f64 (log.f64 -1) (log.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 y.re (+.f64 (log.f64 -1) (log.f64 x.im))))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (+.f64 (log.f64 -1) (log.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 y.re (+.f64 (log.f64 -1) (log.f64 x.im))))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (+.f64 (log.f64 -1) (log.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 1 x.im)))) y.re))))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 y.re (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 1 x.im))))))))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 y.re (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 1 x.im))))))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 1 x.im))))) (*.f64 (atan2.f64 x.im x.re) y.im))))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 1 x.im)))) y.re))))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 y.re (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 1 x.im))))))))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 y.re (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 1 x.im))))))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 1 x.im))))) (*.f64 (atan2.f64 x.im x.re) y.im))))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 1 x.im)))) y.re))))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 y.re (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 1 x.im))))))))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 y.re (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 1 x.im))))))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 1 x.im))))) (*.f64 (atan2.f64 x.im x.re) y.im))))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 1 x.im)))) y.re))))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 y.re (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 1 x.im))))))))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 y.re (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 1 x.im))))))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 1 x.im))))) (*.f64 (atan2.f64 x.im x.re) y.im))))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 -1 (*.f64 y.re (log.f64 (/.f64 -1 x.im)))))))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (neg.f64 (*.f64 y.re (log.f64 (/.f64 -1 x.im)))))))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 (/.f64 -1 x.im)) (neg.f64 y.re)))))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 y.re (neg.f64 (log.f64 (/.f64 -1 x.im)))))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (log.f64 (/.f64 -1 x.im)) (neg.f64 y.re)) (*.f64 (atan2.f64 x.im x.re) y.im))))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 -1 (*.f64 y.re (log.f64 (/.f64 -1 x.im)))))))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (neg.f64 (*.f64 y.re (log.f64 (/.f64 -1 x.im)))))))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 (/.f64 -1 x.im)) (neg.f64 y.re)))))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 y.re (neg.f64 (log.f64 (/.f64 -1 x.im)))))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (log.f64 (/.f64 -1 x.im)) (neg.f64 y.re)) (*.f64 (atan2.f64 x.im x.re) y.im))))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 -1 (*.f64 y.re (log.f64 (/.f64 -1 x.im)))))))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (neg.f64 (*.f64 y.re (log.f64 (/.f64 -1 x.im)))))))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 (/.f64 -1 x.im)) (neg.f64 y.re)))))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 y.re (neg.f64 (log.f64 (/.f64 -1 x.im)))))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (log.f64 (/.f64 -1 x.im)) (neg.f64 y.re)) (*.f64 (atan2.f64 x.im x.re) y.im))))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 -1 (*.f64 y.re (log.f64 (/.f64 -1 x.im)))))))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (neg.f64 (*.f64 y.re (log.f64 (/.f64 -1 x.im)))))))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 (/.f64 -1 x.im)) (neg.f64 y.re)))))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 y.re (neg.f64 (log.f64 (/.f64 -1 x.im)))))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (log.f64 (/.f64 -1 x.im)) (neg.f64 y.re)) (*.f64 (atan2.f64 x.im x.re) y.im))))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 y.re (log.f64 (neg.f64 x.im))))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 y.re (log.f64 (neg.f64 x.im))))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 y.re (log.f64 (neg.f64 x.im))))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 y.re (log.f64 (neg.f64 x.im))))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 y.re (log.f64 (neg.f64 x.im))))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 y.re (log.f64 (neg.f64 x.im))))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 y.re (log.f64 (neg.f64 x.im))))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 y.re (log.f64 (neg.f64 x.im))))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 y.re (log.f64 (neg.f64 x.im))))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 y.re (log.f64 (neg.f64 x.im))))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 y.re (log.f64 (neg.f64 x.im))))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 y.re (log.f64 (neg.f64 x.im))))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (neg.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))))))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (*.f64 y.re (neg.f64 (log.f64 (neg.f64 x.im))))))
(+.f64 (/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (neg.f64 (*.f64 y.re (log.f64 (neg.f64 x.im)))))) (*.f64 -1 (/.f64 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 y.im (atan2.f64 x.im x.re))) (exp.f64 (neg.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))))))))
(+.f64 (/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (neg.f64 (*.f64 y.re (log.f64 (neg.f64 x.im)))))) (*.f64 -1 (*.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (neg.f64 (*.f64 y.re (log.f64 (neg.f64 x.im)))))))))
(+.f64 (/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (neg.f64 (*.f64 y.re (log.f64 (neg.f64 x.im)))))) (neg.f64 (*.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (neg.f64 (*.f64 y.re (log.f64 (neg.f64 x.im)))))))))
(+.f64 (/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (*.f64 y.re (neg.f64 (log.f64 (neg.f64 x.im)))))) (*.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (neg.f64 (/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (*.f64 y.re (neg.f64 (log.f64 (neg.f64 x.im)))))))))
(+.f64 (/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (*.f64 y.re (neg.f64 (log.f64 (neg.f64 x.im)))))) (*.f64 (/.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (exp.f64 (*.f64 y.re (neg.f64 (log.f64 (neg.f64 x.im)))))) (neg.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))))))
(*.f64 (/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (*.f64 y.re (neg.f64 (log.f64 (neg.f64 x.im)))))) (+.f64 1 (neg.f64 (*.f64 (atan2.f64 x.im x.re) y.im))))
(*.f64 (/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (*.f64 y.re (neg.f64 (log.f64 (neg.f64 x.im)))))) (-.f64 1 (*.f64 (atan2.f64 x.im x.re) y.im)))
(+.f64 (/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (neg.f64 (*.f64 y.re (log.f64 (neg.f64 x.im)))))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 y.im (atan2.f64 x.im x.re))) (exp.f64 (neg.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))))))) (*.f64 -1 (*.f64 (+.f64 (*.f64 1/2 (/.f64 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (pow.f64 (atan2.f64 x.im x.re) 2)) (exp.f64 (neg.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))))))) (*.f64 -1 (/.f64 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (pow.f64 (atan2.f64 x.im x.re) 2)) (exp.f64 (neg.f64 (*.f64 y.re (log.f64 (neg.f64 x.im)))))))) (pow.f64 y.im 2)))))
(+.f64 (/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (neg.f64 (*.f64 y.re (log.f64 (neg.f64 x.im)))))) (+.f64 (*.f64 -1 (*.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (neg.f64 (*.f64 y.re (log.f64 (neg.f64 x.im)))))))) (*.f64 -1 (*.f64 (+.f64 (*.f64 1/2 (*.f64 (pow.f64 (atan2.f64 x.im x.re) 2) (/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (neg.f64 (*.f64 y.re (log.f64 (neg.f64 x.im)))))))) (*.f64 -1 (*.f64 (pow.f64 (atan2.f64 x.im x.re) 2) (/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (neg.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))))))))) (pow.f64 y.im 2)))))
(+.f64 (/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (neg.f64 (*.f64 y.re (log.f64 (neg.f64 x.im)))))) (*.f64 -1 (+.f64 (*.f64 (*.f64 (*.f64 (/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (neg.f64 (*.f64 y.re (log.f64 (neg.f64 x.im)))))) (pow.f64 (atan2.f64 x.im x.re) 2)) -1/2) (pow.f64 y.im 2)) (*.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (neg.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))))))))))
(+.f64 (/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (*.f64 y.re (neg.f64 (log.f64 (neg.f64 x.im)))))) (+.f64 (*.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (neg.f64 (/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (*.f64 y.re (neg.f64 (log.f64 (neg.f64 x.im)))))))) (*.f64 (pow.f64 y.im 2) (*.f64 1/2 (/.f64 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (pow.f64 (atan2.f64 x.im x.re) 2)) (exp.f64 (*.f64 y.re (neg.f64 (log.f64 (neg.f64 x.im))))))))))
(+.f64 (/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (*.f64 y.re (neg.f64 (log.f64 (neg.f64 x.im)))))) (+.f64 (*.f64 (/.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (exp.f64 (*.f64 y.re (neg.f64 (log.f64 (neg.f64 x.im)))))) (neg.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))))) (*.f64 (pow.f64 y.im 2) (*.f64 1/2 (*.f64 (/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (*.f64 y.re (neg.f64 (log.f64 (neg.f64 x.im)))))) (pow.f64 (atan2.f64 x.im x.re) 2))))))
(+.f64 (*.f64 (/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (*.f64 y.re (neg.f64 (log.f64 (neg.f64 x.im)))))) (+.f64 1 (neg.f64 (*.f64 (atan2.f64 x.im x.re) y.im)))) (*.f64 (pow.f64 y.im 2) (*.f64 1/2 (*.f64 (/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (*.f64 y.re (neg.f64 (log.f64 (neg.f64 x.im)))))) (pow.f64 (atan2.f64 x.im x.re) 2)))))
(+.f64 (*.f64 (/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (*.f64 y.re (neg.f64 (log.f64 (neg.f64 x.im)))))) (-.f64 1 (*.f64 (atan2.f64 x.im x.re) y.im))) (*.f64 (pow.f64 y.im 2) (*.f64 1/2 (/.f64 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (pow.f64 (atan2.f64 x.im x.re) 2)) (exp.f64 (*.f64 y.re (neg.f64 (log.f64 (neg.f64 x.im)))))))))
(+.f64 (/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (neg.f64 (*.f64 y.re (log.f64 (neg.f64 x.im)))))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 y.im (atan2.f64 x.im x.re))) (exp.f64 (neg.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))))))) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/2 (/.f64 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (pow.f64 (atan2.f64 x.im x.re) 2)) (exp.f64 (neg.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))))))) (*.f64 -1 (/.f64 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (pow.f64 (atan2.f64 x.im x.re) 2)) (exp.f64 (neg.f64 (*.f64 y.re (log.f64 (neg.f64 x.im)))))))) (pow.f64 y.im 2))) (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (pow.f64 (atan2.f64 x.im x.re) 3)) (exp.f64 (neg.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))))))) (+.f64 (*.f64 1/6 (/.f64 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (pow.f64 (atan2.f64 x.im x.re) 3)) (exp.f64 (neg.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))))))) (*.f64 -1 (*.f64 (+.f64 (*.f64 1/2 (/.f64 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (pow.f64 (atan2.f64 x.im x.re) 2)) (exp.f64 (neg.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))))))) (*.f64 -1 (/.f64 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (pow.f64 (atan2.f64 x.im x.re) 2)) (exp.f64 (neg.f64 (*.f64 y.re (log.f64 (neg.f64 x.im)))))))) (atan2.f64 x.im x.re))))) (pow.f64 y.im 3))))))
(+.f64 (/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (neg.f64 (*.f64 y.re (log.f64 (neg.f64 x.im)))))) (+.f64 (*.f64 -1 (*.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (neg.f64 (*.f64 y.re (log.f64 (neg.f64 x.im)))))))) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/2 (*.f64 (pow.f64 (atan2.f64 x.im x.re) 2) (/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (neg.f64 (*.f64 y.re (log.f64 (neg.f64 x.im)))))))) (*.f64 -1 (*.f64 (pow.f64 (atan2.f64 x.im x.re) 2) (/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (neg.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))))))))) (pow.f64 y.im 2))) (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 (atan2.f64 x.im x.re) 3) (/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (neg.f64 (*.f64 y.re (log.f64 (neg.f64 x.im)))))))) (+.f64 (*.f64 (*.f64 (pow.f64 (atan2.f64 x.im x.re) 3) (/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (neg.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))))))) 1/6) (*.f64 -1 (*.f64 (atan2.f64 x.im x.re) (+.f64 (*.f64 1/2 (*.f64 (pow.f64 (atan2.f64 x.im x.re) 2) (/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (neg.f64 (*.f64 y.re (log.f64 (neg.f64 x.im)))))))) (*.f64 -1 (*.f64 (pow.f64 (atan2.f64 x.im x.re) 2) (/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (neg.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))))))))))))) (pow.f64 y.im 3))))))
(+.f64 (/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (neg.f64 (*.f64 y.re (log.f64 (neg.f64 x.im)))))) (+.f64 (neg.f64 (*.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (neg.f64 (*.f64 y.re (log.f64 (neg.f64 x.im)))))))) (*.f64 -1 (+.f64 (*.f64 (+.f64 (*.f64 (pow.f64 (atan2.f64 x.im x.re) 3) (*.f64 (/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (neg.f64 (*.f64 y.re (log.f64 (neg.f64 x.im)))))) -1/2)) (+.f64 (*.f64 (pow.f64 (atan2.f64 x.im x.re) 3) (*.f64 (/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (neg.f64 (*.f64 y.re (log.f64 (neg.f64 x.im)))))) 1/6)) (*.f64 (*.f64 (*.f64 (/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (neg.f64 (*.f64 y.re (log.f64 (neg.f64 x.im)))))) (pow.f64 (atan2.f64 x.im x.re) 2)) -1/2) (neg.f64 (atan2.f64 x.im x.re))))) (pow.f64 y.im 3)) (*.f64 (*.f64 (*.f64 (/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (neg.f64 (*.f64 y.re (log.f64 (neg.f64 x.im)))))) (pow.f64 (atan2.f64 x.im x.re) 2)) -1/2) (pow.f64 y.im 2))))))
(+.f64 (/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (*.f64 y.re (neg.f64 (log.f64 (neg.f64 x.im)))))) (+.f64 (*.f64 (pow.f64 y.im 2) (*.f64 1/2 (/.f64 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (pow.f64 (atan2.f64 x.im x.re) 2)) (exp.f64 (*.f64 y.re (neg.f64 (log.f64 (neg.f64 x.im)))))))) (*.f64 -1 (+.f64 (*.f64 y.im (/.f64 (*.f64 (atan2.f64 x.im x.re) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))) (exp.f64 (*.f64 y.re (neg.f64 (log.f64 (neg.f64 x.im))))))) (*.f64 (+.f64 (*.f64 (atan2.f64 x.im x.re) (*.f64 1/2 (/.f64 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (pow.f64 (atan2.f64 x.im x.re) 2)) (exp.f64 (*.f64 y.re (neg.f64 (log.f64 (neg.f64 x.im)))))))) (*.f64 (/.f64 (*.f64 (pow.f64 (atan2.f64 x.im x.re) 3) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))) (exp.f64 (*.f64 y.re (neg.f64 (log.f64 (neg.f64 x.im)))))) -1/3)) (pow.f64 y.im 3))))))
(+.f64 (/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (*.f64 y.re (neg.f64 (log.f64 (neg.f64 x.im)))))) (+.f64 (*.f64 (pow.f64 y.im 2) (*.f64 1/2 (*.f64 (/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (*.f64 y.re (neg.f64 (log.f64 (neg.f64 x.im)))))) (pow.f64 (atan2.f64 x.im x.re) 2)))) (neg.f64 (+.f64 (*.f64 (atan2.f64 x.im x.re) (*.f64 y.im (/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (*.f64 y.re (neg.f64 (log.f64 (neg.f64 x.im)))))))) (*.f64 (+.f64 (*.f64 (atan2.f64 x.im x.re) (*.f64 1/2 (*.f64 (/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (*.f64 y.re (neg.f64 (log.f64 (neg.f64 x.im)))))) (pow.f64 (atan2.f64 x.im x.re) 2)))) (*.f64 (/.f64 (*.f64 (pow.f64 (atan2.f64 x.im x.re) 3) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))) (exp.f64 (*.f64 y.re (neg.f64 (log.f64 (neg.f64 x.im)))))) -1/3)) (pow.f64 y.im 3))))))
(+.f64 (*.f64 (/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (*.f64 y.re (neg.f64 (log.f64 (neg.f64 x.im)))))) (+.f64 1 (neg.f64 (*.f64 (atan2.f64 x.im x.re) y.im)))) (+.f64 (*.f64 (pow.f64 y.im 2) (*.f64 1/2 (*.f64 (/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (*.f64 y.re (neg.f64 (log.f64 (neg.f64 x.im)))))) (pow.f64 (atan2.f64 x.im x.re) 2)))) (*.f64 (+.f64 (*.f64 (atan2.f64 x.im x.re) (*.f64 1/2 (*.f64 (/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (*.f64 y.re (neg.f64 (log.f64 (neg.f64 x.im)))))) (pow.f64 (atan2.f64 x.im x.re) 2)))) (*.f64 (/.f64 (*.f64 (pow.f64 (atan2.f64 x.im x.re) 3) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))) (exp.f64 (*.f64 y.re (neg.f64 (log.f64 (neg.f64 x.im)))))) -1/3)) (neg.f64 (pow.f64 y.im 3)))))
(+.f64 (*.f64 (/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (*.f64 y.re (neg.f64 (log.f64 (neg.f64 x.im)))))) (-.f64 1 (*.f64 (atan2.f64 x.im x.re) y.im))) (+.f64 (*.f64 (pow.f64 y.im 2) (*.f64 1/2 (/.f64 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (pow.f64 (atan2.f64 x.im x.re) 2)) (exp.f64 (*.f64 y.re (neg.f64 (log.f64 (neg.f64 x.im)))))))) (*.f64 (+.f64 (*.f64 (atan2.f64 x.im x.re) (*.f64 1/2 (/.f64 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (pow.f64 (atan2.f64 x.im x.re) 2)) (exp.f64 (*.f64 y.re (neg.f64 (log.f64 (neg.f64 x.im)))))))) (*.f64 (/.f64 (*.f64 (pow.f64 (atan2.f64 x.im x.re) 3) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))) (exp.f64 (*.f64 y.re (neg.f64 (log.f64 (neg.f64 x.im)))))) -1/3)) (neg.f64 (pow.f64 y.im 3)))))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 y.re (log.f64 (neg.f64 x.im))))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 y.re (log.f64 (neg.f64 x.im))))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 y.re (log.f64 (neg.f64 x.im))))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 y.re (log.f64 (neg.f64 x.im))))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.im (atan2.f64 x.im x.re)) (*.f64 y.re (log.f64 (neg.f64 x.im))))))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 y.re (log.f64 (neg.f64 x.im))))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.im (atan2.f64 x.im x.re)) (*.f64 y.re (log.f64 (neg.f64 x.im))))))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 y.re (log.f64 (neg.f64 x.im))))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.im (atan2.f64 x.im x.re)) (*.f64 y.re (log.f64 (neg.f64 x.im))))))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 y.re (log.f64 (neg.f64 x.im))))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.im (atan2.f64 x.im x.re)) (*.f64 y.re (log.f64 (neg.f64 x.im))))))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 y.re (log.f64 (neg.f64 x.im))))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))))
(+.f64 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im)))) 0)
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 y.re (log.f64 (neg.f64 x.im))))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))))
(+.f64 0 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im)))))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 y.re (log.f64 (neg.f64 x.im))))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))))
(+.f64 -1 (-.f64 1 (/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (neg.f64 (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 y.re (log.f64 (neg.f64 x.im)))))))))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 y.re (log.f64 (neg.f64 x.im))))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))))
(+.f64 (/.f64 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im)))) 2) (/.f64 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im)))) 2))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 y.re (log.f64 (neg.f64 x.im))))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))))
(-.f64 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im)))) 0)
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 y.re (log.f64 (neg.f64 x.im))))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))))
(-.f64 0 (/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (neg.f64 (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 y.re (log.f64 (neg.f64 x.im))))))))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 y.re (log.f64 (neg.f64 x.im))))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 y.re (log.f64 (neg.f64 x.im))))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 (*.f64 2 (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im)))) 1/2))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 y.re (log.f64 (neg.f64 x.im))))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 (/.f64 2 (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 y.re (log.f64 (neg.f64 x.im)))))) 1/2))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 y.re (log.f64 (neg.f64 x.im))))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))))
(*.f64 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im)))) 1)
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 y.re (log.f64 (neg.f64 x.im))))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))))
(*.f64 1 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im)))))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 y.re (log.f64 (neg.f64 x.im))))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))))
(*.f64 -1 (/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (neg.f64 (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 y.re (log.f64 (neg.f64 x.im))))))))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 y.re (log.f64 (neg.f64 x.im))))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))))
(*.f64 -1 (*.f64 (/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (neg.f64 (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 y.re (log.f64 (neg.f64 x.im))))))) 1))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 y.re (log.f64 (neg.f64 x.im))))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))))
(*.f64 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 2) (/.f64 (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))) 2))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 y.re (log.f64 (neg.f64 x.im))))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))))
(*.f64 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 2) (*.f64 (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))) 1/2))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 y.re (log.f64 (neg.f64 x.im))))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))))
(*.f64 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 2) (*.f64 (*.f64 (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))) 1/2) 1))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 y.re (log.f64 (neg.f64 x.im))))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))))
(*.f64 2 (/.f64 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im)))) 2))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 y.re (log.f64 (neg.f64 x.im))))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))))
(*.f64 2 (*.f64 (/.f64 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im)))) 2) 1))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 y.re (log.f64 (neg.f64 x.im))))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))))
(*.f64 2 (*.f64 (/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 2) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im)))))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 y.re (log.f64 (neg.f64 x.im))))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))))
(*.f64 2 (*.f64 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im)))) 1/2))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 y.re (log.f64 (neg.f64 x.im))))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))))
(*.f64 2 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (/.f64 (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))) 2)))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 y.re (log.f64 (neg.f64 x.im))))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))))
(*.f64 2 (*.f64 (/.f64 (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))) 2) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 y.re (log.f64 (neg.f64 x.im))))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))))
(*.f64 (*.f64 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 2) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im)))) 1/2)
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 y.re (log.f64 (neg.f64 x.im))))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))))
(*.f64 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 4) (/.f64 (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))) 4))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 y.re (log.f64 (neg.f64 x.im))))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))))
(*.f64 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 4) (*.f64 (/.f64 (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))) 4) 1))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 y.re (log.f64 (neg.f64 x.im))))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))))
(*.f64 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 4) (*.f64 1/4 (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im)))))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 y.re (log.f64 (neg.f64 x.im))))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))))
(*.f64 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 4) (*.f64 1/2 (/.f64 (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))) 2)))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 y.re (log.f64 (neg.f64 x.im))))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))))
(*.f64 (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 y.re (log.f64 (neg.f64 x.im))))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))))
(*.f64 (neg.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))) (neg.f64 (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im)))))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 y.re (log.f64 (neg.f64 x.im))))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))))
(*.f64 (neg.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))) (*.f64 (neg.f64 (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im)))) 1))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 y.re (log.f64 (neg.f64 x.im))))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))))
(*.f64 (neg.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))) (*.f64 -1 (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im)))))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 y.re (log.f64 (neg.f64 x.im))))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))))
(*.f64 1/2 (*.f64 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 2) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im)))))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 y.re (log.f64 (neg.f64 x.im))))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))))
(*.f64 (/.f64 (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))) 2) (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 2))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 y.re (log.f64 (neg.f64 x.im))))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))))
(*.f64 (*.f64 (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))) 1/2) (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 2))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 y.re (log.f64 (neg.f64 x.im))))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))))
(*.f64 (/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (neg.f64 (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 y.re (log.f64 (neg.f64 x.im))))))) -1)
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 y.re (log.f64 (neg.f64 x.im))))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))))
(*.f64 (/.f64 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im)))) 2) 2)
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 y.re (log.f64 (neg.f64 x.im))))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))))
(*.f64 (/.f64 (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))) 4) (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) 4))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 y.re (log.f64 (neg.f64 x.im))))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))))
(*.f64 (neg.f64 (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im)))) (neg.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 y.re (log.f64 (neg.f64 x.im))))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))))
(neg.f64 (/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (neg.f64 (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 y.re (log.f64 (neg.f64 x.im))))))))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 y.re (log.f64 (neg.f64 x.im))))))
(*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 y.re (log.f64 (neg.f64 x.im))) (*.f64 (atan2.f64 x.im x.re) y.im))))

localize54.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(*.f64 (log.f64 x.re) y.re)
1.2b
(*.f64 (atan2.f64 x.im x.re) y.re)
2.2b
(*.f64 (atan2.f64 x.im x.re) y.im)
17.1b
(sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))
Compiler

Compiled 96 to 15 computations (84.4% saved)

series86.0ms (0.2%)

Counts
2 → 72
Calls

18 calls:

TimeVariablePointExpression
56.0ms
y.re
@0
(*.f64 (log.f64 x.re) y.re)
10.0ms
x.im
@0
(sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))
8.0ms
x.re
@-inf
(sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))
7.0ms
x.re
@0
(sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))
1.0ms
x.im
@inf
(sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))

rewrite101.0ms (0.2%)

Algorithm
batch-egg-rewrite
Rules
2004×bool.json-1
1152×bool.json-2
1128×rational.json-1
1128×rational.json-2
1128×rational.json-4
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01444
113944
236044
374544
4160444
5374544
6761744
Stop Event
node limit
Counts
2 → 38
Calls
Call 1
Inputs
(sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))
(*.f64 (log.f64 x.re) y.re)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 -1 (-.f64 1 (neg.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 1/2) (*.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 1 (neg.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (neg.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (/.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.re) 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 (sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (neg.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 1/2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 4)) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 4))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (neg.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))) (neg.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))))) -2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 4))) (*.f64 2 (*.f64 2 (*.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 4)))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (neg.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))))))) (#(struct:change #<rule egg-rr> (2) ((x not (not (sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))))))) (#(struct:change #<rule egg-rr> (2) ((x and (sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) (sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))))))) (#(struct:change #<rule egg-rr> (2) ((x or (sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) (sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 (atan2.f64 x.im 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 0 (*.f64 (log.f64 x.re) y.re))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (log.f64 x.re) (*.f64 y.re 1/2)) (*.f64 (log.f64 x.re) (*.f64 y.re 1/2)))))) (#(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 2 (*.f64 (log.f64 x.re) (*.f64 y.re 4))) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (log.f64 x.re) (*.f64 y.re 4)))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (log.f64 x.re) (*.f64 y.re 4)))) (*.f64 2 (*.f64 2 (*.f64 (log.f64 x.re) (*.f64 y.re 4))))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x not (not (*.f64 (log.f64 x.re) y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x and (*.f64 (log.f64 x.re) y.re) (*.f64 (log.f64 x.re) y.re))))) (#(struct:change #<rule egg-rr> (2) ((x or (*.f64 (log.f64 x.re) y.re) (*.f64 (log.f64 x.re) y.re))))))

simplify426.0ms (0.8%)

Algorithm
egg-herbie
Rules
2550×rational.json-simplify-2
1942×rational.json-simplify-35
1018×rational.json-simplify-1
934×rational.json-simplify-52
784×rational.json-simplify-26
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01473582
13213550
27183550
316233508
427623508
536203508
646863508
761843508
866813508
971793508
1079403508
Stop Event
node limit
Counts
110 → 82
Calls
Call 1
Inputs
(sin.f64 (+.f64 (*.f64 y.im (log.f64 x.re)) (*.f64 y.re (atan2.f64 x.im x.re))))
(sin.f64 (+.f64 (*.f64 y.im (log.f64 x.re)) (*.f64 y.re (atan2.f64 x.im x.re))))
(sin.f64 (+.f64 (*.f64 y.im (log.f64 x.re)) (*.f64 y.re (atan2.f64 x.im x.re))))
(sin.f64 (+.f64 (*.f64 y.im (log.f64 x.re)) (*.f64 y.re (atan2.f64 x.im x.re))))
(sin.f64 (+.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.re)) y.im)) (*.f64 y.re (atan2.f64 x.im x.re))))
(sin.f64 (+.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.re)) y.im)) (*.f64 y.re (atan2.f64 x.im x.re))))
(sin.f64 (+.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.re)) y.im)) (*.f64 y.re (atan2.f64 x.im x.re))))
(sin.f64 (+.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.re)) y.im)) (*.f64 y.re (atan2.f64 x.im x.re))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x.re)))) y.im)))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x.re)))) y.im)))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x.re)))) y.im)))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x.re)))) y.im)))
(sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))
(+.f64 (*.f64 (log.f64 x.re) (*.f64 y.im (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))))) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))))
(+.f64 (*.f64 (log.f64 x.re) (*.f64 y.im (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))))) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 (pow.f64 (log.f64 x.re) 2) (pow.f64 y.im 2)))) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))))
(+.f64 (*.f64 (log.f64 x.re) (*.f64 y.im (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))))) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 y.im 3) (*.f64 (pow.f64 (log.f64 x.re) 3) (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re)))))) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 (pow.f64 (log.f64 x.re) 2) (pow.f64 y.im 2)))) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))))))
(sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 y.re (atan2.f64 x.im x.re))))
(sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 y.re (atan2.f64 x.im x.re))))
(sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 y.re (atan2.f64 x.im x.re))))
(sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 y.re (atan2.f64 x.im x.re))))
(sin.f64 (+.f64 (*.f64 y.im (log.f64 x.re)) (*.f64 y.re (atan2.f64 x.im x.re))))
(sin.f64 (+.f64 (*.f64 y.im (log.f64 x.re)) (*.f64 y.re (atan2.f64 x.im x.re))))
(sin.f64 (+.f64 (*.f64 y.im (log.f64 x.re)) (*.f64 y.re (atan2.f64 x.im x.re))))
(sin.f64 (+.f64 (*.f64 y.im (log.f64 x.re)) (*.f64 y.re (atan2.f64 x.im x.re))))
(sin.f64 (+.f64 (*.f64 y.im (log.f64 x.re)) (*.f64 y.re (atan2.f64 x.im x.re))))
(sin.f64 (+.f64 (*.f64 y.im (log.f64 x.re)) (*.f64 y.re (atan2.f64 x.im x.re))))
(sin.f64 (+.f64 (*.f64 y.im (log.f64 x.re)) (*.f64 y.re (atan2.f64 x.im x.re))))
(sin.f64 (+.f64 (*.f64 y.im (log.f64 x.re)) (*.f64 y.re (atan2.f64 x.im x.re))))
(sin.f64 (+.f64 (*.f64 y.im (log.f64 x.re)) (*.f64 y.re (atan2.f64 x.im x.re))))
(sin.f64 (+.f64 (*.f64 y.im (log.f64 x.re)) (*.f64 y.re (atan2.f64 x.im x.re))))
(sin.f64 (+.f64 (*.f64 y.im (log.f64 x.re)) (*.f64 y.re (atan2.f64 x.im x.re))))
(sin.f64 (+.f64 (*.f64 y.im (log.f64 x.re)) (*.f64 y.re (atan2.f64 x.im x.re))))
(sin.f64 (+.f64 (*.f64 y.im (log.f64 x.re)) (*.f64 y.re (atan2.f64 x.im x.re))))
(sin.f64 (+.f64 (*.f64 y.im (log.f64 x.re)) (*.f64 y.re (atan2.f64 x.im x.re))))
(sin.f64 (+.f64 (*.f64 y.im (log.f64 x.re)) (*.f64 y.re (atan2.f64 x.im x.re))))
(sin.f64 (+.f64 (*.f64 y.im (log.f64 x.re)) (*.f64 y.re (atan2.f64 x.im x.re))))
(sin.f64 (*.f64 y.im (log.f64 x.re)))
(+.f64 (sin.f64 (*.f64 y.im (log.f64 x.re))) (*.f64 y.re (*.f64 (atan2.f64 x.im x.re) (cos.f64 (*.f64 y.im (log.f64 x.re))))))
(+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 y.im (log.f64 x.re))) (*.f64 (pow.f64 y.re 2) (pow.f64 (atan2.f64 x.im x.re) 2)))) (+.f64 (sin.f64 (*.f64 y.im (log.f64 x.re))) (*.f64 y.re (*.f64 (atan2.f64 x.im x.re) (cos.f64 (*.f64 y.im (log.f64 x.re)))))))
(+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 y.im (log.f64 x.re))) (*.f64 (pow.f64 y.re 2) (pow.f64 (atan2.f64 x.im x.re) 2)))) (+.f64 (sin.f64 (*.f64 y.im (log.f64 x.re))) (+.f64 (*.f64 y.re (*.f64 (atan2.f64 x.im x.re) (cos.f64 (*.f64 y.im (log.f64 x.re))))) (*.f64 -1/6 (*.f64 (pow.f64 y.re 3) (*.f64 (pow.f64 (atan2.f64 x.im x.re) 3) (cos.f64 (*.f64 y.im (log.f64 x.re)))))))))
(sin.f64 (+.f64 (*.f64 y.im (log.f64 x.re)) (*.f64 y.re (atan2.f64 x.im x.re))))
(sin.f64 (+.f64 (*.f64 y.im (log.f64 x.re)) (*.f64 y.re (atan2.f64 x.im x.re))))
(sin.f64 (+.f64 (*.f64 y.im (log.f64 x.re)) (*.f64 y.re (atan2.f64 x.im x.re))))
(sin.f64 (+.f64 (*.f64 y.im (log.f64 x.re)) (*.f64 y.re (atan2.f64 x.im x.re))))
(sin.f64 (+.f64 (*.f64 y.im (log.f64 x.re)) (*.f64 y.re (atan2.f64 x.im x.re))))
(sin.f64 (+.f64 (*.f64 y.im (log.f64 x.re)) (*.f64 y.re (atan2.f64 x.im x.re))))
(sin.f64 (+.f64 (*.f64 y.im (log.f64 x.re)) (*.f64 y.re (atan2.f64 x.im x.re))))
(sin.f64 (+.f64 (*.f64 y.im (log.f64 x.re)) (*.f64 y.re (atan2.f64 x.im 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 -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 (sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 0)
(+.f64 0 (sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))))
(+.f64 -1 (-.f64 1 (neg.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))))))
(+.f64 (*.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 1/2) (*.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 1/2))
(+.f64 (-.f64 1 (neg.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))))) -1)
(-.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 0)
(-.f64 0 (neg.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))))
(*.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 1)
(*.f64 1 (sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))))
(*.f64 2 (*.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 1/2))
(*.f64 (*.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 2) 1/2)
(*.f64 4 (/.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 4))
(*.f64 (*.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 4) 1/4)
(*.f64 1/2 (*.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 2))
(*.f64 -1 (neg.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))))
(*.f64 (*.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 1/2) 2)
(*.f64 (neg.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))) -1)
(*.f64 1/4 (*.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 4))
(*.f64 (/.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 4) 4)
(/.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 1)
(/.f64 (*.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 2) 2)
(/.f64 (*.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 4) 4)
(/.f64 (*.f64 2 (*.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 4)) 8)
(/.f64 (neg.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))) -1)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 4))) 16)
(/.f64 (+.f64 (neg.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))) (neg.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))))) -2)
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 4))) (*.f64 2 (*.f64 2 (*.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 4)))) 32)
(neg.f64 (neg.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))))
(+.f64 (*.f64 (log.f64 x.re) y.re) 0)
(+.f64 0 (*.f64 (log.f64 x.re) y.re))
(+.f64 (*.f64 (log.f64 x.re) (*.f64 y.re 1/2)) (*.f64 (log.f64 x.re) (*.f64 y.re 1/2)))
(-.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 2 (*.f64 (log.f64 x.re) (*.f64 y.re 4))) 8)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (log.f64 x.re) (*.f64 y.re 4)))) 16)
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (log.f64 x.re) (*.f64 y.re 4)))) (*.f64 2 (*.f64 2 (*.f64 (log.f64 x.re) (*.f64 y.re 4))))) 32)
Outputs
(sin.f64 (+.f64 (*.f64 y.im (log.f64 x.re)) (*.f64 y.re (atan2.f64 x.im x.re))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.re))))
(sin.f64 (+.f64 (*.f64 y.im (log.f64 x.re)) (*.f64 y.re (atan2.f64 x.im x.re))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.re))))
(sin.f64 (+.f64 (*.f64 y.im (log.f64 x.re)) (*.f64 y.re (atan2.f64 x.im x.re))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.re))))
(sin.f64 (+.f64 (*.f64 y.im (log.f64 x.re)) (*.f64 y.re (atan2.f64 x.im x.re))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.re))))
(sin.f64 (+.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.re)) y.im)) (*.f64 y.re (atan2.f64 x.im x.re))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 1 x.re)) (*.f64 y.im -1))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 1 x.re)) (neg.f64 y.im))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (neg.f64 (log.f64 (/.f64 1 x.re))))))
(sin.f64 (+.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.re)) y.im)) (*.f64 y.re (atan2.f64 x.im x.re))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 1 x.re)) (*.f64 y.im -1))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 1 x.re)) (neg.f64 y.im))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (neg.f64 (log.f64 (/.f64 1 x.re))))))
(sin.f64 (+.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.re)) y.im)) (*.f64 y.re (atan2.f64 x.im x.re))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 1 x.re)) (*.f64 y.im -1))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 1 x.re)) (neg.f64 y.im))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (neg.f64 (log.f64 (/.f64 1 x.re))))))
(sin.f64 (+.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 x.re)) y.im)) (*.f64 y.re (atan2.f64 x.im x.re))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 1 x.re)) (*.f64 y.im -1))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 1 x.re)) (neg.f64 y.im))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (neg.f64 (log.f64 (/.f64 1 x.re))))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x.re)))) y.im)))
(sin.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.re)))))))
(sin.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.re)))))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x.re)))) y.im)))
(sin.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.re)))))))
(sin.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.re)))))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x.re)))) y.im)))
(sin.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.re)))))))
(sin.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.re)))))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x.re)))) y.im)))
(sin.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.re)))))))
(sin.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.re)))))))
(sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))
(+.f64 (*.f64 (log.f64 x.re) (*.f64 y.im (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))))) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))))
(+.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 y.im (*.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (log.f64 x.re))))
(+.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 y.im (*.f64 (log.f64 x.re) (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))))))
(+.f64 (*.f64 (log.f64 x.re) (*.f64 y.im (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))))) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 (pow.f64 (log.f64 x.re) 2) (pow.f64 y.im 2)))) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))))
(+.f64 (*.f64 y.im (*.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (log.f64 x.re))) (+.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 (*.f64 (pow.f64 (log.f64 x.re) 2) (pow.f64 y.im 2)) -1/2))))
(+.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 (pow.f64 (log.f64 x.re) 2) (pow.f64 y.im 2)))) (*.f64 y.im (*.f64 (log.f64 x.re) (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 (*.f64 (log.f64 x.re) (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))))) (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 (pow.f64 (log.f64 x.re) 2) (pow.f64 y.im 2))))))
(+.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (+.f64 (*.f64 y.im (*.f64 (log.f64 x.re) (cos.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 (log.f64 x.re) 2) (*.f64 -1/2 (pow.f64 y.im 2))))))
(+.f64 (*.f64 (log.f64 x.re) (*.f64 y.im (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))))) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 y.im 3) (*.f64 (pow.f64 (log.f64 x.re) 3) (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re)))))) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 (pow.f64 (log.f64 x.re) 2) (pow.f64 y.im 2)))) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 y.im 3) (*.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (pow.f64 (log.f64 x.re) 3)))) (+.f64 (*.f64 y.im (*.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (log.f64 x.re))) (+.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 (*.f64 (pow.f64 (log.f64 x.re) 2) (pow.f64 y.im 2)) -1/2)))))
(+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 (pow.f64 (log.f64 x.re) 2) (pow.f64 y.im 2)))) (+.f64 (+.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 y.im (*.f64 (log.f64 x.re) (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re)))))) (*.f64 -1/6 (*.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 (pow.f64 y.im 3) (pow.f64 (log.f64 x.re) 3))))))
(+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 (pow.f64 (log.f64 x.re) 2) (pow.f64 y.im 2)))) (+.f64 (+.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 y.im (*.f64 (log.f64 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 (*.f64 (pow.f64 y.im 3) (pow.f64 (log.f64 x.re) 3)) -1/6))))
(+.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (+.f64 (*.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 (pow.f64 (log.f64 x.re) 2) (*.f64 -1/2 (pow.f64 y.im 2)))) (*.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (+.f64 (*.f64 y.im (log.f64 x.re)) (*.f64 -1/6 (*.f64 (pow.f64 y.im 3) (pow.f64 (log.f64 x.re) 3)))))))
(sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 y.re (atan2.f64 x.im x.re))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.re))))
(sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 y.re (atan2.f64 x.im x.re))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.re))))
(sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 y.re (atan2.f64 x.im x.re))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.re))))
(sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 y.re (atan2.f64 x.im x.re))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.re))))
(sin.f64 (+.f64 (*.f64 y.im (log.f64 x.re)) (*.f64 y.re (atan2.f64 x.im x.re))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.re))))
(sin.f64 (+.f64 (*.f64 y.im (log.f64 x.re)) (*.f64 y.re (atan2.f64 x.im x.re))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.re))))
(sin.f64 (+.f64 (*.f64 y.im (log.f64 x.re)) (*.f64 y.re (atan2.f64 x.im x.re))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.re))))
(sin.f64 (+.f64 (*.f64 y.im (log.f64 x.re)) (*.f64 y.re (atan2.f64 x.im x.re))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.re))))
(sin.f64 (+.f64 (*.f64 y.im (log.f64 x.re)) (*.f64 y.re (atan2.f64 x.im x.re))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.re))))
(sin.f64 (+.f64 (*.f64 y.im (log.f64 x.re)) (*.f64 y.re (atan2.f64 x.im x.re))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.re))))
(sin.f64 (+.f64 (*.f64 y.im (log.f64 x.re)) (*.f64 y.re (atan2.f64 x.im x.re))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.re))))
(sin.f64 (+.f64 (*.f64 y.im (log.f64 x.re)) (*.f64 y.re (atan2.f64 x.im x.re))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.re))))
(sin.f64 (+.f64 (*.f64 y.im (log.f64 x.re)) (*.f64 y.re (atan2.f64 x.im x.re))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.re))))
(sin.f64 (+.f64 (*.f64 y.im (log.f64 x.re)) (*.f64 y.re (atan2.f64 x.im x.re))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.re))))
(sin.f64 (+.f64 (*.f64 y.im (log.f64 x.re)) (*.f64 y.re (atan2.f64 x.im x.re))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.re))))
(sin.f64 (+.f64 (*.f64 y.im (log.f64 x.re)) (*.f64 y.re (atan2.f64 x.im x.re))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.re))))
(sin.f64 (+.f64 (*.f64 y.im (log.f64 x.re)) (*.f64 y.re (atan2.f64 x.im x.re))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.re))))
(sin.f64 (+.f64 (*.f64 y.im (log.f64 x.re)) (*.f64 y.re (atan2.f64 x.im x.re))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.re))))
(sin.f64 (+.f64 (*.f64 y.im (log.f64 x.re)) (*.f64 y.re (atan2.f64 x.im x.re))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.re))))
(sin.f64 (+.f64 (*.f64 y.im (log.f64 x.re)) (*.f64 y.re (atan2.f64 x.im x.re))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.re))))
(sin.f64 (*.f64 y.im (log.f64 x.re)))
(+.f64 (sin.f64 (*.f64 y.im (log.f64 x.re))) (*.f64 y.re (*.f64 (atan2.f64 x.im x.re) (cos.f64 (*.f64 y.im (log.f64 x.re))))))
(+.f64 (sin.f64 (*.f64 y.im (log.f64 x.re))) (*.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (cos.f64 (*.f64 y.im (log.f64 x.re)))))
(+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 y.im (log.f64 x.re))) (*.f64 (pow.f64 y.re 2) (pow.f64 (atan2.f64 x.im x.re) 2)))) (+.f64 (sin.f64 (*.f64 y.im (log.f64 x.re))) (*.f64 y.re (*.f64 (atan2.f64 x.im x.re) (cos.f64 (*.f64 y.im (log.f64 x.re)))))))
(+.f64 (sin.f64 (*.f64 y.im (log.f64 x.re))) (+.f64 (*.f64 y.re (*.f64 (atan2.f64 x.im x.re) (cos.f64 (*.f64 y.im (log.f64 x.re))))) (*.f64 (sin.f64 (*.f64 y.im (log.f64 x.re))) (*.f64 (*.f64 (pow.f64 y.re 2) (pow.f64 (atan2.f64 x.im x.re) 2)) -1/2))))
(+.f64 (+.f64 (sin.f64 (*.f64 y.im (log.f64 x.re))) (*.f64 y.re (*.f64 (atan2.f64 x.im x.re) (cos.f64 (*.f64 y.im (log.f64 x.re)))))) (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 y.im (log.f64 x.re))) (*.f64 (pow.f64 y.re 2) (pow.f64 (atan2.f64 x.im x.re) 2)))))
(+.f64 (sin.f64 (*.f64 y.im (log.f64 x.re))) (+.f64 (*.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (cos.f64 (*.f64 y.im (log.f64 x.re)))) (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 y.im (log.f64 x.re))) (*.f64 (pow.f64 y.re 2) (pow.f64 (atan2.f64 x.im x.re) 2))))))
(+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 y.im (log.f64 x.re))) (*.f64 (pow.f64 y.re 2) (pow.f64 (atan2.f64 x.im x.re) 2)))) (+.f64 (sin.f64 (*.f64 y.im (log.f64 x.re))) (+.f64 (*.f64 y.re (*.f64 (atan2.f64 x.im x.re) (cos.f64 (*.f64 y.im (log.f64 x.re))))) (*.f64 -1/6 (*.f64 (pow.f64 y.re 3) (*.f64 (pow.f64 (atan2.f64 x.im x.re) 3) (cos.f64 (*.f64 y.im (log.f64 x.re)))))))))
(+.f64 (sin.f64 (*.f64 y.im (log.f64 x.re))) (+.f64 (+.f64 (*.f64 y.re (*.f64 (atan2.f64 x.im x.re) (cos.f64 (*.f64 y.im (log.f64 x.re))))) (*.f64 -1/6 (*.f64 (pow.f64 y.re 3) (*.f64 (cos.f64 (*.f64 y.im (log.f64 x.re))) (pow.f64 (atan2.f64 x.im x.re) 3))))) (*.f64 (sin.f64 (*.f64 y.im (log.f64 x.re))) (*.f64 (*.f64 (pow.f64 y.re 2) (pow.f64 (atan2.f64 x.im x.re) 2)) -1/2))))
(+.f64 (sin.f64 (*.f64 y.im (log.f64 x.re))) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 y.im (log.f64 x.re))) (*.f64 (pow.f64 y.re 2) (pow.f64 (atan2.f64 x.im x.re) 2)))) (+.f64 (*.f64 y.re (*.f64 (atan2.f64 x.im x.re) (cos.f64 (*.f64 y.im (log.f64 x.re))))) (*.f64 -1/6 (*.f64 (cos.f64 (*.f64 y.im (log.f64 x.re))) (*.f64 (pow.f64 y.re 3) (pow.f64 (atan2.f64 x.im x.re) 3)))))))
(+.f64 (sin.f64 (*.f64 y.im (log.f64 x.re))) (+.f64 (*.f64 y.re (*.f64 (atan2.f64 x.im x.re) (cos.f64 (*.f64 y.im (log.f64 x.re))))) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 y.re 3) (*.f64 (cos.f64 (*.f64 y.im (log.f64 x.re))) (pow.f64 (atan2.f64 x.im x.re) 3)))) (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 y.im (log.f64 x.re))) (*.f64 (pow.f64 y.re 2) (pow.f64 (atan2.f64 x.im x.re) 2)))))))
(+.f64 (sin.f64 (*.f64 y.im (log.f64 x.re))) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 y.im (log.f64 x.re))) (*.f64 (pow.f64 y.re 2) (pow.f64 (atan2.f64 x.im x.re) 2)))) (*.f64 (cos.f64 (*.f64 y.im (log.f64 x.re))) (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 -1/6 (*.f64 (pow.f64 y.re 3) (pow.f64 (atan2.f64 x.im x.re) 3)))))))
(sin.f64 (+.f64 (*.f64 y.im (log.f64 x.re)) (*.f64 y.re (atan2.f64 x.im x.re))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.re))))
(sin.f64 (+.f64 (*.f64 y.im (log.f64 x.re)) (*.f64 y.re (atan2.f64 x.im x.re))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.re))))
(sin.f64 (+.f64 (*.f64 y.im (log.f64 x.re)) (*.f64 y.re (atan2.f64 x.im x.re))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.re))))
(sin.f64 (+.f64 (*.f64 y.im (log.f64 x.re)) (*.f64 y.re (atan2.f64 x.im x.re))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.re))))
(sin.f64 (+.f64 (*.f64 y.im (log.f64 x.re)) (*.f64 y.re (atan2.f64 x.im x.re))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.re))))
(sin.f64 (+.f64 (*.f64 y.im (log.f64 x.re)) (*.f64 y.re (atan2.f64 x.im x.re))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.re))))
(sin.f64 (+.f64 (*.f64 y.im (log.f64 x.re)) (*.f64 y.re (atan2.f64 x.im x.re))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.re))))
(sin.f64 (+.f64 (*.f64 y.im (log.f64 x.re)) (*.f64 y.re (atan2.f64 x.im x.re))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.re))))
(*.f64 y.re (log.f64 x.re))
(*.f64 (log.f64 x.re) y.re)
(*.f64 y.re (log.f64 x.re))
(*.f64 (log.f64 x.re) y.re)
(*.f64 y.re (log.f64 x.re))
(*.f64 (log.f64 x.re) y.re)
(*.f64 y.re (log.f64 x.re))
(*.f64 (log.f64 x.re) 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 (neg.f64 (log.f64 (/.f64 1 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 y.re (neg.f64 (log.f64 (/.f64 1 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 y.re (neg.f64 (log.f64 (/.f64 1 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 y.re (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 (+.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 (log.f64 x.re) y.re)
(*.f64 y.re (log.f64 x.re))
(*.f64 (log.f64 x.re) y.re)
(*.f64 y.re (log.f64 x.re))
(*.f64 (log.f64 x.re) y.re)
(*.f64 y.re (log.f64 x.re))
(*.f64 (log.f64 x.re) y.re)
(*.f64 y.re (log.f64 x.re))
(*.f64 (log.f64 x.re) y.re)
(*.f64 y.re (log.f64 x.re))
(*.f64 (log.f64 x.re) y.re)
(*.f64 y.re (log.f64 x.re))
(*.f64 (log.f64 x.re) y.re)
(*.f64 y.re (log.f64 x.re))
(*.f64 (log.f64 x.re) y.re)
(*.f64 y.re (log.f64 x.re))
(*.f64 (log.f64 x.re) y.re)
(*.f64 y.re (log.f64 x.re))
(*.f64 (log.f64 x.re) y.re)
(*.f64 y.re (log.f64 x.re))
(*.f64 (log.f64 x.re) y.re)
(*.f64 y.re (log.f64 x.re))
(*.f64 (log.f64 x.re) y.re)
(+.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 0)
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.re))))
(+.f64 0 (sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.re))))
(+.f64 -1 (-.f64 1 (neg.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.re))))
(+.f64 (*.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 1/2) (*.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 1/2))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.re))))
(+.f64 (-.f64 1 (neg.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))))) -1)
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.re))))
(-.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 0)
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.re))))
(-.f64 0 (neg.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.re))))
(*.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 1)
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.re))))
(*.f64 1 (sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.re))))
(*.f64 2 (*.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 1/2))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.re))))
(*.f64 (*.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 2) 1/2)
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.re))))
(*.f64 4 (/.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 4))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.re))))
(*.f64 (*.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 4) 1/4)
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.re))))
(*.f64 1/2 (*.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 2))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.re))))
(*.f64 -1 (neg.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.re))))
(*.f64 (*.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 1/2) 2)
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.re))))
(*.f64 (neg.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))) -1)
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.re))))
(*.f64 1/4 (*.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 4))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.re))))
(*.f64 (/.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 4) 4)
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.re))))
(/.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 1)
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.re))))
(/.f64 (*.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 2) 2)
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.re))))
(/.f64 (*.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 4) 4)
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.re))))
(/.f64 (*.f64 2 (*.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 4)) 8)
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.re))))
(/.f64 (neg.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))) -1)
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.re))))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 4))) 16)
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.re))))
(/.f64 (+.f64 (neg.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))) (neg.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))))) -2)
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.re))))
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 4))) (*.f64 2 (*.f64 2 (*.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))) 4)))) 32)
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 x.re))))
(neg.f64 (neg.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))))
(sin.f64 (+.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 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 (*.f64 (log.f64 x.re) (*.f64 y.re 1/2)) (*.f64 (log.f64 x.re) (*.f64 y.re 1/2)))
(*.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 (log.f64 x.re) (*.f64 y.re 4)) 4)
(*.f64 (log.f64 x.re) y.re)
(/.f64 (*.f64 2 (*.f64 (log.f64 x.re) (*.f64 y.re 4))) 8)
(*.f64 (log.f64 x.re) y.re)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (log.f64 x.re) (*.f64 y.re 4)))) 16)
(*.f64 (log.f64 x.re) y.re)
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (log.f64 x.re) (*.f64 y.re 4)))) (*.f64 2 (*.f64 2 (*.f64 (log.f64 x.re) (*.f64 y.re 4))))) 32)
(*.f64 (log.f64 x.re) y.re)

eval1.2s (2.2%)

Compiler

Compiled 19031 to 5616 computations (70.5% saved)

prune1.2s (2.3%)

Pruning

24 alts after pruning (19 fresh and 5 done)

PrunedKeptTotal
New64111652
Fresh5813
Picked011
Done347
Total64924673
Error
2.9b
Counts
673 → 24
Alt Table
Click to see full alt table
StatusErrorProgram
38.7b
(*.f64 (pow.f64 (neg.f64 x.re) y.re) (*.f64 y.re (atan2.f64 x.im x.re)))
42.3b
(*.f64 (pow.f64 (neg.f64 x.im) y.re) (*.f64 y.re (atan2.f64 x.im x.re)))
42.7b
(*.f64 (pow.f64 (neg.f64 x.im) y.re) (sin.f64 (+.f64 (-.f64 (*.f64 y.re (atan2.f64 x.im x.re)) -1) -1)))
57.7b
(*.f64 (atan2.f64 x.im x.re) (+.f64 y.re (*.f64 (pow.f64 y.re 2) (log.f64 (neg.f64 x.im)))))
50.3b
(*.f64 (atan2.f64 x.im x.re) y.re)
48.4b
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (+.f64 (-.f64 (*.f64 y.re (atan2.f64 x.im x.re)) -1) -1))
39.1b
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))))
50.9b
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.im)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))))
42.1b
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))))
46.6b
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (+.f64 (-.f64 1 (neg.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))))) -1))
39.4b
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (+.f64 (*.f64 (log.f64 x.re) (*.f64 y.im (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))))) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))))
50.4b
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.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))))
51.4b
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.im)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))))
38.9b
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))))
42.2b
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.f64 (*.f64 y.im (log.f64 x.re))))
56.5b
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (neg.f64 (sin.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.im) (-.f64 (*.f64 (atan2.f64 x.im x.re) y.re) (PI.f64))))))
44.6b
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 x.im) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (*.f64 y.re (atan2.f64 x.im x.re)))
51.6b
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 x.im) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))))
42.1b
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 x.im) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))))
54.9b
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 x.im) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.f64 (*.f64 y.im (log.f64 (neg.f64 x.re)))))
46.7b
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 x.im) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.f64 (*.f64 y.im (log.f64 x.im))))
34.4b
(*.f64 y.re (/.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im))))
50.7b
(*.f64 y.re (+.f64 (atan2.f64 x.im x.re) (*.f64 (pow.f64 (atan2.f64 x.im x.re) 2) (neg.f64 y.im))))
34.4b
(*.f64 y.re (*.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))))
Compiler

Compiled 563 to 342 computations (39.3% saved)

regimes3.5s (6.5%)

Counts
42 → 4
Calls
Call 1
Inputs
(*.f64 (atan2.f64 x.im x.re) y.re)
(*.f64 (pow.f64 (neg.f64 x.im) y.re) (*.f64 y.re (atan2.f64 x.im x.re)))
(*.f64 (pow.f64 (neg.f64 x.re) y.re) (*.f64 y.re (atan2.f64 x.im x.re)))
(*.f64 (pow.f64 (neg.f64 x.im) y.re) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))))
(*.f64 y.re (/.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im))))
(*.f64 y.re (*.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))))
(*.f64 (exp.f64 (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re)))) (*.f64 y.re (atan2.f64 x.im x.re)))
(*.f64 (atan2.f64 x.im x.re) (+.f64 y.re (*.f64 (pow.f64 y.re 2) (log.f64 (neg.f64 x.im)))))
(*.f64 y.re (+.f64 (atan2.f64 x.im x.re) (*.f64 (pow.f64 (atan2.f64 x.im x.re) 2) (neg.f64 y.im))))
(*.f64 (pow.f64 (neg.f64 x.im) y.re) (sin.f64 (+.f64 (-.f64 (*.f64 y.re (atan2.f64 x.im x.re)) -1) -1)))
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 x.im) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (*.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))) (*.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))) (*.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))) (+.f64 (-.f64 (*.f64 y.re (atan2.f64 x.im x.re)) -1) -1))
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 x.im) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.f64 (*.f64 y.im (log.f64 x.im))))
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.f64 (*.f64 y.im (log.f64 x.re))))
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 x.im) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.f64 (*.f64 y.im (log.f64 (neg.f64 x.re)))))
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 x.im) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.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))) (sin.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))) (sin.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))) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 (neg.f64 x.im)) y.re))))
(*.f64 (atan2.f64 x.im x.re) (*.f64 (+.f64 y.re (*.f64 (pow.f64 y.re 2) (log.f64 (neg.f64 x.im)))) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))))
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 x.im) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.f64 (+.f64 (-.f64 (*.f64 y.re (atan2.f64 x.im x.re)) -1) -1)))
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.im)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.f64 (+.f64 (-.f64 (*.f64 y.re (atan2.f64 x.im x.re)) -1) -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))) (*.f64 y.re (atan2.f64 x.im x.re)))
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 x.im) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.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))) (sin.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.im) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.f64 (+.f64 (*.f64 (log.f64 (neg.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))) (sin.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 (neg.f64 x.re)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.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 (neg.f64 x.re)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) 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))) (sin.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))) (+.f64 (-.f64 1 (neg.f64 (sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))))) -1))
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 x.im) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.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 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.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))) (sin.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 (neg.f64 x.re)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.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 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (+.f64 (*.f64 (log.f64 x.re) (*.f64 y.im (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))))) (sin.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))) (neg.f64 (sin.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.im) (-.f64 (*.f64 (atan2.f64 x.im x.re) y.re) (PI.f64))))))
(*.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))) (sin.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))) (neg.f64 (sin.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.im) (-.f64 (*.f64 (atan2.f64 x.im x.re) y.re) (PI.f64))))))
Outputs
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) 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))) (*.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))) (sin.f64 (+.f64 (*.f64 (log.f64 (neg.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))) (sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))))
Calls

5 calls:

1.8s
x.re
743.0ms
y.re
496.0ms
x.im
219.0ms
y.im
203.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))) (sin.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
13.0b4x.re
16.5b6x.im
16.7b5y.re
20.8b6y.im
18.4b2(*.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))) (sin.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 948 to 192 computations (79.7% saved)

bsearch375.0ms (0.7%)

Algorithm
binary-search
Steps
TimeLeftRight
231.0ms
-3.3441153738535714e-308
3.554798648426931e-308
112.0ms
-7.420654571217811e-180
-1.0984723205751013e-184
31.0ms
-2.5720358450574013e-27
-6.022403464109208e-28
Results
209.0ms19×body512infinite
138.0ms336×body256valid
21.0ms32×body1024infinite
1.0msbody256infinite
Compiler

Compiled 1281 to 733 computations (42.8% saved)

regimes461.0ms (0.9%)

Counts
31 → 2
Calls
Call 1
Inputs
(*.f64 (atan2.f64 x.im x.re) y.re)
(*.f64 (pow.f64 (neg.f64 x.im) y.re) (*.f64 y.re (atan2.f64 x.im x.re)))
(*.f64 (pow.f64 (neg.f64 x.re) y.re) (*.f64 y.re (atan2.f64 x.im x.re)))
(*.f64 (pow.f64 (neg.f64 x.im) y.re) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))))
(*.f64 y.re (/.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im))))
(*.f64 y.re (*.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))))
(*.f64 (exp.f64 (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re)))) (*.f64 y.re (atan2.f64 x.im x.re)))
(*.f64 (atan2.f64 x.im x.re) (+.f64 y.re (*.f64 (pow.f64 y.re 2) (log.f64 (neg.f64 x.im)))))
(*.f64 y.re (+.f64 (atan2.f64 x.im x.re) (*.f64 (pow.f64 (atan2.f64 x.im x.re) 2) (neg.f64 y.im))))
(*.f64 (pow.f64 (neg.f64 x.im) y.re) (sin.f64 (+.f64 (-.f64 (*.f64 y.re (atan2.f64 x.im x.re)) -1) -1)))
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 x.im) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (*.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))) (*.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))) (*.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))) (+.f64 (-.f64 (*.f64 y.re (atan2.f64 x.im x.re)) -1) -1))
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 x.im) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.f64 (*.f64 y.im (log.f64 x.im))))
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.f64 (*.f64 y.im (log.f64 x.re))))
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 x.im) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.f64 (*.f64 y.im (log.f64 (neg.f64 x.re)))))
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 x.im) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.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))) (sin.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))) (sin.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))) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 (neg.f64 x.im)) y.re))))
(*.f64 (atan2.f64 x.im x.re) (*.f64 (+.f64 y.re (*.f64 (pow.f64 y.re 2) (log.f64 (neg.f64 x.im)))) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))))
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 x.im) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.f64 (+.f64 (-.f64 (*.f64 y.re (atan2.f64 x.im x.re)) -1) -1)))
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.im)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.f64 (+.f64 (-.f64 (*.f64 y.re (atan2.f64 x.im x.re)) -1) -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))) (*.f64 y.re (atan2.f64 x.im x.re)))
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 x.im) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.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))) (sin.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.im) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.f64 (+.f64 (*.f64 (log.f64 (neg.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))) (sin.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 (neg.f64 x.re)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.im)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))))
Outputs
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.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))) (sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))))
Calls

4 calls:

199.0ms
y.im
108.0ms
x.im
79.0ms
y.re
64.0ms
x.re
Results
ErrorSegmentsBranch
17.0b2x.re
18.7b5x.im
19.7b3y.re
23.6b5y.im
Compiler

Compiled 568 to 145 computations (74.5% saved)

bsearch31.0ms (0.1%)

Algorithm
binary-search
Steps
TimeLeftRight
30.0ms
-3.3441153738535714e-308
3.554798648426931e-308
Results
20.0ms96×body256valid
7.0msbody1024infinite
1.0msbody512infinite
Compiler

Compiled 360 to 211 computations (41.4% saved)

regimes402.0ms (0.8%)

Counts
27 → 3
Calls
Call 1
Inputs
(*.f64 (atan2.f64 x.im x.re) y.re)
(*.f64 (pow.f64 (neg.f64 x.im) y.re) (*.f64 y.re (atan2.f64 x.im x.re)))
(*.f64 (pow.f64 (neg.f64 x.re) y.re) (*.f64 y.re (atan2.f64 x.im x.re)))
(*.f64 (pow.f64 (neg.f64 x.im) y.re) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))))
(*.f64 y.re (/.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im))))
(*.f64 y.re (*.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))))
(*.f64 (exp.f64 (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re)))) (*.f64 y.re (atan2.f64 x.im x.re)))
(*.f64 (atan2.f64 x.im x.re) (+.f64 y.re (*.f64 (pow.f64 y.re 2) (log.f64 (neg.f64 x.im)))))
(*.f64 y.re (+.f64 (atan2.f64 x.im x.re) (*.f64 (pow.f64 (atan2.f64 x.im x.re) 2) (neg.f64 y.im))))
(*.f64 (pow.f64 (neg.f64 x.im) y.re) (sin.f64 (+.f64 (-.f64 (*.f64 y.re (atan2.f64 x.im x.re)) -1) -1)))
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 x.im) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (*.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))) (*.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))) (*.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))) (+.f64 (-.f64 (*.f64 y.re (atan2.f64 x.im x.re)) -1) -1))
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 x.im) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.f64 (*.f64 y.im (log.f64 x.im))))
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.f64 (*.f64 y.im (log.f64 x.re))))
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 x.im) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.f64 (*.f64 y.im (log.f64 (neg.f64 x.re)))))
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 x.im) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.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))) (sin.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))) (sin.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))) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))))
(/.f64 (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (exp.f64 (-.f64 (*.f64 (atan2.f64 x.im x.re) y.im) (*.f64 (log.f64 (neg.f64 x.im)) y.re))))
(*.f64 (atan2.f64 x.im x.re) (*.f64 (+.f64 y.re (*.f64 (pow.f64 y.re 2) (log.f64 (neg.f64 x.im)))) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))))
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 x.im) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.f64 (+.f64 (-.f64 (*.f64 y.re (atan2.f64 x.im x.re)) -1) -1)))
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.im)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.f64 (+.f64 (-.f64 (*.f64 y.re (atan2.f64 x.im x.re)) -1) -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))) (*.f64 y.re (atan2.f64 x.im x.re)))
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 x.im) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.f64 (+.f64 (*.f64 (log.f64 x.im) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))))
Outputs
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.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))) (*.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))) (sin.f64 (*.f64 y.im (log.f64 x.re))))
Calls

4 calls:

195.0ms
y.im
108.0ms
y.re
53.0ms
x.re
37.0ms
x.im
Results
ErrorSegmentsBranch
18.5b3x.re
19.8b3x.im
19.7b3y.re
23.6b5y.im
Compiler

Compiled 472 to 132 computations (72% saved)

bsearch81.0ms (0.2%)

Algorithm
binary-search
Steps
TimeLeftRight
40.0ms
2.1420564813914919e-13
1.0270507056814312e-10
41.0ms
-3.3441153738535714e-308
3.554798648426931e-308
Results
47.0ms217×body256valid
12.0ms19×body1024infinite
11.0ms11×body512infinite
4.0msbody512valid
2.0msbody1024valid
1.0msbody256infinite
Compiler

Compiled 676 to 409 computations (39.5% saved)

regimes301.0ms (0.6%)

Counts
20 → 3
Calls
Call 1
Inputs
(*.f64 (atan2.f64 x.im x.re) y.re)
(*.f64 (pow.f64 (neg.f64 x.im) y.re) (*.f64 y.re (atan2.f64 x.im x.re)))
(*.f64 (pow.f64 (neg.f64 x.re) y.re) (*.f64 y.re (atan2.f64 x.im x.re)))
(*.f64 (pow.f64 (neg.f64 x.im) y.re) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))))
(*.f64 y.re (/.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im))))
(*.f64 y.re (*.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))))
(*.f64 (exp.f64 (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re)))) (*.f64 y.re (atan2.f64 x.im x.re)))
(*.f64 (atan2.f64 x.im x.re) (+.f64 y.re (*.f64 (pow.f64 y.re 2) (log.f64 (neg.f64 x.im)))))
(*.f64 y.re (+.f64 (atan2.f64 x.im x.re) (*.f64 (pow.f64 (atan2.f64 x.im x.re) 2) (neg.f64 y.im))))
(*.f64 (pow.f64 (neg.f64 x.im) y.re) (sin.f64 (+.f64 (-.f64 (*.f64 y.re (atan2.f64 x.im x.re)) -1) -1)))
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 x.im) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (*.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))) (*.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))) (*.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))) (+.f64 (-.f64 (*.f64 y.re (atan2.f64 x.im x.re)) -1) -1))
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 x.im) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.f64 (*.f64 y.im (log.f64 x.im))))
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.f64 (*.f64 y.im (log.f64 x.re))))
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 x.im) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.f64 (*.f64 y.im (log.f64 (neg.f64 x.re)))))
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 x.im) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.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))) (sin.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))) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))))
Outputs
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (*.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))) (*.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))) (sin.f64 (*.f64 y.im (log.f64 x.re))))
Calls

4 calls:

151.0ms
y.im
73.0ms
x.im
38.0ms
x.re
31.0ms
y.re
Results
ErrorSegmentsBranch
18.7b3x.re
22.3b7x.im
23.9b3y.re
25.2b7y.im
Compiler

Compiled 321 to 97 computations (69.8% saved)

bsearch68.0ms (0.1%)

Algorithm
binary-search
Steps
TimeLeftRight
39.0ms
2.1420564813914919e-13
1.0270507056814312e-10
29.0ms
-3.3441153738535714e-308
3.554798648426931e-308
Results
48.0ms219×body256valid
10.0ms13×body1024infinite
2.0ms10×body256infinite
2.0msbody1024valid
2.0msbody512infinite
1.0msbody512valid
Compiler

Compiled 670 to 403 computations (39.9% saved)

regimes146.0ms (0.3%)

Counts
15 → 2
Calls
Call 1
Inputs
(*.f64 (atan2.f64 x.im x.re) y.re)
(*.f64 (pow.f64 (neg.f64 x.im) y.re) (*.f64 y.re (atan2.f64 x.im x.re)))
(*.f64 (pow.f64 (neg.f64 x.re) y.re) (*.f64 y.re (atan2.f64 x.im x.re)))
(*.f64 (pow.f64 (neg.f64 x.im) y.re) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))))
(*.f64 y.re (/.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im))))
(*.f64 y.re (*.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))))
(*.f64 (exp.f64 (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re)))) (*.f64 y.re (atan2.f64 x.im x.re)))
(*.f64 (atan2.f64 x.im x.re) (+.f64 y.re (*.f64 (pow.f64 y.re 2) (log.f64 (neg.f64 x.im)))))
(*.f64 y.re (+.f64 (atan2.f64 x.im x.re) (*.f64 (pow.f64 (atan2.f64 x.im x.re) 2) (neg.f64 y.im))))
(*.f64 (pow.f64 (neg.f64 x.im) y.re) (sin.f64 (+.f64 (-.f64 (*.f64 y.re (atan2.f64 x.im x.re)) -1) -1)))
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 x.im) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (*.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))) (*.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))) (*.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))) (+.f64 (-.f64 (*.f64 y.re (atan2.f64 x.im x.re)) -1) -1))
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 x.im) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.f64 (*.f64 y.im (log.f64 x.im))))
Outputs
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (*.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))) (*.f64 y.re (atan2.f64 x.im x.re)))
Calls

4 calls:

53.0ms
y.im
51.0ms
x.im
23.0ms
y.re
15.0ms
x.re
Results
ErrorSegmentsBranch
22.7b2x.re
26.3b5x.im
23.9b3y.re
25.2b7y.im
Compiler

Compiled 231 to 85 computations (63.2% saved)

bsearch31.0ms (0.1%)

Algorithm
binary-search
Steps
TimeLeftRight
31.0ms
-3.3441153738535714e-308
3.554798648426931e-308
Results
22.0ms96×body256valid
5.0ms12×body512infinite
2.0msbody1024infinite
Compiler

Compiled 318 to 187 computations (41.2% saved)

regimes115.0ms (0.2%)

Counts
12 → 3
Calls
Call 1
Inputs
(*.f64 (atan2.f64 x.im x.re) y.re)
(*.f64 (pow.f64 (neg.f64 x.im) y.re) (*.f64 y.re (atan2.f64 x.im x.re)))
(*.f64 (pow.f64 (neg.f64 x.re) y.re) (*.f64 y.re (atan2.f64 x.im x.re)))
(*.f64 (pow.f64 (neg.f64 x.im) y.re) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))))
(*.f64 y.re (/.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im))))
(*.f64 y.re (*.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 y.im (neg.f64 (atan2.f64 x.im x.re))))))
(*.f64 (exp.f64 (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re)))) (*.f64 y.re (atan2.f64 x.im x.re)))
(*.f64 (atan2.f64 x.im x.re) (+.f64 y.re (*.f64 (pow.f64 y.re 2) (log.f64 (neg.f64 x.im)))))
(*.f64 y.re (+.f64 (atan2.f64 x.im x.re) (*.f64 (pow.f64 (atan2.f64 x.im x.re) 2) (neg.f64 y.im))))
(*.f64 (pow.f64 (neg.f64 x.im) y.re) (sin.f64 (+.f64 (-.f64 (*.f64 y.re (atan2.f64 x.im x.re)) -1) -1)))
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 x.im) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (*.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))) (*.f64 y.re (atan2.f64 x.im x.re)))
Outputs
(*.f64 (pow.f64 (neg.f64 x.re) y.re) (*.f64 y.re (atan2.f64 x.im x.re)))
(*.f64 y.re (/.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im))))
(*.f64 (pow.f64 (neg.f64 x.im) y.re) (*.f64 y.re (atan2.f64 x.im x.re)))
Calls

4 calls:

55.0ms
y.im
21.0ms
y.re
20.0ms
x.im
15.0ms
x.re
Results
ErrorSegmentsBranch
28.1b2x.re
27.3b3x.im
23.9b3y.re
25.6b7y.im
Compiler

Compiled 174 to 72 computations (58.6% saved)

bsearch182.0ms (0.3%)

Algorithm
binary-search
Steps
TimeLeftRight
133.0ms
11015786073295694000.0
7.640950752963398e+25
49.0ms
-1.75319681007185e+26
-6581513676418574000.0
Results
71.0ms288×body256valid
50.0ms61×body1024infinite
30.0ms125×body256infinite
22.0ms50×body512infinite
5.0msbody2048infinite
Compiler

Compiled 624 to 385 computations (38.3% saved)

regimes52.0ms (0.1%)

Counts
4 → 3
Calls
Call 1
Inputs
(*.f64 (atan2.f64 x.im x.re) y.re)
(*.f64 (pow.f64 (neg.f64 x.im) y.re) (*.f64 y.re (atan2.f64 x.im x.re)))
(*.f64 (pow.f64 (neg.f64 x.re) y.re) (*.f64 y.re (atan2.f64 x.im x.re)))
(*.f64 (pow.f64 (neg.f64 x.im) y.re) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))))
Outputs
(*.f64 (pow.f64 (neg.f64 x.re) y.re) (*.f64 y.re (atan2.f64 x.im x.re)))
(*.f64 (atan2.f64 x.im x.re) y.re)
(*.f64 (pow.f64 (neg.f64 x.im) y.re) (*.f64 y.re (atan2.f64 x.im x.re)))
Calls

4 calls:

19.0ms
y.im
12.0ms
x.re
10.0ms
y.re
9.0ms
x.im
Results
ErrorSegmentsBranch
35.0b3x.re
34.9b2x.im
34.1b3y.re
36.4b5y.im
Compiler

Compiled 60 to 31 computations (48.3% saved)

bsearch158.0ms (0.3%)

Algorithm
binary-search
Steps
TimeLeftRight
115.0ms
11015786073295694000.0
7.640950752963398e+25
43.0ms
-0.07796270014083402
-9.378756040030972e-14
Results
65.0ms295×body256valid
37.0ms49×body1024infinite
27.0ms121×body256infinite
18.0ms40×body512infinite
5.0msbody1024valid
1.0msbody2048infinite
1.0msbody512valid
Compiler

Compiled 523 to 348 computations (33.5% saved)

regimes41.0ms (0.1%)

Accuracy

Total -21.6b remaining (-59.6%)

Threshold costs -21.6b (-59.6%)

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

4 calls:

14.0ms
x.re
9.0ms
y.im
9.0ms
y.re
8.0ms
x.im
Results
ErrorSegmentsBranch
39.9b4x.re
39.8b3x.im
36.3b3y.re
41.1b3y.im
Compiler

Compiled 39 to 26 computations (33.3% saved)

bsearch13.8s (25.8%)

Algorithm
binary-search
Steps
TimeLeftRight
13.8s
11015786073295694000.0
7.640950752963398e+25
37.0ms
-7.728768239448054e+57
-1.6230950684617456e+56
Results
7.5s49×body1024infinite
6.2s256×body256valid
27.0ms127×body256infinite
24.0ms55×body512infinite
1.0msbody2048infinite
Compiler

Compiled 448 to 297 computations (33.7% saved)

simplify76.0ms (0.1%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0891243
Stop Event
fuel
saturated
Calls
Call 1
Inputs
(if (<=.f64 x.re -5296426984651023/2787593149816327892691964784081045188247552) (*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))) (if (<=.f64 x.re -7475102707912205/2335969596222563951944279862118549158345332995711262684456546569164428885610842821891027359394494156686664862501680336543072616817344224255105362595697773664385021273272455654442431586430261133312) (*.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))) (*.f64 y.re (atan2.f64 x.im x.re))) (if (<=.f64 x.re -2024022533073/101201126653655309176247673359458653524778324882071059178450679013715169783997673445980191850718562247593538932158405955694904368692896738433506699970369254960758712138283180682233453871046608170619883839236372534281003741712346349309051677824579778170405028256179384776166707307615251266093163754323003131653853870546747392) (*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.f64 (+.f64 (*.f64 (log.f64 (neg.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))) (sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))))))
(if (<=.f64 x.re -2024022533073/101201126653655309176247673359458653524778324882071059178450679013715169783997673445980191850718562247593538932158405955694904368692896738433506699970369254960758712138283180682233453871046608170619883839236372534281003741712346349309051677824579778170405028256179384776166707307615251266093163754323003131653853870546747392) (*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.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))) (sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))))
(if (<=.f64 x.re -2024022533073/101201126653655309176247673359458653524778324882071059178450679013715169783997673445980191850718562247593538932158405955694904368692896738433506699970369254960758712138283180682233453871046608170619883839236372534281003741712346349309051677824579778170405028256179384776166707307615251266093163754323003131653853870546747392) (*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))) (if (<=.f64 x.re 2630622583481433/309485009821345068724781056) (*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (*.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))) (sin.f64 (*.f64 y.im (log.f64 x.re))))))
(if (<=.f64 x.re -2024022533073/101201126653655309176247673359458653524778324882071059178450679013715169783997673445980191850718562247593538932158405955694904368692896738433506699970369254960758712138283180682233453871046608170619883839236372534281003741712346349309051677824579778170405028256179384776166707307615251266093163754323003131653853870546747392) (*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (*.f64 y.re (atan2.f64 x.im x.re))) (if (<=.f64 x.re 4456584141427369/19807040628566084398385987584) (*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (*.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))) (sin.f64 (*.f64 y.im (log.f64 x.re))))))
(if (<=.f64 x.re -2024022533073/101201126653655309176247673359458653524778324882071059178450679013715169783997673445980191850718562247593538932158405955694904368692896738433506699970369254960758712138283180682233453871046608170619883839236372534281003741712346349309051677824579778170405028256179384776166707307615251266093163754323003131653853870546747392) (*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (*.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))) (*.f64 y.re (atan2.f64 x.im x.re))))
(if (<=.f64 y.re -510000000000000000000) (*.f64 (pow.f64 (neg.f64 x.re) y.re) (*.f64 y.re (atan2.f64 x.im x.re))) (if (<=.f64 y.re 300000000000000000000) (*.f64 y.re (/.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im)))) (*.f64 (pow.f64 (neg.f64 x.im) y.re) (*.f64 y.re (atan2.f64 x.im x.re)))))
(if (<=.f64 y.re -1770887431076117/147573952589676412928) (*.f64 (pow.f64 (neg.f64 x.re) y.re) (*.f64 y.re (atan2.f64 x.im x.re))) (if (<=.f64 y.re 11200000000000000000) (*.f64 (atan2.f64 x.im x.re) y.re) (*.f64 (pow.f64 (neg.f64 x.im) y.re) (*.f64 y.re (atan2.f64 x.im x.re)))))
(if (<=.f64 y.re -165000000000000001008221324525534012762273189369321881600) (*.f64 (pow.f64 (neg.f64 x.im) y.re) (*.f64 y.re (atan2.f64 x.im x.re))) (if (<=.f64 y.re 11200000000000000000) (*.f64 (atan2.f64 x.im x.re) y.re) (*.f64 (pow.f64 (neg.f64 x.im) y.re) (*.f64 y.re (atan2.f64 x.im x.re)))))
(*.f64 (atan2.f64 x.im x.re) y.re)
Outputs
(if (<=.f64 x.re -5296426984651023/2787593149816327892691964784081045188247552) (*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))) (if (<=.f64 x.re -7475102707912205/2335969596222563951944279862118549158345332995711262684456546569164428885610842821891027359394494156686664862501680336543072616817344224255105362595697773664385021273272455654442431586430261133312) (*.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))) (*.f64 y.re (atan2.f64 x.im x.re))) (if (<=.f64 x.re -2024022533073/101201126653655309176247673359458653524778324882071059178450679013715169783997673445980191850718562247593538932158405955694904368692896738433506699970369254960758712138283180682233453871046608170619883839236372534281003741712346349309051677824579778170405028256179384776166707307615251266093163754323003131653853870546747392) (*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.f64 (+.f64 (*.f64 (log.f64 (neg.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))) (sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))))))
(if (<=.f64 x.re -2024022533073/101201126653655309176247673359458653524778324882071059178450679013715169783997673445980191850718562247593538932158405955694904368692896738433506699970369254960758712138283180682233453871046608170619883839236372534281003741712346349309051677824579778170405028256179384776166707307615251266093163754323003131653853870546747392) (*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.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))) (sin.f64 (+.f64 (*.f64 (log.f64 x.re) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))))
(if (<=.f64 x.re -2024022533073/101201126653655309176247673359458653524778324882071059178450679013715169783997673445980191850718562247593538932158405955694904368692896738433506699970369254960758712138283180682233453871046608170619883839236372534281003741712346349309051677824579778170405028256179384776166707307615251266093163754323003131653853870546747392) (*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re)))) (if (<=.f64 x.re 2630622583481433/309485009821345068724781056) (*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (*.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))) (sin.f64 (*.f64 y.im (log.f64 x.re))))))
(if (<=.f64 x.re -2024022533073/101201126653655309176247673359458653524778324882071059178450679013715169783997673445980191850718562247593538932158405955694904368692896738433506699970369254960758712138283180682233453871046608170619883839236372534281003741712346349309051677824579778170405028256179384776166707307615251266093163754323003131653853870546747392) (*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (*.f64 y.re (atan2.f64 x.im x.re))) (if (<=.f64 x.re 4456584141427369/19807040628566084398385987584) (*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 x.re) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (*.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))) (sin.f64 (*.f64 y.im (log.f64 x.re))))))
(if (<=.f64 x.re -2024022533073/101201126653655309176247673359458653524778324882071059178450679013715169783997673445980191850718562247593538932158405955694904368692896738433506699970369254960758712138283180682233453871046608170619883839236372534281003741712346349309051677824579778170405028256179384776166707307615251266093163754323003131653853870546747392) (*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (*.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))) (*.f64 y.re (atan2.f64 x.im x.re))))
(if (<=.f64 y.re -510000000000000000000) (*.f64 (pow.f64 (neg.f64 x.re) y.re) (*.f64 y.re (atan2.f64 x.im x.re))) (if (<=.f64 y.re 300000000000000000000) (*.f64 y.re (/.f64 (atan2.f64 x.im x.re) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im)))) (*.f64 (pow.f64 (neg.f64 x.im) y.re) (*.f64 y.re (atan2.f64 x.im x.re)))))
(if (<=.f64 y.re -1770887431076117/147573952589676412928) (*.f64 (pow.f64 (neg.f64 x.re) y.re) (*.f64 y.re (atan2.f64 x.im x.re))) (if (<=.f64 y.re 11200000000000000000) (*.f64 (atan2.f64 x.im x.re) y.re) (*.f64 (pow.f64 (neg.f64 x.im) y.re) (*.f64 y.re (atan2.f64 x.im x.re)))))
(if (<=.f64 y.re -165000000000000001008221324525534012762273189369321881600) (*.f64 (pow.f64 (neg.f64 x.im) y.re) (*.f64 y.re (atan2.f64 x.im x.re))) (if (<=.f64 y.re 11200000000000000000) (*.f64 (atan2.f64 x.im x.re) y.re) (*.f64 (pow.f64 (neg.f64 x.im) y.re) (*.f64 y.re (atan2.f64 x.im x.re)))))
(*.f64 (atan2.f64 x.im x.re) y.re)
Compiler

Compiled 462 to 208 computations (55% saved)

soundness189.0ms (0.4%)

Algorithm
egg-herbie
Rules
1248×rational.json-simplify-35
1248×rational.json-simplify-35
1094×rational.json-simplify-51
1094×rational.json-simplify-51
1040×rational.json-simplify-2
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
040610732
1100610540
2207910516
3414510104
4598110104
040610732
1100610540
2207910516
3414510104
4598110104
Stop Event
node limit
node limit
Compiler

Compiled 180 to 65 computations (63.9% saved)

end157.0ms (0.3%)

Compiler

Compiled 430 to 94 computations (78.1% saved)

Profiling

Loading profile data...