_multiplyComplex, real part

Time bar (total: 4.0s)

analyze0.0ms (0%)

Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%99.8%0.2%0%0%0%0
100%99.8%0%0.2%0%0%0%1
Compiler

Compiled 12 to 8 computations (33.3% saved)

Precisions
Click to see histograms. Total time spent on operations: 0.0ms
ival-sub: 0.0ms (0% of total)
ival-mult: 0.0ms (0% of total)
const: 0.0ms (0% of total)
backward-pass: 0.0ms (0% of total)

sample857.0ms (21.3%)

Results
607.0ms8256×0valid
Precisions
Click to see histograms. Total time spent on operations: 244.0ms
ival-mult: 182.0ms (74.7% of total)
ival-sub: 51.0ms (20.9% of total)
const: 8.0ms (3.3% of total)
backward-pass: 3.0ms (1.2% of total)
Bogosity

preprocess69.0ms (1.7%)

Algorithm
egg-herbie
Rules
778×fnmadd-define
650×fmsub-define
640×fnmsub-define
576×sum4-define
560×fma-define
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
03798
113190
224390
352290
4139290
5259090
6290690
7293090
076
1166
2326
3516
4816
51566
62966
75186
88356
911986
1013726
1113946
013946
Stop Event
iter limit
saturated
saturated
Calls
Call 1
Inputs
(- (* x.re y.re) (* x.im y.im))
Outputs
(- (* x.re y.re) (* x.im y.im))
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
Call 2
Inputs
(- (* x.re y.re) (* x.im y.im))
(- (* (neg x.re) y.re) (* x.im y.im))
(- (* x.re y.re) (* (neg x.im) y.im))
(- (* x.re (neg y.re)) (* x.im y.im))
(- (* x.re y.re) (* x.im (neg y.im)))
(neg (- (* (neg x.re) y.re) (* x.im y.im)))
(neg (- (* x.re y.re) (* (neg x.im) y.im)))
(neg (- (* x.re (neg y.re)) (* x.im y.im)))
(neg (- (* x.re y.re) (* x.im (neg y.im))))
(- (* x.im y.re) (* x.re y.im))
(- (* y.re x.re) (* x.im y.im))
(- (* y.im y.re) (* x.im x.re))
(- (* x.re x.im) (* y.re y.im))
(- (* x.re y.re) (* y.im x.im))
(- (* x.re y.im) (* x.im y.re))
Outputs
(- (* x.re y.re) (* x.im y.im))
(fmsub x.re y.re (* x.im y.im))
(- (* (neg x.re) y.re) (* x.im y.im))
(fnmsub x.re y.re (* x.im y.im))
(- (* x.re y.re) (* (neg x.im) y.im))
(fma x.re y.re (* x.im y.im))
(- (* x.re (neg y.re)) (* x.im y.im))
(fnmsub x.re y.re (* x.im y.im))
(- (* x.re y.re) (* x.im (neg y.im)))
(fma x.re y.re (* x.im y.im))
(neg (- (* (neg x.re) y.re) (* x.im y.im)))
(fma x.re y.re (* x.im y.im))
(neg (- (* x.re y.re) (* (neg x.im) y.im)))
(fnmsub x.re y.re (* x.im y.im))
(neg (- (* x.re (neg y.re)) (* x.im y.im)))
(fma x.re y.re (* x.im y.im))
(neg (- (* x.re y.re) (* x.im (neg y.im))))
(fnmsub x.re y.re (* x.im y.im))
(- (* x.im y.re) (* x.re y.im))
(fmsub y.re x.im (* x.re y.im))
(- (* y.re x.re) (* x.im y.im))
(fmsub x.re y.re (* x.im y.im))
(- (* y.im y.re) (* x.im x.re))
(fmsub y.re y.im (* x.re x.im))
(- (* x.re x.im) (* y.re y.im))
(fmsub x.re x.im (* y.re y.im))
(- (* x.re y.re) (* y.im x.im))
(fmsub x.re y.re (* x.im y.im))
(- (* x.re y.im) (* x.im y.re))
(fmsub x.re y.im (* y.re x.im))
Symmetry

(sort x.re y.re)

(sort x.im y.im)

explain87.0ms (2.2%)

