Details

Time bar (total: 9.7s)

analyze940.0ms (9.7%)

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
0%0%99.8%0.2%0%0%0%6
0%0%99.8%0.2%0%0%0%7
0%0%99.8%0.2%0%0%0%8
6.3%6.2%93.6%0.2%0%0%0%9
9.4%9.4%90.4%0.2%0%0%0%10
14.1%14%85.8%0.2%0%0%0%11
19.6%18.7%76.8%0.2%4.3%0%0%12
Compiler

Compiled 12 to 8 computations (33.3% saved)

sample5.9s (61.1%)

Results
4.8s8256×body256valid
1.1s2127×body256infinite
Bogosity

preprocess88.0ms (0.9%)

Algorithm
egg-herbie
Rules
12×rational_best-simplify-1
swap-x.im-y.im
swap-x.re-y.re
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
023133
127133
044
144
Stop Event
unsound
saturated
Calls
Call 1
Inputs
0
1
2
3
Outputs
0
1
2
0
3
1
Call 2
Inputs
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
(-.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(-.f64 (*.f64 y.re x.re) (*.f64 x.im y.im))
(-.f64 (*.f64 y.im y.re) (*.f64 x.im x.re))
(-.f64 (*.f64 x.re x.im) (*.f64 y.re y.im))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(-.f64 (*.f64 x.re y.im) (*.f64 x.im y.re))
Outputs
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
(-.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(-.f64 (*.f64 y.re x.im) (*.f64 x.re y.im))
(-.f64 (*.f64 y.re x.re) (*.f64 x.im y.im))
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
(-.f64 (*.f64 y.im y.re) (*.f64 x.im x.re))
(-.f64 (*.f64 y.re y.im) (*.f64 x.re x.im))
(-.f64 (*.f64 x.re x.im) (*.f64 y.re y.im))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
(-.f64 (*.f64 x.re y.im) (*.f64 x.im y.re))
(-.f64 (*.f64 x.re y.im) (*.f64 y.re x.im))
Symmetry

(sort x.re y.re)

(sort x.im y.im)

Compiler

Compiled 15 to 11 computations (26.7% saved)

simplify83.0ms (0.9%)

Algorithm
egg-herbie
Rules
rational_best-simplify-1
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0919
11119
Stop Event
saturated
Counts
1 → 1
Calls
Call 1
Inputs
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
Outputs
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))

eval1.0ms (0%)

Compiler

Compiled 11 to 7 computations (36.4% saved)

prune1.0ms (0%)

Pruning

2 alts after pruning (2 fresh and 0 done)

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

Compiled 11 to 7 computations (36.4% saved)

localize31.0ms (0.3%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.0b
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
Compiler

Compiled 21 to 7 computations (66.7% saved)

series5.0ms (0.1%)

Counts
1 → 48
Calls

12 calls:

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

rewrite441.0ms (4.6%)

Algorithm
batch-egg-rewrite
Rules
812×rational_best-simplify-1
686×rational_best-simplify-83
576×rational_best-simplify-47
502×rational_best-simplify-57
498×rational_best-simplify-51
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0919
15819
211219
330919
4119319
5727619
Stop Event
node limit
Counts
1 → 59
Calls
Call 1
Inputs
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x.re y.re) (*.f64 x.im (neg.f64 y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x.im (neg.f64 y.im)) (*.f64 x.re y.re))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x.re (+.f64 y.re y.re)) (neg.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 x.re (+.f64 y.re y.re)) (*.f64 x.im y.im)) (neg.f64 (*.f64 x.re y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 (*.f64 x.re y.re)) (-.f64 (*.f64 x.re (+.f64 y.re y.re)) (*.f64 x.im y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x.re (*.f64 y.re 1/2)) (-.f64 (*.f64 x.re (*.f64 y.re 1/2)) (*.f64 x.im y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) (/.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 (*.f64 x.im y.im) -2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 3 (/.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2)) (/.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) -2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) (*.f64 x.im y.im))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (*.f64 x.im y.im) -2) (-.f64 (*.f64 x.re y.re) (*.f64 x.im (*.f64 y.im 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (*.f64 x.im y.im) -2) (-.f64 (/.f64 (*.f64 x.im y.im) -2) (neg.f64 (*.f64 x.re y.re))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (*.f64 y.im 1/2))) (/.f64 (*.f64 x.im y.im) -2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (*.f64 y.im 1/2))) (-.f64 (*.f64 x.re y.re) (+.f64 (*.f64 x.re y.re) (*.f64 x.im (*.f64 y.im 1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (*.f64 x.re y.re) 4) (+.f64 (/.f64 (*.f64 x.re y.re) 4) (-.f64 (*.f64 x.re (*.f64 y.re 1/2)) (*.f64 x.im y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 4) (+.f64 (/.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 4) (/.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 4) (/.f64 (*.f64 3 (/.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 4) (/.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 3) 4))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 x.re (*.f64 y.re 1/2)) (*.f64 x.im y.im)) (*.f64 x.re (*.f64 y.re 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 x.re (*.f64 y.re 1/2)) (*.f64 x.im y.im)) (neg.f64 (/.f64 (*.f64 x.re y.re) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 -3/2 (neg.f64 (*.f64 x.re y.re))) (neg.f64 (+.f64 (*.f64 x.im y.im) (*.f64 x.re (*.f64 y.re 1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 x.re (*.f64 y.re 1/2)) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))) (*.f64 -3/2 (neg.f64 (*.f64 x.re y.re))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 x.re (+.f64 y.re y.re)) (*.f64 x.im (*.f64 y.im 1/2))) (neg.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im (*.f64 y.im 1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 x.im (*.f64 y.im 1/2))) (neg.f64 (*.f64 -3/2 (*.f64 x.im (neg.f64 y.im)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (-.f64 (*.f64 x.re (+.f64 y.re y.re)) (*.f64 x.im y.im)) 4) (/.f64 (+.f64 (*.f64 x.im (neg.f64 y.im)) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2)) 4))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 -1 (*.f64 x.im y.im)) (-.f64 1 (neg.f64 (*.f64 x.re y.re))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 -1 (neg.f64 (*.f64 x.re y.re))) (-.f64 1 (*.f64 x.im y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (/.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -2 (/.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) -2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 4)) 1/8)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 1/2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/8 (*.f64 2 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) -2) -2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 4)) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 4)) -4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 4)) (*.f64 2 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 4))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (neg.f64 (*.f64 y.im (*.f64 x.im 4))) (*.f64 y.re (*.f64 x.re 4))) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 x.re (*.f64 (+.f64 y.re y.re) 4)) (*.f64 2 (*.f64 y.im (*.f64 x.im 4)))) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 4 (*.f64 y.re (*.f64 x.re 4))) (*.f64 (*.f64 y.im 4) (*.f64 x.im 4))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 x.re (*.f64 (+.f64 y.re y.re) 4)) (+.f64 (*.f64 y.im (*.f64 x.im 4)) (*.f64 y.re (*.f64 x.re 4)))) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 2 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))) (*.f64 y.im (*.f64 x.im 4))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (+.f64 (*.f64 y.im (*.f64 x.im 4)) (*.f64 y.re (*.f64 x.re 4))) (*.f64 2 (*.f64 y.im (*.f64 x.im 4)))) 4)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))))))

simplify387.0ms (4%)