FPErrors
Click to see full error table
Ground TruthOverpredictionsExampleUnderpredictionsExampleSubexpression
00-0-x.im
00-0-(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
00-0-(*.f64 x.re y.re)
00-0-(*.f64 x.im y.im)
00-0-y.im
00-0-y.re
00-0-x.re
Results
54.0ms512×0valid
Compiler

Compiled 55 to 23 computations (58.2% saved)

Precisions
Click to see histograms. Total time spent on operations: 14.0ms
ival-mult: 11.0ms (79.4% of total)
ival-sub: 3.0ms (21.6% of total)
const: 0.0ms (0% of total)
backward-pass: 0.0ms (0% of total)

eval0.0ms (0%)

Compiler

Compiled 11 to 7 computations (36.4% saved)

prune1.0ms (0%)

Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
Compiler

Compiled 11 to 7 computations (36.4% saved)

simplify34.0ms (0.9%)

Algorithm
egg-herbie
Localize:

Found 3 expressions of interest:

NewMetricScoreProgram
cost-diff0
(*.f64 x.im y.im)
cost-diff0
(*.f64 x.re y.re)
cost-diff0
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
Rules
420×fnmadd-define
342×fma-define
294×sum3-define
240×sum4-define
232×fma-lowering-fma.f32
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0716
11616
23216
35116
48116
515616
629616
751816
883516
9119816
10137216
11139416
0139416
Stop Event
iter limit
saturated
Calls
Call 1
Inputs
(- (* x.re y.re) (* x.im y.im))
(* x.re y.re)
x.re
y.re
(* x.im y.im)
x.im
y.im
Outputs
(- (* x.re y.re) (* x.im y.im))
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
(* x.re y.re)
(*.f64 x.re y.re)
x.re
y.re
(* x.im y.im)
(*.f64 x.im y.im)
x.im
y.im

localize53.0ms (1.3%)

Localize:

Found 3 expressions of interest:

NewMetricScoreProgram
accuracy100.0%
(*.f64 x.re y.re)
accuracy100.0%
(*.f64 x.im y.im)
accuracy100.0%
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
Results
46.0ms256×0valid
Compiler

Compiled 22 to 8 computations (63.6% saved)

Precisions
Click to see histograms. Total time spent on operations: 6.0ms
ival-mult: 4.0ms (69.8% of total)
ival-sub: 1.0ms (17.4% of total)
const: 0.0ms (0% of total)
backward-pass: 0.0ms (0% of total)

series6.0ms (0.2%)

Counts
3 → 96
Calls
Call 1
Inputs
#<alt (- (* x.re y.re) (* x.im y.im))>
#<alt (* x.re y.re)>
#<alt (* x.im y.im)>
Outputs
#<alt (* -1 (* x.im y.im))>
#<alt (- (* x.re y.re) (* x.im y.im))>
#<alt (- (* x.re y.re) (* x.im y.im))>
#<alt (- (* x.re y.re) (* x.im y.im))>
#<alt (* x.re y.re)>
#<alt (* x.re (+ y.re (* -1 (/ (* x.im y.im) x.re))))>
#<alt (* x.re (+ y.re (* -1 (/ (* x.im y.im) x.re))))>
#<alt (* x.re (+ y.re (* -1 (/ (* x.im y.im) x.re))))>
#<alt (* x.re y.re)>
#<alt (* -1 (* x.re (+ (* -1 y.re) (/ (* x.im y.im) x.re))))>
#<alt (* -1 (* x.re (+ (* -1 y.re) (/ (* x.im y.im) x.re))))>
#<alt (* -1 (* x.re (+ (* -1 y.re) (/ (* x.im y.im) x.re))))>
#<alt (* -1 (* x.im y.im))>
#<alt (- (* x.re y.re) (* x.im y.im))>
#<alt (- (* x.re y.re) (* x.im y.im))>
#<alt (- (* x.re y.re) (* x.im y.im))>
#<alt (* x.re y.re)>
#<alt (* y.re (+ x.re (* -1 (/ (* x.im y.im) y.re))))>
#<alt (* y.re (+ x.re (* -1 (/ (* x.im y.im) y.re))))>
#<alt (* y.re (+ x.re (* -1 (/ (* x.im y.im) y.re))))>
#<alt (* x.re y.re)>
#<alt (* -1 (* y.re (+ (* -1 x.re) (/ (* x.im y.im) y.re))))>
#<alt (* -1 (* y.re (+ (* -1 x.re) (/ (* x.im y.im) y.re))))>
#<alt (* -1 (* y.re (+ (* -1 x.re) (/ (* x.im y.im) y.re))))>
#<alt (* x.re y.re)>
#<alt (+ (* -1 (* x.im y.im)) (* x.re y.re))>
#<alt (+ (* -1 (* x.im y.im)) (* x.re y.re))>
#<alt (+ (* -1 (* x.im y.im)) (* x.re y.re))>
#<alt (* -1 (* x.im y.im))>
#<alt (* x.im (- (/ (* x.re y.re) x.im) y.im))>
#<alt (* x.im (- (/ (* x.re y.re) x.im) y.im))>
#<alt (* x.im (- (/ (* x.re y.re) x.im) y.im))>
#<alt (* -1 (* x.im y.im))>
#<alt (* -1 (* x.im (- (* -1 (/ (* x.re y.re) x.im)) (* -1 y.im))))>
#<alt (* -1 (* x.im (- (* -1 (/ (* x.re y.re) x.im)) (* -1 y.im))))>
#<alt (* -1 (* x.im (- (* -1 (/ (* x.re y.re) x.im)) (* -1 y.im))))>
#<alt (* x.re y.re)>
#<alt (+ (* -1 (* x.im y.im)) (* x.re y.re))>
#<alt (+ (* -1 (* x.im y.im)) (* x.re y.re))>
#<alt (+ (* -1 (* x.im y.im)) (* x.re y.re))>
#<alt (* -1 (* x.im y.im))>
#<alt (* y.im (- (/ (* x.re y.re) y.im) x.im))>
#<alt (* y.im (- (/ (* x.re y.re) y.im) x.im))>
#<alt (* y.im (- (/ (* x.re y.re) y.im) x.im))>
#<alt (* -1 (* x.im y.im))>
#<alt (* -1 (* y.im (- (* -1 (/ (* x.re y.re) y.im)) (* -1 x.im))))>
#<alt (* -1 (* y.im (- (* -1 (/ (* x.re y.re) y.im)) (* -1 x.im))))>
#<alt (* -1 (* y.im (- (* -1 (/ (* x.re y.re) y.im)) (* -1 x.im))))>
#<alt (* x.re y.re)>
#<alt (* x.re y.re)>
#<alt (* x.re y.re)>
#<alt (* x.re y.re)>
#<alt (* x.re y.re)>
#<alt (* x.re y.re)>
#<alt (* x.re y.re)>
#<alt (* x.re y.re)>
#<alt (* x.re y.re)>
#<alt (* x.re y.re)>
#<alt (* x.re y.re)>
#<alt (* x.re y.re)>
#<alt (* x.re y.re)>
#<alt (* x.re y.re)>
#<alt (* x.re y.re)>
#<alt (* x.re y.re)>
#<alt (* x.re y.re)>
#<alt (* x.re y.re)>
#<alt (* x.re y.re)>
#<alt (* x.re y.re)>
#<alt (* x.re y.re)>
#<alt (* x.re y.re)>
#<alt (* x.re y.re)>
#<alt (* x.re y.re)>
#<alt (* x.im y.im)>
#<alt (* x.im y.im)>
#<alt (* x.im y.im)>
#<alt (* x.im y.im)>
#<alt (* x.im y.im)>
#<alt (* x.im y.im)>
#<alt (* x.im y.im)>
#<alt (* x.im y.im)>
#<alt (* x.im y.im)>
#<alt (* x.im y.im)>
#<alt (* x.im y.im)>
#<alt (* x.im y.im)>
#<alt (* x.im y.im)>
#<alt (* x.im y.im)>
#<alt (* x.im y.im)>
#<alt (* x.im y.im)>
#<alt (* x.im y.im)>
#<alt (* x.im y.im)>
#<alt (* x.im y.im)>
#<alt (* x.im y.im)>
#<alt (* x.im y.im)>
#<alt (* x.im y.im)>
#<alt (* x.im y.im)>
#<alt (* x.im y.im)>
Calls

24 calls:

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

rewrite313.0ms (7.8%)

Algorithm
batch-egg-rewrite
Rules
3642×*-lowering-*.f32
3642×*-lowering-*.f64
2342×pow-lowering-pow.f64
2342×pow-lowering-pow.f32
1550×unpow-prod-down
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0712
13512
225612
3347212
0839312
Stop Event
iter limit
node limit
Counts
3 → 151
Calls
Call 1
Inputs
(- (* x.re y.re) (* x.im y.im))
(* x.re y.re)
(* x.im y.im)
Outputs
(+.f64 (*.f64 x.re y.re) (-.f64 #s(literal 0 binary64) (*.f64 x.im y.im)))
(+.f64 (*.f64 x.re y.re) (+.f64 (*.f64 #s(literal 0 binary64) (*.f64 x.im y.im)) (-.f64 #s(literal 0 binary64) (*.f64 x.im y.im))))
(+.f64 (*.f64 x.re y.re) (neg.f64 (-.f64 (*.f64 x.im y.im) (*.f64 #s(literal 0 binary64) (*.f64 x.im y.im)))))
(+.f64 (*.f64 x.re y.re) (+.f64 (+.f64 (*.f64 #s(literal 0 binary64) (*.f64 x.im y.im)) (-.f64 #s(literal 0 binary64) (*.f64 x.im y.im))) (*.f64 #s(literal 0 binary64) (*.f64 x.im y.im))))
(+.f64 (*.f64 x.re y.re) (+.f64 (-.f64 #s(literal 0 binary64) (*.f64 x.im y.im)) (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 0 binary64) (*.f64 x.im y.im)))))
(+.f64 (*.f64 x.re y.re) (+.f64 (+.f64 (*.f64 #s(literal 0 binary64) (*.f64 x.im y.im)) (-.f64 #s(literal 0 binary64) (*.f64 x.im y.im))) (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 0 binary64) (*.f64 x.im y.im)))))
(+.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 #s(literal 0 binary64) (*.f64 x.im y.im)))
(+.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 0 binary64) (*.f64 x.im y.im))))
(+.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 0 binary64) (*.f64 x.im y.im))) (*.f64 #s(literal 0 binary64) (*.f64 x.im y.im))))
(+.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 #s(literal 0 binary64) (*.f64 x.im y.im)) (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 0 binary64) (*.f64 x.im y.im)))))
(+.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 0 binary64) (*.f64 x.im y.im))) (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 0 binary64) (*.f64 x.im y.im)))))
(+.f64 (*.f64 #s(literal 0 binary64) (*.f64 x.im y.im)) (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))
(+.f64 (-.f64 #s(literal 0 binary64) (*.f64 x.im y.im)) (*.f64 x.re y.re))
(+.f64 (-.f64 #s(literal 0 binary64) (*.f64 x.im y.im)) (+.f64 (*.f64 x.re y.re) (*.f64 #s(literal 0 binary64) (*.f64 x.im y.im))))
(+.f64 (-.f64 #s(literal 0 binary64) (*.f64 x.im y.im)) (+.f64 (*.f64 x.re y.re) (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 0 binary64) (*.f64 x.im y.im)))))
(+.f64 (-.f64 #s(literal 0 binary64) (*.f64 x.im y.im)) (+.f64 (*.f64 x.im y.im) (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))))
(+.f64 (/.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))))) (+.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))) (*.f64 x.im (*.f64 y.im (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))))) (neg.f64 (/.f64 (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))) (+.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))) (*.f64 x.im (*.f64 y.im (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))))))))
(+.f64 (/.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))) (neg.f64 (/.f64 (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))))
(+.f64 (+.f64 (*.f64 #s(literal 0 binary64) (*.f64 x.im y.im)) (-.f64 #s(literal 0 binary64) (*.f64 x.im y.im))) (*.f64 x.re y.re))
(+.f64 (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 0 binary64) (*.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)) (-.f64 #s(literal 0 binary64) (*.f64 x.im y.im))) (*.f64 x.im y.im))
(+.f64 (+.f64 (*.f64 #s(literal 0 binary64) (*.f64 x.im y.im)) (*.f64 x.re y.re)) (-.f64 #s(literal 0 binary64) (*.f64 x.im y.im)))
(+.f64 (+.f64 (*.f64 #s(literal 0 binary64) (*.f64 x.im y.im)) (*.f64 x.re y.re)) (+.f64 (*.f64 #s(literal 0 binary64) (*.f64 x.im y.im)) (-.f64 #s(literal 0 binary64) (*.f64 x.im y.im))))
(exp.f64 (*.f64 (log.f64 (/.f64 #s(literal 1 binary64) (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))) #s(literal -1 binary64)))
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
(-.f64 (*.f64 x.re y.re) (-.f64 (*.f64 x.im y.im) (*.f64 #s(literal 0 binary64) (*.f64 x.im y.im))))
(-.f64 (*.f64 x.re y.re) (-.f64 (-.f64 (*.f64 x.im y.im) (*.f64 #s(literal 0 binary64) (*.f64 x.im y.im))) (*.f64 #s(literal 0 binary64) (*.f64 x.im y.im))))
(-.f64 (*.f64 x.re y.re) (-.f64 (*.f64 x.im y.im) (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 0 binary64) (*.f64 x.im y.im)))))
(-.f64 (*.f64 x.re y.re) (-.f64 (-.f64 (*.f64 x.im y.im) (*.f64 #s(literal 0 binary64) (*.f64 x.im y.im))) (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 0 binary64) (*.f64 x.im y.im)))))
(-.f64 (/.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))))) (+.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))) (*.f64 x.im (*.f64 y.im (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))))) (/.f64 (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))) (+.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))) (*.f64 x.im (*.f64 y.im (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))))))
(-.f64 (/.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))))) (+.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))) (*.f64 x.im (*.f64 y.im (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))))) (-.f64 (/.f64 (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))) (+.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))) (*.f64 x.im (*.f64 y.im (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))))) (*.f64 #s(literal 0 binary64) (*.f64 x.im y.im))))
(-.f64 (/.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))))) (+.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))) (*.f64 x.im (*.f64 y.im (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))))) (-.f64 (/.f64 (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))) (+.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))) (*.f64 x.im (*.f64 y.im (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))))) (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 0 binary64) (*.f64 x.im y.im)))))
(-.f64 (/.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))) (/.f64 (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))))
(-.f64 (/.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))) (-.f64 (/.f64 (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))) (*.f64 #s(literal 0 binary64) (*.f64 x.im y.im))))
(-.f64 (/.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))) (-.f64 (/.f64 (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))) (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 0 binary64) (*.f64 x.im y.im)))))
(-.f64 #s(literal 0 binary64) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))
(-.f64 (/.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))) (-.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 #s(literal 0 binary64) (*.f64 x.im y.im)))) (/.f64 (*.f64 #s(literal 0 binary64) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))) (-.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 #s(literal 0 binary64) (*.f64 x.im y.im)))))
(-.f64 (+.f64 (*.f64 #s(literal 0 binary64) (*.f64 x.im y.im)) (*.f64 x.re y.re)) (*.f64 x.im y.im))
(-.f64 (+.f64 (*.f64 #s(literal 0 binary64) (*.f64 x.im y.im)) (*.f64 x.re y.re)) (-.f64 (*.f64 x.im y.im) (*.f64 #s(literal 0 binary64) (*.f64 x.im y.im))))
(-.f64 (+.f64 (*.f64 x.re y.re) #s(literal 0 binary64)) (*.f64 x.im y.im))
(-.f64 (+.f64 (*.f64 #s(literal 0 binary64) (*.f64 x.im y.im)) (/.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))))) (+.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))) (*.f64 x.im (*.f64 y.im (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))))))) (/.f64 (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))) (+.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))) (*.f64 x.im (*.f64 y.im (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))))))
(-.f64 (+.f64 (*.f64 #s(literal 0 binary64) (*.f64 x.im y.im)) (/.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))) (/.f64 (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))))
(fma.f64 x.re y.re (-.f64 #s(literal 0 binary64) (*.f64 x.im y.im)))
(fma.f64 x.re y.re (+.f64 (*.f64 #s(literal 0 binary64) (*.f64 x.im y.im)) (-.f64 #s(literal 0 binary64) (*.f64 x.im y.im))))
(fma.f64 x.re y.re (neg.f64 (-.f64 (*.f64 x.im y.im) (*.f64 #s(literal 0 binary64) (*.f64 x.im y.im)))))
(fma.f64 y.re x.re (-.f64 #s(literal 0 binary64) (*.f64 x.im y.im)))
(fma.f64 y.re x.re (+.f64 (*.f64 #s(literal 0 binary64) (*.f64 x.im y.im)) (-.f64 #s(literal 0 binary64) (*.f64 x.im y.im))))
(fma.f64 y.re x.re (neg.f64 (-.f64 (*.f64 x.im y.im) (*.f64 #s(literal 0 binary64) (*.f64 x.im y.im)))))
(fma.f64 x.im (-.f64 #s(literal 0 binary64) y.im) (*.f64 x.re y.re))
(fma.f64 y.im (-.f64 #s(literal 0 binary64) x.im) (*.f64 x.re y.re))
(fma.f64 (-.f64 #s(literal 0 binary64) y.im) x.im (*.f64 x.re y.re))
(fma.f64 (+.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))))) (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))))) (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))) (*.f64 x.im (*.f64 y.im (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))))) (*.f64 #s(literal 0 binary64) (*.f64 x.im y.im)))
(fma.f64 (+.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))))) (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))))) (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))) (*.f64 x.im (*.f64 y.im (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))))) (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 0 binary64) (*.f64 x.im y.im))))
(fma.f64 (-.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))) (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))) (*.f64 #s(literal 0 binary64) (*.f64 x.im y.im)))
(fma.f64 (-.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))) (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))) (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 0 binary64) (*.f64 x.im y.im))))
(fma.f64 (-.f64 #s(literal 0 binary64) x.im) y.im (*.f64 x.re y.re))
(fma.f64 #s(literal -1 binary64) (*.f64 x.im y.im) (*.f64 x.re y.re))
(neg.f64 (/.f64 (+.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))))) (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))))) (-.f64 #s(literal 0 binary64) (+.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))) (*.f64 x.im (*.f64 y.im (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))))))))
(neg.f64 (/.f64 (-.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))) (-.f64 #s(literal 0 binary64) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))))
(neg.f64 (/.f64 (+.f64 (neg.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re)))))) (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))))) (+.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))) (*.f64 x.im (*.f64 y.im (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))))))
(neg.f64 (/.f64 (+.f64 (neg.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re)))) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))))
(/.f64 (+.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))))) (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))))) (+.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))) (*.f64 x.im (*.f64 y.im (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))))))
(/.f64 (+.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))))) (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))))) (+.f64 (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))) (-.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))) (*.f64 (*.f64 (*.f64 x.re y.re) x.im) (-.f64 #s(literal 0 binary64) y.im)))))
(/.f64 (-.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))
(/.f64 (+.f64 (neg.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re)))))) (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))))) (-.f64 #s(literal 0 binary64) (+.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))) (*.f64 x.im (*.f64 y.im (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))))))
(/.f64 (+.f64 (neg.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re)))) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))) (-.f64 #s(literal 0 binary64) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))))
(/.f64 (+.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))) (*.f64 #s(literal 0 binary64) (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))))) (+.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))) (*.f64 (*.f64 #s(literal 0 binary64) (*.f64 x.im y.im)) (-.f64 (*.f64 #s(literal 0 binary64) (*.f64 x.im y.im)) (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))))))
(/.f64 (+.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))) (*.f64 #s(literal 0 binary64) (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))))) (+.f64 (*.f64 #s(literal 0 binary64) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))) (-.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 #s(literal 0 binary64) (*.f64 x.im y.im))))))
(/.f64 (-.f64 (*.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))))) (*.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))))) (*.f64 x.re (*.f64 y.re (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))))))) (*.f64 (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))) (*.f64 (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))) (*.f64 (*.f64 y.im y.im) (*.f64 (*.f64 x.im (*.f64 x.im y.im)) (*.f64 x.im (*.f64 x.im y.im))))))) (*.f64 (+.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))) (*.f64 x.im (*.f64 y.im (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))))) (+.f64 (*.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))))) (*.f64 x.re (*.f64 y.re (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re)))))) (*.f64 (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))) (+.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))))) (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))))))))
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))))
(/.f64 #s(literal 1 binary64) (/.f64 (+.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))) (*.f64 (*.f64 #s(literal 0 binary64) (*.f64 x.im y.im)) (-.f64 (*.f64 #s(literal 0 binary64) (*.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)) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))) (*.f64 #s(literal 0 binary64) (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))))))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 #s(literal 1 binary64) (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 (-.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 #s(literal 0 binary64) (*.f64 x.im y.im))) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (-.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 #s(literal 0 binary64) (*.f64 x.im y.im))))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 #s(literal 1 binary64) (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))))
(/.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (-.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 #s(literal 0 binary64) (*.f64 x.im y.im)))) (-.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 #s(literal 0 binary64) (*.f64 x.im y.im))))
(/.f64 (-.f64 (*.f64 (*.f64 x.re y.re) (*.f64 x.re (*.f64 y.re (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re)))))) (*.f64 (*.f64 y.im y.im) (*.f64 (*.f64 x.im (*.f64 x.im y.im)) (*.f64 x.im (*.f64 x.im y.im))))) (*.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))))))
(/.f64 (+.f64 (*.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))))) (*.f64 x.re (*.f64 y.re (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re)))))) (*.f64 (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))) (*.f64 (*.f64 y.im y.im) (*.f64 (*.f64 x.im (*.f64 x.im y.im)) (*.f64 x.im (*.f64 x.im y.im)))))) (*.f64 (+.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))) (*.f64 x.im (*.f64 y.im (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))))) (+.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))))) (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))))))
(/.f64 (+.f64 (*.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))))) (*.f64 x.re (*.f64 y.re (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re)))))) (*.f64 (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))) (*.f64 (*.f64 y.im y.im) (*.f64 (*.f64 x.im (*.f64 x.im y.im)) (*.f64 x.im (*.f64 x.im y.im)))))) (*.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 (*.f64 x.re y.re) (*.f64 x.re (*.f64 y.re (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re)))))) (*.f64 (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))) (+.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))))))))
(/.f64 (-.f64 (*.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))))) (+.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))) (*.f64 x.im (*.f64 y.im (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))))) (*.f64 (+.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))) (*.f64 x.im (*.f64 y.im (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))))) (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))))) (*.f64 (+.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))) (*.f64 x.im (*.f64 y.im (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))))) (+.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))) (*.f64 x.im (*.f64 y.im (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))))))
(/.f64 (-.f64 (*.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))) (*.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))))) (*.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))))
(/.f64 (*.f64 (+.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))))) (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))))) #s(literal 1 binary64)) (+.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))) (*.f64 x.im (*.f64 y.im (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))))))
(/.f64 (*.f64 (-.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))) #s(literal 1 binary64)) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))
(/.f64 (*.f64 (-.f64 (*.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))))) (*.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))))) (*.f64 x.re (*.f64 y.re (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))))))) (*.f64 (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))) (*.f64 (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))) (*.f64 (*.f64 y.im y.im) (*.f64 (*.f64 x.im (*.f64 x.im y.im)) (*.f64 x.im (*.f64 x.im y.im))))))) #s(literal 1 binary64)) (*.f64 (+.f64 (*.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))))) (*.f64 x.re (*.f64 y.re (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re)))))) (*.f64 (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))) (+.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))))) (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))))))) (+.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))) (*.f64 x.im (*.f64 y.im (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))))))
(/.f64 (*.f64 (+.f64 (*.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))))) (*.f64 x.re (*.f64 y.re (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re)))))) (*.f64 (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))) (*.f64 (*.f64 y.im y.im) (*.f64 (*.f64 x.im (*.f64 x.im y.im)) (*.f64 x.im (*.f64 x.im y.im)))))) #s(literal 1 binary64)) (*.f64 (+.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))))) (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))))) (+.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))) (*.f64 x.im (*.f64 y.im (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))))))
(/.f64 (*.f64 (+.f64 (*.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))))) (*.f64 x.re (*.f64 y.re (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re)))))) (*.f64 (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))) (*.f64 (*.f64 y.im y.im) (*.f64 (*.f64 x.im (*.f64 x.im y.im)) (*.f64 x.im (*.f64 x.im y.im)))))) #s(literal 1 binary64)) (*.f64 (+.f64 (*.f64 (*.f64 x.re y.re) (*.f64 x.re (*.f64 y.re (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re)))))) (*.f64 (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))) (+.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))))
(/.f64 (*.f64 (-.f64 (*.f64 (*.f64 x.re y.re) (*.f64 x.re (*.f64 y.re (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re)))))) (*.f64 (*.f64 y.im y.im) (*.f64 (*.f64 x.im (*.f64 x.im y.im)) (*.f64 x.im (*.f64 x.im y.im))))) #s(literal 1 binary64)) (*.f64 (+.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))))
(/.f64 (neg.f64 (+.f64 (neg.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re)))))) (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))))) (neg.f64 (-.f64 #s(literal 0 binary64) (+.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))) (*.f64 x.im (*.f64 y.im (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))))))))
(/.f64 (neg.f64 (+.f64 (neg.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re)))) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))))) (neg.f64 (-.f64 #s(literal 0 binary64) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))))
(/.f64 (neg.f64 (+.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))) (*.f64 #s(literal 0 binary64) (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))))))) (neg.f64 (+.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))) (*.f64 (*.f64 #s(literal 0 binary64) (*.f64 x.im y.im)) (-.f64 (*.f64 #s(literal 0 binary64) (*.f64 x.im y.im)) (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))))))
(/.f64 (neg.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (-.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 #s(literal 0 binary64) (*.f64 x.im y.im))))) (neg.f64 (-.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 #s(literal 0 binary64) (*.f64 x.im y.im)))))
(/.f64 (+.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))))) (*.f64 (*.f64 (+.f64 (*.f64 #s(literal 0 binary64) (*.f64 x.im y.im)) (-.f64 #s(literal 0 binary64) (*.f64 x.im y.im))) (+.f64 (*.f64 #s(literal 0 binary64) (*.f64 x.im y.im)) (-.f64 #s(literal 0 binary64) (*.f64 x.im y.im)))) (+.f64 (*.f64 #s(literal 0 binary64) (*.f64 x.im y.im)) (-.f64 #s(literal 0 binary64) (*.f64 x.im y.im))))) (+.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))) (-.f64 (*.f64 (+.f64 (*.f64 #s(literal 0 binary64) (*.f64 x.im y.im)) (-.f64 #s(literal 0 binary64) (*.f64 x.im y.im))) (+.f64 (*.f64 #s(literal 0 binary64) (*.f64 x.im y.im)) (-.f64 #s(literal 0 binary64) (*.f64 x.im y.im)))) (*.f64 (*.f64 x.re y.re) (+.f64 (*.f64 #s(literal 0 binary64) (*.f64 x.im y.im)) (-.f64 #s(literal 0 binary64) (*.f64 x.im y.im)))))))
(/.f64 (+.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))) (*.f64 #s(literal 8 binary64) (*.f64 #s(literal 0 binary64) (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))))))) (+.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))) (-.f64 (*.f64 (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 0 binary64) (*.f64 x.im y.im))) (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 0 binary64) (*.f64 x.im y.im)))) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 0 binary64) (*.f64 x.im y.im)))))))
(/.f64 (-.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))))) (*.f64 (*.f64 (-.f64 (*.f64 x.im y.im) (*.f64 #s(literal 0 binary64) (*.f64 x.im y.im))) (-.f64 (*.f64 x.im y.im) (*.f64 #s(literal 0 binary64) (*.f64 x.im y.im)))) (-.f64 (*.f64 x.im y.im) (*.f64 #s(literal 0 binary64) (*.f64 x.im y.im))))) (+.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))) (+.f64 (*.f64 (-.f64 (*.f64 x.im y.im) (*.f64 #s(literal 0 binary64) (*.f64 x.im y.im))) (-.f64 (*.f64 x.im y.im) (*.f64 #s(literal 0 binary64) (*.f64 x.im y.im)))) (*.f64 (*.f64 x.re y.re) (-.f64 (*.f64 x.im y.im) (*.f64 #s(literal 0 binary64) (*.f64 x.im y.im)))))))
(/.f64 (-.f64 (*.f64 (*.f64 (/.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))))) (+.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))) (*.f64 x.im (*.f64 y.im (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))))) (/.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))))) (+.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))) (*.f64 x.im (*.f64 y.im (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))))))) (/.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))))) (+.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))) (*.f64 x.im (*.f64 y.im (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))))))) (*.f64 (*.f64 (/.f64 (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))) (+.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))) (*.f64 x.im (*.f64 y.im (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))))) (/.f64 (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))) (+.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))) (*.f64 x.im (*.f64 y.im (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))))))) (/.f64 (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))) (+.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))) (*.f64 x.im (*.f64 y.im (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))))))) (+.f64 (*.f64 (/.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))))) (+.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))) (*.f64 x.im (*.f64 y.im (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))))) (/.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))))) (+.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))) (*.f64 x.im (*.f64 y.im (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))))))) (+.f64 (*.f64 (/.f64 (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))) (+.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))) (*.f64 x.im (*.f64 y.im (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))))) (/.f64 (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))) (+.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))) (*.f64 x.im (*.f64 y.im (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))))))) (*.f64 (/.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))))) (+.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))) (*.f64 x.im (*.f64 y.im (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))))) (/.f64 (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))) (+.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))) (*.f64 x.im (*.f64 y.im (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))))))))))
(/.f64 (-.f64 (/.f64 (*.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))))) (*.f64 x.re (*.f64 y.re (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re)))))) (*.f64 (*.f64 (+.f64 (*.f64 x.re y.re) (*.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 y.im)))) (/.f64 (*.f64 (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))) (*.f64 (*.f64 y.im y.im) (*.f64 (*.f64 x.im (*.f64 x.im y.im)) (*.f64 x.im (*.f64 x.im y.im))))) (*.f64 (*.f64 (+.f64 (*.f64 x.re y.re) (*.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 y.im))))) (+.f64 (*.f64 (/.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))) (/.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))) (+.f64 (*.f64 (/.f64 (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))) (/.f64 (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))) (*.f64 (/.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))) (/.f64 (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))))))
(/.f64 (-.f64 (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))) (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re)))) (-.f64 (-.f64 #s(literal 0 binary64) (*.f64 x.im y.im)) (*.f64 x.re y.re)))
(/.f64 (-.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))) (*.f64 (+.f64 (*.f64 #s(literal 0 binary64) (*.f64 x.im y.im)) (-.f64 #s(literal 0 binary64) (*.f64 x.im y.im))) (+.f64 (*.f64 #s(literal 0 binary64) (*.f64 x.im y.im)) (-.f64 #s(literal 0 binary64) (*.f64 x.im y.im))))) (-.f64 (*.f64 x.re y.re) (+.f64 (*.f64 #s(literal 0 binary64) (*.f64 x.im y.im)) (-.f64 #s(literal 0 binary64) (*.f64 x.im y.im)))))
(/.f64 (-.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))) (*.f64 (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 0 binary64) (*.f64 x.im y.im))) (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 0 binary64) (*.f64 x.im y.im))))) (-.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 0 binary64) (*.f64 x.im y.im)))))
(/.f64 (-.f64 (*.f64 #s(literal 0 binary64) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))) (-.f64 (*.f64 #s(literal 0 binary64) (*.f64 x.im y.im)) (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))))
(/.f64 (-.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))) (*.f64 (-.f64 (*.f64 x.im y.im) (*.f64 #s(literal 0 binary64) (*.f64 x.im y.im))) (-.f64 (*.f64 x.im y.im) (*.f64 #s(literal 0 binary64) (*.f64 x.im y.im))))) (+.f64 (*.f64 x.re y.re) (-.f64 (*.f64 x.im y.im) (*.f64 #s(literal 0 binary64) (*.f64 x.im y.im)))))
(/.f64 (-.f64 (*.f64 (/.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))))) (+.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))) (*.f64 x.im (*.f64 y.im (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))))) (/.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))))) (+.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))) (*.f64 x.im (*.f64 y.im (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))))))) (*.f64 (/.f64 (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))) (+.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))) (*.f64 x.im (*.f64 y.im (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))))) (/.f64 (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))) (+.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))) (*.f64 x.im (*.f64 y.im (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))))))) (+.f64 (/.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))))) (+.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))) (*.f64 x.im (*.f64 y.im (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))))) (/.f64 (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))) (+.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))) (*.f64 x.im (*.f64 y.im (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))))))))
(/.f64 (-.f64 (*.f64 (/.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))) (/.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))) (*.f64 (/.f64 (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))) (/.f64 (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))))) (+.f64 (/.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))) (/.f64 (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))))
(/.f64 (*.f64 (-.f64 (*.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))))) (*.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))))) (*.f64 x.re (*.f64 y.re (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))))))) (*.f64 (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))) (*.f64 (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))) (*.f64 (*.f64 y.im y.im) (*.f64 (*.f64 x.im (*.f64 x.im y.im)) (*.f64 x.im (*.f64 x.im y.im))))))) (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))) (*.f64 x.im (*.f64 y.im (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))))))) (+.f64 (*.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))))) (*.f64 x.re (*.f64 y.re (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re)))))) (*.f64 (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))) (+.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))))) (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))))))))
(/.f64 (*.f64 (+.f64 (*.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))))) (*.f64 x.re (*.f64 y.re (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re)))))) (*.f64 (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))) (*.f64 (*.f64 y.im y.im) (*.f64 (*.f64 x.im (*.f64 x.im y.im)) (*.f64 x.im (*.f64 x.im y.im)))))) (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))) (*.f64 x.im (*.f64 y.im (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))))))) (+.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))))) (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))))))
(/.f64 (*.f64 (+.f64 (*.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))))) (*.f64 x.re (*.f64 y.re (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re)))))) (*.f64 (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))) (*.f64 (*.f64 y.im y.im) (*.f64 (*.f64 x.im (*.f64 x.im y.im)) (*.f64 x.im (*.f64 x.im y.im)))))) (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))) (+.f64 (*.f64 (*.f64 x.re y.re) (*.f64 x.re (*.f64 y.re (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re)))))) (*.f64 (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))) (+.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))))))
(/.f64 (*.f64 (-.f64 (*.f64 (*.f64 x.re y.re) (*.f64 x.re (*.f64 y.re (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re)))))) (*.f64 (*.f64 y.im y.im) (*.f64 (*.f64 x.im (*.f64 x.im y.im)) (*.f64 x.im (*.f64 x.im y.im))))) (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))) (+.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))))
(pow.f64 (/.f64 #s(literal 1 binary64) (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))) #s(literal -1 binary64))
(pow.f64 (/.f64 (+.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))) (*.f64 (*.f64 #s(literal 0 binary64) (*.f64 x.im y.im)) (-.f64 (*.f64 #s(literal 0 binary64) (*.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)) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))) (*.f64 #s(literal 0 binary64) (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))))))) #s(literal -1 binary64))
(pow.f64 (/.f64 (/.f64 #s(literal 1 binary64) (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))) #s(literal 1 binary64)) #s(literal -1 binary64))
(pow.f64 (/.f64 (-.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 #s(literal 0 binary64) (*.f64 x.im y.im))) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (-.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 #s(literal 0 binary64) (*.f64 x.im y.im))))) #s(literal -1 binary64))
(*.f64 (+.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))))) (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))))) (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))) (*.f64 x.im (*.f64 y.im (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))))))
(*.f64 (+.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))) (*.f64 x.im (*.f64 y.im (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))))) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))) (*.f64 x.im (*.f64 y.im (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))))))))
(*.f64 (+.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))) (*.f64 x.im (*.f64 y.im (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))))) (/.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))) (*.f64 x.im (*.f64 y.im (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))))))
(*.f64 (-.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))) (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))))
(*.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))))
(*.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (/.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))))
(*.f64 (+.f64 (neg.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re)))))) (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))))) (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 0 binary64) (+.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))) (*.f64 x.im (*.f64 y.im (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))))))))
(*.f64 (+.f64 (neg.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re)))) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))) (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 0 binary64) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))))
(*.f64 (+.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))) (*.f64 #s(literal 0 binary64) (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))))) (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))) (*.f64 (*.f64 #s(literal 0 binary64) (*.f64 x.im y.im)) (-.f64 (*.f64 #s(literal 0 binary64) (*.f64 x.im y.im)) (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))))))
(*.f64 #s(literal 1 binary64) (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))
(*.f64 (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))) (*.f64 x.im (*.f64 y.im (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))))) (+.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))))) (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))))))
(*.f64 (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))) (*.f64 x.im (*.f64 y.im (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))))) (pow.f64 (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))))) (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))))) #s(literal -1 binary64)))
(*.f64 (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))) (-.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))))
(*.f64 (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))) (pow.f64 (/.f64 #s(literal 1 binary64) (-.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))))) #s(literal -1 binary64)))
(*.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (-.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 #s(literal 0 binary64) (*.f64 x.im y.im)))) (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 #s(literal 0 binary64) (*.f64 x.im y.im)))))
(*.f64 (/.f64 (-.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))) (+.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))))) (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))))) (+.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))) (*.f64 (*.f64 x.im y.im) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))))
(*.f64 (/.f64 (-.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))) (-.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))))) (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))
(*.f64 (/.f64 (+.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))))) (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))))) (+.f64 (*.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))))) (*.f64 x.re (*.f64 y.re (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re)))))) (*.f64 (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))) (*.f64 (*.f64 (+.f64 (*.f64 x.re y.re) (*.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 y.im)))))) (+.f64 (*.f64 (*.f64 x.re y.re) (*.f64 x.re (*.f64 y.re (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re)))))) (*.f64 (*.f64 x.im (*.f64 y.im (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))) (-.f64 (*.f64 x.im (*.f64 y.im (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))) (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re)))))))
(*.f64 (/.f64 (+.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))))) (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))))) (-.f64 (*.f64 (*.f64 x.re y.re) (*.f64 x.re (*.f64 y.re (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re)))))) (*.f64 (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))) (*.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))))) (-.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))) (*.f64 x.im (*.f64 y.im (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))))))
(*.f64 (pow.f64 (/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))))) (*.f64 x.re (*.f64 y.re (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re)))))) (*.f64 (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))) (*.f64 (*.f64 y.im y.im) (*.f64 (*.f64 x.im (*.f64 x.im y.im)) (*.f64 x.im (*.f64 x.im y.im))))))) #s(literal -1 binary64)) (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 (*.f64 x.re y.re) (*.f64 x.re (*.f64 y.re (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re)))))) (*.f64 (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))) (+.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))))))))
(*.f64 (pow.f64 (/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (-.f64 (*.f64 (*.f64 x.re y.re) (*.f64 x.re (*.f64 y.re (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re)))))) (*.f64 (*.f64 y.im y.im) (*.f64 (*.f64 x.im (*.f64 x.im y.im)) (*.f64 x.im (*.f64 x.im y.im)))))) #s(literal -1 binary64)) (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))))))
(*.f64 (pow.f64 (/.f64 (+.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))) (*.f64 x.im (*.f64 y.im (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))))) (-.f64 (*.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))))) (*.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))))) (*.f64 x.re (*.f64 y.re (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))))))) (*.f64 (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))) (*.f64 (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))) (*.f64 (*.f64 y.im y.im) (*.f64 (*.f64 x.im (*.f64 x.im y.im)) (*.f64 x.im (*.f64 x.im y.im)))))))) #s(literal -1 binary64)) (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))))) (*.f64 x.re (*.f64 y.re (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re)))))) (*.f64 (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))) (+.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))))) (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))))))))
(*.f64 (pow.f64 (/.f64 (+.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))) (*.f64 x.im (*.f64 y.im (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))))) (+.f64 (*.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))))) (*.f64 x.re (*.f64 y.re (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re)))))) (*.f64 (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))) (*.f64 (*.f64 y.im y.im) (*.f64 (*.f64 x.im (*.f64 x.im y.im)) (*.f64 x.im (*.f64 x.im y.im))))))) #s(literal -1 binary64)) (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.re (*.f64 y.re (*.f64 x.re y.re))))) (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))))))
(exp.f64 (log.f64 (*.f64 x.re y.re)))
(exp.f64 (*.f64 (log.f64 (*.f64 x.re y.re)) #s(literal 1 binary64)))
(pow.f64 (*.f64 x.re y.re) #s(literal 1 binary64))
(*.f64 x.re y.re)
(*.f64 y.re x.re)
(*.f64 (pow.f64 x.re #s(literal 1 binary64)) (pow.f64 y.re #s(literal 1 binary64)))
(*.f64 (pow.f64 y.re #s(literal 1 binary64)) (pow.f64 x.re #s(literal 1 binary64)))
(*.f64 (exp.f64 (log.f64 x.re)) (exp.f64 (log.f64 y.re)))
(*.f64 (exp.f64 (log.f64 y.re)) (exp.f64 (log.f64 x.re)))
(exp.f64 (log.f64 (*.f64 x.im y.im)))
(exp.f64 (*.f64 (log.f64 (*.f64 x.im y.im)) #s(literal 1 binary64)))
(pow.f64 (*.f64 x.im y.im) #s(literal 1 binary64))
(*.f64 x.im y.im)
(*.f64 y.im x.im)
(*.f64 (pow.f64 x.im #s(literal 1 binary64)) (pow.f64 y.im #s(literal 1 binary64)))
(*.f64 (pow.f64 y.im #s(literal 1 binary64)) (pow.f64 x.im #s(literal 1 binary64)))
(*.f64 (exp.f64 (log.f64 x.im)) (exp.f64 (log.f64 y.im)))
(*.f64 (exp.f64 (log.f64 y.im)) (exp.f64 (log.f64 x.im)))

simplify167.0ms (4.1%)

Algorithm
egg-herbie
Rules
2018×*-lowering-*.f32
2018×*-lowering-*.f64
2008×fma-lowering-fma.f32
2008×fma-lowering-fma.f64
1940×fmm-def
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
042438
1150426
2450426
31565426
46440426
08131426
Stop Event
iter limit
node limit
Counts
96 → 96
Calls
Call 1
Inputs
(* -1 (* x.im y.im))
(- (* x.re y.re) (* x.im y.im))
(- (* x.re y.re) (* x.im y.im))
(- (* x.re y.re) (* x.im y.im))
(* x.re y.re)
(* x.re (+ y.re (* -1 (/ (* x.im y.im) x.re))))
(* x.re (+ y.re (* -1 (/ (* x.im y.im) x.re))))
(* x.re (+ y.re (* -1 (/ (* x.im y.im) x.re))))
(* x.re y.re)
(* -1 (* x.re (+ (* -1 y.re) (/ (* x.im y.im) x.re))))
(* -1 (* x.re (+ (* -1 y.re) (/ (* x.im y.im) x.re))))
(* -1 (* x.re (+ (* -1 y.re) (/ (* x.im y.im) x.re))))
(* -1 (* x.im y.im))
(- (* x.re y.re) (* x.im y.im))
(- (* x.re y.re) (* x.im y.im))
(- (* x.re y.re) (* x.im y.im))
(* x.re y.re)
(* y.re (+ x.re (* -1 (/ (* x.im y.im) y.re))))
(* y.re (+ x.re (* -1 (/ (* x.im y.im) y.re))))
(* y.re (+ x.re (* -1 (/ (* x.im y.im) y.re))))
(* x.re y.re)
(* -1 (* y.re (+ (* -1 x.re) (/ (* x.im y.im) y.re))))
(* -1 (* y.re (+ (* -1 x.re) (/ (* x.im y.im) y.re))))
(* -1 (* y.re (+ (* -1 x.re) (/ (* x.im y.im) y.re))))
(* x.re y.re)
(+ (* -1 (* x.im y.im)) (* x.re y.re))
(+ (* -1 (* x.im y.im)) (* x.re y.re))
(+ (* -1 (* x.im y.im)) (* x.re y.re))
(* -1 (* x.im y.im))
(* x.im (- (/ (* x.re y.re) x.im) y.im))
(* x.im (- (/ (* x.re y.re) x.im) y.im))
(* x.im (- (/ (* x.re y.re) x.im) y.im))
(* -1 (* x.im y.im))
(* -1 (* x.im (- (* -1 (/ (* x.re y.re) x.im)) (* -1 y.im))))
(* -1 (* x.im (- (* -1 (/ (* x.re y.re) x.im)) (* -1 y.im))))
(* -1 (* x.im (- (* -1 (/ (* x.re y.re) x.im)) (* -1 y.im))))
(* x.re y.re)
(+ (* -1 (* x.im y.im)) (* x.re y.re))
(+ (* -1 (* x.im y.im)) (* x.re y.re))
(+ (* -1 (* x.im y.im)) (* x.re y.re))
(* -1 (* x.im y.im))
(* y.im (- (/ (* x.re y.re) y.im) x.im))
(* y.im (- (/ (* x.re y.re) y.im) x.im))
(* y.im (- (/ (* x.re y.re) y.im) x.im))
(* -1 (* x.im y.im))
(* -1 (* y.im (- (* -1 (/ (* x.re y.re) y.im)) (* -1 x.im))))
(* -1 (* y.im (- (* -1 (/ (* x.re y.re) y.im)) (* -1 x.im))))
(* -1 (* y.im (- (* -1 (/ (* x.re y.re) y.im)) (* -1 x.im))))
(* x.re y.re)
(* x.re y.re)
(* x.re y.re)
(* x.re y.re)
(* x.re y.re)
(* x.re y.re)
(* x.re y.re)
(* x.re y.re)
(* x.re y.re)
(* x.re y.re)
(* x.re y.re)
(* x.re y.re)
(* x.re y.re)
(* x.re y.re)
(* x.re y.re)
(* x.re y.re)
(* x.re y.re)
(* x.re y.re)
(* x.re y.re)
(* x.re y.re)
(* x.re y.re)
(* x.re y.re)
(* x.re y.re)
(* x.re y.re)
(* x.im y.im)
(* x.im y.im)
(* x.im y.im)
(* x.im y.im)
(* x.im y.im)
(* x.im y.im)
(* x.im y.im)
(* x.im y.im)
(* x.im y.im)
(* x.im y.im)
(* x.im y.im)
(* x.im y.im)
(* x.im y.im)
(* x.im y.im)
(* x.im y.im)
(* x.im y.im)
(* x.im y.im)
(* x.im y.im)
(* x.im y.im)
(* x.im y.im)
(* x.im y.im)
(* x.im y.im)
(* x.im y.im)
(* x.im y.im)
Outputs
(* -1 (* x.im y.im))
(-.f64 #s(literal 0 binary64) (*.f64 x.im y.im))
(- (* x.re y.re) (* x.im y.im))
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
(- (* x.re y.re) (* x.im y.im))
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
(- (* x.re y.re) (* x.im y.im))
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
(* x.re y.re)
(*.f64 x.re y.re)
(* x.re (+ y.re (* -1 (/ (* x.im y.im) x.re))))
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
(* x.re (+ y.re (* -1 (/ (* x.im y.im) x.re))))
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
(* x.re (+ y.re (* -1 (/ (* x.im y.im) x.re))))
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
(* x.re y.re)
(*.f64 x.re y.re)
(* -1 (* x.re (+ (* -1 y.re) (/ (* x.im y.im) x.re))))
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
(* -1 (* x.re (+ (* -1 y.re) (/ (* x.im y.im) x.re))))
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
(* -1 (* x.re (+ (* -1 y.re) (/ (* x.im y.im) x.re))))
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
(* -1 (* x.im y.im))
(-.f64 #s(literal 0 binary64) (*.f64 x.im y.im))
(- (* x.re y.re) (* x.im y.im))
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
(- (* x.re y.re) (* x.im y.im))
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
(- (* x.re y.re) (* x.im y.im))
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
(* x.re y.re)
(*.f64 x.re y.re)
(* y.re (+ x.re (* -1 (/ (* x.im y.im) y.re))))
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
(* y.re (+ x.re (* -1 (/ (* x.im y.im) y.re))))
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
(* y.re (+ x.re (* -1 (/ (* x.im y.im) y.re))))
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
(* x.re y.re)
(*.f64 x.re y.re)
(* -1 (* y.re (+ (* -1 x.re) (/ (* x.im y.im) y.re))))
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
(* -1 (* y.re (+ (* -1 x.re) (/ (* x.im y.im) y.re))))
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
(* -1 (* y.re (+ (* -1 x.re) (/ (* x.im y.im) y.re))))
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
(* x.re y.re)
(*.f64 x.re y.re)
(+ (* -1 (* x.im y.im)) (* x.re y.re))
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
(+ (* -1 (* x.im y.im)) (* x.re y.re))
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
(+ (* -1 (* x.im y.im)) (* x.re y.re))
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
(* -1 (* x.im y.im))
(-.f64 #s(literal 0 binary64) (*.f64 x.im y.im))
(* x.im (- (/ (* x.re y.re) x.im) y.im))
(*.f64 x.im (-.f64 (/.f64 (*.f64 x.re y.re) x.im) y.im))
(* x.im (- (/ (* x.re y.re) x.im) y.im))
(*.f64 x.im (-.f64 (/.f64 (*.f64 x.re y.re) x.im) y.im))
(* x.im (- (/ (* x.re y.re) x.im) y.im))
(*.f64 x.im (-.f64 (/.f64 (*.f64 x.re y.re) x.im) y.im))
(* -1 (* x.im y.im))
(-.f64 #s(literal 0 binary64) (*.f64 x.im y.im))
(* -1 (* x.im (- (* -1 (/ (* x.re y.re) x.im)) (* -1 y.im))))
(*.f64 x.im (-.f64 (/.f64 (*.f64 x.re y.re) x.im) y.im))
(* -1 (* x.im (- (* -1 (/ (* x.re y.re) x.im)) (* -1 y.im))))
(*.f64 x.im (-.f64 (/.f64 (*.f64 x.re y.re) x.im) y.im))
(* -1 (* x.im (- (* -1 (/ (* x.re y.re) x.im)) (* -1 y.im))))
(*.f64 x.im (-.f64 (/.f64 (*.f64 x.re y.re) x.im) y.im))
(* x.re y.re)
(*.f64 x.re y.re)
(+ (* -1 (* x.im y.im)) (* x.re y.re))
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
(+ (* -1 (* x.im y.im)) (* x.re y.re))
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
(+ (* -1 (* x.im y.im)) (* x.re y.re))
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
(* -1 (* x.im y.im))
(-.f64 #s(literal 0 binary64) (*.f64 x.im y.im))
(* y.im (- (/ (* x.re y.re) y.im) x.im))
(*.f64 y.im (-.f64 (/.f64 (*.f64 x.re y.re) y.im) x.im))
(* y.im (- (/ (* x.re y.re) y.im) x.im))
(*.f64 y.im (-.f64 (/.f64 (*.f64 x.re y.re) y.im) x.im))
(* y.im (- (/ (* x.re y.re) y.im) x.im))
(*.f64 y.im (-.f64 (/.f64 (*.f64 x.re y.re) y.im) x.im))
(* -1 (* x.im y.im))
(-.f64 #s(literal 0 binary64) (*.f64 x.im y.im))
(* -1 (* y.im (- (* -1 (/ (* x.re y.re) y.im)) (* -1 x.im))))
(*.f64 y.im (-.f64 (/.f64 (*.f64 x.re y.re) y.im) x.im))
(* -1 (* y.im (- (* -1 (/ (* x.re y.re) y.im)) (* -1 x.im))))
(*.f64 y.im (-.f64 (/.f64 (*.f64 x.re y.re) y.im) x.im))
(* -1 (* y.im (- (* -1 (/ (* x.re y.re) y.im)) (* -1 x.im))))
(*.f64 y.im (-.f64 (/.f64 (*.f64 x.re y.re) y.im) x.im))
(* x.re y.re)
(*.f64 x.re y.re)
(* x.re y.re)
(*.f64 x.re y.re)
(* x.re y.re)
(*.f64 x.re y.re)
(* x.re y.re)
(*.f64 x.re y.re)
(* x.re y.re)
(*.f64 x.re y.re)
(* x.re y.re)
(*.f64 x.re y.re)
(* x.re y.re)
(*.f64 x.re y.re)
(* x.re y.re)
(*.f64 x.re y.re)
(* x.re y.re)
(*.f64 x.re y.re)
(* x.re y.re)
(*.f64 x.re y.re)
(* x.re y.re)
(*.f64 x.re y.re)
(* x.re y.re)
(*.f64 x.re y.re)
(* x.re y.re)
(*.f64 x.re y.re)
(* x.re y.re)
(*.f64 x.re y.re)
(* x.re y.re)
(*.f64 x.re y.re)
(* x.re y.re)
(*.f64 x.re y.re)
(* x.re y.re)
(*.f64 x.re y.re)
(* x.re y.re)
(*.f64 x.re y.re)
(* x.re y.re)
(*.f64 x.re y.re)
(* x.re y.re)
(*.f64 x.re y.re)
(* x.re y.re)
(*.f64 x.re y.re)
(* x.re y.re)
(*.f64 x.re y.re)
(* x.re y.re)
(*.f64 x.re y.re)
(* x.re y.re)
(*.f64 x.re y.re)
(* x.im y.im)
(*.f64 x.im y.im)
(* x.im y.im)
(*.f64 x.im y.im)
(* x.im y.im)
(*.f64 x.im y.im)
(* x.im y.im)
(*.f64 x.im y.im)
(* x.im y.im)
(*.f64 x.im y.im)
(* x.im y.im)
(*.f64 x.im y.im)
(* x.im y.im)
(*.f64 x.im y.im)
(* x.im y.im)
(*.f64 x.im y.im)
(* x.im y.im)
(*.f64 x.im y.im)
(* x.im y.im)
(*.f64 x.im y.im)
(* x.im y.im)
(*.f64 x.im y.im)
(* x.im y.im)
(*.f64 x.im y.im)
(* x.im y.im)
(*.f64 x.im y.im)
(* x.im y.im)
(*.f64 x.im y.im)
(* x.im y.im)
(*.f64 x.im y.im)
(* x.im y.im)
(*.f64 x.im y.im)
(* x.im y.im)
(*.f64 x.im y.im)
(* x.im y.im)
(*.f64 x.im y.im)
(* x.im y.im)
(*.f64 x.im y.im)
(* x.im y.im)
(*.f64 x.im y.im)
(* x.im y.im)
(*.f64 x.im y.im)
(* x.im y.im)
(*.f64 x.im y.im)
(* x.im y.im)
(*.f64 x.im y.im)
(* x.im y.im)
(*.f64 x.im y.im)

eval26.0ms (0.6%)

Compiler

Compiled 7162 to 420 computations (94.1% saved)

prune25.0ms (0.6%)

Pruning

4 alts after pruning (3 fresh and 1 done)

PrunedKeptTotal
New2443247
Fresh000
Picked011
Done000
Total2444248
Accuracy
100.0%
Counts
248 → 4
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(fma.f64 y.re x.re (-.f64 #s(literal 0 binary64) (*.f64 x.im y.im)))
100.0%
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
53.1%
(-.f64 #s(literal 0 binary64) (*.f64 x.im y.im))
49.4%
(*.f64 x.re y.re)
Compiler

Compiled 39 to 27 computations (30.8% saved)

simplify28.0ms (0.7%)

Algorithm
egg-herbie
Localize:

Found 6 expressions of interest:

NewMetricScoreProgram
cost-diff0
(*.f64 x.im y.im)
cost-diff0
(-.f64 #s(literal 0 binary64) (*.f64 x.im y.im))
cost-diff6400
(fma.f64 y.re x.re (-.f64 #s(literal 0 binary64) (*.f64 x.im y.im)))
cost-diff0
(*.f64 x.im y.im)
cost-diff0
(-.f64 #s(literal 0 binary64) (*.f64 x.im y.im))
cost-diff0
(*.f64 x.re y.re)
Rules
456×fnmadd-define
360×fma-define
336×sum3-define
240×sum4-define
240×sum5-define
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01034
12133
24633
310133
415533
529633
651033
774233
8111633
9144133
10146333
0146333
Stop Event
iter limit
saturated
Calls
Call 1
Inputs
(* x.re y.re)
x.re
y.re
(- 0 (* x.im y.im))
0
(* x.im y.im)
x.im
y.im
(+ (* y.re x.re) (- 0 (* x.im y.im)))
y.re
x.re
(- 0 (* x.im y.im))
0
(* x.im y.im)
x.im
y.im
Outputs
(* x.re y.re)
(*.f64 x.re y.re)
x.re
y.re
(- 0 (* x.im y.im))
(-.f64 #s(literal 0 binary64) (*.f64 x.im y.im))
0
#s(literal 0 binary64)
(* x.im y.im)
(*.f64 x.im y.im)
x.im
y.im
(+ (* y.re x.re) (- 0 (* x.im y.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
y.re
x.re
(- 0 (* x.im y.im))
(-.f64 #s(literal 0 binary64) (*.f64 x.im y.im))
0
#s(literal 0 binary64)
(* x.im y.im)
(*.f64 x.im y.im)
x.im
y.im

localize70.0ms (1.7%)

Localize:

Found 6 expressions of interest:

NewMetricScoreProgram
accuracy100.0%
(fma.f64 y.re x.re (-.f64 #s(literal 0 binary64) (*.f64 x.im y.im)))
accuracy100.0%
(-.f64 #s(literal 0 binary64) (*.f64 x.im y.im))
accuracy100.0%
(*.f64 x.im y.im)
accuracy100.0%
(-.f64 #s(literal 0 binary64) (*.f64 x.im y.im))
accuracy100.0%
(*.f64 x.im y.im)
accuracy100.0%
(*.f64 x.re y.re)
Results
52.0ms256×0valid
Compiler

Compiled 42 to 10 computations (76.2% saved)

Precisions
Click to see histograms. Total time spent on operations: 25.0ms
compiled-spec: 10.0ms (39.3% of total)
ival-add: 8.0ms (31.5% of total)
ival-mult: 6.0ms (23.6% of total)
ival-sub: 1.0ms (3.9% of total)
const: 0.0ms (0% of total)
backward-pass: 0.0ms (0% of total)

series25.0ms (0.6%)

Counts
4 → 120
Calls
Call 1
Inputs
#<alt (* x.re y.re)>
#<alt (- 0 (* x.im y.im))>
#<alt (* x.im y.im)>
#<alt (+ (* y.re x.re) (- 0 (* x.im y.im)))>
Outputs
#<alt (* x.re y.re)>
#<alt (* x.re y.re)>
#<alt (* x.re y.re)>
#<alt (* x.re y.re)>
#<alt (* x.re y.re)>
#<alt (* x.re y.re)>
#<alt (* x.re y.re)>
#<alt (* x.re y.re)>
#<alt (* x.re y.re)>
#<alt (* x.re y.re)>
#<alt (* x.re y.re)>
#<alt (* x.re y.re)>
#<alt (* x.re y.re)>
#<alt (* x.re y.re)>
#<alt (* x.re y.re)>
#<alt (* x.re y.re)>
#<alt (* x.re y.re)>
#<alt (* x.re y.re)>
#<alt (* x.re y.re)>
#<alt (* x.re y.re)>
#<alt (* x.re y.re)>
#<alt (* x.re y.re)>
#<alt (* x.re y.re)>
#<alt (* x.re y.re)>
#<alt (* -1 (* x.im y.im))>
#<alt (* -1 (* x.im y.im))>
#<alt (* -1 (* x.im y.im))>
#<alt (* -1 (* x.im y.im))>
#<alt (* -1 (* x.im y.im))>
#<alt (* -1 (* x.im y.im))>
#<alt (* -1 (* x.im y.im))>
#<alt (* -1 (* x.im y.im))>
#<alt (* -1 (* x.im y.im))>
#<alt (* -1 (* x.im y.im))>
#<alt (* -1 (* x.im y.im))>
#<alt (* -1 (* x.im y.im))>
#<alt (* -1 (* x.im y.im))>
#<alt (* -1 (* x.im y.im))>
#<alt (* -1 (* x.im y.im))>
#<alt (* -1 (* x.im y.im))>
#<alt (* -1 (* x.im y.im))>
#<alt (* -1 (* x.im y.im))>
#<alt (* -1 (* x.im y.im))>
#<alt (* -1 (* x.im y.im))>
#<alt (* -1 (* x.im y.im))>
#<alt (* -1 (* x.im y.im))>
#<alt (* -1 (* x.im y.im))>
#<alt (* -1 (* x.im y.im))>
#<alt (* x.im y.im)>
#<alt (* x.im y.im)>
#<alt (* x.im y.im)>
#<alt (* x.im y.im)>
#<alt (* x.im y.im)>
#<alt (* x.im y.im)>
#<alt (* x.im y.im)>
#<alt (* x.im y.im)>
#<alt (* x.im y.im)>
#<alt (* x.im y.im)>
#<alt (* x.im y.im)>
#<alt (* x.im y.im)>
#<alt (* x.im y.im)>
#<alt (* x.im y.im)>
#<alt (* x.im y.im)>
#<alt (* x.im y.im)>
#<alt (* x.im y.im)>
#<alt (* x.im y.im)>
#<alt (* x.im y.im)>
#<alt (* x.im y.im)>
#<alt (* x.im y.im)>
#<alt (* x.im y.im)>
#<alt (* x.im y.im)>
#<alt (* x.im y.im)>
#<alt (* -1 (* x.im y.im))>
#<alt (- (* x.re y.re) (* x.im y.im))>
#<alt (- (* x.re y.re) (* x.im y.im))>
#<alt (- (* x.re y.re) (* x.im y.im))>
#<alt (* x.re y.re)>
#<alt (* y.re (+ x.re (* -1 (/ (* x.im y.im) y.re))))>
#<alt (* y.re (+ x.re (* -1 (/ (* x.im y.im) y.re))))>
#<alt (* y.re (+ x.re (* -1 (/ (* x.im y.im) y.re))))>
#<alt (* x.re y.re)>
#<alt (* -1 (* y.re (+ (* -1 x.re) (/ (* x.im y.im) y.re))))>
#<alt (* -1 (* y.re (+ (* -1 x.re) (/ (* x.im y.im) y.re))))>
#<alt (* -1 (* y.re (+ (* -1 x.re) (/ (* x.im y.im) y.re))))>
#<alt (* -1 (* x.im y.im))>
#<alt (- (* x.re y.re) (* x.im y.im))>
#<alt (- (* x.re y.re) (* x.im y.im))>
#<alt (- (* x.re y.re) (* x.im y.im))>
#<alt (* x.re y.re)>
#<alt (* x.re (+ y.re (* -1 (/ (* x.im y.im) x.re))))>
#<alt (* x.re (+ y.re (* -1 (/ (* x.im y.im) x.re))))>
#<alt (* x.re (+ y.re (* -1 (/ (* x.im y.im) x.re))))>
#<alt (* x.re y.re)>
#<alt (* -1 (* x.re (+ (* -1 y.re) (/ (* x.im y.im) x.re))))>
#<alt (* -1 (* x.re (+ (* -1 y.re) (/ (* x.im y.im) x.re))))>
#<alt (* -1 (* x.re (+ (* -1 y.re) (/ (* x.im y.im) x.re))))>
#<alt (* x.re y.re)>
#<alt (+ (* -1 (* x.im y.im)) (* x.re y.re))>
#<alt (+ (* -1 (* x.im y.im)) (* x.re y.re))>
#<alt (+ (* -1 (* x.im y.im)) (* x.re y.re))>
#<alt (* -1 (* x.im y.im))>
#<alt (* x.im (- (/ (* x.re y.re) x.im) y.im))>
#<alt (* x.im (- (/ (* x.re y.re) x.im) y.im))>
#<alt (* x.im (- (/ (* x.re y.re) x.im) y.im))>
#<alt (* -1 (* x.im y.im))>
#<alt (* -1 (* x.im (- (* -1 (/ (* x.re y.re) x.im)) (* -1 y.im))))>
#<alt (* -1 (* x.im (- (* -1 (/ (* x.re y.re) x.im)) (* -1 y.im))))>
#<alt (* -1 (* x.im (- (* -1 (/ (* x.re y.re) x.im)) (* -1 y.im))))>
#<alt (* x.re y.re)>
#<alt (+ (* -1 (* x.im y.im)) (* x.re y.re))>
#<alt (+ (* -1 (* x.im y.im)) (* x.re y.re))>
#<alt (+ (* -1 (* x.im y.im)) (* x.re y.re))>
#<alt (* -1 (* x.im y.im))>
#<alt (* y.im (- (/ (* x.re y.re) y.im) x.im))>
#<alt (* y.im (- (/ (* x.re y.re) y.im) x.im))>
#<alt (* y.im (- (/ (* x.re y.re) y.im) x.im))>
#<alt (* -1 (* x.im y.im))>
#<alt (* -1 (* y.im (- (* -1 (/ (* x.re y.re) y.im)) (* -1 x.im))))>
#<alt (* -1 (* y.im (- (* -1 (/ (* x.re y.re) y.im)) (* -1 x.im))))>
#<alt (* -1 (* y.im (- (* -1 (/ (* x.re y.re) y.im)) (* -1 x.im))))>
Calls

30 calls:

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

rewrite142.0ms (3.5%)

Algorithm
batch-egg-rewrite
Rules
2330×*-lowering-*.f32
2330×*-lowering-*.f64
1596×/-lowering-/.f32
1596×/-lowering-/.f64
1400×frac-times
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01018
14617
246015
0832615
Stop Event
iter limit
node limit
Counts
4 → 385
Calls
Call 1
Inputs
(* x.re y.re)
(- 0 (* x.im y.im))
(* x.im y.im)
(+ (* y.re x.re) (- 0 (* x.im y.im)))
Outputs
(+.f64 #s(literal 0 binary64) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) #s(literal 0 binary64))
(-.f64 (*.f64 x.re y.re) #s(literal 0 binary64))
(-.f64 (*.f64 x.re y.re) (/.f64 #s(literal 0 binary64) (*.f64 x.re y.re)))
(fma.f64 x.re y.re #s(literal 0 binary64))
(fma.f64 y.re x.re #s(literal 0 binary64))
(/.f64 (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re))) (*.f64 x.re y.re))
(/.f64 (*.f64 (*.f64 x.re y.re) (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re)))) (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re))))
(/.f64 #s(literal 1 binary64) (/.f64 (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re))) (*.f64 (*.f64 x.re y.re) (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re))))))
(/.f64 #s(literal 1 binary64) (/.f64 (*.f64 x.re y.re) (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re)))))
(/.f64 (neg.f64 (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re)))) (-.f64 #s(literal 0 binary64) (*.f64 x.re y.re)))
(/.f64 (neg.f64 (*.f64 (*.f64 x.re y.re) (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re))))) (neg.f64 (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re)))))
(/.f64 (-.f64 (*.f64 (*.f64 x.re y.re) (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re)))) #s(literal 0 binary64)) (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re))))
(/.f64 (-.f64 #s(literal 0 binary64) (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re)))) (-.f64 #s(literal 0 binary64) (*.f64 x.re y.re)))
(*.f64 x.re y.re)
(*.f64 y.re x.re)
(*.f64 (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re))) (/.f64 #s(literal 1 binary64) (*.f64 x.re y.re)))
(*.f64 (*.f64 (*.f64 x.re y.re) (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re)))) (/.f64 #s(literal 1 binary64) (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re)))))
(+.f64 #s(literal 0 binary64) (*.f64 x.im y.im))
(+.f64 (*.f64 x.im y.im) #s(literal 0 binary64))
(-.f64 #s(literal 0 binary64) (*.f64 x.im y.im))
(-.f64 (*.f64 x.im y.im) #s(literal 0 binary64))
(fma.f64 x.im y.im #s(literal 0 binary64))
(fma.f64 x.im (-.f64 #s(literal 0 binary64) y.im) #s(literal 0 binary64))
(fma.f64 y.im x.im #s(literal 0 binary64))
(fma.f64 y.im (-.f64 #s(literal 0 binary64) x.im) #s(literal 0 binary64))
(fma.f64 (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))) (/.f64 #s(literal 1 binary64) (*.f64 x.im y.im)) #s(literal 0 binary64))
(fma.f64 (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))) (/.f64 (/.f64 #s(literal 1 binary64) (*.f64 x.im y.im)) (*.f64 x.im y.im)) #s(literal 0 binary64))
(fma.f64 (-.f64 #s(literal 0 binary64) x.im) y.im #s(literal 0 binary64))
(fma.f64 #s(literal -1 binary64) (*.f64 x.im y.im) #s(literal 0 binary64))
(fma.f64 (-.f64 #s(literal 0 binary64) y.im) x.im #s(literal 0 binary64))
(neg.f64 (*.f64 x.im y.im))
(/.f64 (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))) (*.f64 x.im y.im))
(/.f64 (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))))
(/.f64 (*.f64 (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))) (*.f64 (*.f64 x.im y.im) (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 (*.f64 x.im (*.f64 y.im y.im)) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))))))) (*.f64 (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))) (*.f64 (*.f64 x.im y.im) (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 (*.f64 x.im (*.f64 y.im y.im)) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))))))))
(/.f64 (*.f64 (*.f64 x.im y.im) (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 (*.f64 x.im (*.f64 y.im y.im)) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))))))) (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 (*.f64 x.im (*.f64 y.im y.im)) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))))))
(/.f64 (*.f64 x.im (*.f64 (*.f64 x.im (*.f64 y.im y.im)) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))))) (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))))
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (*.f64 x.im y.im)))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 #s(literal 1 binary64) (*.f64 x.im y.im)) #s(literal 1 binary64)))
(/.f64 (/.f64 #s(literal 1 binary64) (*.f64 x.im y.im)) (/.f64 (/.f64 #s(literal 1 binary64) (*.f64 x.im y.im)) (*.f64 x.im y.im)))
(/.f64 #s(literal -1 binary64) (/.f64 #s(literal 1 binary64) (*.f64 x.im y.im)))
(/.f64 (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 (*.f64 x.im (*.f64 y.im y.im)) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))))) (*.f64 x.im (*.f64 (*.f64 x.im (*.f64 y.im y.im)) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))))))
(/.f64 (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 (*.f64 x.im (*.f64 y.im y.im)) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))))))) (*.f64 x.im (*.f64 (*.f64 x.im (*.f64 y.im y.im)) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))))))
(/.f64 (*.f64 (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))) #s(literal 1 binary64)) (*.f64 x.im y.im))
(/.f64 (*.f64 (*.f64 (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))) (*.f64 (*.f64 x.im y.im) (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 (*.f64 x.im (*.f64 y.im y.im)) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))))))) #s(literal 1 binary64)) (*.f64 (*.f64 (*.f64 x.im y.im) (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 (*.f64 x.im (*.f64 y.im y.im)) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))))))) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))))
(/.f64 (*.f64 (*.f64 (*.f64 x.im y.im) (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 (*.f64 x.im (*.f64 y.im y.im)) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))))))) #s(literal 1 binary64)) (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 (*.f64 x.im (*.f64 y.im y.im)) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))))))
(/.f64 (*.f64 (*.f64 x.im (*.f64 (*.f64 x.im (*.f64 y.im y.im)) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))))) #s(literal 1 binary64)) (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))))
(/.f64 (*.f64 (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))) #s(literal 1 binary64)) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))))
(/.f64 (*.f64 (*.f64 (*.f64 x.im y.im) (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 (*.f64 x.im (*.f64 y.im y.im)) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))))))) (/.f64 #s(literal 1 binary64) (*.f64 x.im y.im))) (*.f64 x.im (*.f64 (*.f64 x.im (*.f64 y.im y.im)) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))))))
(/.f64 (/.f64 (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))) y.im) x.im)
(/.f64 (/.f64 (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))) y.im) (-.f64 #s(literal 0 binary64) x.im))
(/.f64 (/.f64 (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))) x.im) y.im)
(/.f64 (/.f64 (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))) x.im) (-.f64 #s(literal 0 binary64) y.im))
(/.f64 (/.f64 (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))) (*.f64 y.im y.im)) (*.f64 x.im x.im))
(/.f64 (/.f64 (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))) (*.f64 x.im x.im)) (*.f64 y.im y.im))
(/.f64 (/.f64 (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))) y.im) (*.f64 y.im (*.f64 x.im x.im)))
(/.f64 (/.f64 (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))) x.im) (*.f64 x.im (*.f64 y.im y.im)))
(/.f64 (/.f64 (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))) (*.f64 y.im (*.f64 x.im x.im))) y.im)
(/.f64 (/.f64 (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))) (*.f64 x.im (*.f64 y.im y.im))) x.im)
(/.f64 (*.f64 (*.f64 (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))) (*.f64 (*.f64 x.im y.im) (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 (*.f64 x.im (*.f64 y.im y.im)) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))))))) (/.f64 (/.f64 #s(literal 1 binary64) (*.f64 x.im y.im)) (*.f64 x.im y.im))) (*.f64 (*.f64 x.im y.im) (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 (*.f64 x.im (*.f64 y.im y.im)) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))))))))
(/.f64 (/.f64 (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))) (/.f64 #s(literal 1 binary64) (*.f64 x.im y.im)))
(/.f64 (/.f64 (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))) (-.f64 #s(literal 0 binary64) x.im)) y.im)
(/.f64 (/.f64 (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))) #s(literal -1 binary64)) (*.f64 x.im y.im))
(/.f64 (/.f64 (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))) (-.f64 #s(literal 0 binary64) y.im)) x.im)
(pow.f64 (*.f64 x.im y.im) #s(literal 1 binary64))
(pow.f64 (/.f64 #s(literal 1 binary64) (*.f64 x.im y.im)) #s(literal -1 binary64))
(*.f64 x.im y.im)
(*.f64 x.im (-.f64 #s(literal 0 binary64) y.im))
(*.f64 x.im (neg.f64 (-.f64 #s(literal 0 binary64) y.im)))
(*.f64 x.im (/.f64 (*.f64 x.im (*.f64 y.im y.im)) (*.f64 x.im y.im)))
(*.f64 y.im x.im)
(*.f64 y.im (-.f64 #s(literal 0 binary64) x.im))
(*.f64 y.im (neg.f64 (-.f64 #s(literal 0 binary64) x.im)))
(*.f64 y.im (/.f64 (*.f64 y.im (*.f64 x.im x.im)) (*.f64 x.im y.im)))
(*.f64 (*.f64 x.im y.im) #s(literal -1 binary64))
(*.f64 (*.f64 x.im y.im) (/.f64 (*.f64 x.im y.im) (*.f64 x.im y.im)))
(*.f64 (*.f64 x.im y.im) (*.f64 (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))) (/.f64 (/.f64 #s(literal 1 binary64) (*.f64 x.im y.im)) (*.f64 x.im y.im))))
(*.f64 (*.f64 x.im y.im) (/.f64 (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))))
(*.f64 (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))) (/.f64 #s(literal 1 binary64) (*.f64 x.im y.im)))
(*.f64 (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))) (/.f64 (/.f64 #s(literal 1 binary64) (*.f64 x.im y.im)) (*.f64 x.im y.im)))
(*.f64 (-.f64 #s(literal 0 binary64) x.im) y.im)
(*.f64 (-.f64 #s(literal 0 binary64) x.im) (-.f64 #s(literal 0 binary64) y.im))
(*.f64 (*.f64 x.im (*.f64 x.im x.im)) (/.f64 (*.f64 y.im (*.f64 y.im y.im)) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))))
(*.f64 (*.f64 y.im (*.f64 y.im y.im)) (/.f64 (*.f64 x.im (*.f64 x.im x.im)) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))))
(*.f64 #s(literal 1 binary64) (*.f64 x.im y.im))
(*.f64 (/.f64 #s(literal 1 binary64) (*.f64 x.im y.im)) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))))
(*.f64 (/.f64 (/.f64 #s(literal 1 binary64) (*.f64 x.im y.im)) (*.f64 x.im y.im)) (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))))
(*.f64 #s(literal -1 binary64) (*.f64 x.im y.im))
(*.f64 (pow.f64 (*.f64 x.im y.im) #s(literal 3/2 binary64)) (*.f64 (pow.f64 (*.f64 x.im y.im) #s(literal 3/2 binary64)) (/.f64 (/.f64 #s(literal 1 binary64) (*.f64 x.im y.im)) (*.f64 x.im y.im))))
(*.f64 (pow.f64 (*.f64 x.im y.im) #s(literal 3/2 binary64)) (/.f64 (pow.f64 (*.f64 x.im y.im) #s(literal 3/2 binary64)) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))))
(*.f64 (*.f64 x.im x.im) (/.f64 (*.f64 y.im y.im) (*.f64 x.im y.im)))
(*.f64 (*.f64 y.im y.im) (/.f64 (*.f64 x.im x.im) (*.f64 x.im y.im)))
(*.f64 (-.f64 #s(literal 0 binary64) y.im) x.im)
(*.f64 (-.f64 #s(literal 0 binary64) y.im) (-.f64 #s(literal 0 binary64) x.im))
(*.f64 (*.f64 y.im (*.f64 x.im x.im)) (/.f64 y.im (*.f64 x.im y.im)))
(*.f64 (*.f64 x.im (*.f64 y.im y.im)) (/.f64 x.im (*.f64 x.im y.im)))
(*.f64 (neg.f64 (-.f64 #s(literal 0 binary64) y.im)) x.im)
(*.f64 (neg.f64 (-.f64 #s(literal 0 binary64) x.im)) y.im)
(*.f64 (/.f64 (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))) (*.f64 y.im y.im)) (/.f64 (*.f64 x.im y.im) (*.f64 x.im x.im)))
(*.f64 (/.f64 (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))) (*.f64 x.im x.im)) (/.f64 (*.f64 x.im y.im) (*.f64 y.im y.im)))
(*.f64 (/.f64 (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))) y.im) (/.f64 (*.f64 x.im y.im) (*.f64 y.im (*.f64 x.im x.im))))
(*.f64 (/.f64 (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))) x.im) (/.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 y.im y.im))))
(*.f64 (/.f64 (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))) (*.f64 y.im (*.f64 x.im x.im))) (/.f64 (*.f64 x.im y.im) y.im))
(*.f64 (/.f64 (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))) (*.f64 x.im (*.f64 y.im y.im))) (/.f64 (*.f64 x.im y.im) x.im))
(*.f64 (/.f64 (*.f64 x.im (*.f64 x.im x.im)) x.im) (/.f64 (*.f64 y.im (*.f64 y.im y.im)) (*.f64 x.im (*.f64 y.im y.im))))
(*.f64 (/.f64 (*.f64 x.im (*.f64 x.im x.im)) y.im) (/.f64 (*.f64 y.im (*.f64 y.im y.im)) (*.f64 y.im (*.f64 x.im x.im))))
(*.f64 (/.f64 (*.f64 x.im (*.f64 x.im x.im)) (*.f64 x.im y.im)) (/.f64 (*.f64 y.im (*.f64 y.im y.im)) (*.f64 x.im y.im)))
(*.f64 (/.f64 (*.f64 y.im (*.f64 y.im y.im)) (*.f64 x.im y.im)) (/.f64 (*.f64 x.im (*.f64 x.im x.im)) (*.f64 x.im y.im)))
(*.f64 (/.f64 (*.f64 x.im (*.f64 x.im x.im)) (*.f64 x.im x.im)) (/.f64 (*.f64 y.im (*.f64 y.im y.im)) (*.f64 y.im y.im)))
(*.f64 (/.f64 (*.f64 y.im (*.f64 y.im y.im)) (*.f64 y.im y.im)) (/.f64 (*.f64 x.im (*.f64 x.im x.im)) (*.f64 x.im x.im)))
(*.f64 (/.f64 (*.f64 x.im (*.f64 x.im x.im)) (*.f64 y.im y.im)) (/.f64 (*.f64 y.im (*.f64 y.im y.im)) (*.f64 x.im x.im)))
(*.f64 (/.f64 (*.f64 y.im (*.f64 y.im y.im)) (*.f64 x.im x.im)) (/.f64 (*.f64 x.im (*.f64 x.im x.im)) (*.f64 y.im y.im)))
(*.f64 (/.f64 (*.f64 x.im (*.f64 x.im x.im)) (*.f64 y.im (*.f64 x.im x.im))) (/.f64 (*.f64 y.im (*.f64 y.im y.im)) y.im))
(*.f64 (/.f64 (*.f64 y.im (*.f64 y.im y.im)) y.im) (/.f64 (*.f64 x.im (*.f64 x.im x.im)) (*.f64 y.im (*.f64 x.im x.im))))
(*.f64 (/.f64 (*.f64 x.im (*.f64 x.im x.im)) (*.f64 x.im (*.f64 y.im y.im))) (/.f64 (*.f64 y.im (*.f64 y.im y.im)) x.im))
(*.f64 (/.f64 (*.f64 y.im (*.f64 y.im y.im)) x.im) (/.f64 (*.f64 x.im (*.f64 x.im x.im)) (*.f64 x.im (*.f64 y.im y.im))))
(*.f64 (/.f64 (*.f64 y.im (*.f64 y.im y.im)) (*.f64 y.im (*.f64 x.im x.im))) (/.f64 (*.f64 x.im (*.f64 x.im x.im)) y.im))
(*.f64 (/.f64 (*.f64 y.im (*.f64 y.im y.im)) (*.f64 x.im (*.f64 y.im y.im))) (/.f64 (*.f64 x.im (*.f64 x.im x.im)) x.im))
(*.f64 (/.f64 x.im x.im) (/.f64 (*.f64 x.im (*.f64 y.im y.im)) y.im))
(*.f64 (/.f64 x.im y.im) (/.f64 (*.f64 x.im (*.f64 y.im y.im)) x.im))
(*.f64 (/.f64 y.im x.im) (/.f64 (*.f64 y.im (*.f64 x.im x.im)) y.im))
(*.f64 (/.f64 y.im y.im) (/.f64 (*.f64 y.im (*.f64 x.im x.im)) x.im))
(*.f64 (/.f64 (*.f64 x.im y.im) x.im) (/.f64 (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))) (*.f64 x.im (*.f64 y.im y.im))))
(*.f64 (/.f64 (*.f64 x.im y.im) x.im) (/.f64 (*.f64 x.im y.im) y.im))
(*.f64 (/.f64 (*.f64 x.im y.im) y.im) (/.f64 (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))) (*.f64 y.im (*.f64 x.im x.im))))
(*.f64 (/.f64 (*.f64 x.im y.im) y.im) (/.f64 (*.f64 x.im y.im) x.im))
(*.f64 (/.f64 (*.f64 x.im x.im) x.im) (/.f64 (*.f64 y.im y.im) y.im))
(*.f64 (/.f64 (*.f64 y.im y.im) y.im) (/.f64 (*.f64 x.im x.im) x.im))
(*.f64 (/.f64 (*.f64 x.im x.im) y.im) (/.f64 (*.f64 y.im y.im) x.im))
(*.f64 (/.f64 (*.f64 y.im y.im) x.im) (/.f64 (*.f64 x.im x.im) y.im))
(*.f64 (/.f64 (*.f64 y.im (*.f64 x.im x.im)) x.im) (/.f64 y.im y.im))
(*.f64 (/.f64 (*.f64 y.im (*.f64 x.im x.im)) y.im) (/.f64 y.im x.im))
(*.f64 (/.f64 (*.f64 x.im (*.f64 y.im y.im)) x.im) (/.f64 x.im y.im))
(*.f64 (/.f64 (*.f64 x.im (*.f64 y.im y.im)) y.im) (/.f64 x.im x.im))
(*.f64 (/.f64 (*.f64 x.im y.im) (*.f64 x.im y.im)) (*.f64 x.im y.im))
(*.f64 (/.f64 (*.f64 x.im y.im) (*.f64 x.im x.im)) (/.f64 (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))) (*.f64 y.im y.im)))
(*.f64 (/.f64 (*.f64 x.im y.im) (*.f64 y.im y.im)) (/.f64 (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))) (*.f64 x.im x.im)))
(*.f64 (/.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 y.im y.im))) (/.f64 (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))) x.im))
(*.f64 (/.f64 (*.f64 x.im y.im) (*.f64 y.im (*.f64 x.im x.im))) (/.f64 (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))) y.im))
(*.f64 (/.f64 (pow.f64 (*.f64 x.im y.im) #s(literal 3/2 binary64)) x.im) (/.f64 (pow.f64 (*.f64 x.im y.im) #s(literal 3/2 binary64)) (*.f64 x.im (*.f64 y.im y.im))))
(*.f64 (/.f64 (pow.f64 (*.f64 x.im y.im) #s(literal 3/2 binary64)) y.im) (/.f64 (pow.f64 (*.f64 x.im y.im) #s(literal 3/2 binary64)) (*.f64 y.im (*.f64 x.im x.im))))
(*.f64 (/.f64 (pow.f64 (*.f64 x.im y.im) #s(literal 3/2 binary64)) (*.f64 x.im y.im)) (/.f64 (pow.f64 (*.f64 x.im y.im) #s(literal 3/2 binary64)) (*.f64 x.im y.im)))
(*.f64 (/.f64 (pow.f64 (*.f64 x.im y.im) #s(literal 3/2 binary64)) (*.f64 x.im x.im)) (/.f64 (pow.f64 (*.f64 x.im y.im) #s(literal 3/2 binary64)) (*.f64 y.im y.im)))
(*.f64 (/.f64 (pow.f64 (*.f64 x.im y.im) #s(literal 3/2 binary64)) (*.f64 y.im y.im)) (/.f64 (pow.f64 (*.f64 x.im y.im) #s(literal 3/2 binary64)) (*.f64 x.im x.im)))
(*.f64 (/.f64 (pow.f64 (*.f64 x.im y.im) #s(literal 3/2 binary64)) (*.f64 y.im (*.f64 x.im x.im))) (/.f64 (pow.f64 (*.f64 x.im y.im) #s(literal 3/2 binary64)) y.im))
(*.f64 (/.f64 (pow.f64 (*.f64 x.im y.im) #s(literal 3/2 binary64)) (*.f64 x.im (*.f64 y.im y.im))) (/.f64 (pow.f64 (*.f64 x.im y.im) #s(literal 3/2 binary64)) x.im))
(*.f64 (/.f64 (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))) (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 (*.f64 x.im (*.f64 y.im y.im)) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))))))) (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))))
(*.f64 (/.f64 (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))) #s(literal 1 binary64)) (/.f64 #s(literal 1 binary64) (*.f64 x.im y.im)))
(*.f64 (*.f64 y.im #s(literal -1 binary64)) x.im)
(*.f64 (/.f64 (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))) (*.f64 x.im y.im))
(*.f64 (/.f64 (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))) (*.f64 (*.f64 x.im y.im) (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 (*.f64 x.im (*.f64 y.im y.im)) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))))))) (*.f64 x.im (*.f64 (*.f64 x.im (*.f64 y.im y.im)) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))))))
(*.f64 (/.f64 (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))) (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))))) (*.f64 x.im y.im))
(+.f64 #s(literal 0 binary64) (*.f64 x.im y.im))
(+.f64 (*.f64 x.im y.im) #s(literal 0 binary64))
(-.f64 #s(literal 0 binary64) (*.f64 x.im y.im))
(-.f64 (*.f64 x.im y.im) #s(literal 0 binary64))
(fma.f64 x.im y.im #s(literal 0 binary64))
(fma.f64 x.im (-.f64 #s(literal 0 binary64) y.im) #s(literal 0 binary64))
(fma.f64 y.im x.im #s(literal 0 binary64))
(fma.f64 y.im (-.f64 #s(literal 0 binary64) x.im) #s(literal 0 binary64))
(fma.f64 (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))) (/.f64 #s(literal 1 binary64) (*.f64 x.im y.im)) #s(literal 0 binary64))
(fma.f64 (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))) (/.f64 (/.f64 #s(literal 1 binary64) (*.f64 x.im y.im)) (*.f64 x.im y.im)) #s(literal 0 binary64))
(fma.f64 (-.f64 #s(literal 0 binary64) x.im) y.im #s(literal 0 binary64))
(fma.f64 #s(literal -1 binary64) (*.f64 x.im y.im) #s(literal 0 binary64))
(fma.f64 (-.f64 #s(literal 0 binary64) y.im) x.im #s(literal 0 binary64))
(neg.f64 (*.f64 x.im y.im))
(/.f64 (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))) (*.f64 x.im y.im))
(/.f64 (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))))
(/.f64 (*.f64 (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))) (*.f64 (*.f64 x.im y.im) (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 (*.f64 x.im (*.f64 y.im y.im)) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))))))) (*.f64 (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))) (*.f64 (*.f64 x.im y.im) (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 (*.f64 x.im (*.f64 y.im y.im)) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))))))))
(/.f64 (*.f64 (*.f64 x.im y.im) (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 (*.f64 x.im (*.f64 y.im y.im)) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))))))) (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 (*.f64 x.im (*.f64 y.im y.im)) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))))))
(/.f64 (*.f64 x.im (*.f64 (*.f64 x.im (*.f64 y.im y.im)) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))))) (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))))
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (*.f64 x.im y.im)))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 #s(literal 1 binary64) (*.f64 x.im y.im)) #s(literal 1 binary64)))
(/.f64 (/.f64 #s(literal 1 binary64) (*.f64 x.im y.im)) (/.f64 (/.f64 #s(literal 1 binary64) (*.f64 x.im y.im)) (*.f64 x.im y.im)))
(/.f64 #s(literal -1 binary64) (/.f64 #s(literal 1 binary64) (*.f64 x.im y.im)))
(/.f64 (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 (*.f64 x.im (*.f64 y.im y.im)) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))))) (*.f64 x.im (*.f64 (*.f64 x.im (*.f64 y.im y.im)) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))))))
(/.f64 (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 (*.f64 x.im (*.f64 y.im y.im)) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))))))) (*.f64 x.im (*.f64 (*.f64 x.im (*.f64 y.im y.im)) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))))))
(/.f64 (*.f64 (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))) #s(literal 1 binary64)) (*.f64 x.im y.im))
(/.f64 (*.f64 (*.f64 (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))) (*.f64 (*.f64 x.im y.im) (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 (*.f64 x.im (*.f64 y.im y.im)) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))))))) #s(literal 1 binary64)) (*.f64 (*.f64 (*.f64 x.im y.im) (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 (*.f64 x.im (*.f64 y.im y.im)) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))))))) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))))
(/.f64 (*.f64 (*.f64 (*.f64 x.im y.im) (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 (*.f64 x.im (*.f64 y.im y.im)) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))))))) #s(literal 1 binary64)) (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 (*.f64 x.im (*.f64 y.im y.im)) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))))))
(/.f64 (*.f64 (*.f64 x.im (*.f64 (*.f64 x.im (*.f64 y.im y.im)) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))))) #s(literal 1 binary64)) (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))))
(/.f64 (*.f64 (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))) #s(literal 1 binary64)) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))))
(/.f64 (*.f64 (*.f64 (*.f64 x.im y.im) (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 (*.f64 x.im (*.f64 y.im y.im)) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))))))) (/.f64 #s(literal 1 binary64) (*.f64 x.im y.im))) (*.f64 x.im (*.f64 (*.f64 x.im (*.f64 y.im y.im)) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))))))
(/.f64 (/.f64 (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))) y.im) x.im)
(/.f64 (/.f64 (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))) y.im) (-.f64 #s(literal 0 binary64) x.im))
(/.f64 (/.f64 (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))) x.im) y.im)
(/.f64 (/.f64 (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))) x.im) (-.f64 #s(literal 0 binary64) y.im))
(/.f64 (/.f64 (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))) (*.f64 y.im y.im)) (*.f64 x.im x.im))
(/.f64 (/.f64 (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))) (*.f64 x.im x.im)) (*.f64 y.im y.im))
(/.f64 (/.f64 (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))) y.im) (*.f64 y.im (*.f64 x.im x.im)))
(/.f64 (/.f64 (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))) x.im) (*.f64 x.im (*.f64 y.im y.im)))
(/.f64 (/.f64 (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))) (*.f64 y.im (*.f64 x.im x.im))) y.im)
(/.f64 (/.f64 (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))) (*.f64 x.im (*.f64 y.im y.im))) x.im)
(/.f64 (*.f64 (*.f64 (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))) (*.f64 (*.f64 x.im y.im) (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 (*.f64 x.im (*.f64 y.im y.im)) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))))))) (/.f64 (/.f64 #s(literal 1 binary64) (*.f64 x.im y.im)) (*.f64 x.im y.im))) (*.f64 (*.f64 x.im y.im) (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 (*.f64 x.im (*.f64 y.im y.im)) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))))))))
(/.f64 (/.f64 (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))) (/.f64 #s(literal 1 binary64) (*.f64 x.im y.im)))
(/.f64 (/.f64 (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))) (-.f64 #s(literal 0 binary64) x.im)) y.im)
(/.f64 (/.f64 (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))) #s(literal -1 binary64)) (*.f64 x.im y.im))
(/.f64 (/.f64 (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))) (-.f64 #s(literal 0 binary64) y.im)) x.im)
(pow.f64 (*.f64 x.im y.im) #s(literal 1 binary64))
(pow.f64 (/.f64 #s(literal 1 binary64) (*.f64 x.im y.im)) #s(literal -1 binary64))
(*.f64 x.im y.im)
(*.f64 x.im (-.f64 #s(literal 0 binary64) y.im))
(*.f64 x.im (neg.f64 (-.f64 #s(literal 0 binary64) y.im)))
(*.f64 x.im (/.f64 (*.f64 x.im (*.f64 y.im y.im)) (*.f64 x.im y.im)))
(*.f64 y.im x.im)
(*.f64 y.im (-.f64 #s(literal 0 binary64) x.im))
(*.f64 y.im (neg.f64 (-.f64 #s(literal 0 binary64) x.im)))
(*.f64 y.im (/.f64 (*.f64 y.im (*.f64 x.im x.im)) (*.f64 x.im y.im)))
(*.f64 (*.f64 x.im y.im) #s(literal -1 binary64))
(*.f64 (*.f64 x.im y.im) (/.f64 (*.f64 x.im y.im) (*.f64 x.im y.im)))
(*.f64 (*.f64 x.im y.im) (*.f64 (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))) (/.f64 (/.f64 #s(literal 1 binary64) (*.f64 x.im y.im)) (*.f64 x.im y.im))))
(*.f64 (*.f64 x.im y.im) (/.f64 (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))))
(*.f64 (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))) (/.f64 #s(literal 1 binary64) (*.f64 x.im y.im)))
(*.f64 (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))) (/.f64 (/.f64 #s(literal 1 binary64) (*.f64 x.im y.im)) (*.f64 x.im y.im)))
(*.f64 (-.f64 #s(literal 0 binary64) x.im) y.im)
(*.f64 (-.f64 #s(literal 0 binary64) x.im) (-.f64 #s(literal 0 binary64) y.im))
(*.f64 (*.f64 x.im (*.f64 x.im x.im)) (/.f64 (*.f64 y.im (*.f64 y.im y.im)) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))))
(*.f64 (*.f64 y.im (*.f64 y.im y.im)) (/.f64 (*.f64 x.im (*.f64 x.im x.im)) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))))
(*.f64 #s(literal 1 binary64) (*.f64 x.im y.im))
(*.f64 (/.f64 #s(literal 1 binary64) (*.f64 x.im y.im)) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))))
(*.f64 (/.f64 (/.f64 #s(literal 1 binary64) (*.f64 x.im y.im)) (*.f64 x.im y.im)) (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))))
(*.f64 #s(literal -1 binary64) (*.f64 x.im y.im))
(*.f64 (pow.f64 (*.f64 x.im y.im) #s(literal 3/2 binary64)) (*.f64 (pow.f64 (*.f64 x.im y.im) #s(literal 3/2 binary64)) (/.f64 (/.f64 #s(literal 1 binary64) (*.f64 x.im y.im)) (*.f64 x.im y.im))))
(*.f64 (pow.f64 (*.f64 x.im y.im) #s(literal 3/2 binary64)) (/.f64 (pow.f64 (*.f64 x.im y.im) #s(literal 3/2 binary64)) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))))
(*.f64 (*.f64 x.im x.im) (/.f64 (*.f64 y.im y.im) (*.f64 x.im y.im)))
(*.f64 (*.f64 y.im y.im) (/.f64 (*.f64 x.im x.im) (*.f64 x.im y.im)))
(*.f64 (-.f64 #s(literal 0 binary64) y.im) x.im)
(*.f64 (-.f64 #s(literal 0 binary64) y.im) (-.f64 #s(literal 0 binary64) x.im))
(*.f64 (*.f64 y.im (*.f64 x.im x.im)) (/.f64 y.im (*.f64 x.im y.im)))
(*.f64 (*.f64 x.im (*.f64 y.im y.im)) (/.f64 x.im (*.f64 x.im y.im)))
(*.f64 (neg.f64 (-.f64 #s(literal 0 binary64) y.im)) x.im)
(*.f64 (neg.f64 (-.f64 #s(literal 0 binary64) x.im)) y.im)
(*.f64 (/.f64 (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))) (*.f64 y.im y.im)) (/.f64 (*.f64 x.im y.im) (*.f64 x.im x.im)))
(*.f64 (/.f64 (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))) (*.f64 x.im x.im)) (/.f64 (*.f64 x.im y.im) (*.f64 y.im y.im)))
(*.f64 (/.f64 (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))) y.im) (/.f64 (*.f64 x.im y.im) (*.f64 y.im (*.f64 x.im x.im))))
(*.f64 (/.f64 (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))) x.im) (/.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 y.im y.im))))
(*.f64 (/.f64 (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))) (*.f64 y.im (*.f64 x.im x.im))) (/.f64 (*.f64 x.im y.im) y.im))
(*.f64 (/.f64 (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))) (*.f64 x.im (*.f64 y.im y.im))) (/.f64 (*.f64 x.im y.im) x.im))
(*.f64 (/.f64 (*.f64 x.im (*.f64 x.im x.im)) x.im) (/.f64 (*.f64 y.im (*.f64 y.im y.im)) (*.f64 x.im (*.f64 y.im y.im))))
(*.f64 (/.f64 (*.f64 x.im (*.f64 x.im x.im)) y.im) (/.f64 (*.f64 y.im (*.f64 y.im y.im)) (*.f64 y.im (*.f64 x.im x.im))))
(*.f64 (/.f64 (*.f64 x.im (*.f64 x.im x.im)) (*.f64 x.im y.im)) (/.f64 (*.f64 y.im (*.f64 y.im y.im)) (*.f64 x.im y.im)))
(*.f64 (/.f64 (*.f64 y.im (*.f64 y.im y.im)) (*.f64 x.im y.im)) (/.f64 (*.f64 x.im (*.f64 x.im x.im)) (*.f64 x.im y.im)))
(*.f64 (/.f64 (*.f64 x.im (*.f64 x.im x.im)) (*.f64 x.im x.im)) (/.f64 (*.f64 y.im (*.f64 y.im y.im)) (*.f64 y.im y.im)))
(*.f64 (/.f64 (*.f64 y.im (*.f64 y.im y.im)) (*.f64 y.im y.im)) (/.f64 (*.f64 x.im (*.f64 x.im x.im)) (*.f64 x.im x.im)))
(*.f64 (/.f64 (*.f64 x.im (*.f64 x.im x.im)) (*.f64 y.im y.im)) (/.f64 (*.f64 y.im (*.f64 y.im y.im)) (*.f64 x.im x.im)))
(*.f64 (/.f64 (*.f64 y.im (*.f64 y.im y.im)) (*.f64 x.im x.im)) (/.f64 (*.f64 x.im (*.f64 x.im x.im)) (*.f64 y.im y.im)))
(*.f64 (/.f64 (*.f64 x.im (*.f64 x.im x.im)) (*.f64 y.im (*.f64 x.im x.im))) (/.f64 (*.f64 y.im (*.f64 y.im y.im)) y.im))
(*.f64 (/.f64 (*.f64 y.im (*.f64 y.im y.im)) y.im) (/.f64 (*.f64 x.im (*.f64 x.im x.im)) (*.f64 y.im (*.f64 x.im x.im))))
(*.f64 (/.f64 (*.f64 x.im (*.f64 x.im x.im)) (*.f64 x.im (*.f64 y.im y.im))) (/.f64 (*.f64 y.im (*.f64 y.im y.im)) x.im))
(*.f64 (/.f64 (*.f64 y.im (*.f64 y.im y.im)) x.im) (/.f64 (*.f64 x.im (*.f64 x.im x.im)) (*.f64 x.im (*.f64 y.im y.im))))
(*.f64 (/.f64 (*.f64 y.im (*.f64 y.im y.im)) (*.f64 y.im (*.f64 x.im x.im))) (/.f64 (*.f64 x.im (*.f64 x.im x.im)) y.im))
(*.f64 (/.f64 (*.f64 y.im (*.f64 y.im y.im)) (*.f64 x.im (*.f64 y.im y.im))) (/.f64 (*.f64 x.im (*.f64 x.im x.im)) x.im))
(*.f64 (/.f64 x.im x.im) (/.f64 (*.f64 x.im (*.f64 y.im y.im)) y.im))
(*.f64 (/.f64 x.im y.im) (/.f64 (*.f64 x.im (*.f64 y.im y.im)) x.im))
(*.f64 (/.f64 y.im x.im) (/.f64 (*.f64 y.im (*.f64 x.im x.im)) y.im))
(*.f64 (/.f64 y.im y.im) (/.f64 (*.f64 y.im (*.f64 x.im x.im)) x.im))
(*.f64 (/.f64 (*.f64 x.im y.im) x.im) (/.f64 (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))) (*.f64 x.im (*.f64 y.im y.im))))
(*.f64 (/.f64 (*.f64 x.im y.im) x.im) (/.f64 (*.f64 x.im y.im) y.im))
(*.f64 (/.f64 (*.f64 x.im y.im) y.im) (/.f64 (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))) (*.f64 y.im (*.f64 x.im x.im))))
(*.f64 (/.f64 (*.f64 x.im y.im) y.im) (/.f64 (*.f64 x.im y.im) x.im))
(*.f64 (/.f64 (*.f64 x.im x.im) x.im) (/.f64 (*.f64 y.im y.im) y.im))
(*.f64 (/.f64 (*.f64 y.im y.im) y.im) (/.f64 (*.f64 x.im x.im) x.im))
(*.f64 (/.f64 (*.f64 x.im x.im) y.im) (/.f64 (*.f64 y.im y.im) x.im))
(*.f64 (/.f64 (*.f64 y.im y.im) x.im) (/.f64 (*.f64 x.im x.im) y.im))
(*.f64 (/.f64 (*.f64 y.im (*.f64 x.im x.im)) x.im) (/.f64 y.im y.im))
(*.f64 (/.f64 (*.f64 y.im (*.f64 x.im x.im)) y.im) (/.f64 y.im x.im))
(*.f64 (/.f64 (*.f64 x.im (*.f64 y.im y.im)) x.im) (/.f64 x.im y.im))
(*.f64 (/.f64 (*.f64 x.im (*.f64 y.im y.im)) y.im) (/.f64 x.im x.im))
(*.f64 (/.f64 (*.f64 x.im y.im) (*.f64 x.im y.im)) (*.f64 x.im y.im))
(*.f64 (/.f64 (*.f64 x.im y.im) (*.f64 x.im x.im)) (/.f64 (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))) (*.f64 y.im y.im)))
(*.f64 (/.f64 (*.f64 x.im y.im) (*.f64 y.im y.im)) (/.f64 (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))) (*.f64 x.im x.im)))
(*.f64 (/.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 y.im y.im))) (/.f64 (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))) x.im))
(*.f64 (/.f64 (*.f64 x.im y.im) (*.f64 y.im (*.f64 x.im x.im))) (/.f64 (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))) y.im))
(*.f64 (/.f64 (pow.f64 (*.f64 x.im y.im) #s(literal 3/2 binary64)) x.im) (/.f64 (pow.f64 (*.f64 x.im y.im) #s(literal 3/2 binary64)) (*.f64 x.im (*.f64 y.im y.im))))
(*.f64 (/.f64 (pow.f64 (*.f64 x.im y.im) #s(literal 3/2 binary64)) y.im) (/.f64 (pow.f64 (*.f64 x.im y.im) #s(literal 3/2 binary64)) (*.f64 y.im (*.f64 x.im x.im))))
(*.f64 (/.f64 (pow.f64 (*.f64 x.im y.im) #s(literal 3/2 binary64)) (*.f64 x.im y.im)) (/.f64 (pow.f64 (*.f64 x.im y.im) #s(literal 3/2 binary64)) (*.f64 x.im y.im)))
(*.f64 (/.f64 (pow.f64 (*.f64 x.im y.im) #s(literal 3/2 binary64)) (*.f64 x.im x.im)) (/.f64 (pow.f64 (*.f64 x.im y.im) #s(literal 3/2 binary64)) (*.f64 y.im y.im)))
(*.f64 (/.f64 (pow.f64 (*.f64 x.im y.im) #s(literal 3/2 binary64)) (*.f64 y.im y.im)) (/.f64 (pow.f64 (*.f64 x.im y.im) #s(literal 3/2 binary64)) (*.f64 x.im x.im)))
(*.f64 (/.f64 (pow.f64 (*.f64 x.im y.im) #s(literal 3/2 binary64)) (*.f64 y.im (*.f64 x.im x.im))) (/.f64 (pow.f64 (*.f64 x.im y.im) #s(literal 3/2 binary64)) y.im))
(*.f64 (/.f64 (pow.f64 (*.f64 x.im y.im) #s(literal 3/2 binary64)) (*.f64 x.im (*.f64 y.im y.im))) (/.f64 (pow.f64 (*.f64 x.im y.im) #s(literal 3/2 binary64)) x.im))
(*.f64 (/.f64 (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))) (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 (*.f64 x.im (*.f64 y.im y.im)) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))))))) (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))))
(*.f64 (/.f64 (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))) #s(literal 1 binary64)) (/.f64 #s(literal 1 binary64) (*.f64 x.im y.im)))
(*.f64 (*.f64 y.im #s(literal -1 binary64)) x.im)
(*.f64 (/.f64 (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))) (*.f64 x.im y.im))
(*.f64 (/.f64 (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))) (*.f64 (*.f64 x.im y.im) (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 (*.f64 x.im (*.f64 y.im y.im)) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))))))) (*.f64 x.im (*.f64 (*.f64 x.im (*.f64 y.im y.im)) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))))))
(*.f64 (/.f64 (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))) (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))))) (*.f64 x.im y.im))
(+.f64 #s(literal 0 binary64) (+.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))
(+.f64 (*.f64 x.im y.im) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
(+.f64 (+.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)) #s(literal 0 binary64))
(+.f64 (+.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)) (fma.f64 (neg.f64 (-.f64 #s(literal 0 binary64) y.im)) x.im (*.f64 x.im y.im)))
(+.f64 (+.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)) (fma.f64 (neg.f64 (-.f64 #s(literal 0 binary64) x.im)) y.im (*.f64 x.im y.im)))
(+.f64 (+.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)) (fma.f64 (/.f64 (/.f64 #s(literal 1 binary64) (*.f64 x.im y.im)) (*.f64 x.im y.im)) (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))) (*.f64 x.im y.im)))
(+.f64 (+.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)) (fma.f64 (/.f64 #s(literal 1 binary64) (*.f64 x.im y.im)) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))) (*.f64 x.im y.im)))
(+.f64 (+.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)) (fma.f64 (-.f64 #s(literal 0 binary64) y.im) (-.f64 #s(literal 0 binary64) x.im) (*.f64 x.im y.im)))
(+.f64 (+.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)) (fma.f64 (*.f64 x.im y.im) #s(literal -1 binary64) (*.f64 x.im y.im)))
(+.f64 (+.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)) (fma.f64 (-.f64 #s(literal 0 binary64) x.im) (-.f64 #s(literal 0 binary64) y.im) (*.f64 x.im y.im)))
(+.f64 (+.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)) (fma.f64 (-.f64 #s(literal 0 binary64) y.im) x.im (*.f64 x.im y.im)))
(+.f64 (+.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)) (fma.f64 (-.f64 #s(literal 0 binary64) x.im) y.im (*.f64 x.im y.im)))
(+.f64 (/.f64 (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re))) (+.f64 (*.f64 x.im y.im) (*.f64 x.re y.re))) (/.f64 (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))) (+.f64 (*.f64 x.im y.im) (*.f64 x.re y.re))))
(-.f64 #s(literal 0 binary64) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
(-.f64 (+.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)) #s(literal 0 binary64))
(-.f64 (/.f64 (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re))) (+.f64 (*.f64 x.im y.im) (*.f64 x.re y.re))) (/.f64 (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))) (+.f64 (*.f64 x.im y.im) (*.f64 x.re y.re))))
(-.f64 (/.f64 (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))) (+.f64 (*.f64 x.im y.im) (*.f64 x.re y.re))) (/.f64 (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re))) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re))))
(-.f64 (/.f64 (*.f64 (*.f64 x.re y.re) (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re)))) (+.f64 (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re))) (*.f64 (*.f64 x.im y.im) (+.f64 (*.f64 x.im y.im) (*.f64 x.re y.re))))) (/.f64 (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))) (+.f64 (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re))) (*.f64 (*.f64 x.im y.im) (+.f64 (*.f64 x.im y.im) (*.f64 x.re y.re))))))
(-.f64 (+.f64 #s(literal 0 binary64) (/.f64 (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re))) (+.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))) (/.f64 (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))) (+.f64 (*.f64 x.im y.im) (*.f64 x.re y.re))))
(fma.f64 x.re y.re (*.f64 x.im y.im))
(fma.f64 y.re x.re (*.f64 x.im y.im))
(fma.f64 x.im (-.f64 #s(literal 0 binary64) y.im) (*.f64 x.re y.re))
(fma.f64 y.im (-.f64 #s(literal 0 binary64) x.im) (*.f64 x.re y.re))
(fma.f64 (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))) (/.f64 #s(literal 1 binary64) (*.f64 x.im y.im)) (*.f64 x.re y.re))
(fma.f64 (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))) (/.f64 (/.f64 #s(literal 1 binary64) (*.f64 x.im y.im)) (*.f64 x.im y.im)) (*.f64 x.re y.re))
(fma.f64 (-.f64 #s(literal 0 binary64) x.im) y.im (*.f64 x.re y.re))
(fma.f64 #s(literal -1 binary64) (*.f64 x.im y.im) (*.f64 x.re y.re))
(fma.f64 (-.f64 #s(literal 0 binary64) y.im) x.im (*.f64 x.re y.re))
(neg.f64 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))
(/.f64 (+.f64 (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re))) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))) (+.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))
(/.f64 (-.f64 #s(literal 0 binary64) (+.f64 (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))) (*.f64 (*.f64 x.re y.re) (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re)))))) (-.f64 #s(literal 0 binary64) (+.f64 (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re))) (*.f64 (*.f64 x.im y.im) (+.f64 (*.f64 x.im y.im) (*.f64 x.re y.re))))))
(/.f64 (+.f64 (*.f64 (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))) (*.f64 (*.f64 x.im y.im) (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 (*.f64 x.im (*.f64 y.im y.im)) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))))))) (*.f64 (*.f64 (*.f64 x.re y.re) (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re)))) (*.f64 (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re))) (*.f64 (*.f64 x.re y.re) (*.f64 (*.f64 x.re y.re) (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re)))))))) (*.f64 (+.f64 (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re))) (*.f64 (*.f64 x.im y.im) (+.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))) (+.f64 (*.f64 (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))) (-.f64 (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))) (*.f64 (*.f64 x.re y.re) (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re)))))) (*.f64 (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re))) (*.f64 (*.f64 x.re y.re) (*.f64 (*.f64 x.re y.re) (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re)))))))))
(/.f64 (*.f64 (+.f64 (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))) (*.f64 (*.f64 x.re y.re) (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re))))) (+.f64 (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))) (*.f64 (*.f64 x.re y.re) (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re)))))) (*.f64 (+.f64 (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re))) (*.f64 (*.f64 x.im y.im) (+.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))) (+.f64 (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))) (*.f64 (*.f64 x.re y.re) (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re)))))))
(/.f64 (*.f64 (+.f64 (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))) (*.f64 (*.f64 x.re y.re) (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re))))) (+.f64 (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))) (*.f64 (*.f64 x.re y.re) (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re)))))) (*.f64 (+.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)) (+.f64 (*.f64 (*.f64 x.re y.re) (*.f64 (*.f64 x.re y.re) (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re))))) (*.f64 (*.f64 x.im y.im) (*.f64 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)) (*.f64 (*.f64 x.im y.im) (+.f64 (*.f64 x.im y.im) (*.f64 x.re y.re))))))))
(/.f64 (*.f64 (*.f64 x.re (*.f64 y.re (*.f64 x.im y.im))) (*.f64 (*.f64 x.im y.im) (+.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))) (*.f64 (*.f64 x.re y.re) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))))
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 x.im y.im) (*.f64 x.re y.re))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 x.im y.im) (*.f64 x.re y.re))) #s(literal 1 binary64)))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))))
(/.f64 (+.f64 (*.f64 (*.f64 x.re y.re) (*.f64 (*.f64 x.re y.re) (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re))))) (*.f64 x.im (*.f64 (*.f64 x.im (*.f64 y.im y.im)) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))))) (*.f64 (+.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)) (+.f64 (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re))) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))))))
(/.f64 (-.f64 (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))) (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re)))) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))
(/.f64 (+.f64 (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))) (*.f64 (*.f64 x.re y.re) (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re))))) (+.f64 (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re))) (*.f64 (*.f64 x.im y.im) (+.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))))
(/.f64 (+.f64 (*.f64 (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re))) (*.f64 x.im y.im)) (*.f64 (*.f64 x.re y.re) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))))) (*.f64 x.re (*.f64 y.re (*.f64 x.im y.im))))
(/.f64 (+.f64 (*.f64 (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))) (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re)))) (*.f64 (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))) (*.f64 (*.f64 x.re y.re) (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re)))))) (*.f64 (*.f64 x.re y.re) (*.f64 (*.f64 x.re y.re) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))))))
(/.f64 (+.f64 (*.f64 (*.f64 x.re y.re) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))) (*.f64 (*.f64 x.im y.im) (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re))))) (*.f64 x.re (*.f64 y.re (*.f64 x.im y.im))))
(/.f64 (+.f64 (*.f64 (*.f64 x.re y.re) (*.f64 (*.f64 x.re y.re) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))))) (*.f64 (*.f64 x.im y.im) (*.f64 (*.f64 x.re y.re) (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re)))))) (*.f64 (*.f64 x.im y.im) (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re)))))
(/.f64 (+.f64 (*.f64 #s(literal 1 binary64) (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re)))) (*.f64 (/.f64 #s(literal 1 binary64) (*.f64 x.im y.im)) (*.f64 (*.f64 x.re y.re) (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re)))))) (*.f64 (/.f64 #s(literal 1 binary64) (*.f64 x.im y.im)) (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re)))))
(/.f64 (+.f64 (*.f64 #s(literal 1 binary64) (*.f64 x.re y.re)) (*.f64 (/.f64 #s(literal 1 binary64) (*.f64 x.im y.im)) (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re))))) (*.f64 (/.f64 #s(literal 1 binary64) (*.f64 x.im y.im)) (*.f64 x.re y.re)))
(/.f64 (+.f64 (*.f64 (*.f64 (*.f64 x.re y.re) (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re)))) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))) (*.f64 (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re))) (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))))) (*.f64 (*.f64 x.re y.re) (*.f64 (*.f64 x.re y.re) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))))))
(/.f64 (+.f64 (*.f64 (*.f64 (*.f64 x.re y.re) (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re)))) (*.f64 x.im y.im)) (*.f64 (*.f64 x.re y.re) (*.f64 (*.f64 x.re y.re) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))))) (*.f64 (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re))) (*.f64 x.im y.im)))
(/.f64 (+.f64 (*.f64 (*.f64 (*.f64 x.re y.re) (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re)))) (/.f64 #s(literal 1 binary64) (*.f64 x.im y.im))) (*.f64 (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re))) #s(literal 1 binary64))) (*.f64 (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re))) (/.f64 #s(literal 1 binary64) (*.f64 x.im y.im))))
(/.f64 (+.f64 (*.f64 (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re))) (/.f64 #s(literal 1 binary64) (*.f64 x.im y.im))) (*.f64 (*.f64 x.re y.re) #s(literal 1 binary64))) (*.f64 (*.f64 x.re y.re) (/.f64 #s(literal 1 binary64) (*.f64 x.im y.im))))
(/.f64 (-.f64 (*.f64 (*.f64 (*.f64 x.re y.re) (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re)))) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))) (*.f64 (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re))) (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))))) (*.f64 (*.f64 x.re y.re) (*.f64 (*.f64 x.re y.re) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))))))
(/.f64 (-.f64 (*.f64 (*.f64 (*.f64 x.re y.re) (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re)))) (*.f64 x.im y.im)) (*.f64 (*.f64 x.re y.re) (*.f64 (*.f64 x.re y.re) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))))) (*.f64 (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re))) (*.f64 x.im y.im)))
(/.f64 (-.f64 (*.f64 (*.f64 (*.f64 x.re y.re) (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re)))) (/.f64 #s(literal 1 binary64) (*.f64 x.im y.im))) (*.f64 (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re))) #s(literal 1 binary64))) (*.f64 (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re))) (/.f64 #s(literal 1 binary64) (*.f64 x.im y.im))))
(/.f64 (-.f64 (*.f64 (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re))) (/.f64 #s(literal 1 binary64) (*.f64 x.im y.im))) (*.f64 (*.f64 x.re y.re) #s(literal 1 binary64))) (*.f64 (*.f64 x.re y.re) (/.f64 #s(literal 1 binary64) (*.f64 x.im y.im))))
(/.f64 (-.f64 (*.f64 (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re))) (*.f64 x.im y.im)) (*.f64 (*.f64 x.re y.re) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))))) (*.f64 x.re (*.f64 y.re (*.f64 x.im y.im))))
(/.f64 (-.f64 (*.f64 (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re))) (+.f64 (*.f64 x.im y.im) (*.f64 x.re y.re))) (*.f64 (+.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))))) (+.f64 (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re))) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))))
(/.f64 (*.f64 (+.f64 (*.f64 (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))) (*.f64 (*.f64 x.im y.im) (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 (*.f64 x.im (*.f64 y.im y.im)) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))))))) (*.f64 (*.f64 (*.f64 x.re y.re) (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re)))) (*.f64 (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re))) (*.f64 (*.f64 x.re y.re) (*.f64 (*.f64 x.re y.re) (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re)))))))) #s(literal 1 binary64)) (*.f64 (+.f64 (*.f64 (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))) (-.f64 (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))) (*.f64 (*.f64 x.re y.re) (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re)))))) (*.f64 (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re))) (*.f64 (*.f64 x.re y.re) (*.f64 (*.f64 x.re y.re) (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re))))))) (+.f64 (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re))) (*.f64 (*.f64 x.im y.im) (+.f64 (*.f64 x.im y.im) (*.f64 x.re y.re))))))
(/.f64 (*.f64 (*.f64 (+.f64 (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))) (*.f64 (*.f64 x.re y.re) (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re))))) (+.f64 (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))) (*.f64 (*.f64 x.re y.re) (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re)))))) #s(literal 1 binary64)) (*.f64 (+.f64 (*.f64 (*.f64 x.re y.re) (*.f64 (*.f64 x.re y.re) (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re))))) (*.f64 (*.f64 x.im y.im) (*.f64 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)) (*.f64 (*.f64 x.im y.im) (+.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))))) (+.f64 (*.f64 x.im y.im) (*.f64 x.re y.re))))
(/.f64 (*.f64 (*.f64 (+.f64 (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))) (*.f64 (*.f64 x.re y.re) (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re))))) (+.f64 (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))) (*.f64 (*.f64 x.re y.re) (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re)))))) #s(literal 1 binary64)) (*.f64 (+.f64 (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))) (*.f64 (*.f64 x.re y.re) (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re))))) (+.f64 (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re))) (*.f64 (*.f64 x.im y.im) (+.f64 (*.f64 x.im y.im) (*.f64 x.re y.re))))))
(/.f64 (*.f64 (+.f64 (*.f64 (*.f64 x.re y.re) (*.f64 (*.f64 x.re y.re) (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re))))) (*.f64 x.im (*.f64 (*.f64 x.im (*.f64 y.im y.im)) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))))) #s(literal 1 binary64)) (*.f64 (+.f64 (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re))) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))) (+.f64 (*.f64 x.im y.im) (*.f64 x.re y.re))))
(/.f64 (neg.f64 (-.f64 #s(literal 0 binary64) (+.f64 (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))) (*.f64 (*.f64 x.re y.re) (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re))))))) (neg.f64 (-.f64 #s(literal 0 binary64) (+.f64 (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re))) (*.f64 (*.f64 x.im y.im) (+.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))))))
(/.f64 (neg.f64 (-.f64 (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))) (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re))))) (+.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))
(/.f64 (-.f64 (*.f64 (*.f64 x.re y.re) (*.f64 (*.f64 x.re y.re) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))))) (*.f64 x.im (*.f64 (*.f64 x.im (*.f64 y.im y.im)) (*.f64 x.re (*.f64 y.re (*.f64 x.im y.im)))))) (*.f64 (*.f64 x.re y.re) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))))
(/.f64 (+.f64 #s(literal 0 binary64) (pow.f64 (+.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)) #s(literal 3 binary64))) (+.f64 #s(literal 0 binary64) (-.f64 (+.f64 (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re))) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))) (*.f64 #s(literal 0 binary64) (+.f64 (*.f64 x.im y.im) (*.f64 x.re y.re))))))
(/.f64 (-.f64 #s(literal 0 binary64) (pow.f64 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)) #s(literal 3 binary64))) (+.f64 #s(literal 0 binary64) (+.f64 (*.f64 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re))) (*.f64 #s(literal 0 binary64) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re))))))
(/.f64 (-.f64 (pow.f64 (/.f64 (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re))) (+.f64 (*.f64 x.im y.im) (*.f64 x.re y.re))) #s(literal 3 binary64)) (pow.f64 (/.f64 (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))) (+.f64 (*.f64 x.im y.im) (*.f64 x.re y.re))) #s(literal 3 binary64))) (+.f64 (*.f64 (/.f64 (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re))) (+.f64 (*.f64 x.im y.im) (*.f64 x.re y.re))) (/.f64 (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re))) (+.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))) (+.f64 (*.f64 (/.f64 (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))) (+.f64 (*.f64 x.im y.im) (*.f64 x.re y.re))) (/.f64 (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))) (+.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))) (*.f64 (/.f64 (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re))) (+.f64 (*.f64 x.im y.im) (*.f64 x.re y.re))) (/.f64 (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))) (+.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))))))
(/.f64 (-.f64 #s(literal 0 binary64) (*.f64 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))
(/.f64 (-.f64 (*.f64 (/.f64 (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re))) (+.f64 (*.f64 x.im y.im) (*.f64 x.re y.re))) (/.f64 (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re))) (+.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))) (*.f64 (/.f64 (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))) (+.f64 (*.f64 x.im y.im) (*.f64 x.re y.re))) (/.f64 (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))) (+.f64 (*.f64 x.im y.im) (*.f64 x.re y.re))))) (+.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))
(/.f64 (*.f64 (+.f64 (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))) (*.f64 (*.f64 x.re y.re) (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re))))) #s(literal 1 binary64)) (+.f64 (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re))) (*.f64 (*.f64 x.im y.im) (+.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))))
(/.f64 (*.f64 (+.f64 (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re))) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))) #s(literal 1 binary64)) (+.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))
(/.f64 (*.f64 (+.f64 (*.f64 (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))) (*.f64 (*.f64 x.im y.im) (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 (*.f64 x.im (*.f64 y.im y.im)) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))))))) (*.f64 (*.f64 (*.f64 x.re y.re) (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re)))) (*.f64 (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re))) (*.f64 (*.f64 x.re y.re) (*.f64 (*.f64 x.re y.re) (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re)))))))) (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re))) (*.f64 (*.f64 x.im y.im) (+.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))))) (+.f64 (*.f64 (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))) (-.f64 (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))) (*.f64 (*.f64 x.re y.re) (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re)))))) (*.f64 (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re))) (*.f64 (*.f64 x.re y.re) (*.f64 (*.f64 x.re y.re) (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re))))))))
(/.f64 (*.f64 (*.f64 (+.f64 (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))) (*.f64 (*.f64 x.re y.re) (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re))))) (+.f64 (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))) (*.f64 (*.f64 x.re y.re) (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re)))))) (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re))) (*.f64 (*.f64 x.im y.im) (+.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))))) (+.f64 (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))) (*.f64 (*.f64 x.re y.re) (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re))))))
(/.f64 (*.f64 (*.f64 (+.f64 (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))) (*.f64 (*.f64 x.re y.re) (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re))))) (+.f64 (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))) (*.f64 (*.f64 x.re y.re) (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re)))))) (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))) (+.f64 (*.f64 (*.f64 x.re y.re) (*.f64 (*.f64 x.re y.re) (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re))))) (*.f64 (*.f64 x.im y.im) (*.f64 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)) (*.f64 (*.f64 x.im y.im) (+.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))))))
(/.f64 (*.f64 (+.f64 (*.f64 (*.f64 x.re y.re) (*.f64 (*.f64 x.re y.re) (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re))))) (*.f64 x.im (*.f64 (*.f64 x.im (*.f64 y.im y.im)) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))))) (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))) (+.f64 (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re))) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))))
(/.f64 (/.f64 (+.f64 (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re))) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))) (+.f64 (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))) (*.f64 (*.f64 x.re y.re) (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re)))))) (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re))) (*.f64 (*.f64 x.im y.im) (+.f64 (*.f64 x.im y.im) (*.f64 x.re y.re))))))
(/.f64 (/.f64 (+.f64 (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re))) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))) (+.f64 (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re))) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))))) (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 x.im y.im) (*.f64 x.re y.re))))
(pow.f64 (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 x.im y.im) (*.f64 x.re y.re))) #s(literal -1 binary64))
(*.f64 (+.f64 (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re))) (*.f64 (*.f64 x.im y.im) (+.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))) (*.f64 (+.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)) (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re))) (*.f64 (*.f64 x.im y.im) (+.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))))))
(*.f64 (+.f64 (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re))) (*.f64 (*.f64 x.im y.im) (+.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))) (/.f64 (+.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)) (+.f64 (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re))) (*.f64 (*.f64 x.im y.im) (+.f64 (*.f64 x.im y.im) (*.f64 x.re y.re))))))
(*.f64 (+.f64 (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re))) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))) (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 x.im y.im) (*.f64 x.re y.re))))
(*.f64 (+.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)) (*.f64 (+.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)) (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))))
(*.f64 (+.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)) (/.f64 (+.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)) (+.f64 (*.f64 x.im y.im) (*.f64 x.re y.re))))
(*.f64 (-.f64 #s(literal 0 binary64) (+.f64 (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))) (*.f64 (*.f64 x.re y.re) (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re)))))) (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 0 binary64) (+.f64 (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re))) (*.f64 (*.f64 x.im y.im) (+.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))))))
(*.f64 #s(literal 1 binary64) (+.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))
(*.f64 (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re))) (*.f64 (*.f64 x.im y.im) (+.f64 (*.f64 x.im y.im) (*.f64 x.re y.re))))) (+.f64 (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))) (*.f64 (*.f64 x.re y.re) (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re))))))
(*.f64 (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 x.im y.im) (*.f64 x.re y.re))) (+.f64 (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re))) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))))
(*.f64 (-.f64 (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))) (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re)))) (/.f64 #s(literal 1 binary64) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re))))
(*.f64 (+.f64 (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))) (*.f64 (*.f64 x.re y.re) (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re))))) (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re))) (*.f64 (*.f64 x.im y.im) (+.f64 (*.f64 x.im y.im) (*.f64 x.re y.re))))))
(*.f64 (/.f64 (+.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)) (+.f64 (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))) (*.f64 (*.f64 x.re y.re) (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re)))))) (/.f64 (+.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)) (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re))) (*.f64 (*.f64 x.im y.im) (+.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))))))
(*.f64 (/.f64 (+.f64 (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re))) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))) (+.f64 (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))) (*.f64 (*.f64 x.re y.re) (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re)))))) (+.f64 (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re))) (*.f64 (*.f64 x.im y.im) (+.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))))
(*.f64 (/.f64 (+.f64 (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re))) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))) (+.f64 (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re))) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))))) (+.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))
(*.f64 (/.f64 (+.f64 (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re))) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))) (-.f64 #s(literal 0 binary64) (+.f64 (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))) (*.f64 (*.f64 x.re y.re) (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re))))))) (-.f64 #s(literal 0 binary64) (+.f64 (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re))) (*.f64 (*.f64 x.im y.im) (+.f64 (*.f64 x.im y.im) (*.f64 x.re y.re))))))
(*.f64 (/.f64 (+.f64 (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re))) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))) #s(literal 1 binary64)) (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 x.im y.im) (*.f64 x.re y.re))))
(*.f64 (/.f64 (+.f64 (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re))) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))) (-.f64 (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im))) (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re))))) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))
(*.f64 (/.f64 (+.f64 (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))) (*.f64 (*.f64 x.re y.re) (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re))))) (+.f64 (*.f64 (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re))) (*.f64 (*.f64 x.re y.re) (*.f64 (*.f64 x.re y.re) (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re)))))) (*.f64 (*.f64 (*.f64 x.im y.im) (+.f64 (*.f64 x.im y.im) (*.f64 x.re y.re))) (*.f64 (*.f64 x.im y.im) (*.f64 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)) (*.f64 (*.f64 x.im y.im) (+.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))))))) (+.f64 (*.f64 (*.f64 x.re y.re) (*.f64 (*.f64 x.re y.re) (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re))))) (*.f64 (*.f64 (*.f64 x.im y.im) (+.f64 (*.f64 x.im y.im) (*.f64 x.re y.re))) (-.f64 (*.f64 (*.f64 x.im y.im) (+.f64 (*.f64 x.im y.im) (*.f64 x.re y.re))) (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re)))))))
(*.f64 (/.f64 (+.f64 (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 x.im (*.f64 y.im y.im)))) (*.f64 (*.f64 x.re y.re) (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re))))) (+.f64 (*.f64 (*.f64 x.re y.re) (*.f64 (*.f64 x.re y.re) (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re))))) (*.f64 (*.f64 x.im y.im) (*.f64 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)) (*.f64 (*.f64 x.im y.im) (+.f64 (*.f64 x.im y.im) (*.f64 x.re y.re))))))) (+.f64 (*.f64 x.re (*.f64 x.re (*.f64 y.re y.re))) (*.f64 (*.f64 x.im y.im) (+.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))))

simplify167.0ms (4.1%)

Algorithm
egg-herbie
Rules
2018×*-lowering-*.f32
2018×*-lowering-*.f64
2008×fma-lowering-fma.f32
2008×fma-lowering-fma.f64
1940×fmm-def
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
042534
1150522
2450522
31567522
46440522
08131522
Stop Event
iter limit
node limit
Counts
120 → 120
Calls
Call 1
Inputs
(* x.re y.re)
(* x.re y.re)
(* x.re y.re)
(* x.re y.re)
(* x.re y.re)
(* x.re y.re)
(* x.re y.re)
(* x.re y.re)
(* x.re y.re)
(* x.re y.re)
(* x.re y.re)
(* x.re y.re)
(* x.re y.re)
(* x.re y.re)
(* x.re y.re)
(* x.re y.re)
(* x.re y.re)
(* x.re y.re)
(* x.re y.re)
(* x.re y.re)
(* x.re y.re)
(* x.re y.re)
(* x.re y.re)
(* x.re y.re)
(* -1 (* x.im y.im))
(* -1 (* x.im y.im))
(* -1 (* x.im y.im))
(* -1 (* x.im y.im))
(* -1 (* x.im y.im))
(* -1 (* x.im y.im))
(* -1 (* x.im y.im))
(* -1 (* x.im y.im))
(* -1 (* x.im y.im))
(* -1 (* x.im y.im))
(* -1 (* x.im y.im))
(* -1 (* x.im y.im))
(* -1 (* x.im y.im))
(* -1 (* x.im y.im))
(* -1 (* x.im y.im))
(* -1 (* x.im y.im))
(* -1 (* x.im y.im))
(* -1 (* x.im y.im))
(* -1 (* x.im y.im))
(* -1 (* x.im y.im))
(* -1 (* x.im y.im))
(* -1 (* x.im y.im))
(* -1 (* x.im y.im))
(* -1 (* x.im y.im))
(* x.im y.im)
(* x.im y.im)
(* x.im y.im)
(* x.im y.im)
(* x.im y.im)
(* x.im y.im)
(* x.im y.im)
(* x.im y.im)
(* x.im y.im)
(* x.im y.im)
(* x.im y.im)
(* x.im y.im)
(* x.im y.im)
(* x.im y.im)
(* x.im y.im)
(* x.im y.im)
(* x.im y.im)
(* x.im y.im)
(* x.im y.im)
(* x.im y.im)
(* x.im y.im)
(* x.im y.im)
(* x.im y.im)
(* x.im y.im)
(* -1 (* x.im y.im))
(- (* x.re y.re) (* x.im y.im))
(- (* x.re y.re) (* x.im y.im))
(- (* x.re y.re) (* x.im y.im))
(* x.re y.re)
(* y.re (+ x.re (* -1 (/ (* x.im y.im) y.re))))
(* y.re (+ x.re (* -1 (/ (* x.im y.im) y.re))))
(* y.re (+ x.re (* -1 (/ (* x.im y.im) y.re))))
(* x.re y.re)
(* -1 (* y.re (+ (* -1 x.re) (/ (* x.im y.im) y.re))))
(* -1 (* y.re (+ (* -1 x.re) (/ (* x.im y.im) y.re))))
(* -1 (* y.re (+ (* -1 x.re) (/ (* x.im y.im) y.re))))
(* -1 (* x.im y.im))
(- (* x.re y.re) (* x.im y.im))
(- (* x.re y.re) (* x.im y.im))
(- (* x.re y.re) (* x.im y.im))
(* x.re y.re)
(* x.re (+ y.re (* -1 (/ (* x.im y.im) x.re))))
(* x.re (+ y.re (* -1 (/ (* x.im y.im) x.re))))
(* x.re (+ y.re (* -1 (/ (* x.im y.im) x.re))))
(* x.re y.re)
(* -1 (* x.re (+ (* -1 y.re) (/ (* x.im y.im) x.re))))
(* -1 (* x.re (+ (* -1 y.re) (/ (* x.im y.im) x.re))))
(* -1 (* x.re (+ (* -1 y.re) (/ (* x.im y.im) x.re))))
(* x.re y.re)
(+ (* -1 (* x.im y.im)) (* x.re y.re))
(+ (* -1 (* x.im y.im)) (* x.re y.re))
(+ (* -1 (* x.im y.im)) (* x.re y.re))
(* -1 (* x.im y.im))
(* x.im (- (/ (* x.re y.re) x.im) y.im))
(* x.im (- (/ (* x.re y.re) x.im) y.im))
(* x.im (- (/ (* x.re y.re) x.im) y.im))
(* -1 (* x.im y.im))
(* -1 (* x.im (- (* -1 (/ (* x.re y.re) x.im)) (* -1 y.im))))
(* -1 (* x.im (- (* -1 (/ (* x.re y.re) x.im)) (* -1 y.im))))
(* -1 (* x.im (- (* -1 (/ (* x.re y.re) x.im)) (* -1 y.im))))
(* x.re y.re)
(+ (* -1 (* x.im y.im)) (* x.re y.re))
(+ (* -1 (* x.im y.im)) (* x.re y.re))
(+ (* -1 (* x.im y.im)) (* x.re y.re))
(* -1 (* x.im y.im))
(* y.im (- (/ (* x.re y.re) y.im) x.im))
(* y.im (- (/ (* x.re y.re) y.im) x.im))
(* y.im (- (/ (* x.re y.re) y.im) x.im))
(* -1 (* x.im y.im))
(* -1 (* y.im (- (* -1 (/ (* x.re y.re) y.im)) (* -1 x.im))))
(* -1 (* y.im (- (* -1 (/ (* x.re y.re) y.im)) (* -1 x.im))))
(* -1 (* y.im (- (* -1 (/ (* x.re y.re) y.im)) (* -1 x.im))))
Outputs
(* x.re y.re)
(*.f64 x.re y.re)
(* x.re y.re)
(*.f64 x.re y.re)
(* x.re y.re)
(*.f64 x.re y.re)
(* x.re y.re)
(*.f64 x.re y.re)
(* x.re y.re)
(*.f64 x.re y.re)
(* x.re y.re)
(*.f64 x.re y.re)
(* x.re y.re)
(*.f64 x.re y.re)
(* x.re y.re)
(*.f64 x.re y.re)
(* x.re y.re)
(*.f64 x.re y.re)
(* x.re y.re)
(*.f64 x.re y.re)
(* x.re y.re)
(*.f64 x.re y.re)
(* x.re y.re)
(*.f64 x.re y.re)
(* x.re y.re)
(*.f64 x.re y.re)
(* x.re y.re)
(*.f64 x.re y.re)
(* x.re y.re)
(*.f64 x.re y.re)
(* x.re y.re)
(*.f64 x.re y.re)
(* x.re y.re)
(*.f64 x.re y.re)
(* x.re y.re)
(*.f64 x.re y.re)
(* x.re y.re)
(*.f64 x.re y.re)
(* x.re y.re)
(*.f64 x.re y.re)
(* x.re y.re)
(*.f64 x.re y.re)
(* x.re y.re)
(*.f64 x.re y.re)
(* x.re y.re)
(*.f64 x.re y.re)
(* x.re y.re)
(*.f64 x.re y.re)
(* -1 (* x.im y.im))
(-.f64 #s(literal 0 binary64) (*.f64 x.im y.im))
(* -1 (* x.im y.im))
(-.f64 #s(literal 0 binary64) (*.f64 x.im y.im))
(* -1 (* x.im y.im))
(-.f64 #s(literal 0 binary64) (*.f64 x.im y.im))
(* -1 (* x.im y.im))
(-.f64 #s(literal 0 binary64) (*.f64 x.im y.im))
(* -1 (* x.im y.im))
(-.f64 #s(literal 0 binary64) (*.f64 x.im y.im))
(* -1 (* x.im y.im))
(-.f64 #s(literal 0 binary64) (*.f64 x.im y.im))
(* -1 (* x.im y.im))
(-.f64 #s(literal 0 binary64) (*.f64 x.im y.im))
(* -1 (* x.im y.im))
(-.f64 #s(literal 0 binary64) (*.f64 x.im y.im))
(* -1 (* x.im y.im))
(-.f64 #s(literal 0 binary64) (*.f64 x.im y.im))
(* -1 (* x.im y.im))
(-.f64 #s(literal 0 binary64) (*.f64 x.im y.im))
(* -1 (* x.im y.im))
(-.f64 #s(literal 0 binary64) (*.f64 x.im y.im))
(* -1 (* x.im y.im))
(-.f64 #s(literal 0 binary64) (*.f64 x.im y.im))
(* -1 (* x.im y.im))
(-.f64 #s(literal 0 binary64) (*.f64 x.im y.im))
(* -1 (* x.im y.im))
(-.f64 #s(literal 0 binary64) (*.f64 x.im y.im))
(* -1 (* x.im y.im))
(-.f64 #s(literal 0 binary64) (*.f64 x.im y.im))
(* -1 (* x.im y.im))
(-.f64 #s(literal 0 binary64) (*.f64 x.im y.im))
(* -1 (* x.im y.im))
(-.f64 #s(literal 0 binary64) (*.f64 x.im y.im))
(* -1 (* x.im y.im))
(-.f64 #s(literal 0 binary64) (*.f64 x.im y.im))
(* -1 (* x.im y.im))
(-.f64 #s(literal 0 binary64) (*.f64 x.im y.im))
(* -1 (* x.im y.im))
(-.f64 #s(literal 0 binary64) (*.f64 x.im y.im))
(* -1 (* x.im y.im))
(-.f64 #s(literal 0 binary64) (*.f64 x.im y.im))
(* -1 (* x.im y.im))
(-.f64 #s(literal 0 binary64) (*.f64 x.im y.im))
(* -1 (* x.im y.im))
(-.f64 #s(literal 0 binary64) (*.f64 x.im y.im))
(* -1 (* x.im y.im))
(-.f64 #s(literal 0 binary64) (*.f64 x.im y.im))
(* x.im y.im)
(*.f64 x.im y.im)
(* x.im y.im)
(*.f64 x.im y.im)
(* x.im y.im)
(*.f64 x.im y.im)
(* x.im y.im)
(*.f64 x.im y.im)
(* x.im y.im)
(*.f64 x.im y.im)
(* x.im y.im)
(*.f64 x.im y.im)
(* x.im y.im)
(*.f64 x.im y.im)
(* x.im y.im)
(*.f64 x.im y.im)
(* x.im y.im)
(*.f64 x.im y.im)
(* x.im y.im)
(*.f64 x.im y.im)
(* x.im y.im)
(*.f64 x.im y.im)
(* x.im y.im)
(*.f64 x.im y.im)
(* x.im y.im)
(*.f64 x.im y.im)
(* x.im y.im)
(*.f64 x.im y.im)
(* x.im y.im)
(*.f64 x.im y.im)
(* x.im y.im)
(*.f64 x.im y.im)
(* x.im y.im)
(*.f64 x.im y.im)
(* x.im y.im)
(*.f64 x.im y.im)
(* x.im y.im)
(*.f64 x.im y.im)
(* x.im y.im)
(*.f64 x.im y.im)
(* x.im y.im)
(*.f64 x.im y.im)
(* x.im y.im)
(*.f64 x.im y.im)
(* x.im y.im)
(*.f64 x.im y.im)
(* x.im y.im)
(*.f64 x.im y.im)
(* -1 (* x.im y.im))
(-.f64 #s(literal 0 binary64) (*.f64 x.im y.im))
(- (* x.re y.re) (* x.im y.im))
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
(- (* x.re y.re) (* x.im y.im))
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
(- (* x.re y.re) (* x.im y.im))
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
(* x.re y.re)
(*.f64 x.re y.re)
(* y.re (+ x.re (* -1 (/ (* x.im y.im) y.re))))
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
(* y.re (+ x.re (* -1 (/ (* x.im y.im) y.re))))
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
(* y.re (+ x.re (* -1 (/ (* x.im y.im) y.re))))
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
(* x.re y.re)
(*.f64 x.re y.re)
(* -1 (* y.re (+ (* -1 x.re) (/ (* x.im y.im) y.re))))
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
(* -1 (* y.re (+ (* -1 x.re) (/ (* x.im y.im) y.re))))
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
(* -1 (* y.re (+ (* -1 x.re) (/ (* x.im y.im) y.re))))
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
(* -1 (* x.im y.im))
(-.f64 #s(literal 0 binary64) (*.f64 x.im y.im))
(- (* x.re y.re) (* x.im y.im))
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
(- (* x.re y.re) (* x.im y.im))
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
(- (* x.re y.re) (* x.im y.im))
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
(* x.re y.re)
(*.f64 x.re y.re)
(* x.re (+ y.re (* -1 (/ (* x.im y.im) x.re))))
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
(* x.re (+ y.re (* -1 (/ (* x.im y.im) x.re))))
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
(* x.re (+ y.re (* -1 (/ (* x.im y.im) x.re))))
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
(* x.re y.re)
(*.f64 x.re y.re)
(* -1 (* x.re (+ (* -1 y.re) (/ (* x.im y.im) x.re))))
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
(* -1 (* x.re (+ (* -1 y.re) (/ (* x.im y.im) x.re))))
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
(* -1 (* x.re (+ (* -1 y.re) (/ (* x.im y.im) x.re))))
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
(* x.re y.re)
(*.f64 x.re y.re)
(+ (* -1 (* x.im y.im)) (* x.re y.re))
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
(+ (* -1 (* x.im y.im)) (* x.re y.re))
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
(+ (* -1 (* x.im y.im)) (* x.re y.re))
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
(* -1 (* x.im y.im))
(-.f64 #s(literal 0 binary64) (*.f64 x.im y.im))
(* x.im (- (/ (* x.re y.re) x.im) y.im))
(*.f64 x.im (-.f64 (/.f64 (*.f64 x.re y.re) x.im) y.im))
(* x.im (- (/ (* x.re y.re) x.im) y.im))
(*.f64 x.im (-.f64 (/.f64 (*.f64 x.re y.re) x.im) y.im))
(* x.im (- (/ (* x.re y.re) x.im) y.im))
(*.f64 x.im (-.f64 (/.f64 (*.f64 x.re y.re) x.im) y.im))
(* -1 (* x.im y.im))
(-.f64 #s(literal 0 binary64) (*.f64 x.im y.im))
(* -1 (* x.im (- (* -1 (/ (* x.re y.re) x.im)) (* -1 y.im))))
(*.f64 x.im (-.f64 (/.f64 (*.f64 x.re y.re) x.im) y.im))
(* -1 (* x.im (- (* -1 (/ (* x.re y.re) x.im)) (* -1 y.im))))
(*.f64 x.im (-.f64 (/.f64 (*.f64 x.re y.re) x.im) y.im))
(* -1 (* x.im (- (* -1 (/ (* x.re y.re) x.im)) (* -1 y.im))))
(*.f64 x.im (-.f64 (/.f64 (*.f64 x.re y.re) x.im) y.im))
(* x.re y.re)
(*.f64 x.re y.re)
(+ (* -1 (* x.im y.im)) (* x.re y.re))
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
(+ (* -1 (* x.im y.im)) (* x.re y.re))
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
(+ (* -1 (* x.im y.im)) (* x.re y.re))
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
(* -1 (* x.im y.im))
(-.f64 #s(literal 0 binary64) (*.f64 x.im y.im))
(* y.im (- (/ (* x.re y.re) y.im) x.im))
(*.f64 y.im (-.f64 (/.f64 (*.f64 x.re y.re) y.im) x.im))
(* y.im (- (/ (* x.re y.re) y.im) x.im))
(*.f64 y.im (-.f64 (/.f64 (*.f64 x.re y.re) y.im) x.im))
(* y.im (- (/ (* x.re y.re) y.im) x.im))
(*.f64 y.im (-.f64 (/.f64 (*.f64 x.re y.re) y.im) x.im))
(* -1 (* x.im y.im))
(-.f64 #s(literal 0 binary64) (*.f64 x.im y.im))
(* -1 (* y.im (- (* -1 (/ (* x.re y.re) y.im)) (* -1 x.im))))
(*.f64 y.im (-.f64 (/.f64 (*.f64 x.re y.re) y.im) x.im))
(* -1 (* y.im (- (* -1 (/ (* x.re y.re) y.im)) (* -1 x.im))))
(*.f64 y.im (-.f64 (/.f64 (*.f64 x.re y.re) y.im) x.im))
(* -1 (* y.im (- (* -1 (/ (* x.re y.re) y.im)) (* -1 x.im))))
(*.f64 y.im (-.f64 (/.f64 (*.f64 x.re y.re) y.im) x.im))

eval106.0ms (2.6%)

Compiler

Compiled 15379 to 926 computations (94% saved)

prune121.0ms (3%)

Pruning

4 alts after pruning (2 fresh and 2 done)

PrunedKeptTotal
New8192821
Fresh000
Picked213
Done011
Total8214825
Accuracy
100.0%
Counts
825 → 4
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(fma.f64 y.re x.re (neg.f64 (*.f64 x.im y.im)))
100.0%
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
49.4%
(*.f64 x.re y.re)
53.1%
(neg.f64 (*.f64 x.im y.im))
Compiler

Compiled 37 to 25 computations (32.4% saved)

simplify28.0ms (0.7%)

Algorithm
egg-herbie
Localize:

Found 5 expressions of interest:

NewMetricScoreProgram
cost-diff-64
(neg.f64 (*.f64 x.im y.im))
cost-diff0
(*.f64 x.im y.im)
cost-diff6336
(fma.f64 y.re x.re (neg.f64 (*.f64 x.im y.im)))
cost-diff-64
(neg.f64 (*.f64 x.im y.im))
cost-diff0
(*.f64 x.im y.im)
Rules
420×fnmadd-define
338×fma-define
314×sum3-define
232×fma-lowering-fma.f32
232×fmsub-define
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0827
12126
24326
37526
413326
530226
652126
776326
8118126
9135526
10137726
0137726
Stop Event
iter limit
saturated
Calls
Call 1
Inputs
(neg (* x.im y.im))
(* x.im y.im)
x.im
y.im
(+ (* y.re x.re) (neg (* x.im y.im)))
y.re
x.re
(neg (* x.im y.im))
(* x.im y.im)
x.im
y.im
Outputs
(neg (* x.im y.im))
(-.f64 #s(literal 0 binary64) (*.f64 x.im y.im))
(* x.im y.im)
(*.f64 x.im y.im)
x.im
y.im
(+ (* y.re x.re) (neg (* x.im y.im)))
(-.f64 (*.f64 y.re x.re) (*.f64 x.im y.im))
y.re
x.re
(neg (* x.im y.im))
(-.f64 #s(literal 0 binary64) (*.f64 x.im y.im))
(* x.im y.im)
(*.f64 x.im y.im)
x.im
y.im

localize66.0ms (1.6%)

Localize:

Found 5 expressions of interest:

NewMetricScoreProgram
accuracy100.0%
(fma.f64 y.re x.re (neg.f64 (*.f64 x.im y.im)))
accuracy100.0%
(*.f64 x.im y.im)
accuracy100.0%
(neg.f64 (*.f64 x.im y.im))
accuracy100.0%
(*.f64 x.im y.im)
accuracy100.0%
(neg.f64 (*.f64 x.im y.im))
Results
44.0ms256×0valid
Compiler

Compiled 32 to 8 computations (75% saved)

Precisions
Click to see histograms. Total time spent on operations: 11.0ms
ival-mult: 4.0ms (36.5% of total)
compiled-spec: 4.0ms (36.5% of total)
ival-add: 1.0ms (9.1% of total)
ival-neg: 1.0ms (9.1% of total)
const: 0.0ms (0% of total)
backward-pass: 0.0ms (0% of total)

series1.0ms (0%)

Counts
3 → 96
Calls
Call 1
Inputs
#<alt (* x.im y.im)>
#<alt (neg (* x.im y.im))>
#<alt (+ (* y.re x.re) (neg (* x.im y.im)))>
Outputs
#<alt (* x.im y.im)>
#<alt (* x.im y.im)>
#<alt (* x.im y.im)>
#<alt (* x.im y.im)>
#<alt (* x.im y.im)>
#<alt (* x.im y.im)>
#<alt (* x.im y.im)>
#<alt (* x.im y.im)>
#<alt (* x.im y.im)>
#<alt (* x.im y.im)>
#<alt (* x.im y.im)>
#<alt (* x.im y.im)>
#<alt (* x.im y.im)>
#<alt (* x.im y.im)>
#<alt (* x.im y.im)>
#<alt (* x.im y.im)>
#<alt (* x.im y.im)>
#<alt (* x.im y.im)>
#<alt (* x.im y.im)>
#<alt (* x.im y.im)>
#<alt (* x.im y.im)>
#<alt (* x.im y.im)>
#<alt (* x.im y.im)>
#<alt (* x.im y.im)>
#<alt (* -1 (* x.im y.im))>
#<alt (* -1 (* x.im y.im))>
#<alt (* -1 (* x.im y.im))>
#<alt (* -1 (* x.im y.im))>
#<alt (* -1 (* x.im y.im))>
#<alt (* -1 (* x.im y.im))>
#<alt (* -1 (* x.im y.im))>
#<alt (* -1 (* x.im y.im))>
#<alt (* -1 (* x.im y.im))>
#<alt (* -1 (* x.im y.im))>
#<alt (* -1 (* x.im y.im))>
#<alt (* -1 (* x.im y.im))>
#<alt (* -1 (* x.im y.im))>
#<alt (* -1 (* x.im y.im))>
#<alt (* -1 (* x.im y.im))>
#<alt (* -1 (* x.im y.im))>
#<alt (* -1 (* x.im y.im))>
#<alt (* -1 (* x.im y.im))>
#<alt (* -1 (* x.im y.im))>
#<alt (* -1 (* x.im y.im))>
#<alt (* -1 (* x.im y.im))>
#<alt (* -1 (* x.im y.im))>
#<alt (* -1 (* x.im y.im))>
#<alt (* -1 (* x.im y.im))>
#<alt (* -1 (* x.im y.im))>
#<alt (- (* x.re y.re) (* x.im y.im))>
#<alt (- (* x.re y.re) (* x.im y.im))>
#<alt (- (* x.re y.re) (* x.im y.im))>
#<alt (* x.re y.re)>
#<alt (* y.re (+ x.re (* -1 (/ (* x.im y.im) y.re))))>
#<alt (* y.re (+ x.re (* -1 (/ (* x.im y.im) y.re))))>
#<alt (* y.re (+ x.re (* -1 (/ (* x.im y.im) y.re))))>
#<alt (* x.re y.re)>
#<alt (* -1 (* y.re (+ (* -1 x.re) (/ (* x.im y.im) y.re))))>
#<alt (* -1 (* y.re (+ (* -1 x.re) (/ (* x.im y.im) y.re))))>
#<alt (* -1 (* y.re (+ (* -1 x.re) (/ (* x.im y.im) y.re))))>
#<alt (* -1 (* x.im y.im))>
#<alt (- (* x.re y.re) (* x.im y.im))>
#<alt (- (* x.re y.re) (* x.im y.im))>
#<alt (- (* x.re y.re) (* x.im y.im))>
#<alt (* x.re y.re)>
#<alt (* x.re (+ y.re (* -1 (/ (* x.im y.im) x.re))))>
#<alt (* x.re (+ y.re (* -1 (/ (* x.im y.im) x.re))))>
#<alt (* x.re (+ y.re (* -1 (/ (* x.im y.im) x.re))))>
#<alt (* x.re y.re)>
#<alt (* -1 (* x.re (+ (* -1 y.re) (/ (* x.im y.im) x.re))))>
#<alt (* -1 (* x.re (+ (* -1 y.re) (/ (* x.im y.im) x.re))))>
#<alt (* -1 (* x.re (+ (* -1 y.re) (/ (* x.im y.im) x.re))))>
#<alt (* x.re y.re)>
#<alt (+ (* -1 (* x.im y.im)) (* x.re y.re))>
#<alt (+ (* -1 (* x.im y.im)) (* x.re y.re))>
#<alt (+ (* -1 (* x.im y.im)) (* x.re y.re))>
#<alt (* -1 (* x.im y.im))>
#<alt (* x.im (- (/ (* x.re y.re) x.im) y.im))>
#<alt (* x.im (- (/ (* x.re y.re) x.im) y.im))>
#<alt (* x.im (- (/ (* x.re y.re) x.im) y.im))>
#<alt (* -1 (* x.im y.im))>
#<alt (* -1 (* x.im (- (* -1 (/ (* x.re y.re) x.im)) (* -1 y.im))))>
#<alt (* -1 (* x.im (- (* -1 (/ (* x.re y.re) x.im)) (* -1 y.im))))>
#<alt (* -1 (* x.im (- (* -1 (/ (* x.re y.re) x.im)) (* -1 y.im))))>
#<alt (* x.re y.re)>
#<alt (+ (* -1 (* x.im y.im)) (* x.re y.re))>
#<alt (+ (* -1 (* x.im y.im)) (* x.re y.re))>
#<alt (+ (* -1 (* x.im y.im)) (* x.re y.re))>
#<alt (* -1 (* x.im y.im))>
#<alt (* y.im (- (/ (* x.re y.re) y.im) x.im))>
#<alt (* y.im (- (/ (* x.re y.re) y.im) x.im))>
#<alt (* y.im (- (/ (* x.re y.re) y.im) x.im))>
#<alt (* -1 (* x.im y.im))>
#<alt (* -1 (* y.im (- (* -1 (/ (* x.re y.re) y.im)) (* -1 x.im))))>
#<alt (* -1 (* y.im (- (* -1 (/ (* x.re y.re) y.im)) (* -1 x.im))))>
#<alt (* -1 (* y.im (- (* -1 (/ (* x.re y.re) y.im)) (* -1 x.im))))>
Calls

24 calls:

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

rewrite206.0ms (5.1%)

Algorithm
batch-egg-rewrite
Rules
3262×*-lowering-*.f32
3262×*-lowering-*.f64
1960×sum3-define
1732×fnmadd-define
1730×unpow-prod-down
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0813
13412
230612
3404912
01006612
Stop Event
iter limit
node limit
Counts
3 → 148
Calls
Call 1
Inputs
(* x.im y.im)
(neg (* x.im y.im))
(+ (* y.re x.re) (neg (* x.im y.im)))
Outputs
(+.f64 (*.f64 x.im y.im) #s(literal 0 binary64))
(+.f64 #s(literal 0 binary64) (*.f64 x.im y.im))
(-.f64 #s(literal 0 binary64) (*.f64 x.im y.im))
(-.f64 (/.f64 #s(literal 0 binary64) (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im)))) (*.f64 x.im y.im))
(-.f64 (/.f64 #s(literal 0 binary64) (*.f64 x.im y.im)) (*.f64 x.im y.im))
(neg.f64 (*.f64 x.im y.im))
(/.f64 (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im)))) (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im))))
(/.f64 (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im)))) (+.f64 #s(literal 0 binary64) (-.f64 (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im))) #s(literal 0 binary64))))
(/.f64 (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im))) (*.f64 x.im y.im))
(/.f64 #s(literal 1 binary64) (/.f64 (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im))) (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im))))))
(/.f64 #s(literal 1 binary64) (/.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im)))))
(pow.f64 (/.f64 (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im))) (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im))))) #s(literal -1 binary64))
(pow.f64 (/.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im)))) #s(literal -1 binary64))
(*.f64 x.im y.im)
(*.f64 x.im (-.f64 #s(literal 0 binary64) y.im))
(*.f64 x.im (*.f64 (-.f64 #s(literal 0 binary64) y.im) #s(literal -1 binary64)))
(*.f64 y.im x.im)
(*.f64 y.im (-.f64 #s(literal 0 binary64) x.im))
(*.f64 y.im (*.f64 (-.f64 #s(literal 0 binary64) x.im) #s(literal -1 binary64)))
(*.f64 (*.f64 x.im y.im) #s(literal -1 binary64))
(*.f64 (*.f64 x.im y.im) #s(literal 1 binary64))
(*.f64 (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im)))) (/.f64 #s(literal 1 binary64) (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im)))))
(*.f64 (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im))) (/.f64 #s(literal 1 binary64) (*.f64 x.im y.im)))
(*.f64 #s(literal -1 binary64) (*.f64 x.im y.im))
(*.f64 (-.f64 #s(literal 0 binary64) x.im) y.im)
(*.f64 (-.f64 #s(literal 0 binary64) x.im) (-.f64 #s(literal 0 binary64) y.im))
(*.f64 (-.f64 #s(literal 0 binary64) y.im) x.im)
(*.f64 (-.f64 #s(literal 0 binary64) y.im) (-.f64 #s(literal 0 binary64) x.im))
(*.f64 #s(literal 1 binary64) (*.f64 x.im y.im))
(*.f64 (*.f64 (-.f64 #s(literal 0 binary64) x.im) #s(literal -1 binary64)) y.im)
(+.f64 (*.f64 x.im y.im) #s(literal 0 binary64))
(+.f64 #s(literal 0 binary64) (*.f64 x.im y.im))
(-.f64 #s(literal 0 binary64) (*.f64 x.im y.im))
(-.f64 (/.f64 #s(literal 0 binary64) (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im)))) (*.f64 x.im y.im))
(-.f64 (/.f64 #s(literal 0 binary64) (*.f64 x.im y.im)) (*.f64 x.im y.im))
(neg.f64 (*.f64 x.im y.im))
(/.f64 (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im)))) (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im))))
(/.f64 (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im)))) (+.f64 #s(literal 0 binary64) (-.f64 (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im))) #s(literal 0 binary64))))
(/.f64 (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im))) (*.f64 x.im y.im))
(/.f64 #s(literal 1 binary64) (/.f64 (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im))) (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im))))))
(/.f64 #s(literal 1 binary64) (/.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im)))))
(pow.f64 (/.f64 (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im))) (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im))))) #s(literal -1 binary64))
(pow.f64 (/.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im)))) #s(literal -1 binary64))
(*.f64 x.im y.im)
(*.f64 x.im (-.f64 #s(literal 0 binary64) y.im))
(*.f64 x.im (*.f64 (-.f64 #s(literal 0 binary64) y.im) #s(literal -1 binary64)))
(*.f64 y.im x.im)
(*.f64 y.im (-.f64 #s(literal 0 binary64) x.im))
(*.f64 y.im (*.f64 (-.f64 #s(literal 0 binary64) x.im) #s(literal -1 binary64)))
(*.f64 (*.f64 x.im y.im) #s(literal -1 binary64))
(*.f64 (*.f64 x.im y.im) #s(literal 1 binary64))
(*.f64 (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im)))) (/.f64 #s(literal 1 binary64) (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im)))))
(*.f64 (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im))) (/.f64 #s(literal 1 binary64) (*.f64 x.im y.im)))
(*.f64 #s(literal -1 binary64) (*.f64 x.im y.im))
(*.f64 (-.f64 #s(literal 0 binary64) x.im) y.im)
(*.f64 (-.f64 #s(literal 0 binary64) x.im) (-.f64 #s(literal 0 binary64) y.im))
(*.f64 (-.f64 #s(literal 0 binary64) y.im) x.im)
(*.f64 (-.f64 #s(literal 0 binary64) y.im) (-.f64 #s(literal 0 binary64) x.im))
(*.f64 #s(literal 1 binary64) (*.f64 x.im y.im))
(*.f64 (*.f64 (-.f64 #s(literal 0 binary64) x.im) #s(literal -1 binary64)) y.im)
(+.f64 (*.f64 x.im y.im) (*.f64 y.re x.re))
(+.f64 (*.f64 x.im y.im) (+.f64 (*.f64 y.re x.re) (+.f64 (*.f64 x.im y.im) (*.f64 x.im y.im))))
(+.f64 (*.f64 y.re x.re) (*.f64 x.im y.im))
(+.f64 (*.f64 y.re x.re) (+.f64 (*.f64 x.im y.im) (+.f64 (*.f64 x.im y.im) (*.f64 x.im y.im))))
(+.f64 #s(literal 0 binary64) (+.f64 (*.f64 x.im y.im) (*.f64 y.re x.re)))
(+.f64 (+.f64 (*.f64 x.im y.im) (*.f64 y.re x.re)) (+.f64 (*.f64 x.im y.im) (*.f64 x.im y.im)))
(+.f64 (+.f64 (*.f64 x.im y.im) (*.f64 y.re x.re)) (+.f64 (+.f64 (*.f64 x.im y.im) (*.f64 x.im y.im)) (+.f64 (*.f64 x.im y.im) (*.f64 x.im y.im))))
(+.f64 (+.f64 (*.f64 x.im y.im) (*.f64 x.im y.im)) (+.f64 (*.f64 x.im y.im) (*.f64 y.re x.re)))
(+.f64 (/.f64 (*.f64 y.re (*.f64 y.re (*.f64 x.re x.re))) (+.f64 (*.f64 x.im y.im) (*.f64 y.re x.re))) (/.f64 (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im))) (+.f64 (*.f64 x.im y.im) (*.f64 y.re x.re))))
(exp.f64 (*.f64 (log.f64 (/.f64 #s(literal -1 binary64) (-.f64 (*.f64 x.im y.im) (*.f64 y.re x.re)))) #s(literal -1 binary64)))
(-.f64 (*.f64 y.re x.re) (*.f64 x.im y.im))
(-.f64 (*.f64 y.re x.re) (-.f64 (*.f64 x.im y.im) (+.f64 (*.f64 x.im y.im) (*.f64 x.im y.im))))
(-.f64 #s(literal 0 binary64) (-.f64 (*.f64 x.im y.im) (*.f64 y.re x.re)))
(-.f64 #s(literal 0 binary64) (-.f64 (-.f64 (*.f64 x.im y.im) (*.f64 y.re x.re)) (+.f64 (*.f64 x.im y.im) (*.f64 x.im y.im))))
(-.f64 (/.f64 (*.f64 y.re (*.f64 y.re (*.f64 x.re x.re))) (+.f64 (*.f64 x.im y.im) (*.f64 y.re x.re))) (/.f64 (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im))) (+.f64 (*.f64 x.im y.im) (*.f64 y.re x.re))))
(-.f64 (/.f64 (*.f64 y.re (*.f64 y.re (*.f64 x.re x.re))) (+.f64 (*.f64 x.im y.im) (*.f64 y.re x.re))) (-.f64 (/.f64 (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im))) (+.f64 (*.f64 x.im y.im) (*.f64 y.re x.re))) (+.f64 (*.f64 x.im y.im) (*.f64 x.im y.im))))
(-.f64 (/.f64 (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im))) (+.f64 (*.f64 x.im y.im) (*.f64 y.re x.re))) (/.f64 (*.f64 y.re (*.f64 y.re (*.f64 x.re x.re))) (-.f64 (*.f64 x.im y.im) (*.f64 y.re x.re))))
(-.f64 (/.f64 (*.f64 y.re (*.f64 x.re (*.f64 y.re (*.f64 y.re (*.f64 x.re x.re))))) (+.f64 (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im))) (*.f64 (*.f64 y.re x.re) (+.f64 (*.f64 x.im y.im) (*.f64 y.re x.re))))) (/.f64 (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im)))) (+.f64 (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im))) (*.f64 (*.f64 y.re x.re) (+.f64 (*.f64 x.im y.im) (*.f64 y.re x.re))))))
(fma.f64 x.im (-.f64 #s(literal 0 binary64) y.im) (*.f64 y.re x.re))
(fma.f64 y.im (-.f64 #s(literal 0 binary64) x.im) (*.f64 y.re x.re))
(fma.f64 (*.f64 x.im y.im) #s(literal -1 binary64) (*.f64 y.re x.re))
(fma.f64 y.re x.re (*.f64 x.im y.im))
(fma.f64 x.re y.re (*.f64 x.im y.im))
(fma.f64 #s(literal -1 binary64) (*.f64 x.im y.im) (*.f64 y.re x.re))
(fma.f64 (+.f64 (*.f64 y.re (*.f64 y.re (*.f64 x.re x.re))) (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im)))) (/.f64 #s(literal -1 binary64) (-.f64 (*.f64 x.im y.im) (*.f64 y.re x.re))) (+.f64 (*.f64 x.im y.im) (*.f64 x.im y.im)))
(fma.f64 (-.f64 #s(literal 0 binary64) x.im) y.im (*.f64 y.re x.re))
(fma.f64 (-.f64 #s(literal 0 binary64) y.im) x.im (*.f64 y.re x.re))
(fma.f64 (+.f64 (*.f64 y.re (*.f64 x.re (*.f64 y.re (*.f64 y.re (*.f64 x.re x.re))))) (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im))))) (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im))) (*.f64 (*.f64 y.re x.re) (+.f64 (*.f64 x.im y.im) (*.f64 y.re x.re))))) (+.f64 (*.f64 x.im y.im) (*.f64 x.im y.im)))
(neg.f64 (-.f64 (*.f64 x.im y.im) (*.f64 y.re x.re)))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 #s(literal -1 binary64) (-.f64 (*.f64 x.im y.im) (*.f64 y.re x.re)))))
(/.f64 (+.f64 (*.f64 y.re (*.f64 y.re (*.f64 x.re x.re))) (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im)))) (+.f64 (*.f64 x.im y.im) (*.f64 y.re x.re)))
(/.f64 (+.f64 (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im)))) (neg.f64 (*.f64 y.re (*.f64 x.re (*.f64 y.re (*.f64 y.re (*.f64 x.re x.re))))))) (+.f64 (*.f64 (*.f64 x.im y.im) (+.f64 (*.f64 x.im y.im) (*.f64 y.re x.re))) (neg.f64 (*.f64 y.re (*.f64 y.re (*.f64 x.re x.re))))))
(/.f64 (+.f64 (*.f64 (*.f64 y.re (*.f64 x.re (*.f64 y.re (*.f64 y.re (*.f64 x.re x.re))))) (*.f64 (*.f64 x.re (*.f64 x.re x.re)) (*.f64 (*.f64 x.re (*.f64 x.re x.re)) (*.f64 (*.f64 y.re (*.f64 y.re y.re)) (*.f64 y.re (*.f64 y.re y.re)))))) (*.f64 (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im)))) (*.f64 (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im)))) (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im))))))) (*.f64 (+.f64 (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im))) (*.f64 (*.f64 y.re x.re) (+.f64 (*.f64 x.im y.im) (*.f64 y.re x.re)))) (+.f64 (*.f64 (*.f64 x.re (*.f64 x.re x.re)) (*.f64 (*.f64 x.re (*.f64 x.re x.re)) (*.f64 (*.f64 y.re (*.f64 y.re y.re)) (*.f64 y.re (*.f64 y.re y.re))))) (*.f64 (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im)))) (-.f64 (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im)))) (*.f64 y.re (*.f64 x.re (*.f64 y.re (*.f64 y.re (*.f64 x.re x.re))))))))))
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal -1 binary64) (-.f64 (*.f64 x.im y.im) (*.f64 y.re x.re))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 #s(literal -1 binary64) (-.f64 (*.f64 x.im y.im) (*.f64 y.re x.re))) #s(literal 1 binary64)))
(/.f64 (+.f64 (*.f64 (*.f64 x.re (*.f64 x.re x.re)) (*.f64 (*.f64 x.re (*.f64 x.re x.re)) (*.f64 (*.f64 y.re (*.f64 y.re y.re)) (*.f64 y.re (*.f64 y.re y.re))))) (*.f64 (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im)))) (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im)))))) (*.f64 (+.f64 (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im))) (*.f64 (*.f64 y.re x.re) (+.f64 (*.f64 x.im y.im) (*.f64 y.re x.re)))) (+.f64 (*.f64 y.re (*.f64 x.re (*.f64 y.re (*.f64 y.re (*.f64 x.re x.re))))) (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im)))))))
(/.f64 (+.f64 (*.f64 (*.f64 x.re (*.f64 x.re x.re)) (*.f64 (*.f64 x.re (*.f64 x.re x.re)) (*.f64 (*.f64 y.re (*.f64 y.re y.re)) (*.f64 y.re (*.f64 y.re y.re))))) (*.f64 (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im)))) (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im)))))) (*.f64 (+.f64 (*.f64 x.im y.im) (*.f64 y.re x.re)) (*.f64 (+.f64 (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im))) (*.f64 (*.f64 y.re x.re) (+.f64 (*.f64 x.im y.im) (*.f64 y.re x.re)))) (+.f64 (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im))) (*.f64 (*.f64 y.re x.re) (+.f64 (*.f64 x.im y.im) (*.f64 y.re x.re)))))))
(/.f64 (*.f64 (+.f64 (*.f64 y.re (*.f64 y.re (*.f64 x.re x.re))) (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im)))) (+.f64 (*.f64 y.re (*.f64 y.re (*.f64 x.re x.re))) (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im))))) (*.f64 (+.f64 (*.f64 x.im y.im) (*.f64 y.re x.re)) (+.f64 (*.f64 y.re (*.f64 y.re (*.f64 x.re x.re))) (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im))))))
(/.f64 (+.f64 (*.f64 y.re (*.f64 x.re (*.f64 y.re (*.f64 y.re (*.f64 x.re x.re))))) (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im))))) (+.f64 (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im))) (*.f64 (*.f64 y.re x.re) (+.f64 (*.f64 x.im y.im) (*.f64 y.re x.re)))))
(/.f64 (-.f64 (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im))) (*.f64 y.re (*.f64 y.re (*.f64 x.re x.re)))) (-.f64 (*.f64 x.im y.im) (*.f64 y.re x.re)))
(/.f64 (-.f64 (*.f64 (*.f64 y.re (*.f64 y.re (*.f64 x.re x.re))) (+.f64 (*.f64 x.im y.im) (*.f64 y.re x.re))) (*.f64 (+.f64 (*.f64 x.im y.im) (*.f64 y.re x.re)) (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im))))) (+.f64 (*.f64 y.re (*.f64 y.re (*.f64 x.re x.re))) (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im)))))
(/.f64 (*.f64 (+.f64 (*.f64 (*.f64 y.re (*.f64 x.re (*.f64 y.re (*.f64 y.re (*.f64 x.re x.re))))) (*.f64 (*.f64 x.re (*.f64 x.re x.re)) (*.f64 (*.f64 x.re (*.f64 x.re x.re)) (*.f64 (*.f64 y.re (*.f64 y.re y.re)) (*.f64 y.re (*.f64 y.re y.re)))))) (*.f64 (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im)))) (*.f64 (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im)))) (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im))))))) #s(literal 1 binary64)) (*.f64 (+.f64 (*.f64 (*.f64 x.re (*.f64 x.re x.re)) (*.f64 (*.f64 x.re (*.f64 x.re x.re)) (*.f64 (*.f64 y.re (*.f64 y.re y.re)) (*.f64 y.re (*.f64 y.re y.re))))) (*.f64 (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im)))) (-.f64 (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im)))) (*.f64 y.re (*.f64 x.re (*.f64 y.re (*.f64 y.re (*.f64 x.re x.re)))))))) (+.f64 (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im))) (*.f64 (*.f64 y.re x.re) (+.f64 (*.f64 x.im y.im) (*.f64 y.re x.re))))))
(/.f64 (*.f64 (+.f64 (*.f64 (*.f64 x.re (*.f64 x.re x.re)) (*.f64 (*.f64 x.re (*.f64 x.re x.re)) (*.f64 (*.f64 y.re (*.f64 y.re y.re)) (*.f64 y.re (*.f64 y.re y.re))))) (*.f64 (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im)))) (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im)))))) #s(literal 1 binary64)) (*.f64 (+.f64 (*.f64 y.re (*.f64 x.re (*.f64 y.re (*.f64 y.re (*.f64 x.re x.re))))) (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im))))) (+.f64 (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im))) (*.f64 (*.f64 y.re x.re) (+.f64 (*.f64 x.im y.im) (*.f64 y.re x.re))))))
(/.f64 (*.f64 (+.f64 (*.f64 (*.f64 x.re (*.f64 x.re x.re)) (*.f64 (*.f64 x.re (*.f64 x.re x.re)) (*.f64 (*.f64 y.re (*.f64 y.re y.re)) (*.f64 y.re (*.f64 y.re y.re))))) (*.f64 (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im)))) (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im)))))) #s(literal 1 binary64)) (*.f64 (*.f64 (+.f64 (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im))) (*.f64 (*.f64 y.re x.re) (+.f64 (*.f64 x.im y.im) (*.f64 y.re x.re)))) (+.f64 (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im))) (*.f64 (*.f64 y.re x.re) (+.f64 (*.f64 x.im y.im) (*.f64 y.re x.re))))) (+.f64 (*.f64 x.im y.im) (*.f64 y.re x.re))))
(/.f64 (*.f64 (*.f64 (+.f64 (*.f64 y.re (*.f64 y.re (*.f64 x.re x.re))) (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im)))) (+.f64 (*.f64 y.re (*.f64 y.re (*.f64 x.re x.re))) (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im))))) #s(literal 1 binary64)) (*.f64 (+.f64 (*.f64 y.re (*.f64 y.re (*.f64 x.re x.re))) (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im)))) (+.f64 (*.f64 x.im y.im) (*.f64 y.re x.re))))
(/.f64 (neg.f64 (+.f64 (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im)))) (neg.f64 (*.f64 y.re (*.f64 x.re (*.f64 y.re (*.f64 y.re (*.f64 x.re x.re)))))))) (neg.f64 (+.f64 (*.f64 (*.f64 x.im y.im) (+.f64 (*.f64 x.im y.im) (*.f64 y.re x.re))) (neg.f64 (*.f64 y.re (*.f64 y.re (*.f64 x.re x.re)))))))
(/.f64 (neg.f64 (-.f64 (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im))) (*.f64 y.re (*.f64 y.re (*.f64 x.re x.re))))) (+.f64 (*.f64 x.im y.im) (*.f64 y.re x.re)))
(/.f64 (+.f64 (pow.f64 (+.f64 (*.f64 x.im y.im) (*.f64 y.re x.re)) #s(literal 3 binary64)) (pow.f64 (+.f64 (*.f64 x.im y.im) (*.f64 x.im y.im)) #s(literal 3 binary64))) (+.f64 (+.f64 (*.f64 y.re (*.f64 y.re (*.f64 x.re x.re))) (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im)))) (-.f64 (*.f64 (+.f64 (*.f64 x.im y.im) (*.f64 x.im y.im)) (+.f64 (*.f64 x.im y.im) (*.f64 x.im y.im))) (*.f64 (+.f64 (*.f64 x.im y.im) (*.f64 y.re x.re)) (+.f64 (*.f64 x.im y.im) (*.f64 x.im y.im))))))
(/.f64 (-.f64 #s(literal 0 binary64) (pow.f64 (-.f64 (*.f64 x.im y.im) (*.f64 y.re x.re)) #s(literal 3 binary64))) (+.f64 #s(literal 0 binary64) (+.f64 (*.f64 (-.f64 (*.f64 x.im y.im) (*.f64 y.re x.re)) (-.f64 (*.f64 x.im y.im) (*.f64 y.re x.re))) (*.f64 #s(literal 0 binary64) (-.f64 (*.f64 x.im y.im) (*.f64 y.re x.re))))))
(/.f64 (-.f64 (pow.f64 (/.f64 (*.f64 y.re (*.f64 y.re (*.f64 x.re x.re))) (+.f64 (*.f64 x.im y.im) (*.f64 y.re x.re))) #s(literal 3 binary64)) (pow.f64 (/.f64 (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im))) (+.f64 (*.f64 x.im y.im) (*.f64 y.re x.re))) #s(literal 3 binary64))) (+.f64 (*.f64 (/.f64 (*.f64 y.re (*.f64 y.re (*.f64 x.re x.re))) (+.f64 (*.f64 x.im y.im) (*.f64 y.re x.re))) (/.f64 (*.f64 y.re (*.f64 y.re (*.f64 x.re x.re))) (+.f64 (*.f64 x.im y.im) (*.f64 y.re x.re)))) (+.f64 (*.f64 (/.f64 (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im))) (+.f64 (*.f64 x.im y.im) (*.f64 y.re x.re))) (/.f64 (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im))) (+.f64 (*.f64 x.im y.im) (*.f64 y.re x.re)))) (*.f64 (/.f64 (*.f64 y.re (*.f64 y.re (*.f64 x.re x.re))) (+.f64 (*.f64 x.im y.im) (*.f64 y.re x.re))) (/.f64 (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im))) (+.f64 (*.f64 x.im y.im) (*.f64 y.re x.re)))))))
(/.f64 (-.f64 (+.f64 (*.f64 y.re (*.f64 y.re (*.f64 x.re x.re))) (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im)))) (*.f64 (+.f64 (*.f64 x.im y.im) (*.f64 x.im y.im)) (+.f64 (*.f64 x.im y.im) (*.f64 x.im y.im)))) (-.f64 (+.f64 (*.f64 x.im y.im) (*.f64 y.re x.re)) (+.f64 (*.f64 x.im y.im) (*.f64 x.im y.im))))
(/.f64 (-.f64 #s(literal 0 binary64) (*.f64 (-.f64 (*.f64 x.im y.im) (*.f64 y.re x.re)) (-.f64 (*.f64 x.im y.im) (*.f64 y.re x.re)))) (-.f64 (*.f64 x.im y.im) (*.f64 y.re x.re)))
(/.f64 (-.f64 (*.f64 (/.f64 (*.f64 y.re (*.f64 y.re (*.f64 x.re x.re))) (+.f64 (*.f64 x.im y.im) (*.f64 y.re x.re))) (/.f64 (*.f64 y.re (*.f64 y.re (*.f64 x.re x.re))) (+.f64 (*.f64 x.im y.im) (*.f64 y.re x.re)))) (*.f64 (/.f64 (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im))) (+.f64 (*.f64 x.im y.im) (*.f64 y.re x.re))) (/.f64 (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im))) (+.f64 (*.f64 x.im y.im) (*.f64 y.re x.re))))) (+.f64 (*.f64 x.im y.im) (*.f64 y.re x.re)))
(/.f64 (*.f64 (+.f64 (*.f64 y.re (*.f64 x.re (*.f64 y.re (*.f64 y.re (*.f64 x.re x.re))))) (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im))))) #s(literal 1 binary64)) (+.f64 (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im))) (*.f64 (*.f64 y.re x.re) (+.f64 (*.f64 x.im y.im) (*.f64 y.re x.re)))))
(/.f64 (*.f64 (+.f64 (*.f64 y.re (*.f64 y.re (*.f64 x.re x.re))) (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im)))) #s(literal 1 binary64)) (+.f64 (*.f64 x.im y.im) (*.f64 y.re x.re)))
(/.f64 (*.f64 (+.f64 (*.f64 (*.f64 y.re (*.f64 x.re (*.f64 y.re (*.f64 y.re (*.f64 x.re x.re))))) (*.f64 (*.f64 x.re (*.f64 x.re x.re)) (*.f64 (*.f64 x.re (*.f64 x.re x.re)) (*.f64 (*.f64 y.re (*.f64 y.re y.re)) (*.f64 y.re (*.f64 y.re y.re)))))) (*.f64 (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im)))) (*.f64 (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im)))) (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im))))))) (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im))) (*.f64 (*.f64 y.re x.re) (+.f64 (*.f64 x.im y.im) (*.f64 y.re x.re)))))) (+.f64 (*.f64 (*.f64 x.re (*.f64 x.re x.re)) (*.f64 (*.f64 x.re (*.f64 x.re x.re)) (*.f64 (*.f64 y.re (*.f64 y.re y.re)) (*.f64 y.re (*.f64 y.re y.re))))) (*.f64 (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im)))) (-.f64 (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im)))) (*.f64 y.re (*.f64 x.re (*.f64 y.re (*.f64 y.re (*.f64 x.re x.re)))))))))
(/.f64 (*.f64 (+.f64 (*.f64 (*.f64 x.re (*.f64 x.re x.re)) (*.f64 (*.f64 x.re (*.f64 x.re x.re)) (*.f64 (*.f64 y.re (*.f64 y.re y.re)) (*.f64 y.re (*.f64 y.re y.re))))) (*.f64 (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im)))) (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im)))))) (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im))) (*.f64 (*.f64 y.re x.re) (+.f64 (*.f64 x.im y.im) (*.f64 y.re x.re)))))) (+.f64 (*.f64 y.re (*.f64 x.re (*.f64 y.re (*.f64 y.re (*.f64 x.re x.re))))) (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im))))))
(/.f64 (*.f64 (+.f64 (*.f64 (*.f64 x.re (*.f64 x.re x.re)) (*.f64 (*.f64 x.re (*.f64 x.re x.re)) (*.f64 (*.f64 y.re (*.f64 y.re y.re)) (*.f64 y.re (*.f64 y.re y.re))))) (*.f64 (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im)))) (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im)))))) (/.f64 #s(literal -1 binary64) (-.f64 (*.f64 x.im y.im) (*.f64 y.re x.re)))) (*.f64 (+.f64 (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im))) (*.f64 (*.f64 y.re x.re) (+.f64 (*.f64 x.im y.im) (*.f64 y.re x.re)))) (+.f64 (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im))) (*.f64 (*.f64 y.re x.re) (+.f64 (*.f64 x.im y.im) (*.f64 y.re x.re))))))
(/.f64 (*.f64 (*.f64 (+.f64 (*.f64 y.re (*.f64 y.re (*.f64 x.re x.re))) (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im)))) (+.f64 (*.f64 y.re (*.f64 y.re (*.f64 x.re x.re))) (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im))))) (/.f64 #s(literal -1 binary64) (-.f64 (*.f64 x.im y.im) (*.f64 y.re x.re)))) (+.f64 (*.f64 y.re (*.f64 y.re (*.f64 x.re x.re))) (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im)))))
(/.f64 (/.f64 (+.f64 (*.f64 y.re (*.f64 y.re (*.f64 x.re x.re))) (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im)))) (+.f64 (*.f64 y.re (*.f64 x.re (*.f64 y.re (*.f64 y.re (*.f64 x.re x.re))))) (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im)))))) (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im))) (*.f64 (*.f64 y.re x.re) (+.f64 (*.f64 x.im y.im) (*.f64 y.re x.re))))))
(/.f64 (/.f64 (+.f64 (*.f64 y.re (*.f64 y.re (*.f64 x.re x.re))) (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im)))) (+.f64 (*.f64 y.re (*.f64 y.re (*.f64 x.re x.re))) (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im))))) (/.f64 #s(literal -1 binary64) (-.f64 (*.f64 x.im y.im) (*.f64 y.re x.re))))
(pow.f64 (/.f64 #s(literal -1 binary64) (-.f64 (*.f64 x.im y.im) (*.f64 y.re x.re))) #s(literal -1 binary64))
(pow.f64 (/.f64 (/.f64 #s(literal -1 binary64) (-.f64 (*.f64 x.im y.im) (*.f64 y.re x.re))) #s(literal 1 binary64)) #s(literal -1 binary64))
(*.f64 (+.f64 (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im))) (*.f64 (*.f64 y.re x.re) (+.f64 (*.f64 x.im y.im) (*.f64 y.re x.re)))) (*.f64 (+.f64 (*.f64 x.im y.im) (*.f64 y.re x.re)) (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im))) (*.f64 (*.f64 y.re x.re) (+.f64 (*.f64 x.im y.im) (*.f64 y.re x.re)))))))
(*.f64 (+.f64 (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im))) (*.f64 (*.f64 y.re x.re) (+.f64 (*.f64 x.im y.im) (*.f64 y.re x.re)))) (/.f64 (+.f64 (*.f64 x.im y.im) (*.f64 y.re x.re)) (+.f64 (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im))) (*.f64 (*.f64 y.re x.re) (+.f64 (*.f64 x.im y.im) (*.f64 y.re x.re))))))
(*.f64 (+.f64 (*.f64 y.re (*.f64 y.re (*.f64 x.re x.re))) (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im)))) (/.f64 #s(literal -1 binary64) (-.f64 (*.f64 x.im y.im) (*.f64 y.re x.re))))
(*.f64 (+.f64 (*.f64 x.im y.im) (*.f64 y.re x.re)) (*.f64 (+.f64 (*.f64 x.im y.im) (*.f64 y.re x.re)) (/.f64 #s(literal -1 binary64) (-.f64 (*.f64 x.im y.im) (*.f64 y.re x.re)))))
(*.f64 (+.f64 (*.f64 x.im y.im) (*.f64 y.re x.re)) (/.f64 (+.f64 (*.f64 x.im y.im) (*.f64 y.re x.re)) (+.f64 (*.f64 x.im y.im) (*.f64 y.re x.re))))
(*.f64 (+.f64 (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im)))) (neg.f64 (*.f64 y.re (*.f64 x.re (*.f64 y.re (*.f64 y.re (*.f64 x.re x.re))))))) (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 (*.f64 x.im y.im) (+.f64 (*.f64 x.im y.im) (*.f64 y.re x.re))) (neg.f64 (*.f64 y.re (*.f64 y.re (*.f64 x.re x.re)))))))
(*.f64 #s(literal 1 binary64) (+.f64 (*.f64 x.im y.im) (*.f64 y.re x.re)))
(*.f64 (/.f64 #s(literal -1 binary64) (-.f64 (*.f64 x.im y.im) (*.f64 y.re x.re))) (+.f64 (*.f64 y.re (*.f64 y.re (*.f64 x.re x.re))) (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im)))))
(*.f64 (/.f64 #s(literal -1 binary64) (-.f64 (*.f64 x.im y.im) (*.f64 y.re x.re))) (pow.f64 (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 y.re (*.f64 y.re (*.f64 x.re x.re))) (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im))))) #s(literal -1 binary64)))
(*.f64 (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im))) (*.f64 (*.f64 y.re x.re) (+.f64 (*.f64 x.im y.im) (*.f64 y.re x.re))))) (+.f64 (*.f64 y.re (*.f64 x.re (*.f64 y.re (*.f64 y.re (*.f64 x.re x.re))))) (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im))))))
(*.f64 (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im))) (*.f64 (*.f64 y.re x.re) (+.f64 (*.f64 x.im y.im) (*.f64 y.re x.re))))) (pow.f64 (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 y.re (*.f64 x.re (*.f64 y.re (*.f64 y.re (*.f64 x.re x.re))))) (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im)))))) #s(literal -1 binary64)))
(*.f64 (+.f64 (*.f64 y.re (*.f64 x.re (*.f64 y.re (*.f64 y.re (*.f64 x.re x.re))))) (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im))))) (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im))) (*.f64 (*.f64 y.re x.re) (+.f64 (*.f64 x.im y.im) (*.f64 y.re x.re))))))
(*.f64 (-.f64 (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im))) (*.f64 y.re (*.f64 y.re (*.f64 x.re x.re)))) (/.f64 #s(literal 1 binary64) (-.f64 (*.f64 x.im y.im) (*.f64 y.re x.re))))
(*.f64 (/.f64 (+.f64 (*.f64 x.im y.im) (*.f64 y.re x.re)) (+.f64 (*.f64 y.re (*.f64 x.re (*.f64 y.re (*.f64 y.re (*.f64 x.re x.re))))) (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im)))))) (/.f64 (+.f64 (*.f64 x.im y.im) (*.f64 y.re x.re)) (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im))) (*.f64 (*.f64 y.re x.re) (+.f64 (*.f64 x.im y.im) (*.f64 y.re x.re)))))))
(*.f64 (/.f64 (+.f64 (*.f64 y.re (*.f64 y.re (*.f64 x.re x.re))) (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im)))) (+.f64 (*.f64 y.re (*.f64 x.re (*.f64 y.re (*.f64 y.re (*.f64 x.re x.re))))) (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im)))))) (+.f64 (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im))) (*.f64 (*.f64 y.re x.re) (+.f64 (*.f64 x.im y.im) (*.f64 y.re x.re)))))
(*.f64 (/.f64 (+.f64 (*.f64 y.re (*.f64 y.re (*.f64 x.re x.re))) (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im)))) (+.f64 (*.f64 y.re (*.f64 y.re (*.f64 x.re x.re))) (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im))))) (+.f64 (*.f64 x.im y.im) (*.f64 y.re x.re)))
(*.f64 (/.f64 (+.f64 (*.f64 y.re (*.f64 x.re (*.f64 y.re (*.f64 y.re (*.f64 x.re x.re))))) (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im))))) (+.f64 (*.f64 (*.f64 x.re (*.f64 x.re x.re)) (*.f64 (*.f64 x.re (*.f64 x.re x.re)) (*.f64 (*.f64 y.re (*.f64 y.re y.re)) (*.f64 y.re (*.f64 y.re y.re))))) (*.f64 (*.f64 (*.f64 x.im y.im) (+.f64 (*.f64 x.im y.im) (*.f64 y.re x.re))) (*.f64 (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im))) (+.f64 (*.f64 y.re (*.f64 y.re (*.f64 x.re x.re))) (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im)))))))) (+.f64 (*.f64 y.re (*.f64 (*.f64 y.re (*.f64 x.re x.re)) (*.f64 y.re (*.f64 y.re (*.f64 x.re x.re))))) (*.f64 (*.f64 (*.f64 x.im y.im) (+.f64 (*.f64 x.im y.im) (*.f64 y.re x.re))) (-.f64 (*.f64 (*.f64 x.im y.im) (+.f64 (*.f64 x.im y.im) (*.f64 y.re x.re))) (*.f64 y.re (*.f64 y.re (*.f64 x.re x.re)))))))
(*.f64 (/.f64 (+.f64 (*.f64 y.re (*.f64 x.re (*.f64 y.re (*.f64 y.re (*.f64 x.re x.re))))) (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im))))) (*.f64 (+.f64 (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im))) (*.f64 (*.f64 y.re x.re) (+.f64 (*.f64 x.im y.im) (*.f64 y.re x.re)))) (+.f64 (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im))) (*.f64 (*.f64 y.re x.re) (+.f64 (*.f64 x.im y.im) (*.f64 y.re x.re)))))) (+.f64 (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im))) (*.f64 (*.f64 y.re x.re) (+.f64 (*.f64 x.im y.im) (*.f64 y.re x.re)))))
(*.f64 (/.f64 (+.f64 (*.f64 y.re (*.f64 y.re (*.f64 x.re x.re))) (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im)))) (+.f64 (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im)))) (neg.f64 (*.f64 y.re (*.f64 x.re (*.f64 y.re (*.f64 y.re (*.f64 x.re x.re)))))))) (+.f64 (*.f64 (*.f64 x.im y.im) (+.f64 (*.f64 x.im y.im) (*.f64 y.re x.re))) (neg.f64 (*.f64 y.re (*.f64 y.re (*.f64 x.re x.re))))))
(*.f64 (/.f64 (+.f64 (*.f64 y.re (*.f64 y.re (*.f64 x.re x.re))) (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im)))) #s(literal 1 binary64)) (/.f64 #s(literal -1 binary64) (-.f64 (*.f64 x.im y.im) (*.f64 y.re x.re))))
(*.f64 (/.f64 (+.f64 (*.f64 y.re (*.f64 y.re (*.f64 x.re x.re))) (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im)))) (-.f64 (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im))) (*.f64 y.re (*.f64 y.re (*.f64 x.re x.re))))) (-.f64 (*.f64 x.im y.im) (*.f64 y.re x.re)))
(*.f64 (pow.f64 (/.f64 (+.f64 (*.f64 x.im y.im) (*.f64 y.re x.re)) (+.f64 (*.f64 (*.f64 x.re (*.f64 x.re x.re)) (*.f64 (*.f64 x.re (*.f64 x.re x.re)) (*.f64 (*.f64 y.re (*.f64 y.re y.re)) (*.f64 y.re (*.f64 y.re y.re))))) (*.f64 (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im)))) (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im))))))) #s(literal -1 binary64)) (/.f64 #s(literal 1 binary64) (*.f64 (+.f64 (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im))) (*.f64 (*.f64 y.re x.re) (+.f64 (*.f64 x.im y.im) (*.f64 y.re x.re)))) (+.f64 (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im))) (*.f64 (*.f64 y.re x.re) (+.f64 (*.f64 x.im y.im) (*.f64 y.re x.re)))))))
(*.f64 (pow.f64 (/.f64 (+.f64 (*.f64 x.im y.im) (*.f64 y.re x.re)) (*.f64 (+.f64 (*.f64 y.re (*.f64 y.re (*.f64 x.re x.re))) (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im)))) (+.f64 (*.f64 y.re (*.f64 y.re (*.f64 x.re x.re))) (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im)))))) #s(literal -1 binary64)) (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 y.re (*.f64 y.re (*.f64 x.re x.re))) (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im))))))
(*.f64 (pow.f64 (/.f64 (+.f64 (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im))) (*.f64 (*.f64 y.re x.re) (+.f64 (*.f64 x.im y.im) (*.f64 y.re x.re)))) (+.f64 (*.f64 (*.f64 y.re (*.f64 x.re (*.f64 y.re (*.f64 y.re (*.f64 x.re x.re))))) (*.f64 (*.f64 x.re (*.f64 x.re x.re)) (*.f64 (*.f64 x.re (*.f64 x.re x.re)) (*.f64 (*.f64 y.re (*.f64 y.re y.re)) (*.f64 y.re (*.f64 y.re y.re)))))) (*.f64 (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im)))) (*.f64 (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im)))) (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im)))))))) #s(literal -1 binary64)) (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 (*.f64 x.re (*.f64 x.re x.re)) (*.f64 (*.f64 x.re (*.f64 x.re x.re)) (*.f64 (*.f64 y.re (*.f64 y.re y.re)) (*.f64 y.re (*.f64 y.re y.re))))) (*.f64 (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im)))) (-.f64 (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im)))) (*.f64 y.re (*.f64 x.re (*.f64 y.re (*.f64 y.re (*.f64 x.re x.re))))))))))
(*.f64 (pow.f64 (/.f64 (+.f64 (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im))) (*.f64 (*.f64 y.re x.re) (+.f64 (*.f64 x.im y.im) (*.f64 y.re x.re)))) (+.f64 (*.f64 (*.f64 x.re (*.f64 x.re x.re)) (*.f64 (*.f64 x.re (*.f64 x.re x.re)) (*.f64 (*.f64 y.re (*.f64 y.re y.re)) (*.f64 y.re (*.f64 y.re y.re))))) (*.f64 (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im)))) (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im))))))) #s(literal -1 binary64)) (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 y.re (*.f64 x.re (*.f64 y.re (*.f64 y.re (*.f64 x.re x.re))))) (*.f64 (*.f64 x.im y.im) (*.f64 x.im (*.f64 y.im (*.f64 x.im y.im)))))))