Algorithm
egg-herbie
Rules
1448×rational_best-simplify-56
1132×rational_best-simplify-75
1104×rational_best-simplify-66
1088×rational_best-simplify-76
802×rational_best-simplify-1
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01632373
14042365
29931989
334911985
Stop Event
node limit
Counts
107 → 70
Calls
Call 1
Inputs
(*.f64 -1 (*.f64 y.im x.im))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(*.f64 x.re y.re)
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(*.f64 x.re y.re)
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(*.f64 -1 (*.f64 y.im x.im))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(*.f64 x.re y.re)
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(*.f64 x.re y.re)
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(*.f64 x.re y.re)
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(*.f64 -1 (*.f64 y.im x.im))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(*.f64 -1 (*.f64 y.im x.im))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(*.f64 x.re y.re)
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(*.f64 -1 (*.f64 y.im x.im))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(*.f64 -1 (*.f64 y.im x.im))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (neg.f64 y.im)))
(+.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 0)
(+.f64 0 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))
(+.f64 (*.f64 x.im (neg.f64 y.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re (+.f64 y.re y.re)) (neg.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))))
(+.f64 (-.f64 (*.f64 x.re (+.f64 y.re y.re)) (*.f64 x.im y.im)) (neg.f64 (*.f64 x.re y.re)))
(+.f64 (neg.f64 (*.f64 x.re y.re)) (-.f64 (*.f64 x.re (+.f64 y.re y.re)) (*.f64 x.im y.im)))
(+.f64 (*.f64 x.re (*.f64 y.re 1/2)) (-.f64 (*.f64 x.re (*.f64 y.re 1/2)) (*.f64 x.im y.im)))
(+.f64 (/.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) (/.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2))
(+.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 (*.f64 x.im y.im) -2))
(+.f64 (*.f64 3 (/.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2)) (/.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) -2))
(+.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) (*.f64 x.im y.im))
(+.f64 (/.f64 (*.f64 x.im y.im) -2) (-.f64 (*.f64 x.re y.re) (*.f64 x.im (*.f64 y.im 1/2))))
(+.f64 (/.f64 (*.f64 x.im y.im) -2) (-.f64 (/.f64 (*.f64 x.im y.im) -2) (neg.f64 (*.f64 x.re y.re))))
(+.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (*.f64 y.im 1/2))) (/.f64 (*.f64 x.im y.im) -2))
(+.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (*.f64 y.im 1/2))) (-.f64 (*.f64 x.re y.re) (+.f64 (*.f64 x.re y.re) (*.f64 x.im (*.f64 y.im 1/2)))))
(+.f64 (/.f64 (*.f64 x.re y.re) 4) (+.f64 (/.f64 (*.f64 x.re y.re) 4) (-.f64 (*.f64 x.re (*.f64 y.re 1/2)) (*.f64 x.im y.im))))
(+.f64 (/.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 4) (+.f64 (/.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 4) (/.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2)))
(+.f64 (/.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 4) (/.f64 (*.f64 3 (/.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2)) 2))
(+.f64 (/.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 4) (/.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 3) 4))
(+.f64 (-.f64 (*.f64 x.re (*.f64 y.re 1/2)) (*.f64 x.im y.im)) (*.f64 x.re (*.f64 y.re 1/2)))
(+.f64 (-.f64 (*.f64 x.re (*.f64 y.re 1/2)) (*.f64 x.im y.im)) (neg.f64 (/.f64 (*.f64 x.re y.re) -2)))
(+.f64 (*.f64 -3/2 (neg.f64 (*.f64 x.re y.re))) (neg.f64 (+.f64 (*.f64 x.im y.im) (*.f64 x.re (*.f64 y.re 1/2)))))
(+.f64 (-.f64 (*.f64 x.re (*.f64 y.re 1/2)) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))) (*.f64 -3/2 (neg.f64 (*.f64 x.re y.re))))
(+.f64 (-.f64 (*.f64 x.re (+.f64 y.re y.re)) (*.f64 x.im (*.f64 y.im 1/2))) (neg.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im (*.f64 y.im 1/2)))))
(+.f64 (-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 x.im (*.f64 y.im 1/2))) (neg.f64 (*.f64 -3/2 (*.f64 x.im (neg.f64 y.im)))))
(+.f64 (/.f64 (-.f64 (*.f64 x.re (+.f64 y.re y.re)) (*.f64 x.im y.im)) 4) (/.f64 (+.f64 (*.f64 x.im (neg.f64 y.im)) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2)) 4))
(+.f64 (-.f64 -1 (*.f64 x.im y.im)) (-.f64 1 (neg.f64 (*.f64 x.re y.re))))
(+.f64 (-.f64 -1 (neg.f64 (*.f64 x.re y.re))) (-.f64 1 (*.f64 x.im y.im)))
(*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 1)
(*.f64 1 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))
(*.f64 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)) -1)
(*.f64 2 (/.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2))
(*.f64 2 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 1/2))
(*.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) 1/2)
(*.f64 -1 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))
(*.f64 1/2 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2))
(*.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 4) 1/4)
(*.f64 -2 (/.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) -2))
(*.f64 1/4 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 4))
(*.f64 (*.f64 2 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 4)) 1/8)
(*.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 1/2) 2)
(*.f64 1/8 (*.f64 2 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 4)))
(/.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 1)
(/.f64 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)) -1)
(/.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) 2)
(/.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 4) 4)
(/.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) -2) -2)
(/.f64 (*.f64 2 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 4)) 8)
(/.f64 (neg.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 4)) -4)
(/.f64 (+.f64 (*.f64 2 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 4)) (*.f64 2 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 4))) 16)
(/.f64 (+.f64 (neg.f64 (*.f64 y.im (*.f64 x.im 4))) (*.f64 y.re (*.f64 x.re 4))) 4)
(/.f64 (-.f64 (*.f64 x.re (*.f64 (+.f64 y.re y.re) 4)) (*.f64 2 (*.f64 y.im (*.f64 x.im 4)))) 8)
(/.f64 (-.f64 (*.f64 4 (*.f64 y.re (*.f64 x.re 4))) (*.f64 (*.f64 y.im 4) (*.f64 x.im 4))) 16)
(/.f64 (-.f64 (*.f64 x.re (*.f64 (+.f64 y.re y.re) 4)) (+.f64 (*.f64 y.im (*.f64 x.im 4)) (*.f64 y.re (*.f64 x.re 4)))) 4)
(/.f64 (-.f64 (*.f64 2 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))) (*.f64 y.im (*.f64 x.im 4))) 2)
(/.f64 (-.f64 (+.f64 (*.f64 y.im (*.f64 x.im 4)) (*.f64 y.re (*.f64 x.re 4))) (*.f64 2 (*.f64 y.im (*.f64 x.im 4)))) 4)
(pow.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 1)
(neg.f64 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))
Outputs
(*.f64 -1 (*.f64 y.im x.im))
(*.f64 x.im (neg.f64 y.im))
(*.f64 y.im (neg.f64 x.im))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (neg.f64 y.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (neg.f64 y.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (neg.f64 y.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(*.f64 x.re y.re)
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (neg.f64 y.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (neg.f64 y.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (neg.f64 y.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(*.f64 x.re y.re)
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (neg.f64 y.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (neg.f64 y.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (neg.f64 y.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(*.f64 -1 (*.f64 y.im x.im))
(*.f64 x.im (neg.f64 y.im))
(*.f64 y.im (neg.f64 x.im))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (neg.f64 y.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (neg.f64 y.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (neg.f64 y.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(*.f64 x.re y.re)
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (neg.f64 y.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (neg.f64 y.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (neg.f64 y.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(*.f64 x.re y.re)
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (neg.f64 y.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (neg.f64 y.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (neg.f64 y.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(*.f64 x.re y.re)
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (neg.f64 y.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (neg.f64 y.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (neg.f64 y.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(*.f64 -1 (*.f64 y.im x.im))
(*.f64 x.im (neg.f64 y.im))
(*.f64 y.im (neg.f64 x.im))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (neg.f64 y.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (neg.f64 y.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (neg.f64 y.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(*.f64 -1 (*.f64 y.im x.im))
(*.f64 x.im (neg.f64 y.im))
(*.f64 y.im (neg.f64 x.im))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (neg.f64 y.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (neg.f64 y.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (neg.f64 y.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(*.f64 x.re y.re)
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (neg.f64 y.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (neg.f64 y.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (neg.f64 y.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(*.f64 -1 (*.f64 y.im x.im))
(*.f64 x.im (neg.f64 y.im))
(*.f64 y.im (neg.f64 x.im))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (neg.f64 y.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (neg.f64 y.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (neg.f64 y.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(*.f64 -1 (*.f64 y.im x.im))
(*.f64 x.im (neg.f64 y.im))
(*.f64 y.im (neg.f64 x.im))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (neg.f64 y.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (neg.f64 y.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (neg.f64 y.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (neg.f64 y.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(+.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 0)
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (neg.f64 y.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(+.f64 0 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (neg.f64 y.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(+.f64 (*.f64 x.im (neg.f64 y.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (neg.f64 y.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(+.f64 (*.f64 x.re (+.f64 y.re y.re)) (neg.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (neg.f64 y.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(+.f64 (-.f64 (*.f64 x.re (+.f64 y.re y.re)) (*.f64 x.im y.im)) (neg.f64 (*.f64 x.re y.re)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (neg.f64 y.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(+.f64 (neg.f64 (*.f64 x.re y.re)) (-.f64 (*.f64 x.re (+.f64 y.re y.re)) (*.f64 x.im y.im)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (neg.f64 y.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(+.f64 (*.f64 x.re (*.f64 y.re 1/2)) (-.f64 (*.f64 x.re (*.f64 y.re 1/2)) (*.f64 x.im y.im)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (neg.f64 y.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(+.f64 (/.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) (/.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (neg.f64 y.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(+.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 (*.f64 x.im y.im) -2))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (neg.f64 y.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(+.f64 (*.f64 3 (/.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2)) (/.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) -2))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (neg.f64 y.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(+.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) (*.f64 x.im y.im))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (neg.f64 y.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(+.f64 (/.f64 (*.f64 x.im y.im) -2) (-.f64 (*.f64 x.re y.re) (*.f64 x.im (*.f64 y.im 1/2))))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (neg.f64 y.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(+.f64 (/.f64 (*.f64 x.im y.im) -2) (-.f64 (/.f64 (*.f64 x.im y.im) -2) (neg.f64 (*.f64 x.re y.re))))
(+.f64 (/.f64 (*.f64 y.im x.im) -2) (-.f64 (/.f64 (*.f64 y.im x.im) -2) (neg.f64 (*.f64 x.re y.re))))
(+.f64 (/.f64 (*.f64 y.im x.im) -2) (-.f64 (*.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) 2)))
(+.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (*.f64 y.im 1/2))) (/.f64 (*.f64 x.im y.im) -2))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (neg.f64 y.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(+.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (*.f64 y.im 1/2))) (-.f64 (*.f64 x.re y.re) (+.f64 (*.f64 x.re y.re) (*.f64 x.im (*.f64 y.im 1/2)))))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (neg.f64 y.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(+.f64 (/.f64 (*.f64 x.re y.re) 4) (+.f64 (/.f64 (*.f64 x.re y.re) 4) (-.f64 (*.f64 x.re (*.f64 y.re 1/2)) (*.f64 x.im y.im))))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (neg.f64 y.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(+.f64 (/.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 4) (+.f64 (/.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 4) (/.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (neg.f64 y.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(+.f64 (/.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 4) (/.f64 (*.f64 3 (/.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2)) 2))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (neg.f64 y.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(+.f64 (/.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 4) (/.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 3) 4))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (neg.f64 y.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(+.f64 (-.f64 (*.f64 x.re (*.f64 y.re 1/2)) (*.f64 x.im y.im)) (*.f64 x.re (*.f64 y.re 1/2)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (neg.f64 y.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(+.f64 (-.f64 (*.f64 x.re (*.f64 y.re 1/2)) (*.f64 x.im y.im)) (neg.f64 (/.f64 (*.f64 x.re y.re) -2)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (neg.f64 y.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(+.f64 (*.f64 -3/2 (neg.f64 (*.f64 x.re y.re))) (neg.f64 (+.f64 (*.f64 x.im y.im) (*.f64 x.re (*.f64 y.re 1/2)))))
(+.f64 (*.f64 (neg.f64 (*.f64 x.re y.re)) -3/2) (neg.f64 (+.f64 (*.f64 y.im x.im) (*.f64 x.re (*.f64 y.re 1/2)))))
(+.f64 (*.f64 (*.f64 x.re y.re) 3/2) (neg.f64 (+.f64 (*.f64 y.im x.im) (*.f64 x.re (*.f64 y.re 1/2)))))
(+.f64 (*.f64 (*.f64 x.re y.re) 3/2) (-.f64 (/.f64 (*.f64 x.re y.re) -2) (*.f64 y.im x.im)))
(+.f64 (-.f64 (*.f64 x.re (*.f64 y.re 1/2)) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))) (*.f64 -3/2 (neg.f64 (*.f64 x.re y.re))))
(+.f64 (*.f64 (neg.f64 (*.f64 x.re y.re)) -3/2) (neg.f64 (+.f64 (*.f64 y.im x.im) (*.f64 x.re (*.f64 y.re 1/2)))))
(+.f64 (*.f64 (*.f64 x.re y.re) 3/2) (neg.f64 (+.f64 (*.f64 y.im x.im) (*.f64 x.re (*.f64 y.re 1/2)))))
(+.f64 (*.f64 (*.f64 x.re y.re) 3/2) (-.f64 (/.f64 (*.f64 x.re y.re) -2) (*.f64 y.im x.im)))
(+.f64 (-.f64 (*.f64 x.re (+.f64 y.re y.re)) (*.f64 x.im (*.f64 y.im 1/2))) (neg.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im (*.f64 y.im 1/2)))))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (neg.f64 y.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(+.f64 (-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 x.im (*.f64 y.im 1/2))) (neg.f64 (*.f64 -3/2 (*.f64 x.im (neg.f64 y.im)))))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (neg.f64 y.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(+.f64 (/.f64 (-.f64 (*.f64 x.re (+.f64 y.re y.re)) (*.f64 x.im y.im)) 4) (/.f64 (+.f64 (*.f64 x.im (neg.f64 y.im)) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2)) 4))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (neg.f64 y.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(+.f64 (-.f64 -1 (*.f64 x.im y.im)) (-.f64 1 (neg.f64 (*.f64 x.re y.re))))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (neg.f64 y.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(+.f64 (-.f64 -1 (neg.f64 (*.f64 x.re y.re))) (-.f64 1 (*.f64 x.im y.im)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (neg.f64 y.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 1)
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (neg.f64 y.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(*.f64 1 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (neg.f64 y.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(*.f64 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)) -1)
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (neg.f64 y.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(*.f64 2 (/.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (neg.f64 y.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(*.f64 2 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 1/2))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (neg.f64 y.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(*.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) 1/2)
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (neg.f64 y.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(*.f64 -1 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (neg.f64 y.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(*.f64 1/2 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (neg.f64 y.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(*.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 4) 1/4)
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (neg.f64 y.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(*.f64 -2 (/.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) -2))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (neg.f64 y.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(*.f64 1/4 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 4))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (neg.f64 y.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(*.f64 (*.f64 2 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 4)) 1/8)
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (neg.f64 y.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(*.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 1/2) 2)
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (neg.f64 y.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(*.f64 1/8 (*.f64 2 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 4)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (neg.f64 y.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(/.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 1)
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (neg.f64 y.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(/.f64 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)) -1)
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (neg.f64 y.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(/.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) 2)
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (neg.f64 y.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(/.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 4) 4)
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (neg.f64 y.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(/.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) -2) -2)
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (neg.f64 y.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(/.f64 (*.f64 2 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 4)) 8)
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (neg.f64 y.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(/.f64 (neg.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 4)) -4)
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (neg.f64 y.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(/.f64 (+.f64 (*.f64 2 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 4)) (*.f64 2 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 4))) 16)
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (neg.f64 y.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(/.f64 (+.f64 (neg.f64 (*.f64 y.im (*.f64 x.im 4))) (*.f64 y.re (*.f64 x.re 4))) 4)
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (neg.f64 y.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(/.f64 (-.f64 (*.f64 x.re (*.f64 (+.f64 y.re y.re) 4)) (*.f64 2 (*.f64 y.im (*.f64 x.im 4)))) 8)
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (neg.f64 y.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(/.f64 (-.f64 (*.f64 4 (*.f64 y.re (*.f64 x.re 4))) (*.f64 (*.f64 y.im 4) (*.f64 x.im 4))) 16)
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (neg.f64 y.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(/.f64 (-.f64 (*.f64 x.re (*.f64 (+.f64 y.re y.re) 4)) (+.f64 (*.f64 y.im (*.f64 x.im 4)) (*.f64 y.re (*.f64 x.re 4)))) 4)
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (neg.f64 y.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(/.f64 (-.f64 (*.f64 2 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))) (*.f64 y.im (*.f64 x.im 4))) 2)
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (neg.f64 y.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(/.f64 (-.f64 (+.f64 (*.f64 y.im (*.f64 x.im 4)) (*.f64 y.re (*.f64 x.re 4))) (*.f64 2 (*.f64 y.im (*.f64 x.im 4)))) 4)
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (neg.f64 y.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(pow.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 1)
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (neg.f64 y.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(neg.f64 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (neg.f64 y.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))

eval56.0ms (0.6%)

Compiler

Compiled 973 to 389 computations (60% saved)

prune43.0ms (0.4%)

Pruning

4 alts after pruning (3 fresh and 1 done)

PrunedKeptTotal
New67370
Fresh000
Picked011
Done000
Total67471
Error
0b
Counts
71 → 4
Alt Table
Click to see full alt table
StatusErrorProgram
0.0b
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
0.0b
(+.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) (*.f64 x.im y.im))
32.5b
(*.f64 y.im (neg.f64 x.im))
29.3b
(*.f64 x.re y.re)
Compiler

Compiled 43 to 28 computations (34.9% saved)

localize24.0ms (0.2%)

Compiler

Compiled 9 to 5 computations (44.4% saved)

localize10.0ms (0.1%)

Compiler

Compiled 12 to 6 computations (50% saved)

localize54.0ms (0.6%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))
0.0b
(+.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) (*.f64 x.im y.im))
Compiler

Compiled 44 to 10 computations (77.3% saved)

series24.0ms (0.2%)

Counts
2 → 96
Calls

24 calls:

TimeVariablePointExpression
17.0ms
x.im
@inf
(+.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) (*.f64 x.im y.im))
1.0ms
x.re
@0
(+.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) (*.f64 x.im y.im))
1.0ms
x.im
@-inf
(+.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) (*.f64 x.im y.im))
0.0ms
y.im
@0
(+.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) (*.f64 x.im y.im))
0.0ms
y.im
@-inf
(+.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) (*.f64 x.im y.im))

rewrite296.0ms (3.1%)

Algorithm
batch-egg-rewrite
Rules
1074×rational_best-simplify-56
1044×rational_best-simplify-76
1042×rational_best-simplify-75
848×rational_best-4
848×rational_best-2
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01262
18162
216662
349044
4216344
Stop Event
node limit
Counts
2 → 139
Calls
Call 1
Inputs
(+.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) (*.f64 x.im y.im))
(-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 x.re y.re) (+.f64 (+.f64 (*.f64 x.re y.re) (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re y.re))) (neg.f64 (*.f64 x.im y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 x.im (+.f64 y.im y.im)) (-.f64 (*.f64 x.im (*.f64 y.im 3)) (*.f64 x.re y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (*.f64 x.re y.re) (*.f64 (*.f64 x.im y.im) -2)) (neg.f64 (*.f64 x.im y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 x.im y.im) (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (+.f64 (-.f64 (neg.f64 (*.f64 x.im y.im)) (*.f64 x.re y.re)) (*.f64 x.im (+.f64 y.im y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (*.f64 x.im y.im) -2) (-.f64 (neg.f64 (*.f64 x.re y.re)) (*.f64 x.im y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (neg.f64 (*.f64 x.im y.im)) (neg.f64 (*.f64 x.re y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 x.re (+.f64 y.re y.re)) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (*.f64 x.re (+.f64 y.re y.re)) (*.f64 y.im (*.f64 x.im 4))) (-.f64 (*.f64 x.re y.re) (*.f64 x.im (*.f64 y.im 3))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 x.im (+.f64 y.im y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 x.im y.im) 2) (-.f64 (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re y.re)) (/.f64 (*.f64 x.im y.im) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 x.im y.im) 2) (+.f64 (/.f64 (*.f64 x.im y.im) -2) (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re y.re))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 x.im y.im) 2) (+.f64 (-.f64 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)) (/.f64 (*.f64 x.im y.im) 2)) (*.f64 x.im y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 x.re y.re) 2) (-.f64 (*.f64 x.im y.im) (/.f64 (*.f64 x.re y.re) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 x.re y.re) 2) (+.f64 (/.f64 (*.f64 x.re y.re) -2) (*.f64 x.im y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 x.re y.re) 2) (+.f64 (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (/.f64 (*.f64 x.re y.re) 2)) (neg.f64 (*.f64 x.im y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) (/.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) -2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) (-.f64 (/.f64 (*.f64 x.im y.im) 2) (/.f64 (*.f64 x.re y.re) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) (-.f64 (/.f64 (*.f64 x.im y.im) -2) (-.f64 (/.f64 (*.f64 x.re y.re) 2) (*.f64 x.im y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) (-.f64 (-.f64 (*.f64 x.im y.im) (/.f64 (*.f64 x.re y.re) 2)) (/.f64 (*.f64 x.im y.im) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (/.f64 (*.f64 x.re y.re) 2) (*.f64 x.im y.im)) (/.f64 (*.f64 x.re y.re) -2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (/.f64 (*.f64 x.re y.re) 2) (*.f64 x.im y.im)) (+.f64 (-.f64 (*.f64 x.im y.im) (/.f64 (*.f64 x.re y.re) 2)) (neg.f64 (*.f64 x.im y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) (*.f64 x.im (*.f64 y.im 3)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) (+.f64 (*.f64 y.im (*.f64 x.im 4)) (neg.f64 (*.f64 x.im y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (*.f64 x.re y.re) (/.f64 (*.f64 x.im y.im) 2)) (*.f64 3 (/.f64 (*.f64 x.im y.im) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (+.f64 (*.f64 x.re y.re) (*.f64 (*.f64 x.im y.im) -2)) (/.f64 (*.f64 x.im y.im) 2)) (/.f64 (*.f64 x.im y.im) -2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (+.f64 (*.f64 x.re y.re) (*.f64 (*.f64 x.im y.im) -2)) (/.f64 (*.f64 x.im y.im) 2)) (+.f64 (*.f64 -3 (/.f64 (*.f64 x.im y.im) 2)) (*.f64 x.im y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (*.f64 x.re (+.f64 y.re y.re)) (neg.f64 (*.f64 x.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (*.f64 x.re y.re) (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))) (-.f64 (neg.f64 (*.f64 x.re y.re)) (*.f64 x.im y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (*.f64 x.re y.re) (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))) (-.f64 (neg.f64 (*.f64 x.im y.im)) (*.f64 x.re y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (neg.f64 (*.f64 y.im (*.f64 x.im 4))) (+.f64 (neg.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))) (neg.f64 (*.f64 x.im y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (*.f64 x.im y.im) (/.f64 (*.f64 x.re y.re) 2)) (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (/.f64 (*.f64 x.re y.re) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (*.f64 x.im y.im) (/.f64 (*.f64 x.re y.re) 2)) (+.f64 (/.f64 (*.f64 x.re y.re) -2) (*.f64 x.im (+.f64 y.im y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (*.f64 (*.f64 x.im y.im) -2) (/.f64 (*.f64 x.re y.re) 2)) (-.f64 (neg.f64 (*.f64 x.im y.im)) (/.f64 (*.f64 x.re y.re) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (*.f64 (*.f64 x.im y.im) -2) (/.f64 (*.f64 x.re y.re) 2)) (+.f64 (/.f64 (*.f64 x.re y.re) -2) (neg.f64 (*.f64 x.im y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (/.f64 (*.f64 x.im y.im) 2) (neg.f64 (*.f64 x.re y.re))) (*.f64 3 (/.f64 (*.f64 x.im y.im) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 3 (/.f64 (*.f64 x.im y.im) 2)) (-.f64 (-.f64 (*.f64 x.im (*.f64 y.im 3)) (*.f64 x.re y.re)) (/.f64 (*.f64 x.im y.im) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 3 (/.f64 (*.f64 x.im y.im) 2)) (+.f64 (-.f64 (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re y.re)) (/.f64 (*.f64 x.im y.im) 2)) (*.f64 x.im y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (/.f64 (*.f64 x.im y.im) 2) (*.f64 x.im (+.f64 y.im y.im))) (-.f64 (neg.f64 (*.f64 x.re y.re)) (/.f64 (*.f64 x.im y.im) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (/.f64 (*.f64 x.im y.im) 2)) (+.f64 (-.f64 (-.f64 (*.f64 x.im (*.f64 y.im 3)) (*.f64 x.re y.re)) (/.f64 (*.f64 x.im y.im) 2)) (*.f64 x.im y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (/.f64 (*.f64 x.im y.im) 2)) (-.f64 (-.f64 (*.f64 y.im (*.f64 x.im 4)) (*.f64 x.re y.re)) (/.f64 (*.f64 x.im y.im) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (/.f64 (*.f64 x.im y.im) 2)) (/.f64 (*.f64 x.im y.im) 2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (/.f64 (*.f64 x.im y.im) 2)) (+.f64 (/.f64 (*.f64 x.im y.im) -2) (*.f64 x.im y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (/.f64 (*.f64 x.im y.im) 2)) (+.f64 (*.f64 3 (/.f64 (*.f64 x.im y.im) 2)) (*.f64 x.im y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (*.f64 x.re (+.f64 y.re y.re)) (/.f64 (*.f64 x.im y.im) 2)) (-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) (/.f64 (*.f64 x.im y.im) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (/.f64 (*.f64 x.im y.im) 2) (/.f64 (*.f64 x.re y.re) -2)) (-.f64 (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (/.f64 (*.f64 x.re y.re) 2)) (/.f64 (*.f64 x.im y.im) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (/.f64 (*.f64 x.im y.im) 2) (*.f64 x.im y.im)) (-.f64 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)) (/.f64 (*.f64 x.im y.im) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (*.f64 x.im y.im) (+.f64 (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re y.re)) (/.f64 (*.f64 x.im y.im) 2))) (-.f64 (/.f64 (*.f64 x.im y.im) 2) (*.f64 x.im y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) 4) 1/8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) 4) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) -2) -2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 x.re (*.f64 y.re 4)) (*.f64 y.im (*.f64 x.im 4))) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 x.re (*.f64 (+.f64 y.re y.re) 4)) (*.f64 (*.f64 x.im y.im) 8)) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (*.f64 y.re 4) (*.f64 x.re 4)) (*.f64 (*.f64 y.im (*.f64 x.im 4)) 4)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 y.im (*.f64 x.im 4)) (*.f64 2 (-.f64 (*.f64 x.im (*.f64 y.im 3)) (*.f64 x.re y.re)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (-.f64 (*.f64 x.re (*.f64 y.re 4)) (*.f64 (*.f64 x.im y.im) 8)) (neg.f64 (*.f64 y.im (*.f64 x.im 4)))) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 y.im (*.f64 x.im 4)) (neg.f64 (-.f64 (*.f64 x.re (*.f64 y.re 4)) (*.f64 (*.f64 x.im y.im) 8)))) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 y.im (*.f64 x.im 4)) (-.f64 (*.f64 (*.f64 x.im y.im) 8) (*.f64 x.re (*.f64 y.re 4)))) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 2 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))) (*.f64 y.im (*.f64 x.im 4))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (+.f64 (*.f64 y.im (*.f64 x.im 4)) (*.f64 x.re (*.f64 y.re 4))) (*.f64 (*.f64 x.im y.im) 8)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x.re y.re) (*.f64 (*.f64 x.im y.im) -2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x.re y.re) (-.f64 (*.f64 x.re y.re) (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (*.f64 x.re y.re) (*.f64 (*.f64 x.im y.im) -2)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (neg.f64 (*.f64 x.im y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (-.f64 (*.f64 x.re y.re) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (+.f64 (*.f64 x.re y.re) (*.f64 (*.f64 x.im y.im) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (-.f64 (/.f64 (*.f64 x.im y.im) 2) (+.f64 (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re y.re)) (/.f64 (*.f64 x.im y.im) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 x.im y.im) -2) (*.f64 x.re y.re))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 (*.f64 x.im y.im)) (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) (neg.f64 (*.f64 x.re y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (*.f64 x.im y.im) 2) (-.f64 (/.f64 (*.f64 x.im y.im) 2) (-.f64 (*.f64 x.im (*.f64 y.im 3)) (*.f64 x.re y.re))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (*.f64 x.re y.re) 2) (+.f64 (*.f64 (*.f64 x.im y.im) -2) (/.f64 (*.f64 x.re y.re) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) (-.f64 (/.f64 (*.f64 x.re y.re) 2) (*.f64 3 (/.f64 (*.f64 x.im y.im) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 (*.f64 x.re y.re)) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (/.f64 (*.f64 x.re y.re) 2) (*.f64 x.im y.im)) (-.f64 (/.f64 (*.f64 x.re y.re) 2) (*.f64 x.im y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (+.f64 (*.f64 x.re y.re) (*.f64 (*.f64 x.im y.im) -2)) (/.f64 (*.f64 x.im y.im) 2)) (-.f64 (/.f64 (*.f64 x.im y.im) 2) (*.f64 x.im y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 x.re y.re) (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))) (*.f64 x.re y.re))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (*.f64 x.im y.im) -2) (-.f64 (/.f64 (*.f64 x.im y.im) -2) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (*.f64 (*.f64 x.im y.im) -2) (/.f64 (*.f64 x.re y.re) 2)) (/.f64 (*.f64 x.re y.re) 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (/.f64 (*.f64 x.im y.im) -2) (neg.f64 (*.f64 x.im y.im))) (-.f64 (/.f64 (*.f64 x.im y.im) -2) (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re y.re))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 x.re y.re) (/.f64 (*.f64 x.re y.re) 2)) (-.f64 (*.f64 x.re y.re) (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (/.f64 (*.f64 x.re y.re) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (/.f64 (*.f64 x.re y.re) 2) (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))) (-.f64 (/.f64 (*.f64 x.re y.re) 2) (neg.f64 (*.f64 x.re y.re))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (/.f64 (*.f64 x.im y.im) -2) (*.f64 x.im (+.f64 y.im y.im))) (-.f64 (/.f64 (*.f64 x.im y.im) -2) (-.f64 (neg.f64 (*.f64 x.re y.re)) (*.f64 x.im y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (neg.f64 (*.f64 x.im y.im)) (/.f64 (*.f64 x.re y.re) -2)) (-.f64 (neg.f64 (*.f64 x.im y.im)) (/.f64 (*.f64 x.re y.re) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (/.f64 (*.f64 x.im y.im) -2) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re))) (/.f64 (*.f64 x.im y.im) -2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (/.f64 (*.f64 x.im y.im) -2) (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re y.re))) (-.f64 (/.f64 (*.f64 x.im y.im) -2) (neg.f64 (*.f64 x.im y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (/.f64 (*.f64 x.im y.im) 2) (*.f64 x.im y.im)) (+.f64 (+.f64 (*.f64 x.re y.re) (*.f64 (*.f64 x.im y.im) -2)) (/.f64 (*.f64 x.im y.im) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (/.f64 (*.f64 x.im y.im) -2) (neg.f64 (*.f64 x.re y.re))) (*.f64 -3 (/.f64 (*.f64 x.im y.im) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (/.f64 (*.f64 x.im y.im) -2) (-.f64 (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re y.re)) (/.f64 (*.f64 x.im y.im) 2))) (-.f64 (/.f64 (*.f64 x.im y.im) -2) (/.f64 (*.f64 x.im y.im) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (/.f64 (*.f64 x.im y.im) -2) (-.f64 -1 (+.f64 (*.f64 x.re y.re) (*.f64 (*.f64 x.im y.im) -2)))) (-.f64 (/.f64 (*.f64 x.im y.im) -2) (-.f64 1 (*.f64 x.im y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (/.f64 (*.f64 x.im y.im) -2) (-.f64 -1 (*.f64 x.im y.im))) (-.f64 (/.f64 (*.f64 x.im y.im) -2) (-.f64 1 (+.f64 (*.f64 x.re y.re) (*.f64 (*.f64 x.im y.im) -2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (*.f64 x.re y.re) (*.f64 (*.f64 x.im y.im) -2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (+.f64 (*.f64 x.re y.re) (*.f64 (*.f64 x.im y.im) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re y.re)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 x.re (+.f64 y.re y.re)) (*.f64 y.im (*.f64 x.im 4))) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (-.f64 (*.f64 x.re (+.f64 y.re y.re)) (*.f64 y.im (*.f64 x.im 4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (-.f64 (*.f64 x.re (*.f64 y.re 4)) (+.f64 (*.f64 x.re (+.f64 y.re y.re)) (*.f64 y.im (*.f64 x.im 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 x.re (*.f64 y.re 4)) (*.f64 (*.f64 x.im y.im) 8)) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 y.im (*.f64 x.im 4)) (*.f64 x.re (+.f64 y.re y.re))) -1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (-.f64 (*.f64 x.re (*.f64 y.re 4)) (*.f64 (*.f64 x.im y.im) 8)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (-.f64 (*.f64 x.re (*.f64 y.re 4)) (*.f64 (*.f64 x.im y.im) 8))) 1/8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 x.re y.re) (*.f64 (*.f64 x.im y.im) -2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re y.re)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 x.re (+.f64 y.re y.re)) (*.f64 y.im (*.f64 x.im 4))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 x.re (*.f64 y.re 4)) (*.f64 (*.f64 x.im y.im) 8)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 y.im (*.f64 x.im 4)) (*.f64 x.re (+.f64 y.re y.re))) -2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (*.f64 x.re (*.f64 y.re 4)) (*.f64 (*.f64 x.im y.im) 8))) -4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (*.f64 x.im y.im) 8) (*.f64 x.re (*.f64 y.re 4))) -4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (-.f64 (*.f64 x.re (*.f64 y.re 4)) (*.f64 (*.f64 x.im y.im) 8))) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (neg.f64 (-.f64 (*.f64 x.re (*.f64 y.re 4)) (*.f64 (*.f64 x.im y.im) 8))) -1) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (-.f64 (*.f64 (*.f64 x.im y.im) 8) (*.f64 x.re (*.f64 y.re 4))) -1) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 x.re (*.f64 y.re 4)) (+.f64 (*.f64 x.re (+.f64 y.re y.re)) (*.f64 y.im (*.f64 x.im 4)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 x.re (*.f64 (+.f64 y.re y.re) 4)) (*.f64 (*.f64 y.im (*.f64 x.im 4)) 4)) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (*.f64 y.re 4) (*.f64 x.re 4)) (*.f64 (*.f64 x.im 4) (*.f64 (+.f64 y.im y.im) 4))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (neg.f64 (*.f64 y.im (*.f64 x.im 4))) (neg.f64 (*.f64 x.re (+.f64 y.re y.re)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (neg.f64 (*.f64 (*.f64 x.im y.im) 8)) (neg.f64 (*.f64 x.re (*.f64 y.re 4)))) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 x.re (*.f64 (+.f64 y.re y.re) 4)) (+.f64 (*.f64 x.re (*.f64 y.re 4)) (*.f64 (*.f64 x.im y.im) 8))) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (+.f64 (*.f64 x.re (+.f64 y.re y.re)) (*.f64 y.im (*.f64 x.im 4))) (*.f64 (*.f64 x.im y.im) 8)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (+.f64 (*.f64 x.re (*.f64 y.re 4)) (*.f64 (*.f64 x.im y.im) 8)) (*.f64 (*.f64 y.im (*.f64 x.im 4)) 4)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (+.f64 (*.f64 x.re y.re) (*.f64 (*.f64 x.im y.im) -2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re y.re)))))))

simplify374.0ms (3.9%)

Algorithm
egg-herbie
Rules
958×rational_best-simplify-51
858×rational_best-simplify-48
818×rational_best-simplify-52
800×rational_best-simplify-57
546×rational_best-simplify-3
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
03407583
18726905
220965461
Stop Event
node limit
Counts
235 → 205
Calls
Call 1
Inputs
(-.f64 (*.f64 y.im x.im) (*.f64 2 (*.f64 y.im x.im)))
(-.f64 (+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) (*.f64 2 (*.f64 y.im x.im)))
(-.f64 (+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) (*.f64 2 (*.f64 y.im x.im)))
(-.f64 (+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) (*.f64 2 (*.f64 y.im x.im)))
(*.f64 x.re y.re)
(-.f64 (+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) (*.f64 2 (*.f64 y.im x.im)))
(-.f64 (+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) (*.f64 2 (*.f64 y.im x.im)))
(-.f64 (+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) (*.f64 2 (*.f64 y.im x.im)))
(*.f64 x.re y.re)
(-.f64 (+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) (*.f64 2 (*.f64 y.im x.im)))
(-.f64 (+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) (*.f64 2 (*.f64 y.im x.im)))
(-.f64 (+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) (*.f64 2 (*.f64 y.im x.im)))
(-.f64 (*.f64 y.im x.im) (*.f64 2 (*.f64 y.im x.im)))
(-.f64 (+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) (*.f64 2 (*.f64 y.im x.im)))
(-.f64 (+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) (*.f64 2 (*.f64 y.im x.im)))
(-.f64 (+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) (*.f64 2 (*.f64 y.im x.im)))
(*.f64 x.re y.re)
(-.f64 (+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) (*.f64 2 (*.f64 y.im x.im)))
(-.f64 (+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) (*.f64 2 (*.f64 y.im x.im)))
(-.f64 (+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) (*.f64 2 (*.f64 y.im x.im)))
(*.f64 x.re y.re)
(-.f64 (+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) (*.f64 2 (*.f64 y.im x.im)))
(-.f64 (+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) (*.f64 2 (*.f64 y.im x.im)))
(-.f64 (+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) (*.f64 2 (*.f64 y.im x.im)))
(*.f64 x.re y.re)
(+.f64 (*.f64 (-.f64 y.im (*.f64 2 y.im)) x.im) (*.f64 x.re y.re))
(+.f64 (*.f64 (-.f64 y.im (*.f64 2 y.im)) x.im) (*.f64 x.re y.re))
(+.f64 (*.f64 (-.f64 y.im (*.f64 2 y.im)) x.im) (*.f64 x.re y.re))
(*.f64 (-.f64 y.im (*.f64 2 y.im)) x.im)
(+.f64 (*.f64 (-.f64 y.im (*.f64 2 y.im)) x.im) (*.f64 x.re y.re))
(+.f64 (*.f64 (-.f64 y.im (*.f64 2 y.im)) x.im) (*.f64 x.re y.re))
(+.f64 (*.f64 (-.f64 y.im (*.f64 2 y.im)) x.im) (*.f64 x.re y.re))
(*.f64 -1 (*.f64 x.im (-.f64 (*.f64 -1 y.im) (*.f64 -2 y.im))))
(+.f64 (*.f64 -1 (*.f64 x.im (-.f64 (*.f64 -1 y.im) (*.f64 -2 y.im)))) (*.f64 x.re y.re))
(+.f64 (*.f64 -1 (*.f64 x.im (-.f64 (*.f64 -1 y.im) (*.f64 -2 y.im)))) (*.f64 x.re y.re))
(+.f64 (*.f64 -1 (*.f64 x.im (-.f64 (*.f64 -1 y.im) (*.f64 -2 y.im)))) (*.f64 x.re y.re))
(*.f64 x.re y.re)
(+.f64 (*.f64 y.im (-.f64 x.im (*.f64 2 x.im))) (*.f64 x.re y.re))
(+.f64 (*.f64 y.im (-.f64 x.im (*.f64 2 x.im))) (*.f64 x.re y.re))
(+.f64 (*.f64 y.im (-.f64 x.im (*.f64 2 x.im))) (*.f64 x.re y.re))
(*.f64 y.im (-.f64 x.im (*.f64 2 x.im)))
(+.f64 (*.f64 y.im (-.f64 x.im (*.f64 2 x.im))) (*.f64 x.re y.re))
(+.f64 (*.f64 y.im (-.f64 x.im (*.f64 2 x.im))) (*.f64 x.re y.re))
(+.f64 (*.f64 y.im (-.f64 x.im (*.f64 2 x.im))) (*.f64 x.re y.re))
(*.f64 -1 (*.f64 y.im (-.f64 (*.f64 -1 x.im) (*.f64 -2 x.im))))
(+.f64 (*.f64 -1 (*.f64 y.im (-.f64 (*.f64 -1 x.im) (*.f64 -2 x.im)))) (*.f64 x.re y.re))
(+.f64 (*.f64 -1 (*.f64 y.im (-.f64 (*.f64 -1 x.im) (*.f64 -2 x.im)))) (*.f64 x.re y.re))
(+.f64 (*.f64 -1 (*.f64 y.im (-.f64 (*.f64 -1 x.im) (*.f64 -2 x.im)))) (*.f64 x.re y.re))
(*.f64 -2 (*.f64 y.im x.im))
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(*.f64 x.re y.re)
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(*.f64 x.re y.re)
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(*.f64 -2 (*.f64 y.im x.im))
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(*.f64 x.re y.re)
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(*.f64 x.re y.re)
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(*.f64 x.re y.re)
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(*.f64 -2 (*.f64 y.im x.im))
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(*.f64 -2 (*.f64 y.im x.im))
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(*.f64 x.re y.re)
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(*.f64 -2 (*.f64 y.im x.im))
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(*.f64 -2 (*.f64 y.im x.im))
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
(-.f64 (*.f64 x.re y.re) (+.f64 (+.f64 (*.f64 x.re y.re) (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re y.re))) (neg.f64 (*.f64 x.im y.im))))
(-.f64 (*.f64 x.im (+.f64 y.im y.im)) (-.f64 (*.f64 x.im (*.f64 y.im 3)) (*.f64 x.re y.re)))
(-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 (*.f64 x.im y.im) -2)) (neg.f64 (*.f64 x.im y.im)))
(-.f64 (*.f64 x.im y.im) (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re y.re)))
(-.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 0)
(-.f64 0 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))
(-.f64 0 (+.f64 (-.f64 (neg.f64 (*.f64 x.im y.im)) (*.f64 x.re y.re)) (*.f64 x.im (+.f64 y.im y.im))))
(-.f64 (*.f64 (*.f64 x.im y.im) -2) (-.f64 (neg.f64 (*.f64 x.re y.re)) (*.f64 x.im y.im)))
(-.f64 (neg.f64 (*.f64 x.im y.im)) (neg.f64 (*.f64 x.re y.re)))
(-.f64 (*.f64 x.re (+.f64 y.re y.re)) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))
(-.f64 (-.f64 (*.f64 x.re (+.f64 y.re y.re)) (*.f64 y.im (*.f64 x.im 4))) (-.f64 (*.f64 x.re y.re) (*.f64 x.im (*.f64 y.im 3))))
(-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 x.im (+.f64 y.im y.im)))
(-.f64 (/.f64 (*.f64 x.im y.im) 2) (-.f64 (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re y.re)) (/.f64 (*.f64 x.im y.im) 2)))
(-.f64 (/.f64 (*.f64 x.im y.im) 2) (+.f64 (/.f64 (*.f64 x.im y.im) -2) (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re y.re))))
(-.f64 (/.f64 (*.f64 x.im y.im) 2) (+.f64 (-.f64 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)) (/.f64 (*.f64 x.im y.im) 2)) (*.f64 x.im y.im)))
(-.f64 (/.f64 (*.f64 x.re y.re) 2) (-.f64 (*.f64 x.im y.im) (/.f64 (*.f64 x.re y.re) 2)))
(-.f64 (/.f64 (*.f64 x.re y.re) 2) (+.f64 (/.f64 (*.f64 x.re y.re) -2) (*.f64 x.im y.im)))
(-.f64 (/.f64 (*.f64 x.re y.re) 2) (+.f64 (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (/.f64 (*.f64 x.re y.re) 2)) (neg.f64 (*.f64 x.im y.im))))
(-.f64 (/.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) (/.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) -2))
(-.f64 (/.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) (-.f64 (/.f64 (*.f64 x.im y.im) 2) (/.f64 (*.f64 x.re y.re) 2)))
(-.f64 (/.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) (-.f64 (/.f64 (*.f64 x.im y.im) -2) (-.f64 (/.f64 (*.f64 x.re y.re) 2) (*.f64 x.im y.im))))
(-.f64 (/.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) (-.f64 (-.f64 (*.f64 x.im y.im) (/.f64 (*.f64 x.re y.re) 2)) (/.f64 (*.f64 x.im y.im) 2)))
(-.f64 (-.f64 (/.f64 (*.f64 x.re y.re) 2) (*.f64 x.im y.im)) (/.f64 (*.f64 x.re y.re) -2))
(-.f64 (-.f64 (/.f64 (*.f64 x.re y.re) 2) (*.f64 x.im y.im)) (+.f64 (-.f64 (*.f64 x.im y.im) (/.f64 (*.f64 x.re y.re) 2)) (neg.f64 (*.f64 x.im y.im))))
(-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) (*.f64 x.im (*.f64 y.im 3)))
(-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) (+.f64 (*.f64 y.im (*.f64 x.im 4)) (neg.f64 (*.f64 x.im y.im))))
(-.f64 (+.f64 (*.f64 x.re y.re) (/.f64 (*.f64 x.im y.im) 2)) (*.f64 3 (/.f64 (*.f64 x.im y.im) 2)))
(-.f64 (+.f64 (+.f64 (*.f64 x.re y.re) (*.f64 (*.f64 x.im y.im) -2)) (/.f64 (*.f64 x.im y.im) 2)) (/.f64 (*.f64 x.im y.im) -2))
(-.f64 (+.f64 (+.f64 (*.f64 x.re y.re) (*.f64 (*.f64 x.im y.im) -2)) (/.f64 (*.f64 x.im y.im) 2)) (+.f64 (*.f64 -3 (/.f64 (*.f64 x.im y.im) 2)) (*.f64 x.im y.im)))
(-.f64 (-.f64 (*.f64 x.re (+.f64 y.re y.re)) (neg.f64 (*.f64 x.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))))
(-.f64 (-.f64 (*.f64 x.re y.re) (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))) (-.f64 (neg.f64 (*.f64 x.re y.re)) (*.f64 x.im y.im)))
(-.f64 (-.f64 (*.f64 x.re y.re) (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))) (-.f64 (neg.f64 (*.f64 x.im y.im)) (*.f64 x.re y.re)))
(-.f64 (neg.f64 (*.f64 y.im (*.f64 x.im 4))) (+.f64 (neg.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))) (neg.f64 (*.f64 x.im y.im))))
(-.f64 (+.f64 (*.f64 x.im y.im) (/.f64 (*.f64 x.re y.re) 2)) (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (/.f64 (*.f64 x.re y.re) 2)))
(-.f64 (+.f64 (*.f64 x.im y.im) (/.f64 (*.f64 x.re y.re) 2)) (+.f64 (/.f64 (*.f64 x.re y.re) -2) (*.f64 x.im (+.f64 y.im y.im))))
(-.f64 (+.f64 (*.f64 (*.f64 x.im y.im) -2) (/.f64 (*.f64 x.re y.re) 2)) (-.f64 (neg.f64 (*.f64 x.im y.im)) (/.f64 (*.f64 x.re y.re) 2)))
(-.f64 (+.f64 (*.f64 (*.f64 x.im y.im) -2) (/.f64 (*.f64 x.re y.re) 2)) (+.f64 (/.f64 (*.f64 x.re y.re) -2) (neg.f64 (*.f64 x.im y.im))))
(-.f64 (-.f64 (/.f64 (*.f64 x.im y.im) 2) (neg.f64 (*.f64 x.re y.re))) (*.f64 3 (/.f64 (*.f64 x.im y.im) 2)))
(-.f64 (*.f64 3 (/.f64 (*.f64 x.im y.im) 2)) (-.f64 (-.f64 (*.f64 x.im (*.f64 y.im 3)) (*.f64 x.re y.re)) (/.f64 (*.f64 x.im y.im) 2)))
(-.f64 (*.f64 3 (/.f64 (*.f64 x.im y.im) 2)) (+.f64 (-.f64 (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re y.re)) (/.f64 (*.f64 x.im y.im) 2)) (*.f64 x.im y.im)))
(-.f64 (-.f64 (/.f64 (*.f64 x.im y.im) 2) (*.f64 x.im (+.f64 y.im y.im))) (-.f64 (neg.f64 (*.f64 x.re y.re)) (/.f64 (*.f64 x.im y.im) 2)))
(-.f64 (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (/.f64 (*.f64 x.im y.im) 2)) (+.f64 (-.f64 (-.f64 (*.f64 x.im (*.f64 y.im 3)) (*.f64 x.re y.re)) (/.f64 (*.f64 x.im y.im) 2)) (*.f64 x.im y.im)))
(-.f64 (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (/.f64 (*.f64 x.im y.im) 2)) (-.f64 (-.f64 (*.f64 y.im (*.f64 x.im 4)) (*.f64 x.re y.re)) (/.f64 (*.f64 x.im y.im) 2)))
(-.f64 (+.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (/.f64 (*.f64 x.im y.im) 2)) (/.f64 (*.f64 x.im y.im) 2))
(-.f64 (+.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (/.f64 (*.f64 x.im y.im) 2)) (+.f64 (/.f64 (*.f64 x.im y.im) -2) (*.f64 x.im y.im)))
(-.f64 (+.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (/.f64 (*.f64 x.im y.im) 2)) (+.f64 (*.f64 3 (/.f64 (*.f64 x.im y.im) 2)) (*.f64 x.im y.im)))
(-.f64 (+.f64 (*.f64 x.re (+.f64 y.re y.re)) (/.f64 (*.f64 x.im y.im) 2)) (-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) (/.f64 (*.f64 x.im y.im) 2)))
(-.f64 (-.f64 (/.f64 (*.f64 x.im y.im) 2) (/.f64 (*.f64 x.re y.re) -2)) (-.f64 (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (/.f64 (*.f64 x.re y.re) 2)) (/.f64 (*.f64 x.im y.im) 2)))
(-.f64 (-.f64 (/.f64 (*.f64 x.im y.im) 2) (*.f64 x.im y.im)) (-.f64 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)) (/.f64 (*.f64 x.im y.im) 2)))
(-.f64 (-.f64 (*.f64 x.im y.im) (+.f64 (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re y.re)) (/.f64 (*.f64 x.im y.im) 2))) (-.f64 (/.f64 (*.f64 x.im y.im) 2) (*.f64 x.im y.im)))
(*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 1)
(*.f64 1 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))
(*.f64 -1 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))
(*.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) 1/2)
(*.f64 1/2 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2))
(*.f64 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)) -1)
(*.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 4) 1/4)
(*.f64 1/4 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 4))
(*.f64 (*.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) 4) 1/8)
(/.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 1)
(/.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) 2)
(/.f64 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)) -1)
(/.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 4) 4)
(/.f64 (*.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) 4) 8)
(/.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) -2) -2)
(/.f64 (-.f64 (*.f64 x.re (*.f64 y.re 4)) (*.f64 y.im (*.f64 x.im 4))) 4)
(/.f64 (-.f64 (*.f64 x.re (*.f64 (+.f64 y.re y.re) 4)) (*.f64 (*.f64 x.im y.im) 8)) 8)
(/.f64 (-.f64 (*.f64 (*.f64 y.re 4) (*.f64 x.re 4)) (*.f64 (*.f64 y.im (*.f64 x.im 4)) 4)) 16)
(/.f64 (-.f64 (*.f64 y.im (*.f64 x.im 4)) (*.f64 2 (-.f64 (*.f64 x.im (*.f64 y.im 3)) (*.f64 x.re y.re)))) 2)
(/.f64 (-.f64 (-.f64 (*.f64 x.re (*.f64 y.re 4)) (*.f64 (*.f64 x.im y.im) 8)) (neg.f64 (*.f64 y.im (*.f64 x.im 4)))) 4)
(/.f64 (-.f64 (*.f64 y.im (*.f64 x.im 4)) (neg.f64 (-.f64 (*.f64 x.re (*.f64 y.re 4)) (*.f64 (*.f64 x.im y.im) 8)))) 4)
(/.f64 (-.f64 (*.f64 y.im (*.f64 x.im 4)) (-.f64 (*.f64 (*.f64 x.im y.im) 8) (*.f64 x.re (*.f64 y.re 4)))) 4)
(/.f64 (-.f64 (*.f64 2 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))) (*.f64 y.im (*.f64 x.im 4))) 2)
(/.f64 (-.f64 (+.f64 (*.f64 y.im (*.f64 x.im 4)) (*.f64 x.re (*.f64 y.re 4))) (*.f64 (*.f64 x.im y.im) 8)) 4)
(pow.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 1)
(neg.f64 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))
(+.f64 (*.f64 x.re y.re) (*.f64 (*.f64 x.im y.im) -2))
(+.f64 (*.f64 x.re y.re) (-.f64 (*.f64 x.re y.re) (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))))
(+.f64 (+.f64 (*.f64 x.re y.re) (*.f64 (*.f64 x.im y.im) -2)) 0)
(+.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (neg.f64 (*.f64 x.im y.im)))
(+.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (-.f64 (*.f64 x.re y.re) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))))
(+.f64 0 (+.f64 (*.f64 x.re y.re) (*.f64 (*.f64 x.im y.im) -2)))
(+.f64 0 (-.f64 (/.f64 (*.f64 x.im y.im) 2) (+.f64 (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re y.re)) (/.f64 (*.f64 x.im y.im) 2))))
(+.f64 (*.f64 (*.f64 x.im y.im) -2) (*.f64 x.re y.re))
(+.f64 (neg.f64 (*.f64 x.im y.im)) (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))
(+.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) (neg.f64 (*.f64 x.re y.re)))
(+.f64 (/.f64 (*.f64 x.im y.im) 2) (-.f64 (/.f64 (*.f64 x.im y.im) 2) (-.f64 (*.f64 x.im (*.f64 y.im 3)) (*.f64 x.re y.re))))
(+.f64 (/.f64 (*.f64 x.re y.re) 2) (+.f64 (*.f64 (*.f64 x.im y.im) -2) (/.f64 (*.f64 x.re y.re) 2)))
(+.f64 (/.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) (-.f64 (/.f64 (*.f64 x.re y.re) 2) (*.f64 3 (/.f64 (*.f64 x.im y.im) 2))))
(+.f64 (neg.f64 (*.f64 x.re y.re)) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2))
(+.f64 (-.f64 (/.f64 (*.f64 x.re y.re) 2) (*.f64 x.im y.im)) (-.f64 (/.f64 (*.f64 x.re y.re) 2) (*.f64 x.im y.im)))
(+.f64 (+.f64 (+.f64 (*.f64 x.re y.re) (*.f64 (*.f64 x.im y.im) -2)) (/.f64 (*.f64 x.im y.im) 2)) (-.f64 (/.f64 (*.f64 x.im y.im) 2) (*.f64 x.im y.im)))
(+.f64 (-.f64 (*.f64 x.re y.re) (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))) (*.f64 x.re y.re))
(+.f64 (/.f64 (*.f64 x.im y.im) -2) (-.f64 (/.f64 (*.f64 x.im y.im) -2) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re))))
(+.f64 (+.f64 (*.f64 (*.f64 x.im y.im) -2) (/.f64 (*.f64 x.re y.re) 2)) (/.f64 (*.f64 x.re y.re) 2))
(+.f64 (-.f64 (/.f64 (*.f64 x.im y.im) -2) (neg.f64 (*.f64 x.im y.im))) (-.f64 (/.f64 (*.f64 x.im y.im) -2) (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re y.re))))
(+.f64 (-.f64 (*.f64 x.re y.re) (/.f64 (*.f64 x.re y.re) 2)) (-.f64 (*.f64 x.re y.re) (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (/.f64 (*.f64 x.re y.re) 2))))
(+.f64 (-.f64 (/.f64 (*.f64 x.re y.re) 2) (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))) (-.f64 (/.f64 (*.f64 x.re y.re) 2) (neg.f64 (*.f64 x.re y.re))))
(+.f64 (-.f64 (/.f64 (*.f64 x.im y.im) -2) (*.f64 x.im (+.f64 y.im y.im))) (-.f64 (/.f64 (*.f64 x.im y.im) -2) (-.f64 (neg.f64 (*.f64 x.re y.re)) (*.f64 x.im y.im))))
(+.f64 (-.f64 (neg.f64 (*.f64 x.im y.im)) (/.f64 (*.f64 x.re y.re) -2)) (-.f64 (neg.f64 (*.f64 x.im y.im)) (/.f64 (*.f64 x.re y.re) -2)))
(+.f64 (-.f64 (/.f64 (*.f64 x.im y.im) -2) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re))) (/.f64 (*.f64 x.im y.im) -2))
(+.f64 (-.f64 (/.f64 (*.f64 x.im y.im) -2) (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re y.re))) (-.f64 (/.f64 (*.f64 x.im y.im) -2) (neg.f64 (*.f64 x.im y.im))))
(+.f64 (-.f64 (/.f64 (*.f64 x.im y.im) 2) (*.f64 x.im y.im)) (+.f64 (+.f64 (*.f64 x.re y.re) (*.f64 (*.f64 x.im y.im) -2)) (/.f64 (*.f64 x.im y.im) 2)))
(+.f64 (-.f64 (/.f64 (*.f64 x.im y.im) -2) (neg.f64 (*.f64 x.re y.re))) (*.f64 -3 (/.f64 (*.f64 x.im y.im) 2)))
(+.f64 (-.f64 (/.f64 (*.f64 x.im y.im) -2) (-.f64 (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re y.re)) (/.f64 (*.f64 x.im y.im) 2))) (-.f64 (/.f64 (*.f64 x.im y.im) -2) (/.f64 (*.f64 x.im y.im) -2)))
(+.f64 (-.f64 (/.f64 (*.f64 x.im y.im) -2) (-.f64 -1 (+.f64 (*.f64 x.re y.re) (*.f64 (*.f64 x.im y.im) -2)))) (-.f64 (/.f64 (*.f64 x.im y.im) -2) (-.f64 1 (*.f64 x.im y.im))))
(+.f64 (-.f64 (/.f64 (*.f64 x.im y.im) -2) (-.f64 -1 (*.f64 x.im y.im))) (-.f64 (/.f64 (*.f64 x.im y.im) -2) (-.f64 1 (+.f64 (*.f64 x.re y.re) (*.f64 (*.f64 x.im y.im) -2)))))
(*.f64 (+.f64 (*.f64 x.re y.re) (*.f64 (*.f64 x.im y.im) -2)) 1)
(*.f64 1 (+.f64 (*.f64 x.re y.re) (*.f64 (*.f64 x.im y.im) -2)))
(*.f64 (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re y.re)) -1)
(*.f64 -1 (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re y.re)))
(*.f64 (-.f64 (*.f64 x.re (+.f64 y.re y.re)) (*.f64 y.im (*.f64 x.im 4))) 1/2)
(*.f64 1/2 (-.f64 (*.f64 x.re (+.f64 y.re y.re)) (*.f64 y.im (*.f64 x.im 4))))
(*.f64 1/2 (-.f64 (*.f64 x.re (*.f64 y.re 4)) (+.f64 (*.f64 x.re (+.f64 y.re y.re)) (*.f64 y.im (*.f64 x.im 4)))))
(*.f64 (-.f64 (*.f64 x.re (*.f64 y.re 4)) (*.f64 (*.f64 x.im y.im) 8)) 1/4)
(*.f64 (-.f64 (*.f64 y.im (*.f64 x.im 4)) (*.f64 x.re (+.f64 y.re y.re))) -1/2)
(*.f64 1/4 (-.f64 (*.f64 x.re (*.f64 y.re 4)) (*.f64 (*.f64 x.im y.im) 8)))
(*.f64 (*.f64 2 (-.f64 (*.f64 x.re (*.f64 y.re 4)) (*.f64 (*.f64 x.im y.im) 8))) 1/8)
(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 (*.f64 x.im y.im) -2)) 1)
(/.f64 (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re y.re)) -1)
(/.f64 (-.f64 (*.f64 x.re (+.f64 y.re y.re)) (*.f64 y.im (*.f64 x.im 4))) 2)
(/.f64 (-.f64 (*.f64 x.re (*.f64 y.re 4)) (*.f64 (*.f64 x.im y.im) 8)) 4)
(/.f64 (-.f64 (*.f64 y.im (*.f64 x.im 4)) (*.f64 x.re (+.f64 y.re y.re))) -2)
(/.f64 (neg.f64 (-.f64 (*.f64 x.re (*.f64 y.re 4)) (*.f64 (*.f64 x.im y.im) 8))) -4)
(/.f64 (-.f64 (*.f64 (*.f64 x.im y.im) 8) (*.f64 x.re (*.f64 y.re 4))) -4)
(/.f64 (*.f64 2 (-.f64 (*.f64 x.re (*.f64 y.re 4)) (*.f64 (*.f64 x.im y.im) 8))) 8)
(/.f64 (/.f64 (neg.f64 (-.f64 (*.f64 x.re (*.f64 y.re 4)) (*.f64 (*.f64 x.im y.im) 8))) -1) 4)
(/.f64 (/.f64 (-.f64 (*.f64 (*.f64 x.im y.im) 8) (*.f64 x.re (*.f64 y.re 4))) -1) 4)
(/.f64 (-.f64 (*.f64 x.re (*.f64 y.re 4)) (+.f64 (*.f64 x.re (+.f64 y.re y.re)) (*.f64 y.im (*.f64 x.im 4)))) 2)
(/.f64 (-.f64 (*.f64 x.re (*.f64 (+.f64 y.re y.re) 4)) (*.f64 (*.f64 y.im (*.f64 x.im 4)) 4)) 8)
(/.f64 (-.f64 (*.f64 (*.f64 y.re 4) (*.f64 x.re 4)) (*.f64 (*.f64 x.im 4) (*.f64 (+.f64 y.im y.im) 4))) 16)
(/.f64 (-.f64 (neg.f64 (*.f64 y.im (*.f64 x.im 4))) (neg.f64 (*.f64 x.re (+.f64 y.re y.re)))) 2)
(/.f64 (-.f64 (neg.f64 (*.f64 (*.f64 x.im y.im) 8)) (neg.f64 (*.f64 x.re (*.f64 y.re 4)))) 4)
(/.f64 (-.f64 (*.f64 x.re (*.f64 (+.f64 y.re y.re) 4)) (+.f64 (*.f64 x.re (*.f64 y.re 4)) (*.f64 (*.f64 x.im y.im) 8))) 4)
(/.f64 (-.f64 (+.f64 (*.f64 x.re (+.f64 y.re y.re)) (*.f64 y.im (*.f64 x.im 4))) (*.f64 (*.f64 x.im y.im) 8)) 2)
(/.f64 (-.f64 (+.f64 (*.f64 x.re (*.f64 y.re 4)) (*.f64 (*.f64 x.im y.im) 8)) (*.f64 (*.f64 y.im (*.f64 x.im 4)) 4)) 4)
(pow.f64 (+.f64 (*.f64 x.re y.re) (*.f64 (*.f64 x.im y.im) -2)) 1)
(neg.f64 (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re y.re)))
Outputs
(-.f64 (*.f64 y.im x.im) (*.f64 2 (*.f64 y.im x.im)))
(-.f64 (*.f64 y.im x.im) (*.f64 x.im (*.f64 y.im 2)))
(*.f64 x.im (-.f64 y.im (*.f64 y.im 2)))
(*.f64 x.im (neg.f64 y.im))
(-.f64 (+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) (*.f64 2 (*.f64 y.im x.im)))
(-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 x.im (*.f64 y.im 2)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(-.f64 (+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) (*.f64 2 (*.f64 y.im x.im)))
(-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 x.im (*.f64 y.im 2)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(-.f64 (+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) (*.f64 2 (*.f64 y.im x.im)))
(-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 x.im (*.f64 y.im 2)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(*.f64 x.re y.re)
(-.f64 (+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) (*.f64 2 (*.f64 y.im x.im)))
(-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 x.im (*.f64 y.im 2)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(-.f64 (+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) (*.f64 2 (*.f64 y.im x.im)))
(-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 x.im (*.f64 y.im 2)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(-.f64 (+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) (*.f64 2 (*.f64 y.im x.im)))
(-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 x.im (*.f64 y.im 2)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(*.f64 x.re y.re)
(-.f64 (+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) (*.f64 2 (*.f64 y.im x.im)))
(-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 x.im (*.f64 y.im 2)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(-.f64 (+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) (*.f64 2 (*.f64 y.im x.im)))
(-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 x.im (*.f64 y.im 2)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(-.f64 (+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) (*.f64 2 (*.f64 y.im x.im)))
(-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 x.im (*.f64 y.im 2)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(-.f64 (*.f64 y.im x.im) (*.f64 2 (*.f64 y.im x.im)))
(-.f64 (*.f64 y.im x.im) (*.f64 x.im (*.f64 y.im 2)))
(*.f64 x.im (-.f64 y.im (*.f64 y.im 2)))
(*.f64 x.im (neg.f64 y.im))
(-.f64 (+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) (*.f64 2 (*.f64 y.im x.im)))
(-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 x.im (*.f64 y.im 2)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(-.f64 (+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) (*.f64 2 (*.f64 y.im x.im)))
(-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 x.im (*.f64 y.im 2)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(-.f64 (+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) (*.f64 2 (*.f64 y.im x.im)))
(-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 x.im (*.f64 y.im 2)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(*.f64 x.re y.re)
(-.f64 (+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) (*.f64 2 (*.f64 y.im x.im)))
(-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 x.im (*.f64 y.im 2)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(-.f64 (+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) (*.f64 2 (*.f64 y.im x.im)))
(-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 x.im (*.f64 y.im 2)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(-.f64 (+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) (*.f64 2 (*.f64 y.im x.im)))
(-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 x.im (*.f64 y.im 2)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(*.f64 x.re y.re)
(-.f64 (+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) (*.f64 2 (*.f64 y.im x.im)))
(-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 x.im (*.f64 y.im 2)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(-.f64 (+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) (*.f64 2 (*.f64 y.im x.im)))
(-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 x.im (*.f64 y.im 2)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(-.f64 (+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) (*.f64 2 (*.f64 y.im x.im)))
(-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 x.im (*.f64 y.im 2)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(*.f64 x.re y.re)
(+.f64 (*.f64 (-.f64 y.im (*.f64 2 y.im)) x.im) (*.f64 x.re y.re))
(-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 x.im (*.f64 y.im 2)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(+.f64 (*.f64 (-.f64 y.im (*.f64 2 y.im)) x.im) (*.f64 x.re y.re))
(-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 x.im (*.f64 y.im 2)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(+.f64 (*.f64 (-.f64 y.im (*.f64 2 y.im)) x.im) (*.f64 x.re y.re))
(-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 x.im (*.f64 y.im 2)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(*.f64 (-.f64 y.im (*.f64 2 y.im)) x.im)
(-.f64 (*.f64 y.im x.im) (*.f64 x.im (*.f64 y.im 2)))
(*.f64 x.im (-.f64 y.im (*.f64 y.im 2)))
(*.f64 x.im (neg.f64 y.im))
(+.f64 (*.f64 (-.f64 y.im (*.f64 2 y.im)) x.im) (*.f64 x.re y.re))
(-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 x.im (*.f64 y.im 2)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(+.f64 (*.f64 (-.f64 y.im (*.f64 2 y.im)) x.im) (*.f64 x.re y.re))
(-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 x.im (*.f64 y.im 2)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(+.f64 (*.f64 (-.f64 y.im (*.f64 2 y.im)) x.im) (*.f64 x.re y.re))
(-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 x.im (*.f64 y.im 2)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(*.f64 -1 (*.f64 x.im (-.f64 (*.f64 -1 y.im) (*.f64 -2 y.im))))
(-.f64 (*.f64 y.im x.im) (*.f64 x.im (*.f64 y.im 2)))
(*.f64 x.im (-.f64 y.im (*.f64 y.im 2)))
(*.f64 x.im (neg.f64 y.im))
(+.f64 (*.f64 -1 (*.f64 x.im (-.f64 (*.f64 -1 y.im) (*.f64 -2 y.im)))) (*.f64 x.re y.re))
(-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 x.im (*.f64 y.im 2)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(+.f64 (*.f64 -1 (*.f64 x.im (-.f64 (*.f64 -1 y.im) (*.f64 -2 y.im)))) (*.f64 x.re y.re))
(-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 x.im (*.f64 y.im 2)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(+.f64 (*.f64 -1 (*.f64 x.im (-.f64 (*.f64 -1 y.im) (*.f64 -2 y.im)))) (*.f64 x.re y.re))
(-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 x.im (*.f64 y.im 2)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(*.f64 x.re y.re)
(+.f64 (*.f64 y.im (-.f64 x.im (*.f64 2 x.im))) (*.f64 x.re y.re))
(-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 x.im (*.f64 y.im 2)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(+.f64 (*.f64 y.im (-.f64 x.im (*.f64 2 x.im))) (*.f64 x.re y.re))
(-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 x.im (*.f64 y.im 2)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(+.f64 (*.f64 y.im (-.f64 x.im (*.f64 2 x.im))) (*.f64 x.re y.re))
(-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 x.im (*.f64 y.im 2)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(*.f64 y.im (-.f64 x.im (*.f64 2 x.im)))
(-.f64 (*.f64 y.im x.im) (*.f64 x.im (*.f64 y.im 2)))
(*.f64 x.im (-.f64 y.im (*.f64 y.im 2)))
(*.f64 x.im (neg.f64 y.im))
(+.f64 (*.f64 y.im (-.f64 x.im (*.f64 2 x.im))) (*.f64 x.re y.re))
(-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 x.im (*.f64 y.im 2)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(+.f64 (*.f64 y.im (-.f64 x.im (*.f64 2 x.im))) (*.f64 x.re y.re))
(-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 x.im (*.f64 y.im 2)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(+.f64 (*.f64 y.im (-.f64 x.im (*.f64 2 x.im))) (*.f64 x.re y.re))
(-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 x.im (*.f64 y.im 2)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(*.f64 -1 (*.f64 y.im (-.f64 (*.f64 -1 x.im) (*.f64 -2 x.im))))
(-.f64 (*.f64 y.im x.im) (*.f64 x.im (*.f64 y.im 2)))
(*.f64 x.im (-.f64 y.im (*.f64 y.im 2)))
(*.f64 x.im (neg.f64 y.im))
(+.f64 (*.f64 -1 (*.f64 y.im (-.f64 (*.f64 -1 x.im) (*.f64 -2 x.im)))) (*.f64 x.re y.re))
(-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 x.im (*.f64 y.im 2)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(+.f64 (*.f64 -1 (*.f64 y.im (-.f64 (*.f64 -1 x.im) (*.f64 -2 x.im)))) (*.f64 x.re y.re))
(-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 x.im (*.f64 y.im 2)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(+.f64 (*.f64 -1 (*.f64 y.im (-.f64 (*.f64 -1 x.im) (*.f64 -2 x.im)))) (*.f64 x.re y.re))
(-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 x.im (*.f64 y.im 2)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(*.f64 -2 (*.f64 y.im x.im))
(*.f64 x.im (*.f64 y.im -2))
(*.f64 y.im (*.f64 x.im -2))
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (*.f64 y.im -2)))
(+.f64 (*.f64 x.re y.re) (*.f64 y.im (*.f64 x.im -2)))
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (*.f64 y.im -2)))
(+.f64 (*.f64 x.re y.re) (*.f64 y.im (*.f64 x.im -2)))
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (*.f64 y.im -2)))
(+.f64 (*.f64 x.re y.re) (*.f64 y.im (*.f64 x.im -2)))
(*.f64 x.re y.re)
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (*.f64 y.im -2)))
(+.f64 (*.f64 x.re y.re) (*.f64 y.im (*.f64 x.im -2)))
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (*.f64 y.im -2)))
(+.f64 (*.f64 x.re y.re) (*.f64 y.im (*.f64 x.im -2)))
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (*.f64 y.im -2)))
(+.f64 (*.f64 x.re y.re) (*.f64 y.im (*.f64 x.im -2)))
(*.f64 x.re y.re)
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (*.f64 y.im -2)))
(+.f64 (*.f64 x.re y.re) (*.f64 y.im (*.f64 x.im -2)))
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (*.f64 y.im -2)))
(+.f64 (*.f64 x.re y.re) (*.f64 y.im (*.f64 x.im -2)))
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (*.f64 y.im -2)))
(+.f64 (*.f64 x.re y.re) (*.f64 y.im (*.f64 x.im -2)))
(*.f64 -2 (*.f64 y.im x.im))
(*.f64 x.im (*.f64 y.im -2))
(*.f64 y.im (*.f64 x.im -2))
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (*.f64 y.im -2)))
(+.f64 (*.f64 x.re y.re) (*.f64 y.im (*.f64 x.im -2)))
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (*.f64 y.im -2)))
(+.f64 (*.f64 x.re y.re) (*.f64 y.im (*.f64 x.im -2)))
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (*.f64 y.im -2)))
(+.f64 (*.f64 x.re y.re) (*.f64 y.im (*.f64 x.im -2)))
(*.f64 x.re y.re)
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (*.f64 y.im -2)))
(+.f64 (*.f64 x.re y.re) (*.f64 y.im (*.f64 x.im -2)))
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (*.f64 y.im -2)))
(+.f64 (*.f64 x.re y.re) (*.f64 y.im (*.f64 x.im -2)))
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (*.f64 y.im -2)))
(+.f64 (*.f64 x.re y.re) (*.f64 y.im (*.f64 x.im -2)))
(*.f64 x.re y.re)
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (*.f64 y.im -2)))
(+.f64 (*.f64 x.re y.re) (*.f64 y.im (*.f64 x.im -2)))
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (*.f64 y.im -2)))
(+.f64 (*.f64 x.re y.re) (*.f64 y.im (*.f64 x.im -2)))
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (*.f64 y.im -2)))
(+.f64 (*.f64 x.re y.re) (*.f64 y.im (*.f64 x.im -2)))
(*.f64 x.re y.re)
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (*.f64 y.im -2)))
(+.f64 (*.f64 x.re y.re) (*.f64 y.im (*.f64 x.im -2)))
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (*.f64 y.im -2)))
(+.f64 (*.f64 x.re y.re) (*.f64 y.im (*.f64 x.im -2)))
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (*.f64 y.im -2)))
(+.f64 (*.f64 x.re y.re) (*.f64 y.im (*.f64 x.im -2)))
(*.f64 -2 (*.f64 y.im x.im))
(*.f64 x.im (*.f64 y.im -2))
(*.f64 y.im (*.f64 x.im -2))
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (*.f64 y.im -2)))
(+.f64 (*.f64 x.re y.re) (*.f64 y.im (*.f64 x.im -2)))
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (*.f64 y.im -2)))
(+.f64 (*.f64 x.re y.re) (*.f64 y.im (*.f64 x.im -2)))
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (*.f64 y.im -2)))
(+.f64 (*.f64 x.re y.re) (*.f64 y.im (*.f64 x.im -2)))
(*.f64 -2 (*.f64 y.im x.im))
(*.f64 x.im (*.f64 y.im -2))
(*.f64 y.im (*.f64 x.im -2))
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (*.f64 y.im -2)))
(+.f64 (*.f64 x.re y.re) (*.f64 y.im (*.f64 x.im -2)))
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (*.f64 y.im -2)))
(+.f64 (*.f64 x.re y.re) (*.f64 y.im (*.f64 x.im -2)))
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (*.f64 y.im -2)))
(+.f64 (*.f64 x.re y.re) (*.f64 y.im (*.f64 x.im -2)))
(*.f64 x.re y.re)
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (*.f64 y.im -2)))
(+.f64 (*.f64 x.re y.re) (*.f64 y.im (*.f64 x.im -2)))
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (*.f64 y.im -2)))
(+.f64 (*.f64 x.re y.re) (*.f64 y.im (*.f64 x.im -2)))
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (*.f64 y.im -2)))
(+.f64 (*.f64 x.re y.re) (*.f64 y.im (*.f64 x.im -2)))
(*.f64 -2 (*.f64 y.im x.im))
(*.f64 x.im (*.f64 y.im -2))
(*.f64 y.im (*.f64 x.im -2))
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (*.f64 y.im -2)))
(+.f64 (*.f64 x.re y.re) (*.f64 y.im (*.f64 x.im -2)))
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (*.f64 y.im -2)))
(+.f64 (*.f64 x.re y.re) (*.f64 y.im (*.f64 x.im -2)))
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (*.f64 y.im -2)))
(+.f64 (*.f64 x.re y.re) (*.f64 y.im (*.f64 x.im -2)))
(*.f64 -2 (*.f64 y.im x.im))
(*.f64 x.im (*.f64 y.im -2))
(*.f64 y.im (*.f64 x.im -2))
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (*.f64 y.im -2)))
(+.f64 (*.f64 x.re y.re) (*.f64 y.im (*.f64 x.im -2)))
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (*.f64 y.im -2)))
(+.f64 (*.f64 x.re y.re) (*.f64 y.im (*.f64 x.im -2)))
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (*.f64 y.im -2)))
(+.f64 (*.f64 x.re y.re) (*.f64 y.im (*.f64 x.im -2)))
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
(-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 x.im (*.f64 y.im 2)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(-.f64 (*.f64 x.re y.re) (+.f64 (+.f64 (*.f64 x.re y.re) (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re y.re))) (neg.f64 (*.f64 x.im y.im))))
(-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 x.im (*.f64 y.im 2)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(-.f64 (*.f64 x.im (+.f64 y.im y.im)) (-.f64 (*.f64 x.im (*.f64 y.im 3)) (*.f64 x.re y.re)))
(-.f64 (*.f64 x.re y.re) (-.f64 (*.f64 x.im (*.f64 y.im 3)) (*.f64 x.im (+.f64 y.im y.im))))
(-.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 (*.f64 y.im 3) (+.f64 y.im y.im))))
(-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 (*.f64 x.im y.im) -2)) (neg.f64 (*.f64 x.im y.im)))
(-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 x.im (*.f64 y.im 2)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(-.f64 (*.f64 x.im y.im) (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re y.re)))
(-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 x.im (*.f64 y.im 2)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(-.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 0)
(-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 x.im (*.f64 y.im 2)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(-.f64 0 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))
(-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 x.im (*.f64 y.im 2)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(-.f64 0 (+.f64 (-.f64 (neg.f64 (*.f64 x.im y.im)) (*.f64 x.re y.re)) (*.f64 x.im (+.f64 y.im y.im))))
(-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 x.im (*.f64 y.im 2)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(-.f64 (*.f64 (*.f64 x.im y.im) -2) (-.f64 (neg.f64 (*.f64 x.re y.re)) (*.f64 x.im y.im)))
(-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 x.im (*.f64 y.im 2)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(-.f64 (neg.f64 (*.f64 x.im y.im)) (neg.f64 (*.f64 x.re y.re)))
(-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 x.im (*.f64 y.im 2)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(-.f64 (*.f64 x.re (+.f64 y.re y.re)) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))
(-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 x.im (*.f64 y.im 2)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(-.f64 (-.f64 (*.f64 x.re (+.f64 y.re y.re)) (*.f64 y.im (*.f64 x.im 4))) (-.f64 (*.f64 x.re y.re) (*.f64 x.im (*.f64 y.im 3))))
(-.f64 (*.f64 y.im (*.f64 3 x.im)) (-.f64 (*.f64 y.im (*.f64 x.im 4)) (*.f64 x.re (-.f64 (+.f64 y.re y.re) y.re))))
(-.f64 (*.f64 x.re y.re) (-.f64 (*.f64 x.im (*.f64 y.im 4)) (*.f64 x.im (*.f64 y.im 3))))
(-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 x.im (+.f64 y.im y.im)))
(-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 x.im (*.f64 y.im 2)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(-.f64 (/.f64 (*.f64 x.im y.im) 2) (-.f64 (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re y.re)) (/.f64 (*.f64 x.im y.im) 2)))
(-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 x.im (*.f64 y.im 2)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(-.f64 (/.f64 (*.f64 x.im y.im) 2) (+.f64 (/.f64 (*.f64 x.im y.im) -2) (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re y.re))))
(-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 x.im (*.f64 y.im 2)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(-.f64 (/.f64 (*.f64 x.im y.im) 2) (+.f64 (-.f64 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)) (/.f64 (*.f64 x.im y.im) 2)) (*.f64 x.im y.im)))
(-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 x.im (*.f64 y.im 2)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(-.f64 (/.f64 (*.f64 x.re y.re) 2) (-.f64 (*.f64 x.im y.im) (/.f64 (*.f64 x.re y.re) 2)))
(-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 x.im (*.f64 y.im 2)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(-.f64 (/.f64 (*.f64 x.re y.re) 2) (+.f64 (/.f64 (*.f64 x.re y.re) -2) (*.f64 x.im y.im)))
(-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 x.im (*.f64 y.im 2)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(-.f64 (/.f64 (*.f64 x.re y.re) 2) (+.f64 (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (/.f64 (*.f64 x.re y.re) 2)) (neg.f64 (*.f64 x.im y.im))))
(-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 x.im (*.f64 y.im 2)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(-.f64 (/.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) (/.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) -2))
(-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 x.im (*.f64 y.im 2)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(-.f64 (/.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) (-.f64 (/.f64 (*.f64 x.im y.im) 2) (/.f64 (*.f64 x.re y.re) 2)))
(-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 x.im (*.f64 y.im 2)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(-.f64 (/.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) (-.f64 (/.f64 (*.f64 x.im y.im) -2) (-.f64 (/.f64 (*.f64 x.re y.re) 2) (*.f64 x.im y.im))))
(-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 x.im (*.f64 y.im 2)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(-.f64 (/.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) (-.f64 (-.f64 (*.f64 x.im y.im) (/.f64 (*.f64 x.re y.re) 2)) (/.f64 (*.f64 x.im y.im) 2)))
(-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 x.im (*.f64 y.im 2)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(-.f64 (-.f64 (/.f64 (*.f64 x.re y.re) 2) (*.f64 x.im y.im)) (/.f64 (*.f64 x.re y.re) -2))
(-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 x.im (*.f64 y.im 2)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(-.f64 (-.f64 (/.f64 (*.f64 x.re y.re) 2) (*.f64 x.im y.im)) (+.f64 (-.f64 (*.f64 x.im y.im) (/.f64 (*.f64 x.re y.re) 2)) (neg.f64 (*.f64 x.im y.im))))
(-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 x.im (*.f64 y.im 2)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) (*.f64 x.im (*.f64 y.im 3)))
(-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im (+.f64 x.im x.im))) (*.f64 y.im (*.f64 3 x.im)))
(+.f64 (*.f64 x.im (-.f64 (+.f64 y.im y.im) (*.f64 y.im 3))) (*.f64 x.re y.re))
(-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) (+.f64 (*.f64 y.im (*.f64 x.im 4)) (neg.f64 (*.f64 x.im y.im))))
(-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) (*.f64 x.im (*.f64 y.im 3)))
(-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im (+.f64 x.im x.im))) (*.f64 y.im (*.f64 3 x.im)))
(+.f64 (*.f64 x.im (-.f64 (+.f64 y.im y.im) (*.f64 y.im 3))) (*.f64 x.re y.re))
(-.f64 (+.f64 (*.f64 x.re y.re) (/.f64 (*.f64 x.im y.im) 2)) (*.f64 3 (/.f64 (*.f64 x.im y.im) 2)))
(-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 x.im (*.f64 y.im 2)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(-.f64 (+.f64 (+.f64 (*.f64 x.re y.re) (*.f64 (*.f64 x.im y.im) -2)) (/.f64 (*.f64 x.im y.im) 2)) (/.f64 (*.f64 x.im y.im) -2))
(-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 x.im (*.f64 y.im 2)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(-.f64 (+.f64 (+.f64 (*.f64 x.re y.re) (*.f64 (*.f64 x.im y.im) -2)) (/.f64 (*.f64 x.im y.im) 2)) (+.f64 (*.f64 -3 (/.f64 (*.f64 x.im y.im) 2)) (*.f64 x.im y.im)))
(-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 x.im (*.f64 y.im 2)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(-.f64 (-.f64 (*.f64 x.re (+.f64 y.re y.re)) (neg.f64 (*.f64 x.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))))
(-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 x.im (*.f64 y.im 2)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(-.f64 (-.f64 (*.f64 x.re y.re) (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))) (-.f64 (neg.f64 (*.f64 x.re y.re)) (*.f64 x.im y.im)))
(-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 x.im (*.f64 y.im 2)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(-.f64 (-.f64 (*.f64 x.re y.re) (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))) (-.f64 (neg.f64 (*.f64 x.im y.im)) (*.f64 x.re y.re)))
(-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 x.im (*.f64 y.im 2)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(-.f64 (neg.f64 (*.f64 y.im (*.f64 x.im 4))) (+.f64 (neg.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))) (neg.f64 (*.f64 x.im y.im))))
(-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) (*.f64 x.im (*.f64 y.im 3)))
(-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im (+.f64 x.im x.im))) (*.f64 y.im (*.f64 3 x.im)))
(+.f64 (*.f64 x.im (-.f64 (+.f64 y.im y.im) (*.f64 y.im 3))) (*.f64 x.re y.re))
(-.f64 (+.f64 (*.f64 x.im y.im) (/.f64 (*.f64 x.re y.re) 2)) (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (/.f64 (*.f64 x.re y.re) 2)))
(-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 x.im (*.f64 y.im 2)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(-.f64 (+.f64 (*.f64 x.im y.im) (/.f64 (*.f64 x.re y.re) 2)) (+.f64 (/.f64 (*.f64 x.re y.re) -2) (*.f64 x.im (+.f64 y.im y.im))))
(-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 x.im (*.f64 y.im 2)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(-.f64 (+.f64 (*.f64 (*.f64 x.im y.im) -2) (/.f64 (*.f64 x.re y.re) 2)) (-.f64 (neg.f64 (*.f64 x.im y.im)) (/.f64 (*.f64 x.re y.re) 2)))
(-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 x.im (*.f64 y.im 2)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(-.f64 (+.f64 (*.f64 (*.f64 x.im y.im) -2) (/.f64 (*.f64 x.re y.re) 2)) (+.f64 (/.f64 (*.f64 x.re y.re) -2) (neg.f64 (*.f64 x.im y.im))))
(-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 x.im (*.f64 y.im 2)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(-.f64 (-.f64 (/.f64 (*.f64 x.im y.im) 2) (neg.f64 (*.f64 x.re y.re))) (*.f64 3 (/.f64 (*.f64 x.im y.im) 2)))
(-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 x.im (*.f64 y.im 2)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(-.f64 (*.f64 3 (/.f64 (*.f64 x.im y.im) 2)) (-.f64 (-.f64 (*.f64 x.im (*.f64 y.im 3)) (*.f64 x.re y.re)) (/.f64 (*.f64 x.im y.im) 2)))
(-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 x.im (*.f64 y.im 2)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(-.f64 (*.f64 3 (/.f64 (*.f64 x.im y.im) 2)) (+.f64 (-.f64 (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re y.re)) (/.f64 (*.f64 x.im y.im) 2)) (*.f64 x.im y.im)))
(-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 x.im (*.f64 y.im 2)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(-.f64 (-.f64 (/.f64 (*.f64 x.im y.im) 2) (*.f64 x.im (+.f64 y.im y.im))) (-.f64 (neg.f64 (*.f64 x.re y.re)) (/.f64 (*.f64 x.im y.im) 2)))
(-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 x.im (*.f64 y.im 2)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(-.f64 (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (/.f64 (*.f64 x.im y.im) 2)) (+.f64 (-.f64 (-.f64 (*.f64 x.im (*.f64 y.im 3)) (*.f64 x.re y.re)) (/.f64 (*.f64 x.im y.im) 2)) (*.f64 x.im y.im)))
(-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 x.im (*.f64 y.im 2)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(-.f64 (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (/.f64 (*.f64 x.im y.im) 2)) (-.f64 (-.f64 (*.f64 y.im (*.f64 x.im 4)) (*.f64 x.re y.re)) (/.f64 (*.f64 x.im y.im) 2)))
(-.f64 (/.f64 (*.f64 y.im x.im) 2) (-.f64 (-.f64 (*.f64 y.im (*.f64 x.im 4)) (*.f64 x.re y.re)) (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (/.f64 (*.f64 y.im x.im) 2))))
(-.f64 (/.f64 (*.f64 y.im x.im) 2) (-.f64 (-.f64 (*.f64 y.im (*.f64 x.im 4)) (*.f64 x.re y.re)) (+.f64 (*.f64 y.im (+.f64 x.im x.im)) (/.f64 (*.f64 y.im x.im) 2))))
(+.f64 (-.f64 (*.f64 (*.f64 y.im x.im) 5/2) (-.f64 (*.f64 x.im (*.f64 y.im 4)) (*.f64 x.re y.re))) (*.f64 (*.f64 y.im x.im) 1/2))
(-.f64 (+.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (/.f64 (*.f64 x.im y.im) 2)) (/.f64 (*.f64 x.im y.im) 2))
(-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 x.im (*.f64 y.im 2)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(-.f64 (+.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (/.f64 (*.f64 x.im y.im) 2)) (+.f64 (/.f64 (*.f64 x.im y.im) -2) (*.f64 x.im y.im)))
(-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 x.im (*.f64 y.im 2)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(-.f64 (+.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (/.f64 (*.f64 x.im y.im) 2)) (+.f64 (*.f64 3 (/.f64 (*.f64 x.im y.im) 2)) (*.f64 x.im y.im)))
(-.f64 (+.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (/.f64 (*.f64 y.im x.im) 2)) (+.f64 (*.f64 y.im x.im) (*.f64 (*.f64 y.im x.im) 3/2)))
(-.f64 (+.f64 (*.f64 x.re y.re) (+.f64 (*.f64 y.im x.im) (/.f64 (*.f64 y.im x.im) 2))) (+.f64 (*.f64 y.im x.im) (*.f64 (*.f64 y.im x.im) 3/2)))
(-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im (*.f64 x.im 3/2))) (*.f64 (*.f64 y.im x.im) 5/2))
(-.f64 (+.f64 (*.f64 x.re (+.f64 y.re y.re)) (/.f64 (*.f64 x.im y.im) 2)) (-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) (/.f64 (*.f64 x.im y.im) 2)))
(-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 x.im (*.f64 y.im 2)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(-.f64 (-.f64 (/.f64 (*.f64 x.im y.im) 2) (/.f64 (*.f64 x.re y.re) -2)) (-.f64 (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (/.f64 (*.f64 x.re y.re) 2)) (/.f64 (*.f64 x.im y.im) 2)))
(-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 x.im (*.f64 y.im 2)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(-.f64 (-.f64 (/.f64 (*.f64 x.im y.im) 2) (*.f64 x.im y.im)) (-.f64 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)) (/.f64 (*.f64 x.im y.im) 2)))
(-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 x.im (*.f64 y.im 2)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(-.f64 (-.f64 (*.f64 x.im y.im) (+.f64 (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re y.re)) (/.f64 (*.f64 x.im y.im) 2))) (-.f64 (/.f64 (*.f64 x.im y.im) 2) (*.f64 x.im y.im)))
(-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 x.im (*.f64 y.im 2)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 1)
(-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 x.im (*.f64 y.im 2)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(*.f64 1 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))
(-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 x.im (*.f64 y.im 2)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(*.f64 -1 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))
(-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 x.im (*.f64 y.im 2)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(*.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) 1/2)
(-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 x.im (*.f64 y.im 2)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(*.f64 1/2 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2))
(-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 x.im (*.f64 y.im 2)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(*.f64 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)) -1)
(-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 x.im (*.f64 y.im 2)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(*.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 4) 1/4)
(-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 x.im (*.f64 y.im 2)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(*.f64 1/4 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 4))
(-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 x.im (*.f64 y.im 2)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(*.f64 (*.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) 4) 1/8)
(-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 x.im (*.f64 y.im 2)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(/.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 1)
(-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 x.im (*.f64 y.im 2)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(/.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) 2)
(-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 x.im (*.f64 y.im 2)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(/.f64 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)) -1)
(-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 x.im (*.f64 y.im 2)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(/.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 4) 4)
(-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 x.im (*.f64 y.im 2)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(/.f64 (*.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) 4) 8)
(-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 x.im (*.f64 y.im 2)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(/.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) -2) -2)
(-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 x.im (*.f64 y.im 2)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(/.f64 (-.f64 (*.f64 x.re (*.f64 y.re 4)) (*.f64 y.im (*.f64 x.im 4))) 4)
(-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 x.im (*.f64 y.im 2)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(/.f64 (-.f64 (*.f64 x.re (*.f64 (+.f64 y.re y.re) 4)) (*.f64 (*.f64 x.im y.im) 8)) 8)
(-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 x.im (*.f64 y.im 2)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(/.f64 (-.f64 (*.f64 (*.f64 y.re 4) (*.f64 x.re 4)) (*.f64 (*.f64 y.im (*.f64 x.im 4)) 4)) 16)
(-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 x.im (*.f64 y.im 2)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(/.f64 (-.f64 (*.f64 y.im (*.f64 x.im 4)) (*.f64 2 (-.f64 (*.f64 x.im (*.f64 y.im 3)) (*.f64 x.re y.re)))) 2)
(/.f64 (-.f64 (*.f64 y.im (*.f64 x.im 4)) (*.f64 2 (-.f64 (*.f64 y.im (*.f64 3 x.im)) (*.f64 x.re y.re)))) 2)
(/.f64 (-.f64 (*.f64 x.im (*.f64 y.im 4)) (*.f64 2 (-.f64 (*.f64 x.im (*.f64 y.im 3)) (*.f64 x.re y.re)))) 2)
(/.f64 (-.f64 (-.f64 (*.f64 x.re (*.f64 y.re 4)) (*.f64 (*.f64 x.im y.im) 8)) (neg.f64 (*.f64 y.im (*.f64 x.im 4)))) 4)
(-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 x.im (*.f64 y.im 2)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(/.f64 (-.f64 (*.f64 y.im (*.f64 x.im 4)) (neg.f64 (-.f64 (*.f64 x.re (*.f64 y.re 4)) (*.f64 (*.f64 x.im y.im) 8)))) 4)
(-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 x.im (*.f64 y.im 2)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(/.f64 (-.f64 (*.f64 y.im (*.f64 x.im 4)) (-.f64 (*.f64 (*.f64 x.im y.im) 8) (*.f64 x.re (*.f64 y.re 4)))) 4)
(-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 x.im (*.f64 y.im 2)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(/.f64 (-.f64 (*.f64 2 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))) (*.f64 y.im (*.f64 x.im 4))) 2)
(/.f64 (-.f64 (*.f64 2 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))) (*.f64 y.im (*.f64 x.im 4))) 2)
(/.f64 (-.f64 (*.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) 4) (*.f64 y.im (*.f64 x.im 8))) 4)
(/.f64 (-.f64 (+.f64 (*.f64 y.im (*.f64 x.im 4)) (*.f64 x.re (*.f64 y.re 4))) (*.f64 (*.f64 x.im y.im) 8)) 4)
(-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 x.im (*.f64 y.im 2)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(pow.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 1)
(-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 x.im (*.f64 y.im 2)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(neg.f64 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))
(-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 x.im (*.f64 y.im 2)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(+.f64 (*.f64 x.re y.re) (*.f64 (*.f64 x.im y.im) -2))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (*.f64 y.im -2)))
(+.f64 (*.f64 x.re y.re) (*.f64 y.im (*.f64 x.im -2)))
(+.f64 (*.f64 x.re y.re) (-.f64 (*.f64 x.re y.re) (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (*.f64 y.im -2)))
(+.f64 (*.f64 x.re y.re) (*.f64 y.im (*.f64 x.im -2)))
(+.f64 (+.f64 (*.f64 x.re y.re) (*.f64 (*.f64 x.im y.im) -2)) 0)
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (*.f64 y.im -2)))
(+.f64 (*.f64 x.re y.re) (*.f64 y.im (*.f64 x.im -2)))
(+.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (neg.f64 (*.f64 x.im y.im)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (*.f64 y.im -2)))
(+.f64 (*.f64 x.re y.re) (*.f64 y.im (*.f64 x.im -2)))
(+.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (-.f64 (*.f64 x.re y.re) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (*.f64 y.im -2)))
(+.f64 (*.f64 x.re y.re) (*.f64 y.im (*.f64 x.im -2)))
(+.f64 0 (+.f64 (*.f64 x.re y.re) (*.f64 (*.f64 x.im y.im) -2)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (*.f64 y.im -2)))
(+.f64 (*.f64 x.re y.re) (*.f64 y.im (*.f64 x.im -2)))
(+.f64 0 (-.f64 (/.f64 (*.f64 x.im y.im) 2) (+.f64 (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re y.re)) (/.f64 (*.f64 x.im y.im) 2))))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (*.f64 y.im -2)))
(+.f64 (*.f64 x.re y.re) (*.f64 y.im (*.f64 x.im -2)))
(+.f64 (*.f64 (*.f64 x.im y.im) -2) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (*.f64 y.im -2)))
(+.f64 (*.f64 x.re y.re) (*.f64 y.im (*.f64 x.im -2)))
(+.f64 (neg.f64 (*.f64 x.im y.im)) (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (*.f64 y.im -2)))
(+.f64 (*.f64 x.re y.re) (*.f64 y.im (*.f64 x.im -2)))
(+.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) (neg.f64 (*.f64 x.re y.re)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (*.f64 y.im -2)))
(+.f64 (*.f64 x.re y.re) (*.f64 y.im (*.f64 x.im -2)))
(+.f64 (/.f64 (*.f64 x.im y.im) 2) (-.f64 (/.f64 (*.f64 x.im y.im) 2) (-.f64 (*.f64 x.im (*.f64 y.im 3)) (*.f64 x.re y.re))))
(+.f64 (/.f64 (*.f64 y.im x.im) 2) (-.f64 (/.f64 (*.f64 y.im x.im) 2) (-.f64 (*.f64 x.im (*.f64 y.im 3)) (*.f64 x.re y.re))))
(+.f64 (/.f64 (*.f64 y.im x.im) 2) (-.f64 (/.f64 (*.f64 y.im x.im) 2) (-.f64 (*.f64 y.im (*.f64 3 x.im)) (*.f64 x.re y.re))))
(+.f64 (*.f64 (*.f64 y.im x.im) 1/2) (-.f64 (*.f64 x.re y.re) (-.f64 (*.f64 x.im (*.f64 y.im 3)) (*.f64 (*.f64 y.im x.im) 1/2))))
(+.f64 (/.f64 (*.f64 x.re y.re) 2) (+.f64 (*.f64 (*.f64 x.im y.im) -2) (/.f64 (*.f64 x.re y.re) 2)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (*.f64 y.im -2)))
(+.f64 (*.f64 x.re y.re) (*.f64 y.im (*.f64 x.im -2)))
(+.f64 (/.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) (-.f64 (/.f64 (*.f64 x.re y.re) 2) (*.f64 3 (/.f64 (*.f64 x.im y.im) 2))))
(+.f64 (/.f64 (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) 2) (-.f64 (/.f64 (*.f64 x.re y.re) 2) (*.f64 (*.f64 y.im x.im) 3/2)))
(+.f64 (/.f64 (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) 2) (-.f64 (*.f64 (*.f64 x.re y.re) 1/2) (*.f64 y.im (*.f64 x.im 3/2))))
(+.f64 (neg.f64 (*.f64 x.re y.re)) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (*.f64 y.im -2)))
(+.f64 (*.f64 x.re y.re) (*.f64 y.im (*.f64 x.im -2)))
(+.f64 (-.f64 (/.f64 (*.f64 x.re y.re) 2) (*.f64 x.im y.im)) (-.f64 (/.f64 (*.f64 x.re y.re) 2) (*.f64 x.im y.im)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (*.f64 y.im -2)))
(+.f64 (*.f64 x.re y.re) (*.f64 y.im (*.f64 x.im -2)))
(+.f64 (+.f64 (+.f64 (*.f64 x.re y.re) (*.f64 (*.f64 x.im y.im) -2)) (/.f64 (*.f64 x.im y.im) 2)) (-.f64 (/.f64 (*.f64 x.im y.im) 2) (*.f64 x.im y.im)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (*.f64 y.im -2)))
(+.f64 (*.f64 x.re y.re) (*.f64 y.im (*.f64 x.im -2)))
(+.f64 (-.f64 (*.f64 x.re y.re) (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (*.f64 y.im -2)))
(+.f64 (*.f64 x.re y.re) (*.f64 y.im (*.f64 x.im -2)))
(+.f64 (/.f64 (*.f64 x.im y.im) -2) (-.f64 (/.f64 (*.f64 x.im y.im) -2) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re))))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (*.f64 y.im -2)))
(+.f64 (*.f64 x.re y.re) (*.f64 y.im (*.f64 x.im -2)))
(+.f64 (+.f64 (*.f64 (*.f64 x.im y.im) -2) (/.f64 (*.f64 x.re y.re) 2)) (/.f64 (*.f64 x.re y.re) 2))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (*.f64 y.im -2)))
(+.f64 (*.f64 x.re y.re) (*.f64 y.im (*.f64 x.im -2)))
(+.f64 (-.f64 (/.f64 (*.f64 x.im y.im) -2) (neg.f64 (*.f64 x.im y.im))) (-.f64 (/.f64 (*.f64 x.im y.im) -2) (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re y.re))))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (*.f64 y.im -2)))
(+.f64 (*.f64 x.re y.re) (*.f64 y.im (*.f64 x.im -2)))
(+.f64 (-.f64 (*.f64 x.re y.re) (/.f64 (*.f64 x.re y.re) 2)) (-.f64 (*.f64 x.re y.re) (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (/.f64 (*.f64 x.re y.re) 2))))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (*.f64 y.im -2)))
(+.f64 (*.f64 x.re y.re) (*.f64 y.im (*.f64 x.im -2)))
(+.f64 (-.f64 (/.f64 (*.f64 x.re y.re) 2) (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))) (-.f64 (/.f64 (*.f64 x.re y.re) 2) (neg.f64 (*.f64 x.re y.re))))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (*.f64 y.im -2)))
(+.f64 (*.f64 x.re y.re) (*.f64 y.im (*.f64 x.im -2)))
(+.f64 (-.f64 (/.f64 (*.f64 x.im y.im) -2) (*.f64 x.im (+.f64 y.im y.im))) (-.f64 (/.f64 (*.f64 x.im y.im) -2) (-.f64 (neg.f64 (*.f64 x.re y.re)) (*.f64 x.im y.im))))
(+.f64 (-.f64 (/.f64 (*.f64 y.im x.im) -2) (*.f64 x.im (+.f64 y.im y.im))) (-.f64 (/.f64 (*.f64 y.im x.im) -2) (-.f64 (neg.f64 (*.f64 x.re y.re)) (*.f64 y.im x.im))))
(+.f64 (-.f64 (/.f64 (*.f64 y.im x.im) -2) (*.f64 y.im (+.f64 x.im x.im))) (-.f64 (*.f64 y.im x.im) (-.f64 (*.f64 (*.f64 y.im x.im) 1/2) (*.f64 x.re y.re))))
(+.f64 (+.f64 (*.f64 x.re y.re) (*.f64 (*.f64 y.im x.im) 1/2)) (*.f64 5 (*.f64 (*.f64 y.im x.im) -1/2)))
(+.f64 (-.f64 (neg.f64 (*.f64 x.im y.im)) (/.f64 (*.f64 x.re y.re) -2)) (-.f64 (neg.f64 (*.f64 x.im y.im)) (/.f64 (*.f64 x.re y.re) -2)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (*.f64 y.im -2)))
(+.f64 (*.f64 x.re y.re) (*.f64 y.im (*.f64 x.im -2)))
(+.f64 (-.f64 (/.f64 (*.f64 x.im y.im) -2) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re))) (/.f64 (*.f64 x.im y.im) -2))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (*.f64 y.im -2)))
(+.f64 (*.f64 x.re y.re) (*.f64 y.im (*.f64 x.im -2)))
(+.f64 (-.f64 (/.f64 (*.f64 x.im y.im) -2) (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re y.re))) (-.f64 (/.f64 (*.f64 x.im y.im) -2) (neg.f64 (*.f64 x.im y.im))))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (*.f64 y.im -2)))
(+.f64 (*.f64 x.re y.re) (*.f64 y.im (*.f64 x.im -2)))
(+.f64 (-.f64 (/.f64 (*.f64 x.im y.im) 2) (*.f64 x.im y.im)) (+.f64 (+.f64 (*.f64 x.re y.re) (*.f64 (*.f64 x.im y.im) -2)) (/.f64 (*.f64 x.im y.im) 2)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (*.f64 y.im -2)))
(+.f64 (*.f64 x.re y.re) (*.f64 y.im (*.f64 x.im -2)))
(+.f64 (-.f64 (/.f64 (*.f64 x.im y.im) -2) (neg.f64 (*.f64 x.re y.re))) (*.f64 -3 (/.f64 (*.f64 x.im y.im) 2)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (*.f64 y.im -2)))
(+.f64 (*.f64 x.re y.re) (*.f64 y.im (*.f64 x.im -2)))
(+.f64 (-.f64 (/.f64 (*.f64 x.im y.im) -2) (-.f64 (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re y.re)) (/.f64 (*.f64 x.im y.im) 2))) (-.f64 (/.f64 (*.f64 x.im y.im) -2) (/.f64 (*.f64 x.im y.im) -2)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (*.f64 y.im -2)))
(+.f64 (*.f64 x.re y.re) (*.f64 y.im (*.f64 x.im -2)))
(+.f64 (-.f64 (/.f64 (*.f64 x.im y.im) -2) (-.f64 -1 (+.f64 (*.f64 x.re y.re) (*.f64 (*.f64 x.im y.im) -2)))) (-.f64 (/.f64 (*.f64 x.im y.im) -2) (-.f64 1 (*.f64 x.im y.im))))
(+.f64 (-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im (*.f64 y.im -2))) (-.f64 -1 (/.f64 (*.f64 y.im x.im) -2))) (-.f64 (*.f64 y.im x.im) (-.f64 1 (/.f64 (*.f64 y.im x.im) -2))))
(+.f64 (-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im (*.f64 x.im -2))) (-.f64 -1 (/.f64 (*.f64 y.im x.im) -2))) (-.f64 (*.f64 y.im x.im) (-.f64 1 (/.f64 (*.f64 y.im x.im) -2))))
(+.f64 (-.f64 (+.f64 (*.f64 x.re y.re) 1) (*.f64 (*.f64 y.im x.im) 5/2)) (-.f64 (*.f64 y.im x.im) (-.f64 1 (*.f64 (*.f64 y.im x.im) -1/2))))
(+.f64 (-.f64 (/.f64 (*.f64 x.im y.im) -2) (-.f64 -1 (*.f64 x.im y.im))) (-.f64 (/.f64 (*.f64 x.im y.im) -2) (-.f64 1 (+.f64 (*.f64 x.re y.re) (*.f64 (*.f64 x.im y.im) -2)))))
(+.f64 (-.f64 (*.f64 y.im x.im) (-.f64 -1 (/.f64 (*.f64 y.im x.im) -2))) (-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im (*.f64 y.im -2))) (-.f64 1 (/.f64 (*.f64 y.im x.im) -2))))
(+.f64 (-.f64 (*.f64 y.im x.im) (-.f64 -1 (/.f64 (*.f64 y.im x.im) -2))) (-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im (*.f64 x.im -2))) (-.f64 1 (/.f64 (*.f64 y.im x.im) -2))))
(+.f64 (-.f64 (*.f64 (*.f64 y.im x.im) -1/2) (-.f64 -1 (*.f64 y.im x.im))) (-.f64 (+.f64 (*.f64 x.re y.re) -1) (*.f64 (*.f64 y.im x.im) 5/2)))
(*.f64 (+.f64 (*.f64 x.re y.re) (*.f64 (*.f64 x.im y.im) -2)) 1)
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (*.f64 y.im -2)))
(+.f64 (*.f64 x.re y.re) (*.f64 y.im (*.f64 x.im -2)))
(*.f64 1 (+.f64 (*.f64 x.re y.re) (*.f64 (*.f64 x.im y.im) -2)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (*.f64 y.im -2)))
(+.f64 (*.f64 x.re y.re) (*.f64 y.im (*.f64 x.im -2)))
(*.f64 (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re y.re)) -1)
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (*.f64 y.im -2)))
(+.f64 (*.f64 x.re y.re) (*.f64 y.im (*.f64 x.im -2)))
(*.f64 -1 (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re y.re)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (*.f64 y.im -2)))
(+.f64 (*.f64 x.re y.re) (*.f64 y.im (*.f64 x.im -2)))
(*.f64 (-.f64 (*.f64 x.re (+.f64 y.re y.re)) (*.f64 y.im (*.f64 x.im 4))) 1/2)
(*.f64 1/2 (+.f64 (*.f64 2 (*.f64 x.re y.re)) (*.f64 (*.f64 y.im x.im) -4)))
(*.f64 1/2 (-.f64 (*.f64 x.re (+.f64 y.re y.re)) (*.f64 y.im (*.f64 x.im 4))))
(*.f64 (-.f64 (*.f64 x.re (+.f64 y.re y.re)) (*.f64 y.im (*.f64 x.im 4))) 1/2)
(*.f64 1/2 (+.f64 (*.f64 2 (*.f64 x.re y.re)) (*.f64 (*.f64 y.im x.im) -4)))
(*.f64 1/2 (-.f64 (*.f64 x.re (*.f64 y.re 4)) (+.f64 (*.f64 x.re (+.f64 y.re y.re)) (*.f64 y.im (*.f64 x.im 4)))))
(*.f64 1/2 (+.f64 (neg.f64 (*.f64 y.im (*.f64 x.im 4))) (*.f64 x.re (-.f64 (*.f64 y.re 4) (+.f64 y.re y.re)))))
(*.f64 1/2 (+.f64 (*.f64 (*.f64 y.im x.im) -4) (*.f64 x.re (-.f64 (*.f64 y.re 4) (+.f64 y.re y.re)))))
(*.f64 (-.f64 (*.f64 x.re (*.f64 y.re 4)) (*.f64 (*.f64 x.im y.im) 8)) 1/4)
(*.f64 1/4 (-.f64 (*.f64 x.re (*.f64 y.re 4)) (*.f64 (*.f64 y.im x.im) 8)))
(*.f64 1/4 (-.f64 (*.f64 x.re (*.f64 y.re 4)) (*.f64 x.im (*.f64 y.im 8))))
(*.f64 1/4 (-.f64 (*.f64 x.re (*.f64 y.re 4)) (*.f64 y.im (*.f64 x.im 8))))
(*.f64 (-.f64 (*.f64 y.im (*.f64 x.im 4)) (*.f64 x.re (+.f64 y.re y.re))) -1/2)
(*.f64 (-.f64 (*.f64 x.im (*.f64 y.im 4)) (*.f64 2 (*.f64 x.re y.re))) -1/2)
(*.f64 1/4 (-.f64 (*.f64 x.re (*.f64 y.re 4)) (*.f64 (*.f64 x.im y.im) 8)))
(*.f64 1/4 (-.f64 (*.f64 x.re (*.f64 y.re 4)) (*.f64 (*.f64 y.im x.im) 8)))
(*.f64 1/4 (-.f64 (*.f64 x.re (*.f64 y.re 4)) (*.f64 x.im (*.f64 y.im 8))))
(*.f64 1/4 (-.f64 (*.f64 x.re (*.f64 y.re 4)) (*.f64 y.im (*.f64 x.im 8))))
(*.f64 (*.f64 2 (-.f64 (*.f64 x.re (*.f64 y.re 4)) (*.f64 (*.f64 x.im y.im) 8))) 1/8)
(*.f64 1/4 (-.f64 (*.f64 x.re (*.f64 y.re 4)) (*.f64 (*.f64 y.im x.im) 8)))
(*.f64 1/4 (-.f64 (*.f64 x.re (*.f64 y.re 4)) (*.f64 x.im (*.f64 y.im 8))))
(*.f64 1/4 (-.f64 (*.f64 x.re (*.f64 y.re 4)) (*.f64 y.im (*.f64 x.im 8))))
(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 (*.f64 x.im y.im) -2)) 1)
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (*.f64 y.im -2)))
(+.f64 (*.f64 x.re y.re) (*.f64 y.im (*.f64 x.im -2)))
(/.f64 (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re y.re)) -1)
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (*.f64 y.im -2)))
(+.f64 (*.f64 x.re y.re) (*.f64 y.im (*.f64 x.im -2)))
(/.f64 (-.f64 (*.f64 x.re (+.f64 y.re y.re)) (*.f64 y.im (*.f64 x.im 4))) 2)
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (*.f64 y.im -2)))
(+.f64 (*.f64 x.re y.re) (*.f64 y.im (*.f64 x.im -2)))
(/.f64 (-.f64 (*.f64 x.re (*.f64 y.re 4)) (*.f64 (*.f64 x.im y.im) 8)) 4)
(/.f64 (-.f64 (*.f64 x.re (*.f64 y.re 4)) (*.f64 (*.f64 y.im x.im) 8)) 4)
(/.f64 (-.f64 (*.f64 x.re (*.f64 y.re 4)) (*.f64 x.im (*.f64 y.im 8))) 4)
(-.f64 (*.f64 x.im (*.f64 y.im -2)) (/.f64 (*.f64 x.re (*.f64 y.re 4)) -4))
(/.f64 (-.f64 (*.f64 y.im (*.f64 x.im 4)) (*.f64 x.re (+.f64 y.re y.re))) -2)
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (*.f64 y.im -2)))
(+.f64 (*.f64 x.re y.re) (*.f64 y.im (*.f64 x.im -2)))
(/.f64 (neg.f64 (-.f64 (*.f64 x.re (*.f64 y.re 4)) (*.f64 (*.f64 x.im y.im) 8))) -4)
(/.f64 (-.f64 (*.f64 x.re (*.f64 y.re 4)) (*.f64 (*.f64 y.im x.im) 8)) 4)
(/.f64 (-.f64 (*.f64 x.re (*.f64 y.re 4)) (*.f64 x.im (*.f64 y.im 8))) 4)
(-.f64 (*.f64 x.im (*.f64 y.im -2)) (/.f64 (*.f64 x.re (*.f64 y.re 4)) -4))
(/.f64 (-.f64 (*.f64 (*.f64 x.im y.im) 8) (*.f64 x.re (*.f64 y.re 4))) -4)
(/.f64 (-.f64 (*.f64 x.re (*.f64 y.re 4)) (*.f64 (*.f64 y.im x.im) 8)) 4)
(/.f64 (-.f64 (*.f64 x.re (*.f64 y.re 4)) (*.f64 x.im (*.f64 y.im 8))) 4)
(-.f64 (*.f64 x.im (*.f64 y.im -2)) (/.f64 (*.f64 x.re (*.f64 y.re 4)) -4))
(/.f64 (*.f64 2 (-.f64 (*.f64 x.re (*.f64 y.re 4)) (*.f64 (*.f64 x.im y.im) 8))) 8)
(/.f64 (*.f64 2 (-.f64 (*.f64 x.re (*.f64 y.re 4)) (*.f64 (*.f64 y.im x.im) 8))) 8)
(/.f64 (*.f64 2 (-.f64 (*.f64 x.re (*.f64 y.re 4)) (*.f64 x.im (*.f64 y.im 8)))) 8)
(/.f64 (-.f64 (*.f64 x.re (*.f64 y.re 16)) (*.f64 (*.f64 y.im x.im) 32)) 16)
(/.f64 (/.f64 (neg.f64 (-.f64 (*.f64 x.re (*.f64 y.re 4)) (*.f64 (*.f64 x.im y.im) 8))) -1) 4)
(/.f64 (-.f64 (*.f64 x.re (*.f64 y.re 4)) (*.f64 (*.f64 y.im x.im) 8)) 4)
(/.f64 (-.f64 (*.f64 x.re (*.f64 y.re 4)) (*.f64 x.im (*.f64 y.im 8))) 4)
(-.f64 (*.f64 x.im (*.f64 y.im -2)) (/.f64 (*.f64 x.re (*.f64 y.re 4)) -4))
(/.f64 (/.f64 (-.f64 (*.f64 (*.f64 x.im y.im) 8) (*.f64 x.re (*.f64 y.re 4))) -1) 4)
(/.f64 (-.f64 (*.f64 x.re (*.f64 y.re 4)) (*.f64 (*.f64 y.im x.im) 8)) 4)
(/.f64 (-.f64 (*.f64 x.re (*.f64 y.re 4)) (*.f64 x.im (*.f64 y.im 8))) 4)
(-.f64 (*.f64 x.im (*.f64 y.im -2)) (/.f64 (*.f64 x.re (*.f64 y.re 4)) -4))
(/.f64 (-.f64 (*.f64 x.re (*.f64 y.re 4)) (+.f64 (*.f64 x.re (+.f64 y.re y.re)) (*.f64 y.im (*.f64 x.im 4)))) 2)
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (*.f64 y.im -2)))
(+.f64 (*.f64 x.re y.re) (*.f64 y.im (*.f64 x.im -2)))
(/.f64 (-.f64 (*.f64 x.re (*.f64 (+.f64 y.re y.re) 4)) (*.f64 (*.f64 y.im (*.f64 x.im 4)) 4)) 8)
(/.f64 (-.f64 (*.f64 x.re (*.f64 y.re 4)) (*.f64 (*.f64 y.im x.im) 8)) 4)
(/.f64 (-.f64 (*.f64 x.re (*.f64 y.re 4)) (*.f64 x.im (*.f64 y.im 8))) 4)
(-.f64 (*.f64 x.im (*.f64 y.im -2)) (/.f64 (*.f64 x.re (*.f64 y.re 4)) -4))
(/.f64 (-.f64 (*.f64 (*.f64 y.re 4) (*.f64 x.re 4)) (*.f64 (*.f64 x.im 4) (*.f64 (+.f64 y.im y.im) 4))) 16)
(/.f64 (*.f64 2 (-.f64 (*.f64 x.re (*.f64 y.re 4)) (*.f64 (*.f64 y.im x.im) 8))) 8)
(/.f64 (*.f64 2 (-.f64 (*.f64 x.re (*.f64 y.re 4)) (*.f64 x.im (*.f64 y.im 8)))) 8)
(/.f64 (-.f64 (*.f64 x.re (*.f64 y.re 16)) (*.f64 (*.f64 y.im x.im) 32)) 16)
(/.f64 (-.f64 (neg.f64 (*.f64 y.im (*.f64 x.im 4))) (neg.f64 (*.f64 x.re (+.f64 y.re y.re)))) 2)
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (*.f64 y.im -2)))
(+.f64 (*.f64 x.re y.re) (*.f64 y.im (*.f64 x.im -2)))
(/.f64 (-.f64 (neg.f64 (*.f64 (*.f64 x.im y.im) 8)) (neg.f64 (*.f64 x.re (*.f64 y.re 4)))) 4)
(/.f64 (-.f64 (*.f64 x.re (*.f64 y.re 4)) (*.f64 (*.f64 y.im x.im) 8)) 4)
(/.f64 (-.f64 (*.f64 x.re (*.f64 y.re 4)) (*.f64 x.im (*.f64 y.im 8))) 4)
(-.f64 (*.f64 x.im (*.f64 y.im -2)) (/.f64 (*.f64 x.re (*.f64 y.re 4)) -4))
(/.f64 (-.f64 (*.f64 x.re (*.f64 (+.f64 y.re y.re) 4)) (+.f64 (*.f64 x.re (*.f64 y.re 4)) (*.f64 (*.f64 x.im y.im) 8))) 4)
(/.f64 (-.f64 (*.f64 x.re (*.f64 y.re 4)) (*.f64 (*.f64 y.im x.im) 8)) 4)
(/.f64 (-.f64 (*.f64 x.re (*.f64 y.re 4)) (*.f64 x.im (*.f64 y.im 8))) 4)
(-.f64 (*.f64 x.im (*.f64 y.im -2)) (/.f64 (*.f64 x.re (*.f64 y.re 4)) -4))
(/.f64 (-.f64 (+.f64 (*.f64 x.re (+.f64 y.re y.re)) (*.f64 y.im (*.f64 x.im 4))) (*.f64 (*.f64 x.im y.im) 8)) 2)
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (*.f64 y.im -2)))
(+.f64 (*.f64 x.re y.re) (*.f64 y.im (*.f64 x.im -2)))
(/.f64 (-.f64 (+.f64 (*.f64 x.re (*.f64 y.re 4)) (*.f64 (*.f64 x.im y.im) 8)) (*.f64 (*.f64 y.im (*.f64 x.im 4)) 4)) 4)
(/.f64 (-.f64 (*.f64 x.re (*.f64 y.re 4)) (*.f64 (*.f64 y.im x.im) 8)) 4)
(/.f64 (-.f64 (*.f64 x.re (*.f64 y.re 4)) (*.f64 x.im (*.f64 y.im 8))) 4)
(-.f64 (*.f64 x.im (*.f64 y.im -2)) (/.f64 (*.f64 x.re (*.f64 y.re 4)) -4))
(pow.f64 (+.f64 (*.f64 x.re y.re) (*.f64 (*.f64 x.im y.im) -2)) 1)
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (*.f64 y.im -2)))
(+.f64 (*.f64 x.re y.re) (*.f64 y.im (*.f64 x.im -2)))
(neg.f64 (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re y.re)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (*.f64 y.im -2)))
(+.f64 (*.f64 x.re y.re) (*.f64 y.im (*.f64 x.im -2)))