simplify175.0ms (4.3%)

Algorithm
egg-herbie
Rules
2018×*-lowering-*.f32
2018×*-lowering-*.f64
2008×fma-lowering-fma.f32
2008×fma-lowering-fma.f64
1940×fmm-def
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
042462
1150450
2450450
31565450
46427450
08118450
Stop Event
iter limit
node limit
Counts
96 → 96
Calls
Call 1
Inputs
(* x.im y.im)
(* x.im y.im)
(* x.im y.im)
(* x.im y.im)
(* x.im y.im)
(* x.im y.im)
(* x.im y.im)
(* x.im y.im)
(* x.im y.im)
(* x.im y.im)
(* x.im y.im)
(* x.im y.im)
(* x.im y.im)
(* x.im y.im)
(* x.im y.im)
(* x.im y.im)
(* x.im y.im)
(* x.im y.im)
(* x.im y.im)
(* x.im y.im)
(* x.im y.im)
(* x.im y.im)
(* x.im y.im)
(* x.im y.im)
(* -1 (* x.im y.im))
(* -1 (* x.im y.im))
(* -1 (* x.im y.im))
(* -1 (* x.im y.im))
(* -1 (* x.im y.im))
(* -1 (* x.im y.im))
(* -1 (* x.im y.im))
(* -1 (* x.im y.im))
(* -1 (* x.im y.im))
(* -1 (* x.im y.im))
(* -1 (* x.im y.im))
(* -1 (* x.im y.im))
(* -1 (* x.im y.im))
(* -1 (* x.im y.im))
(* -1 (* x.im y.im))
(* -1 (* x.im y.im))
(* -1 (* x.im y.im))
(* -1 (* x.im y.im))
(* -1 (* x.im y.im))
(* -1 (* x.im y.im))
(* -1 (* x.im y.im))
(* -1 (* x.im y.im))
(* -1 (* x.im y.im))
(* -1 (* x.im y.im))
(* -1 (* x.im y.im))
(- (* x.re y.re) (* x.im y.im))
(- (* x.re y.re) (* x.im y.im))
(- (* x.re y.re) (* x.im y.im))
(* x.re y.re)
(* y.re (+ x.re (* -1 (/ (* x.im y.im) y.re))))
(* y.re (+ x.re (* -1 (/ (* x.im y.im) y.re))))
(* y.re (+ x.re (* -1 (/ (* x.im y.im) y.re))))
(* x.re y.re)
(* -1 (* y.re (+ (* -1 x.re) (/ (* x.im y.im) y.re))))
(* -1 (* y.re (+ (* -1 x.re) (/ (* x.im y.im) y.re))))
(* -1 (* y.re (+ (* -1 x.re) (/ (* x.im y.im) y.re))))
(* -1 (* x.im y.im))
(- (* x.re y.re) (* x.im y.im))
(- (* x.re y.re) (* x.im y.im))
(- (* x.re y.re) (* x.im y.im))
(* x.re y.re)
(* x.re (+ y.re (* -1 (/ (* x.im y.im) x.re))))
(* x.re (+ y.re (* -1 (/ (* x.im y.im) x.re))))
(* x.re (+ y.re (* -1 (/ (* x.im y.im) x.re))))
(* x.re y.re)
(* -1 (* x.re (+ (* -1 y.re) (/ (* x.im y.im) x.re))))
(* -1 (* x.re (+ (* -1 y.re) (/ (* x.im y.im) x.re))))
(* -1 (* x.re (+ (* -1 y.re) (/ (* x.im y.im) x.re))))
(* x.re y.re)
(+ (* -1 (* x.im y.im)) (* x.re y.re))
(+ (* -1 (* x.im y.im)) (* x.re y.re))
(+ (* -1 (* x.im y.im)) (* x.re y.re))
(* -1 (* x.im y.im))
(* x.im (- (/ (* x.re y.re) x.im) y.im))
(* x.im (- (/ (* x.re y.re) x.im) y.im))
(* x.im (- (/ (* x.re y.re) x.im) y.im))
(* -1 (* x.im y.im))
(* -1 (* x.im (- (* -1 (/ (* x.re y.re) x.im)) (* -1 y.im))))
(* -1 (* x.im (- (* -1 (/ (* x.re y.re) x.im)) (* -1 y.im))))
(* -1 (* x.im (- (* -1 (/ (* x.re y.re) x.im)) (* -1 y.im))))
(* x.re y.re)
(+ (* -1 (* x.im y.im)) (* x.re y.re))
(+ (* -1 (* x.im y.im)) (* x.re y.re))
(+ (* -1 (* x.im y.im)) (* x.re y.re))
(* -1 (* x.im y.im))
(* y.im (- (/ (* x.re y.re) y.im) x.im))
(* y.im (- (/ (* x.re y.re) y.im) x.im))
(* y.im (- (/ (* x.re y.re) y.im) x.im))
(* -1 (* x.im y.im))
(* -1 (* y.im (- (* -1 (/ (* x.re y.re) y.im)) (* -1 x.im))))
(* -1 (* y.im (- (* -1 (/ (* x.re y.re) y.im)) (* -1 x.im))))
(* -1 (* y.im (- (* -1 (/ (* x.re y.re) y.im)) (* -1 x.im))))
Outputs
(* x.im y.im)
(*.f64 x.im y.im)
(* x.im y.im)
(*.f64 x.im y.im)
(* x.im y.im)
(*.f64 x.im y.im)
(* x.im y.im)
(*.f64 x.im y.im)
(* x.im y.im)
(*.f64 x.im y.im)
(* x.im y.im)
(*.f64 x.im y.im)
(* x.im y.im)
(*.f64 x.im y.im)
(* x.im y.im)
(*.f64 x.im y.im)
(* x.im y.im)
(*.f64 x.im y.im)
(* x.im y.im)
(*.f64 x.im y.im)
(* x.im y.im)
(*.f64 x.im y.im)
(* x.im y.im)
(*.f64 x.im y.im)
(* x.im y.im)
(*.f64 x.im y.im)
(* x.im y.im)
(*.f64 x.im y.im)
(* x.im y.im)
(*.f64 x.im y.im)
(* x.im y.im)
(*.f64 x.im y.im)
(* x.im y.im)
(*.f64 x.im y.im)
(* x.im y.im)
(*.f64 x.im y.im)
(* x.im y.im)
(*.f64 x.im y.im)
(* x.im y.im)
(*.f64 x.im y.im)
(* x.im y.im)
(*.f64 x.im y.im)
(* x.im y.im)
(*.f64 x.im y.im)
(* x.im y.im)
(*.f64 x.im y.im)
(* x.im y.im)
(*.f64 x.im y.im)
(* -1 (* x.im y.im))
(*.f64 y.im (-.f64 #s(literal 0 binary64) x.im))
(* -1 (* x.im y.im))
(*.f64 y.im (-.f64 #s(literal 0 binary64) x.im))
(* -1 (* x.im y.im))
(*.f64 y.im (-.f64 #s(literal 0 binary64) x.im))
(* -1 (* x.im y.im))
(*.f64 y.im (-.f64 #s(literal 0 binary64) x.im))
(* -1 (* x.im y.im))
(*.f64 y.im (-.f64 #s(literal 0 binary64) x.im))
(* -1 (* x.im y.im))
(*.f64 y.im (-.f64 #s(literal 0 binary64) x.im))
(* -1 (* x.im y.im))
(*.f64 y.im (-.f64 #s(literal 0 binary64) x.im))
(* -1 (* x.im y.im))
(*.f64 y.im (-.f64 #s(literal 0 binary64) x.im))
(* -1 (* x.im y.im))
(*.f64 y.im (-.f64 #s(literal 0 binary64) x.im))
(* -1 (* x.im y.im))
(*.f64 y.im (-.f64 #s(literal 0 binary64) x.im))
(* -1 (* x.im y.im))
(*.f64 y.im (-.f64 #s(literal 0 binary64) x.im))
(* -1 (* x.im y.im))
(*.f64 y.im (-.f64 #s(literal 0 binary64) x.im))
(* -1 (* x.im y.im))
(*.f64 y.im (-.f64 #s(literal 0 binary64) x.im))
(* -1 (* x.im y.im))
(*.f64 y.im (-.f64 #s(literal 0 binary64) x.im))
(* -1 (* x.im y.im))
(*.f64 y.im (-.f64 #s(literal 0 binary64) x.im))
(* -1 (* x.im y.im))
(*.f64 y.im (-.f64 #s(literal 0 binary64) x.im))
(* -1 (* x.im y.im))
(*.f64 y.im (-.f64 #s(literal 0 binary64) x.im))
(* -1 (* x.im y.im))
(*.f64 y.im (-.f64 #s(literal 0 binary64) x.im))
(* -1 (* x.im y.im))
(*.f64 y.im (-.f64 #s(literal 0 binary64) x.im))
(* -1 (* x.im y.im))
(*.f64 y.im (-.f64 #s(literal 0 binary64) x.im))
(* -1 (* x.im y.im))
(*.f64 y.im (-.f64 #s(literal 0 binary64) x.im))
(* -1 (* x.im y.im))
(*.f64 y.im (-.f64 #s(literal 0 binary64) x.im))
(* -1 (* x.im y.im))
(*.f64 y.im (-.f64 #s(literal 0 binary64) x.im))
(* -1 (* x.im y.im))
(*.f64 y.im (-.f64 #s(literal 0 binary64) x.im))
(* -1 (* x.im y.im))
(*.f64 y.im (-.f64 #s(literal 0 binary64) x.im))
(- (* x.re y.re) (* x.im y.im))
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
(- (* x.re y.re) (* x.im y.im))
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
(- (* x.re y.re) (* x.im y.im))
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
(* x.re y.re)
(*.f64 x.re y.re)
(* y.re (+ x.re (* -1 (/ (* x.im y.im) y.re))))
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
(* y.re (+ x.re (* -1 (/ (* x.im y.im) y.re))))
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
(* y.re (+ x.re (* -1 (/ (* x.im y.im) y.re))))
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
(* x.re y.re)
(*.f64 x.re y.re)
(* -1 (* y.re (+ (* -1 x.re) (/ (* x.im y.im) y.re))))
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
(* -1 (* y.re (+ (* -1 x.re) (/ (* x.im y.im) y.re))))
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
(* -1 (* y.re (+ (* -1 x.re) (/ (* x.im y.im) y.re))))
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
(* -1 (* x.im y.im))
(*.f64 y.im (-.f64 #s(literal 0 binary64) x.im))
(- (* x.re y.re) (* x.im y.im))
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
(- (* x.re y.re) (* x.im y.im))
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
(- (* x.re y.re) (* x.im y.im))
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
(* x.re y.re)
(*.f64 x.re y.re)
(* x.re (+ y.re (* -1 (/ (* x.im y.im) x.re))))
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
(* x.re (+ y.re (* -1 (/ (* x.im y.im) x.re))))
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
(* x.re (+ y.re (* -1 (/ (* x.im y.im) x.re))))
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
(* x.re y.re)
(*.f64 x.re y.re)
(* -1 (* x.re (+ (* -1 y.re) (/ (* x.im y.im) x.re))))
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
(* -1 (* x.re (+ (* -1 y.re) (/ (* x.im y.im) x.re))))
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
(* -1 (* x.re (+ (* -1 y.re) (/ (* x.im y.im) x.re))))
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
(* x.re y.re)
(*.f64 x.re y.re)
(+ (* -1 (* x.im y.im)) (* x.re y.re))
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
(+ (* -1 (* x.im y.im)) (* x.re y.re))
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
(+ (* -1 (* x.im y.im)) (* x.re y.re))
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
(* -1 (* x.im y.im))
(*.f64 y.im (-.f64 #s(literal 0 binary64) x.im))
(* x.im (- (/ (* x.re y.re) x.im) y.im))
(*.f64 x.im (-.f64 (/.f64 (*.f64 x.re y.re) x.im) y.im))
(* x.im (- (/ (* x.re y.re) x.im) y.im))
(*.f64 x.im (-.f64 (/.f64 (*.f64 x.re y.re) x.im) y.im))
(* x.im (- (/ (* x.re y.re) x.im) y.im))
(*.f64 x.im (-.f64 (/.f64 (*.f64 x.re y.re) x.im) y.im))
(* -1 (* x.im y.im))
(*.f64 y.im (-.f64 #s(literal 0 binary64) x.im))
(* -1 (* x.im (- (* -1 (/ (* x.re y.re) x.im)) (* -1 y.im))))
(*.f64 x.im (-.f64 (/.f64 (*.f64 x.re y.re) x.im) y.im))
(* -1 (* x.im (- (* -1 (/ (* x.re y.re) x.im)) (* -1 y.im))))
(*.f64 x.im (-.f64 (/.f64 (*.f64 x.re y.re) x.im) y.im))
(* -1 (* x.im (- (* -1 (/ (* x.re y.re) x.im)) (* -1 y.im))))
(*.f64 x.im (-.f64 (/.f64 (*.f64 x.re y.re) x.im) y.im))
(* x.re y.re)
(*.f64 x.re y.re)
(+ (* -1 (* x.im y.im)) (* x.re y.re))
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
(+ (* -1 (* x.im y.im)) (* x.re y.re))
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
(+ (* -1 (* x.im y.im)) (* x.re y.re))
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
(* -1 (* x.im y.im))
(*.f64 y.im (-.f64 #s(literal 0 binary64) x.im))
(* y.im (- (/ (* x.re y.re) y.im) x.im))
(*.f64 y.im (-.f64 (/.f64 (*.f64 x.re y.re) y.im) x.im))
(* y.im (- (/ (* x.re y.re) y.im) x.im))
(*.f64 y.im (-.f64 (/.f64 (*.f64 x.re y.re) y.im) x.im))
(* y.im (- (/ (* x.re y.re) y.im) x.im))
(*.f64 y.im (-.f64 (/.f64 (*.f64 x.re y.re) y.im) x.im))
(* -1 (* x.im y.im))
(*.f64 y.im (-.f64 #s(literal 0 binary64) x.im))
(* -1 (* y.im (- (* -1 (/ (* x.re y.re) y.im)) (* -1 x.im))))
(*.f64 y.im (-.f64 (/.f64 (*.f64 x.re y.re) y.im) x.im))
(* -1 (* y.im (- (* -1 (/ (* x.re y.re) y.im)) (* -1 x.im))))
(*.f64 y.im (-.f64 (/.f64 (*.f64 x.re y.re) y.im) x.im))
(* -1 (* y.im (- (* -1 (/ (* x.re y.re) y.im)) (* -1 x.im))))
(*.f64 y.im (-.f64 (/.f64 (*.f64 x.re y.re) y.im) x.im))

eval38.0ms (0.9%)

Compiler

Compiled 6173 to 372 computations (94% saved)

prune37.0ms (0.9%)

Pruning

4 alts after pruning (0 fresh and 4 done)

PrunedKeptTotal
New3520352
Fresh000
Picked022
Done022
Total3524356
Accuracy
100.0%
Counts
356 → 4
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(fma.f64 y.re x.re (neg.f64 (*.f64 x.im y.im)))
100.0%
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
49.4%
(*.f64 x.re y.re)
53.1%
(neg.f64 (*.f64 x.im y.im))
Compiler

Compiled 75 to 37 computations (50.7% saved)

regimes30.0ms (0.7%)

Counts
6 → 1
Calls
Call 1
Inputs
(*.f64 x.re y.re)
(neg.f64 (*.f64 x.im y.im))
(-.f64 #s(literal 0 binary64) (*.f64 x.im y.im))
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
(fma.f64 y.re x.re (neg.f64 (*.f64 x.im y.im)))
(fma.f64 y.re x.re (-.f64 #s(literal 0 binary64) (*.f64 x.im y.im)))
Outputs
(fma.f64 y.re x.re (neg.f64 (*.f64 x.im y.im)))
Calls

7 calls:

9.0ms
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
3.0ms
x.re
3.0ms
y.re
3.0ms
y.im
3.0ms
x.im
Results
AccuracySegmentsBranch
100.0%1x.re
100.0%1x.im
100.0%1y.re
100.0%1y.im
100.0%1(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
100.0%1(*.f64 x.re y.re)
100.0%1(*.f64 x.im y.im)
Compiler

Compiled 45 to 33 computations (26.7% saved)

regimes16.0ms (0.4%)

Counts
4 → 1
Calls
Call 1
Inputs
(*.f64 x.re y.re)
(neg.f64 (*.f64 x.im y.im))
(-.f64 #s(literal 0 binary64) (*.f64 x.im y.im))
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
Outputs
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
Calls

7 calls:

3.0ms
x.im
2.0ms
y.re
2.0ms
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
2.0ms
x.re
2.0ms
(*.f64 x.im y.im)
Results
AccuracySegmentsBranch
100.0%1x.re
100.0%1x.im
100.0%1y.re
100.0%1y.im
100.0%1(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
100.0%1(*.f64 x.re y.re)
100.0%1(*.f64 x.im y.im)
Compiler

Compiled 45 to 33 computations (26.7% saved)

regimes22.0ms (0.5%)

Counts
3 → 3
Calls
Call 1
Inputs
(*.f64 x.re y.re)
(neg.f64 (*.f64 x.im y.im))
(-.f64 #s(literal 0 binary64) (*.f64 x.im y.im))
Outputs
(neg.f64 (*.f64 x.im y.im))
(*.f64 x.re y.re)
(neg.f64 (*.f64 x.im y.im))
Calls

6 calls:

12.0ms
x.re
2.0ms
y.re
2.0ms
x.im
2.0ms
y.im
2.0ms
(*.f64 x.im y.im)
Results
AccuracySegmentsBranch
71.2%3x.re
73.6%3x.im
68.8%3y.re
76.8%3y.im
74.9%3(*.f64 x.re y.re)
82.4%3(*.f64 x.im y.im)
Compiler

Compiled 34 to 26 computations (23.5% saved)

regimes7.0ms (0.2%)

Accuracy

Total 0.0b remaining (0%)

Threshold costs 0b (0%)

Counts
1 → 1
Calls
Call 1
Inputs
(*.f64 x.re y.re)
Outputs
(*.f64 x.re y.re)
Calls

5 calls:

1.0ms
x.im
1.0ms
y.im
1.0ms
x.re
1.0ms
y.re
1.0ms
(*.f64 x.re y.re)
Results
AccuracySegmentsBranch
49.4%1y.re
49.4%1x.re
49.4%1x.im
49.4%1(*.f64 x.re y.re)
49.4%1y.im
Compiler

Compiled 27 to 21 computations (22.2% saved)

bsearch49.0ms (1.2%)

Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
29.0ms
1.0076907384924529e-42
1.8855787025562272e-28
19.0ms
-1.2237130257747692e+24
-278.93578147266356
Results
37.0ms336×0valid
Compiler

Compiled 333 to 265 computations (20.4% saved)

Precisions
Click to see histograms. Total time spent on operations: 20.0ms
ival-sub: 17.0ms (84.3% of total)
ival-mult: 3.0ms (14.9% of total)
const: 0.0ms (0% of total)
backward-pass: 0.0ms (0% of total)

simplify8.0ms (0.2%)

Algorithm
egg-herbie
Rules
10×*-commutative_binary64
+-commutative_binary64
sub-neg_binary64
neg-sub0_binary64
cancel-sign-sub-inv_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01537
13037
24137
34637
44837
Stop Event
saturated
Calls
Call 1
Inputs
(fma.f64 y.re x.re (neg.f64 (*.f64 x.im y.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
(if (<=.f64 (*.f64 x.im y.im) #s(literal -5000000000000000000000 binary64)) (neg.f64 (*.f64 x.im y.im)) (if (<=.f64 (*.f64 x.im y.im) #s(literal 4384504911992709/365375409332725729550921208179070754913983135744 binary64)) (*.f64 x.re y.re) (neg.f64 (*.f64 x.im y.im))))
(*.f64 x.re y.re)
Outputs
(fma.f64 y.re x.re (neg.f64 (*.f64 x.im y.im)))
(fma.f64 y.re x.re (*.f64 x.im (-.f64 #s(literal 0 binary64) y.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
(-.f64 (*.f64 y.re x.re) (*.f64 x.im y.im))
(if (<=.f64 (*.f64 x.im y.im) #s(literal -5000000000000000000000 binary64)) (neg.f64 (*.f64 x.im y.im)) (if (<=.f64 (*.f64 x.im y.im) #s(literal 4384504911992709/365375409332725729550921208179070754913983135744 binary64)) (*.f64 x.re y.re) (neg.f64 (*.f64 x.im y.im))))
(if (<=.f64 (*.f64 x.im y.im) #s(literal -5000000000000000000000 binary64)) (*.f64 x.im (-.f64 #s(literal 0 binary64) y.im)) (if (<=.f64 (*.f64 x.im y.im) #s(literal 4384504911992709/365375409332725729550921208179070754913983135744 binary64)) (*.f64 y.re x.re) (*.f64 x.im (-.f64 #s(literal 0 binary64) y.im))))
(*.f64 x.re y.re)
(*.f64 y.re x.re)

soundness1.0s (24.9%)

Rules
3642×*-lowering-*.f32
3642×*-lowering-*.f64
2342×pow-lowering-pow.f64
2342×pow-lowering-pow.f32
2330×*-lowering-*.f32
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01018
14617
246015
0832615
0712
13512
225612
3347212
0839312
042438
1150426
2450426
31565426
46440426
08131426
Stop Event
done
iter limit
node limit
iter limit
node limit
iter limit
node limit
Compiler

Compiled 101 to 55 computations (45.5% saved)

preprocess40.0ms (1%)

Remove

(sort x.im y.im)

(sort x.re y.re)

Compiler

Compiled 308 to 176 computations (42.9% saved)

end0.0ms (0%)

Profiling

Loading profile data...