eval159.0ms (1.6%)

Compiler

Compiled 3810 to 1525 computations (60% saved)

prune179.0ms (1.9%)

Pruning

4 alts after pruning (0 fresh and 4 done)

PrunedKeptTotal
New2050205
Fresh000
Picked011
Done033
Total2054209
Error
0b
Counts
209 → 4
Alt Table
Click to see full alt table
StatusErrorProgram
0.0b
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
0.0b
(+.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) (*.f64 x.im y.im))
32.5b
(*.f64 y.im (neg.f64 x.im))
29.3b
(*.f64 x.re y.re)
Compiler

Compiled 43 to 28 computations (34.9% saved)

regimes136.0ms (1.4%)

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

7 calls:

32.0ms
y.im
31.0ms
(*.f64 x.re y.re)
28.0ms
x.im
20.0ms
x.re
9.0ms
y.re
Results
ErrorSegmentsBranch
0.0b1x.re
0.0b1x.im
0.0b1y.re
0.0b1y.im
0.0b1(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
0.0b1(*.f64 x.re y.re)
0.0b1(*.f64 x.im y.im)
Compiler

Compiled 76 to 46 computations (39.5% saved)

regimes278.0ms (2.9%)

Accuracy

Total -46.6b remaining (-340.6%)

Threshold costs -46.6b (-340.6%)

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

5 calls:

75.0ms
y.re
63.0ms
x.re
57.0ms
(*.f64 x.re y.re)
52.0ms
y.im
30.0ms
x.im
Results
ErrorSegmentsBranch
15.9b3x.re
20.6b3x.im
18.3b5y.re
19.2b3y.im
13.7b3(*.f64 x.re y.re)
Compiler

Compiled 38 to 28 computations (26.3% saved)

bsearch66.0ms (0.7%)

Algorithm
binary-search
Steps
TimeLeftRight
28.0ms
4.992547338611426e-16
1.5722493176695017e-15
38.0ms
-7.475263263358008e-51
-5.207440310608143e-57
Results
62.0ms224×body256valid
Compiler

Compiled 228 to 181 computations (20.6% saved)

simplify4.0ms (0%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02181
Stop Event
done
saturated
Calls
Call 1
Inputs
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
(if (<=.f64 (*.f64 x.re y.re) -4693187515817583/55213970774324510299478046898216203619608871777363092441300193790394368) (*.f64 x.re y.re) (if (<=.f64 (*.f64 x.re y.re) 2535301200456459/5070602400912917605986812821504) (*.f64 y.im (neg.f64 x.im)) (*.f64 x.re y.re)))
(*.f64 x.re y.re)
Outputs
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
(if (<=.f64 (*.f64 x.re y.re) -4693187515817583/55213970774324510299478046898216203619608871777363092441300193790394368) (*.f64 x.re y.re) (if (<=.f64 (*.f64 x.re y.re) 2535301200456459/5070602400912917605986812821504) (*.f64 y.im (neg.f64 x.im)) (*.f64 x.re y.re)))
(*.f64 x.re y.re)
Compiler

Compiled 44 to 25 computations (43.2% saved)

soundness0.0ms (0%)

end86.0ms (0.9%)

Remove

(sort x.im y.im)

(sort x.re y.re)

Compiler

Compiled 80 to 43 computations (46.3% saved)

Profiling

Loading profile data...