Details

Time bar (total: 9.0s)

analyze189.0ms (2.1%)

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

Compiled 20 to 14 computations (30% saved)

sample1.8s (20.5%)

Results
925.0ms6398×body256valid
306.0ms656×body2048valid
304.0ms528×body4096valid
245.0ms433×body1024valid
53.0ms241×body512valid
Bogosity

preprocess45.0ms (0.5%)

Algorithm
egg-herbie
Rules
544×fma-def
186×associate--r+
158×associate-+l-
158×distribute-lft-in
112×*-commutative
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02158
13658
25458
39158
412858
518258
633058
750858
870258
986258
10105958
11124158
12126258
13126658
022
Stop Event
saturated
saturated
Calls
Call 1
Inputs
0
1
Outputs
0
1
Call 2
Inputs
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (sqrt.f64 (+.f64 (*.f64 im im) (*.f64 re re))) im))))
Outputs
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (sqrt.f64 (+.f64 (*.f64 im im) (*.f64 re re))) im))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) im))))
Compiler

Compiled 19 to 14 computations (26.3% saved)

simplify50.0ms (0.5%)

Algorithm
egg-herbie
Rules
364×fma-def
132×associate--r+
108×associate-+l-
100×distribute-lft-in
90×*-commutative
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01529
12329
23629
35529
47729
510829
619429
730229
841329
950629
1060529
1167929
1271029
1376229
1481229
1587329
1693329
1794329
Stop Event
saturated
Counts
1 → 2
Calls
Call 1
Inputs
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
Outputs
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))))

eval1.0ms (0%)

Compiler

Compiled 27 to 19 computations (29.6% saved)

prune1.0ms (0%)

Pruning

1 alts after pruning (1 fresh and 0 done)

PrunedKeptTotal
New112
Fresh101
Picked000
Done000
Total213
Error
13.2b
Counts
3 → 1
Alt Table
Click to see full alt table
StatusErrorProgram
13.2b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))))
Compiler

Compiled 12 to 9 computations (25% saved)

localize12.0ms (0.1%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.5b
(-.f64 (hypot.f64 re im) re)
Compiler

Compiled 39 to 16 computations (59% saved)

series3.0ms (0%)

Counts
1 → 24
Calls

6 calls:

TimeVariablePointExpression
1.0ms
re
@inf
(-.f64 (hypot.f64 re im) re)
1.0ms
im
@0
(-.f64 (hypot.f64 re im) re)
0.0ms
re
@0
(-.f64 (hypot.f64 re im) re)
0.0ms
re
@-inf
(-.f64 (hypot.f64 re im) re)
0.0ms
im
@-inf
(-.f64 (hypot.f64 re im) re)

rewrite57.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
1454×add-sqr-sqrt
1440×*-un-lft-identity
1342×add-cube-cbrt
1328×add-cbrt-cube
1316×add-exp-log
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0613
113113
2174413
Stop Event
node limit
Counts
1 → 36
Calls
Call 1
Inputs
(-.f64 (hypot.f64 re im) re)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (hypot.f64 re im) (neg.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (hypot.f64 re im) (*.f64 (neg.f64 re) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (hypot.f64 re im) re) (fma.f64 (neg.f64 re) 1 re))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (hypot.f64 re im) re) (fma.f64 (neg.f64 (sqrt.f64 re)) (sqrt.f64 re) re))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (hypot.f64 re im) re) (fma.f64 (neg.f64 (cbrt.f64 re)) (pow.f64 (cbrt.f64 re) 2) re))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 re) (hypot.f64 re im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (hypot.f64 re im) re) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 (hypot.f64 re im) re))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) (sqrt.f64 (-.f64 (hypot.f64 re im) re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 2) (cbrt.f64 (-.f64 (hypot.f64 re im) re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re)) (/.f64 1 (+.f64 re (hypot.f64 re im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)) (/.f64 1 (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 re)) (-.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 re (hypot.f64 re im)) (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im)))) (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re)) (+.f64 re (hypot.f64 re im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)) (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 (neg.f64 re) (neg.f64 re))) (-.f64 (hypot.f64 re im) (neg.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 (neg.f64 re) 3)) (+.f64 (pow.f64 (hypot.f64 re im) 2) (-.f64 (*.f64 (neg.f64 re) (neg.f64 re)) (*.f64 (hypot.f64 re im) (neg.f64 re)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re))) (neg.f64 (+.f64 re (hypot.f64 re im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3))) (neg.f64 (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 (hypot.f64 re im) re) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (-.f64 (hypot.f64 re im) re)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (-.f64 (hypot.f64 re im) re)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (-.f64 (hypot.f64 re im) re)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (-.f64 (hypot.f64 re im) re)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (-.f64 (hypot.f64 re im) re)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (hypot.f64 re im) (neg.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (hypot.f64 re im)) (neg.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (hypot.f64 re im)) 2) (cbrt.f64 (hypot.f64 re im)) (neg.f64 re))))))

simplify75.0ms (0.8%)

Algorithm
egg-herbie
Rules
1278×fma-def
1206×times-frac
794×associate-+l-
752×+-commutative
740×associate-/r*
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01751942
15081834
218791820
370201820
Stop Event
node limit
Counts
60 → 96
Calls
Call 1
Inputs
im
(+.f64 (*.f64 -1 re) im)
(+.f64 (*.f64 -1 re) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) im))
(+.f64 (*.f64 -1 re) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) im)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (+.f64 (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (*.f64 -1/8 (pow.f64 im 4)) 2) (*.f64 1/16 (pow.f64 im 8))) (pow.f64 re 7))) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))))
(*.f64 -2 re)
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 -2 re))
(+.f64 (*.f64 1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 -2 re)))
(+.f64 (*.f64 1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))) (+.f64 (*.f64 -1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 -2 re))))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 re 6)))) (pow.f64 im 8)) re)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))))
im
(+.f64 (*.f64 -1 re) im)
(+.f64 (*.f64 -1 re) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) im))
(+.f64 (*.f64 -1 re) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) im)))
(*.f64 -1 im)
(+.f64 (*.f64 -1 re) (*.f64 -1 im))
(+.f64 (*.f64 -1 re) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 re 2) im)) (*.f64 -1 im)))
(+.f64 (*.f64 -1 re) (+.f64 (*.f64 1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 re 2) im)) (*.f64 -1 im))))
(+.f64 (hypot.f64 re im) (neg.f64 re))
(+.f64 (hypot.f64 re im) (*.f64 (neg.f64 re) 1))
(+.f64 (-.f64 (hypot.f64 re im) re) (fma.f64 (neg.f64 re) 1 re))
(+.f64 (-.f64 (hypot.f64 re im) re) (fma.f64 (neg.f64 (sqrt.f64 re)) (sqrt.f64 re) re))
(+.f64 (-.f64 (hypot.f64 re im) re) (fma.f64 (neg.f64 (cbrt.f64 re)) (pow.f64 (cbrt.f64 re) 2) re))
(+.f64 (neg.f64 re) (hypot.f64 re im))
(*.f64 (-.f64 (hypot.f64 re im) re) 1)
(*.f64 1 (-.f64 (hypot.f64 re im) re))
(*.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) (sqrt.f64 (-.f64 (hypot.f64 re im) re)))
(*.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 2))
(*.f64 (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 2) (cbrt.f64 (-.f64 (hypot.f64 re im) re)))
(*.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re)) (/.f64 1 (+.f64 re (hypot.f64 re im))))
(*.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)) (/.f64 1 (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im))))))
(*.f64 (+.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 re)) (-.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 re)))
(/.f64 1 (/.f64 (+.f64 re (hypot.f64 re im)) (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re))))
(/.f64 1 (/.f64 (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im)))) (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3))))
(/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re)) (+.f64 re (hypot.f64 re im)))
(/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)) (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im)))))
(/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 (neg.f64 re) (neg.f64 re))) (-.f64 (hypot.f64 re im) (neg.f64 re)))
(/.f64 (+.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 (neg.f64 re) 3)) (+.f64 (pow.f64 (hypot.f64 re im) 2) (-.f64 (*.f64 (neg.f64 re) (neg.f64 re)) (*.f64 (hypot.f64 re im) (neg.f64 re)))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re))) (neg.f64 (+.f64 re (hypot.f64 re im))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3))) (neg.f64 (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im))))))
(pow.f64 (-.f64 (hypot.f64 re im) re) 1)
(pow.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) 2)
(pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 3)
(pow.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 3) 1/3)
(sqrt.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 2))
(log.f64 (exp.f64 (-.f64 (hypot.f64 re im) re)))
(cbrt.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 3))
(expm1.f64 (log1p.f64 (-.f64 (hypot.f64 re im) re)))
(exp.f64 (log.f64 (-.f64 (hypot.f64 re im) re)))
(exp.f64 (*.f64 (log.f64 (-.f64 (hypot.f64 re im) re)) 1))
(log1p.f64 (expm1.f64 (-.f64 (hypot.f64 re im) re)))
(fma.f64 1 (hypot.f64 re im) (neg.f64 re))
(fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (hypot.f64 re im)) (neg.f64 re))
(fma.f64 (pow.f64 (cbrt.f64 (hypot.f64 re im)) 2) (cbrt.f64 (hypot.f64 re im)) (neg.f64 re))
Outputs
im
(+.f64 (*.f64 -1 re) im)
(fma.f64 -1 re im)
(-.f64 im re)
(+.f64 (*.f64 -1 re) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) im))
(fma.f64 -1 re (fma.f64 1/2 (/.f64 (*.f64 re re) im) im))
(-.f64 (fma.f64 1/2 (/.f64 re (/.f64 im re)) im) re)
(fma.f64 1/2 (*.f64 (/.f64 re im) re) (-.f64 im re))
(+.f64 (*.f64 -1 re) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) im)))
(fma.f64 -1 re (fma.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3)) (fma.f64 1/2 (/.f64 (*.f64 re re) im) im)))
(-.f64 (fma.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3)) (fma.f64 1/2 (/.f64 re (/.f64 im re)) im)) re)
(fma.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3)) (fma.f64 1/2 (*.f64 (/.f64 re im) re) (-.f64 im re)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))
(fma.f64 1/2 (/.f64 (*.f64 im im) re) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))
(fma.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) (*.f64 1/2 (/.f64 im (/.f64 re im))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)))))
(fma.f64 1/2 (/.f64 (*.f64 im im) re) (fma.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5)) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)))))
(fma.f64 1/2 (/.f64 im (/.f64 re im)) (fma.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) (/.f64 (*.f64 1/16 (pow.f64 im 6)) (pow.f64 re 5))))
(fma.f64 1/2 (/.f64 im (/.f64 re im)) (fma.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) (/.f64 1/16 (/.f64 (pow.f64 re 5) (pow.f64 im 6)))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (+.f64 (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (*.f64 -1/8 (pow.f64 im 4)) 2) (*.f64 1/16 (pow.f64 im 8))) (pow.f64 re 7))) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))))
(fma.f64 1/2 (/.f64 (*.f64 im im) re) (fma.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5)) (fma.f64 -1/2 (/.f64 (+.f64 (pow.f64 (*.f64 -1/8 (pow.f64 im 4)) 2) (*.f64 1/16 (pow.f64 im 8))) (pow.f64 re 7)) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))))
(fma.f64 1/2 (/.f64 im (/.f64 re im)) (fma.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5)) (fma.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) (/.f64 -1/2 (/.f64 (pow.f64 re 7) (fma.f64 1/16 (pow.f64 im 8) (*.f64 (pow.f64 im 8) 1/64)))))))
(fma.f64 1/2 (/.f64 im (/.f64 re im)) (fma.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) (fma.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5)) (*.f64 (/.f64 -1/2 (pow.f64 re 7)) (*.f64 (pow.f64 im 8) 5/64)))))
(*.f64 -2 re)
(*.f64 re -2)
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 -2 re))
(fma.f64 -1/2 (/.f64 (*.f64 im im) re) (*.f64 re -2))
(fma.f64 (/.f64 im (/.f64 re im)) -1/2 (*.f64 re -2))
(fma.f64 re -2 (*.f64 (/.f64 im (/.f64 re im)) -1/2))
(+.f64 (*.f64 1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 -2 re)))
(fma.f64 1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) (fma.f64 -1/2 (/.f64 (*.f64 im im) re) (*.f64 re -2)))
(fma.f64 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) 1/8 (fma.f64 (/.f64 im (/.f64 re im)) -1/2 (*.f64 re -2)))
(fma.f64 (/.f64 im (/.f64 re im)) -1/2 (fma.f64 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) 1/8 (*.f64 re -2)))
(+.f64 (*.f64 1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))) (+.f64 (*.f64 -1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 -2 re))))
(fma.f64 1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) (fma.f64 -1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5)) (fma.f64 -1/2 (/.f64 (*.f64 im im) re) (*.f64 re -2))))
(fma.f64 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) 1/8 (fma.f64 (/.f64 (pow.f64 im 6) (pow.f64 re 5)) -1/16 (fma.f64 (/.f64 im (/.f64 re im)) -1/2 (*.f64 re -2))))
(fma.f64 (/.f64 (pow.f64 im 6) (pow.f64 re 5)) -1/16 (fma.f64 (/.f64 im (/.f64 re im)) -1/2 (fma.f64 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) 1/8 (*.f64 re -2))))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))
(fma.f64 1/2 (/.f64 (*.f64 im im) re) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))
(fma.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) (*.f64 1/2 (/.f64 im (/.f64 re im))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)))))
(fma.f64 1/2 (/.f64 (*.f64 im im) re) (fma.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5)) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)))))
(fma.f64 1/2 (/.f64 im (/.f64 re im)) (fma.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) (/.f64 (*.f64 1/16 (pow.f64 im 6)) (pow.f64 re 5))))
(fma.f64 1/2 (/.f64 im (/.f64 re im)) (fma.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) (/.f64 1/16 (/.f64 (pow.f64 re 5) (pow.f64 im 6)))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 re 6)))) (pow.f64 im 8)) re)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))))
(fma.f64 1/2 (/.f64 (*.f64 im im) re) (fma.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6))) (/.f64 re (pow.f64 im 8))) (fma.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5)) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))))
(fma.f64 1/2 (/.f64 im (/.f64 re im)) (fma.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6))) (/.f64 re (pow.f64 im 8))) (fma.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) (/.f64 (*.f64 1/16 (pow.f64 im 6)) (pow.f64 re 5)))))
(fma.f64 1/2 (/.f64 im (/.f64 re im)) (fma.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) (fma.f64 -1/2 (*.f64 (/.f64 (pow.f64 im 8) re) (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 re 3)) 2) (/.f64 1/16 (pow.f64 re 6)))) (/.f64 1/16 (/.f64 (pow.f64 re 5) (pow.f64 im 6))))))
im
(+.f64 (*.f64 -1 re) im)
(fma.f64 -1 re im)
(-.f64 im re)
(+.f64 (*.f64 -1 re) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) im))
(fma.f64 -1 re (fma.f64 1/2 (/.f64 (*.f64 re re) im) im))
(-.f64 (fma.f64 1/2 (/.f64 re (/.f64 im re)) im) re)
(fma.f64 1/2 (*.f64 (/.f64 re im) re) (-.f64 im re))
(+.f64 (*.f64 -1 re) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) im)))
(fma.f64 -1 re (fma.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3)) (fma.f64 1/2 (/.f64 (*.f64 re re) im) im)))
(-.f64 (fma.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3)) (fma.f64 1/2 (/.f64 re (/.f64 im re)) im)) re)
(fma.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3)) (fma.f64 1/2 (*.f64 (/.f64 re im) re) (-.f64 im re)))
(*.f64 -1 im)
(neg.f64 im)
(+.f64 (*.f64 -1 re) (*.f64 -1 im))
(*.f64 -1 (+.f64 re im))
(-.f64 (neg.f64 im) re)
(+.f64 (*.f64 -1 re) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 re 2) im)) (*.f64 -1 im)))
(fma.f64 -1 re (fma.f64 -1/2 (/.f64 (*.f64 re re) im) (neg.f64 im)))
(-.f64 (fma.f64 (/.f64 re (/.f64 im re)) -1/2 (neg.f64 im)) re)
(fma.f64 (*.f64 (/.f64 re im) re) -1/2 (-.f64 (neg.f64 im) re))
(+.f64 (*.f64 -1 re) (+.f64 (*.f64 1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 re 2) im)) (*.f64 -1 im))))
(fma.f64 -1 re (fma.f64 1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3)) (fma.f64 -1/2 (/.f64 (*.f64 re re) im) (neg.f64 im))))
(-.f64 (fma.f64 (/.f64 (pow.f64 re 4) (pow.f64 im 3)) 1/8 (fma.f64 (/.f64 re (/.f64 im re)) -1/2 (neg.f64 im))) re)
(-.f64 (-.f64 (fma.f64 (*.f64 (/.f64 re im) re) -1/2 (/.f64 (pow.f64 re 4) (/.f64 (pow.f64 im 3) 1/8))) im) re)
(+.f64 (hypot.f64 re im) (neg.f64 re))
(-.f64 (hypot.f64 re im) re)
(+.f64 (hypot.f64 re im) (*.f64 (neg.f64 re) 1))
(-.f64 (hypot.f64 re im) re)
(+.f64 (-.f64 (hypot.f64 re im) re) (fma.f64 (neg.f64 re) 1 re))
(-.f64 (hypot.f64 re im) re)
(+.f64 (-.f64 (hypot.f64 re im) re) (fma.f64 (neg.f64 (sqrt.f64 re)) (sqrt.f64 re) re))
(-.f64 (hypot.f64 re im) re)
(+.f64 (-.f64 (hypot.f64 re im) re) (fma.f64 (neg.f64 (cbrt.f64 re)) (pow.f64 (cbrt.f64 re) 2) re))
(-.f64 (hypot.f64 re im) re)
(+.f64 (neg.f64 re) (hypot.f64 re im))
(-.f64 (hypot.f64 re im) re)
(*.f64 (-.f64 (hypot.f64 re im) re) 1)
(-.f64 (hypot.f64 re im) re)
(*.f64 1 (-.f64 (hypot.f64 re im) re))
(-.f64 (hypot.f64 re im) re)
(*.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) (sqrt.f64 (-.f64 (hypot.f64 re im) re)))
(-.f64 (hypot.f64 re im) re)
(*.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 2))
(-.f64 (hypot.f64 re im) re)
(*.f64 (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 2) (cbrt.f64 (-.f64 (hypot.f64 re im) re)))
(-.f64 (hypot.f64 re im) re)
(*.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re)) (/.f64 1 (+.f64 re (hypot.f64 re im))))
(/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re)) (+.f64 re (hypot.f64 re im)))
(*.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)) (/.f64 1 (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im))))))
(/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)) (fma.f64 re (+.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) 2)))
(/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)) (fma.f64 re re (*.f64 (hypot.f64 re im) (+.f64 re (hypot.f64 re im)))))
(*.f64 (+.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 re)) (-.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 re)))
(-.f64 (hypot.f64 re im) re)
(/.f64 1 (/.f64 (+.f64 re (hypot.f64 re im)) (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re))))
(*.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re)) (/.f64 1 (+.f64 re (hypot.f64 re im))))
(/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re)) (+.f64 re (hypot.f64 re im)))
(/.f64 1 (/.f64 (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im)))) (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3))))
(*.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)) (/.f64 1 (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im))))))
(/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)) (fma.f64 re (+.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) 2)))
(/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)) (fma.f64 re re (*.f64 (hypot.f64 re im) (+.f64 re (hypot.f64 re im)))))
(/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re)) (+.f64 re (hypot.f64 re im)))
(*.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re)) (/.f64 1 (+.f64 re (hypot.f64 re im))))
(/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)) (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im)))))
(*.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)) (/.f64 1 (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im))))))
(/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)) (fma.f64 re (+.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) 2)))
(/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)) (fma.f64 re re (*.f64 (hypot.f64 re im) (+.f64 re (hypot.f64 re im)))))
(/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 (neg.f64 re) (neg.f64 re))) (-.f64 (hypot.f64 re im) (neg.f64 re)))
(*.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re)) (/.f64 1 (+.f64 re (hypot.f64 re im))))
(/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re)) (+.f64 re (hypot.f64 re im)))
(/.f64 (+.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 (neg.f64 re) 3)) (+.f64 (pow.f64 (hypot.f64 re im) 2) (-.f64 (*.f64 (neg.f64 re) (neg.f64 re)) (*.f64 (hypot.f64 re im) (neg.f64 re)))))
(*.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)) (/.f64 1 (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im))))))
(/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)) (fma.f64 re (+.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) 2)))
(/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)) (fma.f64 re re (*.f64 (hypot.f64 re im) (+.f64 re (hypot.f64 re im)))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re))) (neg.f64 (+.f64 re (hypot.f64 re im))))
(*.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re)) (/.f64 1 (+.f64 re (hypot.f64 re im))))
(/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re)) (+.f64 re (hypot.f64 re im)))
(/.f64 (neg.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3))) (neg.f64 (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im))))))
(*.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)) (/.f64 1 (+.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (+.f64 re (hypot.f64 re im))))))
(/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)) (fma.f64 re (+.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) 2)))
(/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)) (fma.f64 re re (*.f64 (hypot.f64 re im) (+.f64 re (hypot.f64 re im)))))
(pow.f64 (-.f64 (hypot.f64 re im) re) 1)
(-.f64 (hypot.f64 re im) re)
(pow.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) 2)
(-.f64 (hypot.f64 re im) re)
(pow.f64 (cbrt.f64 (-.f64 (hypot.f64 re im) re)) 3)
(-.f64 (hypot.f64 re im) re)
(pow.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 3) 1/3)
(-.f64 (hypot.f64 re im) re)
(sqrt.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 2))
(-.f64 (hypot.f64 re im) re)
(log.f64 (exp.f64 (-.f64 (hypot.f64 re im) re)))
(-.f64 (hypot.f64 re im) re)
(cbrt.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) 3))
(-.f64 (hypot.f64 re im) re)
(expm1.f64 (log1p.f64 (-.f64 (hypot.f64 re im) re)))
(-.f64 (hypot.f64 re im) re)
(exp.f64 (log.f64 (-.f64 (hypot.f64 re im) re)))
(-.f64 (hypot.f64 re im) re)
(exp.f64 (*.f64 (log.f64 (-.f64 (hypot.f64 re im) re)) 1))
(-.f64 (hypot.f64 re im) re)
(log1p.f64 (expm1.f64 (-.f64 (hypot.f64 re im) re)))
(-.f64 (hypot.f64 re im) re)
(fma.f64 1 (hypot.f64 re im) (neg.f64 re))
(-.f64 (hypot.f64 re im) re)
(fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (hypot.f64 re im)) (neg.f64 re))
(-.f64 (hypot.f64 re im) re)
(fma.f64 (pow.f64 (cbrt.f64 (hypot.f64 re im)) 2) (cbrt.f64 (hypot.f64 re im)) (neg.f64 re))
(-.f64 (hypot.f64 re im) re)

eval33.0ms (0.4%)

Compiler

Compiled 2052 to 1341 computations (34.6% saved)

prune18.0ms (0.2%)

Pruning

6 alts after pruning (5 fresh and 1 done)

PrunedKeptTotal
New91596
Fresh000
Picked011
Done000
Total91697
Error
6.2b
Counts
97 → 6
Alt Table
Click to see full alt table
StatusErrorProgram
13.2b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))))
29.2b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 im re))))
47.0b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 re -2))))
55.3b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 1/2 (/.f64 (*.f64 im im) re)))))
53.2b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 1/2 (/.f64 im (/.f64 re im))))))
30.8b
(*.f64 1/2 (sqrt.f64 (*.f64 2 im)))
Compiler

Compiled 124 to 101 computations (18.5% saved)

localize9.0ms (0.1%)

Local error

Found 1 expressions with local error:

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

Compiled 28 to 15 computations (46.4% saved)

series4.0ms (0%)

Counts
1 → 8
Calls

6 calls:

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

rewrite59.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
1928×add-sqr-sqrt
1906×*-un-lft-identity
1780×add-cube-cbrt
1764×add-cbrt-cube
188×pow1
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0917
118917
2237717
Stop Event
node limit
Counts
1 → 25
Calls
Call 1
Inputs
(sqrt.f64 (*.f64 2 (-.f64 im re)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (sqrt.f64 (*.f64 2 (-.f64 im re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 2 (-.f64 im re)) 1/4) (pow.f64 (*.f64 2 (-.f64 im re)) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (-.f64 im re)) (sqrt.f64 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 2) (sqrt.f64 (-.f64 im re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 2 (-.f64 im re))) (cbrt.f64 (sqrt.f64 (*.f64 2 (-.f64 im re)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (-.f64 im re)))) (cbrt.f64 (*.f64 2 (-.f64 im re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 2 (-.f64 im re))) 2)) (sqrt.f64 (cbrt.f64 (*.f64 2 (-.f64 im re)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 1/2) (sqrt.f64 (*.f64 2 (-.f64 im re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (cbrt.f64 (*.f64 2 (-.f64 im re))) 2) 1/2) (pow.f64 (cbrt.f64 (*.f64 2 (-.f64 im re))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 2 (-.f64 im re)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 2 (-.f64 im re)) 1/4) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (-.f64 im re)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 2 (-.f64 im re)) 3/2) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (sqrt.f64 (*.f64 2 (-.f64 im re)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 2 (-.f64 im re)) 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (sqrt.f64 (*.f64 2 (-.f64 im re)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (sqrt.f64 (*.f64 2 (-.f64 im re)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 2 (-.f64 im re))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 2 (-.f64 im re)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (sqrt.f64 (*.f64 2 (-.f64 im re)))))))))

simplify54.0ms (0.6%)

Algorithm
egg-herbie
Rules
1408×associate-*r/
1292×associate-/r*
1108×associate-*l/
886×associate-/r/
532×associate-*r*
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01231287
12881275
28441235
329931147
Stop Event
node limit
Counts
33 → 63
Calls
Call 1
Inputs
(*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 -1)) (sqrt.f64 re))
(+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) im) (sqrt.f64 -1)) (sqrt.f64 (/.f64 1 re)))) (*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 -1)) (sqrt.f64 re)))
(+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) im) (sqrt.f64 -1)) (sqrt.f64 (/.f64 1 re)))) (+.f64 (*.f64 -1/8 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 2)) (pow.f64 (sqrt.f64 -1) 3)) (sqrt.f64 (/.f64 1 (pow.f64 re 3))))) (*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 -1)) (sqrt.f64 re))))
(+.f64 (*.f64 1/16 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 3)) (pow.f64 (sqrt.f64 -1) 5)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) (+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) im) (sqrt.f64 -1)) (sqrt.f64 (/.f64 1 re)))) (+.f64 (*.f64 -1/8 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 2)) (pow.f64 (sqrt.f64 -1) 3)) (sqrt.f64 (/.f64 1 (pow.f64 re 3))))) (*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 -1)) (sqrt.f64 re)))))
(*.f64 (sqrt.f64 2) (sqrt.f64 im))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (+.f64 (*.f64 -1/8 (*.f64 (*.f64 (sqrt.f64 2) (pow.f64 re 2)) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (*.f64 (sqrt.f64 2) (sqrt.f64 im))))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (+.f64 (*.f64 -1/16 (*.f64 (*.f64 (sqrt.f64 2) (pow.f64 re 3)) (sqrt.f64 (/.f64 1 (pow.f64 im 5))))) (+.f64 (*.f64 -1/8 (*.f64 (*.f64 (sqrt.f64 2) (pow.f64 re 2)) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))))
(-.f64 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))))) 1)
(*.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 1)
(*.f64 1 (sqrt.f64 (*.f64 2 (-.f64 im re))))
(*.f64 (pow.f64 (*.f64 2 (-.f64 im re)) 1/4) (pow.f64 (*.f64 2 (-.f64 im re)) 1/4))
(*.f64 (sqrt.f64 (-.f64 im re)) (sqrt.f64 2))
(*.f64 (sqrt.f64 2) (sqrt.f64 (-.f64 im re)))
(*.f64 (cbrt.f64 (*.f64 2 (-.f64 im re))) (cbrt.f64 (sqrt.f64 (*.f64 2 (-.f64 im re)))))
(*.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (-.f64 im re)))) (cbrt.f64 (*.f64 2 (-.f64 im re))))
(*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 2 (-.f64 im re))) 2)) (sqrt.f64 (cbrt.f64 (*.f64 2 (-.f64 im re)))))
(*.f64 (pow.f64 1 1/2) (sqrt.f64 (*.f64 2 (-.f64 im re))))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (*.f64 2 (-.f64 im re))) 2) 1/2) (pow.f64 (cbrt.f64 (*.f64 2 (-.f64 im re))) 1/2))
(pow.f64 (*.f64 2 (-.f64 im re)) 1/2)
(pow.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 1)
(pow.f64 (pow.f64 (*.f64 2 (-.f64 im re)) 1/4) 2)
(pow.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (-.f64 im re)))) 3)
(pow.f64 (pow.f64 (*.f64 2 (-.f64 im re)) 3/2) 1/3)
(fabs.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))))
(log.f64 (exp.f64 (sqrt.f64 (*.f64 2 (-.f64 im re)))))
(log.f64 (+.f64 1 (expm1.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))))))
(cbrt.f64 (pow.f64 (*.f64 2 (-.f64 im re)) 3/2))
(expm1.f64 (log1p.f64 (sqrt.f64 (*.f64 2 (-.f64 im re)))))
(exp.f64 (log.f64 (sqrt.f64 (*.f64 2 (-.f64 im re)))))
(exp.f64 (*.f64 (log.f64 (*.f64 2 (-.f64 im re))) 1/2))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 2 (-.f64 im re)))) 1))
(log1p.f64 (expm1.f64 (sqrt.f64 (*.f64 2 (-.f64 im re)))))
Outputs
(*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 -1)) (sqrt.f64 re))
(*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1) (sqrt.f64 re)))
(*.f64 (sqrt.f64 -1) (*.f64 (sqrt.f64 2) (sqrt.f64 re)))
(+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) im) (sqrt.f64 -1)) (sqrt.f64 (/.f64 1 re)))) (*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 -1)) (sqrt.f64 re)))
(fma.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) im) (sqrt.f64 -1)) (sqrt.f64 (/.f64 1 re))) (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1) (sqrt.f64 re))))
(fma.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1) (sqrt.f64 re)) (*.f64 1/2 (*.f64 (*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 -1)) im) (sqrt.f64 (/.f64 1 re)))))
(fma.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1) (sqrt.f64 re)) (*.f64 1/2 (*.f64 (*.f64 (/.f64 im (sqrt.f64 -1)) (sqrt.f64 2)) (sqrt.f64 (/.f64 1 re)))))
(fma.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1) (sqrt.f64 re)) (*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 -1)) (sqrt.f64 2))))
(+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) im) (sqrt.f64 -1)) (sqrt.f64 (/.f64 1 re)))) (+.f64 (*.f64 -1/8 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 2)) (pow.f64 (sqrt.f64 -1) 3)) (sqrt.f64 (/.f64 1 (pow.f64 re 3))))) (*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 -1)) (sqrt.f64 re))))
(fma.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) im) (sqrt.f64 -1)) (sqrt.f64 (/.f64 1 re))) (fma.f64 -1/8 (*.f64 (/.f64 (sqrt.f64 2) (/.f64 (pow.f64 (sqrt.f64 -1) 3) (*.f64 im im))) (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1) (sqrt.f64 re)))))
(fma.f64 1/2 (*.f64 (*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 -1)) im) (sqrt.f64 (/.f64 1 re))) (fma.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1) (sqrt.f64 re)) (*.f64 -1/8 (*.f64 (*.f64 (/.f64 (*.f64 im im) -1) (/.f64 (sqrt.f64 2) (sqrt.f64 -1))) (sqrt.f64 (/.f64 1 (pow.f64 re 3)))))))
(fma.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1) (sqrt.f64 re)) (fma.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (*.f64 1/8 (/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 -1) (*.f64 im im)))) (*.f64 1/2 (*.f64 (*.f64 (/.f64 im (sqrt.f64 -1)) (sqrt.f64 2)) (sqrt.f64 (/.f64 1 re))))))
(fma.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1) (sqrt.f64 re)) (*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 -1)) (+.f64 (*.f64 im (*.f64 1/2 (sqrt.f64 (/.f64 1 re)))) (*.f64 (*.f64 (/.f64 im -1) im) (*.f64 -1/8 (sqrt.f64 (/.f64 1 (pow.f64 re 3))))))))
(+.f64 (*.f64 1/16 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 3)) (pow.f64 (sqrt.f64 -1) 5)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) (+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) im) (sqrt.f64 -1)) (sqrt.f64 (/.f64 1 re)))) (+.f64 (*.f64 -1/8 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 2)) (pow.f64 (sqrt.f64 -1) 3)) (sqrt.f64 (/.f64 1 (pow.f64 re 3))))) (*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 -1)) (sqrt.f64 re)))))
(fma.f64 1/16 (*.f64 (/.f64 (sqrt.f64 2) (/.f64 (pow.f64 (sqrt.f64 -1) 5) (pow.f64 im 3))) (sqrt.f64 (/.f64 1 (pow.f64 re 5)))) (fma.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) im) (sqrt.f64 -1)) (sqrt.f64 (/.f64 1 re))) (fma.f64 -1/8 (*.f64 (/.f64 (sqrt.f64 2) (/.f64 (pow.f64 (sqrt.f64 -1) 3) (*.f64 im im))) (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1) (sqrt.f64 re))))))
(fma.f64 1/16 (*.f64 (*.f64 (/.f64 (sqrt.f64 2) (pow.f64 (sqrt.f64 -1) 5)) (pow.f64 im 3)) (sqrt.f64 (/.f64 1 (pow.f64 re 5)))) (fma.f64 1/2 (*.f64 (*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 -1)) im) (sqrt.f64 (/.f64 1 re))) (fma.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1) (sqrt.f64 re)) (*.f64 -1/8 (*.f64 (*.f64 (/.f64 (*.f64 im im) -1) (/.f64 (sqrt.f64 2) (sqrt.f64 -1))) (sqrt.f64 (/.f64 1 (pow.f64 re 3))))))))
(fma.f64 1/2 (*.f64 (*.f64 (/.f64 im (sqrt.f64 -1)) (sqrt.f64 2)) (sqrt.f64 (/.f64 1 re))) (fma.f64 1/16 (*.f64 (*.f64 (/.f64 (pow.f64 im 3) (pow.f64 (sqrt.f64 -1) 5)) (sqrt.f64 2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5)))) (fma.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1) (sqrt.f64 re)) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (*.f64 1/8 (/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 -1) (*.f64 im im))))))))
(fma.f64 1/16 (*.f64 (*.f64 (/.f64 (pow.f64 im 3) (pow.f64 (sqrt.f64 -1) 5)) (sqrt.f64 2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5)))) (fma.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1) (sqrt.f64 re)) (*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 -1)) (+.f64 (*.f64 im (*.f64 1/2 (sqrt.f64 (/.f64 1 re)))) (*.f64 (*.f64 (/.f64 im -1) im) (*.f64 -1/8 (sqrt.f64 (/.f64 1 (pow.f64 re 3)))))))))
(*.f64 (sqrt.f64 2) (sqrt.f64 im))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))
(fma.f64 -1/2 (*.f64 (sqrt.f64 2) (*.f64 re (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))
(fma.f64 (sqrt.f64 2) (sqrt.f64 im) (*.f64 (*.f64 (sqrt.f64 2) re) (*.f64 (sqrt.f64 (/.f64 1 im)) -1/2)))
(*.f64 (sqrt.f64 2) (+.f64 (sqrt.f64 im) (*.f64 re (*.f64 -1/2 (sqrt.f64 (/.f64 1 im))))))
(*.f64 (sqrt.f64 2) (+.f64 (*.f64 re (*.f64 -1/2 (sqrt.f64 (/.f64 1 im)))) (sqrt.f64 im)))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (+.f64 (*.f64 -1/8 (*.f64 (*.f64 (sqrt.f64 2) (pow.f64 re 2)) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (*.f64 (sqrt.f64 2) (sqrt.f64 im))))
(fma.f64 -1/2 (*.f64 (sqrt.f64 2) (*.f64 re (sqrt.f64 (/.f64 1 im)))) (fma.f64 -1/8 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 re re)) (sqrt.f64 (/.f64 1 (pow.f64 im 3)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im))))
(fma.f64 -1/2 (*.f64 (sqrt.f64 2) (*.f64 re (sqrt.f64 (/.f64 1 im)))) (fma.f64 (sqrt.f64 2) (sqrt.f64 im) (*.f64 -1/8 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 re re)) (sqrt.f64 (/.f64 1 (pow.f64 im 3)))))))
(fma.f64 (sqrt.f64 2) (*.f64 re (*.f64 -1/2 (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (+.f64 (sqrt.f64 im) (*.f64 (*.f64 re re) (*.f64 -1/8 (sqrt.f64 (/.f64 1 (pow.f64 im 3))))))))
(*.f64 (sqrt.f64 2) (+.f64 (sqrt.f64 im) (*.f64 re (+.f64 (*.f64 (*.f64 re (sqrt.f64 (/.f64 1 (pow.f64 im 3)))) -1/8) (*.f64 -1/2 (sqrt.f64 (/.f64 1 im)))))))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (+.f64 (*.f64 -1/16 (*.f64 (*.f64 (sqrt.f64 2) (pow.f64 re 3)) (sqrt.f64 (/.f64 1 (pow.f64 im 5))))) (+.f64 (*.f64 -1/8 (*.f64 (*.f64 (sqrt.f64 2) (pow.f64 re 2)) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))))
(fma.f64 -1/2 (*.f64 (sqrt.f64 2) (*.f64 re (sqrt.f64 (/.f64 1 im)))) (fma.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 re 3) (sqrt.f64 (/.f64 1 (pow.f64 im 5))))) (fma.f64 -1/8 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 re re)) (sqrt.f64 (/.f64 1 (pow.f64 im 3)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))))
(fma.f64 -1/2 (*.f64 (sqrt.f64 2) (*.f64 re (sqrt.f64 (/.f64 1 im)))) (fma.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 re 3) (sqrt.f64 (/.f64 1 (pow.f64 im 5))))) (fma.f64 (sqrt.f64 2) (sqrt.f64 im) (*.f64 -1/8 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 re re)) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))))))
(+.f64 (*.f64 (sqrt.f64 2) (+.f64 (sqrt.f64 im) (*.f64 re (*.f64 -1/2 (sqrt.f64 (/.f64 1 im)))))) (*.f64 (sqrt.f64 2) (+.f64 (*.f64 (*.f64 re re) (*.f64 -1/8 (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (*.f64 (pow.f64 re 3) (*.f64 -1/16 (sqrt.f64 (/.f64 1 (pow.f64 im 5))))))))
(*.f64 (sqrt.f64 2) (+.f64 (+.f64 (*.f64 re (*.f64 -1/2 (sqrt.f64 (/.f64 1 im)))) (sqrt.f64 im)) (*.f64 (*.f64 re re) (+.f64 (*.f64 (*.f64 re (sqrt.f64 (/.f64 1 (pow.f64 im 5)))) -1/16) (*.f64 -1/8 (sqrt.f64 (/.f64 1 (pow.f64 im 3))))))))
(-.f64 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))))) 1)
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(*.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 1)
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(*.f64 1 (sqrt.f64 (*.f64 2 (-.f64 im re))))
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(*.f64 (pow.f64 (*.f64 2 (-.f64 im re)) 1/4) (pow.f64 (*.f64 2 (-.f64 im re)) 1/4))
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(*.f64 (sqrt.f64 (-.f64 im re)) (sqrt.f64 2))
(*.f64 (sqrt.f64 2) (sqrt.f64 (-.f64 im re)))
(*.f64 (sqrt.f64 2) (sqrt.f64 (-.f64 im re)))
(*.f64 (cbrt.f64 (*.f64 2 (-.f64 im re))) (cbrt.f64 (sqrt.f64 (*.f64 2 (-.f64 im re)))))
(*.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (-.f64 im re)))) (cbrt.f64 (*.f64 2 (-.f64 im re))))
(*.f64 (cbrt.f64 (*.f64 2 (-.f64 im re))) (cbrt.f64 (sqrt.f64 (*.f64 2 (-.f64 im re)))))
(*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 2 (-.f64 im re))) 2)) (sqrt.f64 (cbrt.f64 (*.f64 2 (-.f64 im re)))))
(*.f64 (fabs.f64 (cbrt.f64 (*.f64 2 (-.f64 im re)))) (sqrt.f64 (cbrt.f64 (*.f64 2 (-.f64 im re)))))
(*.f64 (cbrt.f64 (*.f64 2 (-.f64 im re))) (sqrt.f64 (cbrt.f64 (*.f64 2 (-.f64 im re)))))
(pow.f64 (cbrt.f64 (*.f64 2 (-.f64 im re))) 3/2)
(*.f64 (pow.f64 1 1/2) (sqrt.f64 (*.f64 2 (-.f64 im re))))
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (*.f64 2 (-.f64 im re))) 2) 1/2) (pow.f64 (cbrt.f64 (*.f64 2 (-.f64 im re))) 1/2))
(*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 2 (-.f64 im re))) 2)) (sqrt.f64 (cbrt.f64 (*.f64 2 (-.f64 im re)))))
(*.f64 (fabs.f64 (cbrt.f64 (*.f64 2 (-.f64 im re)))) (sqrt.f64 (cbrt.f64 (*.f64 2 (-.f64 im re)))))
(*.f64 (cbrt.f64 (*.f64 2 (-.f64 im re))) (sqrt.f64 (cbrt.f64 (*.f64 2 (-.f64 im re)))))
(pow.f64 (cbrt.f64 (*.f64 2 (-.f64 im re))) 3/2)
(pow.f64 (*.f64 2 (-.f64 im re)) 1/2)
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(pow.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))) 1)
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(pow.f64 (pow.f64 (*.f64 2 (-.f64 im re)) 1/4) 2)
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(pow.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (-.f64 im re)))) 3)
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(pow.f64 (pow.f64 (*.f64 2 (-.f64 im re)) 3/2) 1/3)
(cbrt.f64 (pow.f64 (*.f64 2 (-.f64 im re)) 3/2))
(fabs.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))))
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(log.f64 (exp.f64 (sqrt.f64 (*.f64 2 (-.f64 im re)))))
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(log.f64 (+.f64 1 (expm1.f64 (sqrt.f64 (*.f64 2 (-.f64 im re))))))
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(cbrt.f64 (pow.f64 (*.f64 2 (-.f64 im re)) 3/2))
(expm1.f64 (log1p.f64 (sqrt.f64 (*.f64 2 (-.f64 im re)))))
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(exp.f64 (log.f64 (sqrt.f64 (*.f64 2 (-.f64 im re)))))
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(exp.f64 (*.f64 (log.f64 (*.f64 2 (-.f64 im re))) 1/2))
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 2 (-.f64 im re)))) 1))
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(log1p.f64 (expm1.f64 (sqrt.f64 (*.f64 2 (-.f64 im re)))))
(sqrt.f64 (*.f64 2 (-.f64 im re)))

localize8.0ms (0.1%)

Compiler

Compiled 18 to 14 computations (22.2% saved)

localize14.0ms (0.2%)

Compiler

Compiled 28 to 23 computations (17.9% saved)

localize16.0ms (0.2%)

Local error

Found 4 expressions with local error:

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

Compiled 52 to 24 computations (53.8% saved)

series7.0ms (0.1%)

Counts
4 → 84
Calls

24 calls:

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

rewrite92.0ms (1%)

Algorithm
batch-egg-rewrite
Rules
1502×associate-/l*
1130×*-commutative
748×swap-sqr
712×unswap-sqr
692×associate-/r/
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01262
125562
2299456
Stop Event
node limit
Counts
4 → 270
Calls
Call 1
Inputs
(sqrt.f64 (*.f64 2 (*.f64 1/2 (/.f64 im (/.f64 re im)))))
(*.f64 1/2 (/.f64 im (/.f64 re im)))
(/.f64 im (/.f64 re im))
(*.f64 2 (*.f64 1/2 (/.f64 im (/.f64 re im))))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 im (sqrt.f64 re)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 im (sqrt.f64 re)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 im (sqrt.f64 re)) (pow.f64 1 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 im (sqrt.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) (sqrt.f64 (/.f64 im (sqrt.f64 re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 im) (sqrt.f64 (/.f64 im re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 im) (pow.f64 (/.f64 im re) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 1/2)) (sqrt.f64 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 2) (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (cbrt.f64 (*.f64 im (/.f64 im re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (cbrt.f64 (/.f64 im (sqrt.f64 re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 im re)) (sqrt.f64 im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (cbrt.f64 (*.f64 im (/.f64 im re)))) (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2)) (sqrt.f64 (cbrt.f64 (*.f64 im (/.f64 im re)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 im) (sqrt.f64 re)) (sqrt.f64 im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 im) 1) (sqrt.f64 (/.f64 im re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (/.f64 im re) 1/2) (sqrt.f64 im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 1/2) (/.f64 im (sqrt.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2) 1/2) (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 1/2) (pow.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 im) (sqrt.f64 (neg.f64 re))) (sqrt.f64 (neg.f64 im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re)))) (cbrt.f64 (/.f64 im (sqrt.f64 re)))) (*.f64 (sqrt.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re)))) (cbrt.f64 (/.f64 im (sqrt.f64 re)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cbrt.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re)))) (sqrt.f64 (cbrt.f64 (*.f64 im (/.f64 im re))))) (*.f64 (cbrt.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re)))) (sqrt.f64 (cbrt.f64 (*.f64 im (/.f64 im re))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (sqrt.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))))) (*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (sqrt.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (cbrt.f64 (*.f64 im (/.f64 im re)))) (cbrt.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))))) (*.f64 (sqrt.f64 (cbrt.f64 (*.f64 im (/.f64 im re)))) (cbrt.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 im (sqrt.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 im (/.f64 (sqrt.f64 re) 1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (sqrt.f64 (/.f64 re (*.f64 im im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (sqrt.f64 re) im))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 im) (sqrt.f64 (/.f64 re im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 im) (/.f64 (sqrt.f64 re) (cbrt.f64 (*.f64 im im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 im) (/.f64 (sqrt.f64 (/.f64 re im)) (cbrt.f64 (sqrt.f64 im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 (*.f64 im im)) (/.f64 (sqrt.f64 re) (cbrt.f64 im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (sqrt.f64 im)) (/.f64 (sqrt.f64 (/.f64 re im)) (sqrt.f64 (sqrt.f64 im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (neg.f64 im)) (sqrt.f64 (/.f64 re (neg.f64 im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (cbrt.f64 (*.f64 im im))) (/.f64 (sqrt.f64 (/.f64 re im)) (sqrt.f64 (cbrt.f64 im))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 im (/.f64 im re)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 im (sqrt.f64 re)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (/.f64 im (sqrt.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 im (sqrt.f64 re))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 im (sqrt.f64 re)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 im (sqrt.f64 re))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 im (sqrt.f64 re))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 im (sqrt.f64 re))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 1/2 (*.f64 im (/.f64 im re))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1/2 (/.f64 re (*.f64 im im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 im (/.f64 (/.f64 re im) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 re (*.f64 (*.f64 1/2 im) im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1/2 im) (/.f64 re im))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 im) (/.f64 (/.f64 re (neg.f64 im)) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (*.f64 1/2 im)) (/.f64 (/.f64 re im) (sqrt.f64 (*.f64 1/2 im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cbrt.f64 (*.f64 1/2 im)) (cbrt.f64 (*.f64 1/2 im))) (/.f64 (/.f64 re im) (cbrt.f64 (*.f64 1/2 im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1/2 (sqrt.f64 im)) (/.f64 re (*.f64 im (sqrt.f64 im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1/2 (cbrt.f64 (*.f64 im im))) (/.f64 re (*.f64 im (cbrt.f64 im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 im -1/2) (/.f64 re (neg.f64 im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 1/2 (/.f64 re im)) (/.f64 1 im))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 im 2) (/.f64 re im))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 im 2) (sqrt.f64 (/.f64 im re))) (sqrt.f64 (/.f64 re im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 1/2 im) (pow.f64 (cbrt.f64 (/.f64 re im)) 2)) (cbrt.f64 (/.f64 re im)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 1/2 (*.f64 im (/.f64 im re))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 1/2)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 1/2 (*.f64 im (/.f64 im re)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 1/2 (*.f64 im (/.f64 im re))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (*.f64 (*.f64 (/.f64 im re) (neg.f64 im)) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (*.f64 1/2 (*.f64 (/.f64 im re) (neg.f64 im))))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (*.f64 (/.f64 (*.f64 1/2 im) (neg.f64 re)) im))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (*.f64 1/2 im) (/.f64 re (neg.f64 im))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 1/4 (pow.f64 (*.f64 im (/.f64 im re)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 1/2) (*.f64 im (/.f64 im re))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 1/2 (*.f64 im (/.f64 im re))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 1/2 (*.f64 im (/.f64 im re))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 1/2 (*.f64 im (/.f64 im re)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 1/2 (*.f64 im (/.f64 im re)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 1/2 (*.f64 im (/.f64 im re)))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 im (/.f64 im re)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 1/2 (*.f64 im (/.f64 im re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 2 (*.f64 im (/.f64 im re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 im (/.f64 im re))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 im (*.f64 (pow.f64 (/.f64 im re) 1/2) (pow.f64 (/.f64 im re) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 im (/.f64 im re)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 1/2 (*.f64 im (/.f64 im re))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 im (sqrt.f64 re)) (/.f64 im (sqrt.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 im (/.f64 im re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 (/.f64 im (sqrt.f64 re)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 im) (*.f64 (sqrt.f64 im) (/.f64 im re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 1/2)) (*.f64 2 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 1/2)) (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 2) (*.f64 (/.f64 im (sqrt.f64 re)) (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (*.f64 (/.f64 im (sqrt.f64 re)) (cbrt.f64 (*.f64 im (/.f64 im re)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (*.f64 (/.f64 im (sqrt.f64 re)) (cbrt.f64 (/.f64 im (sqrt.f64 re)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (/.f64 1 (/.f64 (cbrt.f64 (/.f64 re im)) (/.f64 im (cbrt.f64 re)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2) (cbrt.f64 (*.f64 im (/.f64 im re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 im) (*.f64 (cbrt.f64 (*.f64 im im)) (/.f64 im re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 im im)) (*.f64 (cbrt.f64 im) (/.f64 im re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 1/2 (*.f64 im (/.f64 im re)))) (*.f64 2 (pow.f64 (cbrt.f64 (*.f64 1/2 (*.f64 im (/.f64 im re)))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 1/2 (*.f64 im (/.f64 im re)))) 2) (*.f64 2 (cbrt.f64 (*.f64 1/2 (*.f64 im (/.f64 im re))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 im re) im)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 im re) (/.f64 im 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 im) (/.f64 im (neg.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 (/.f64 im (sqrt.f64 re)))) (sqrt.f64 (/.f64 im (sqrt.f64 re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (*.f64 im (/.f64 im re))) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 1/2))) (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (pow.f64 (cbrt.f64 (*.f64 1/2 (*.f64 im (/.f64 im re)))) 2)) (cbrt.f64 (*.f64 1/2 (*.f64 im (/.f64 im re)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 2)) (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cbrt.f64 (*.f64 im im)) (/.f64 im re)) (cbrt.f64 im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (cbrt.f64 (*.f64 im (/.f64 im re)))) (cbrt.f64 (/.f64 im (sqrt.f64 re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (cbrt.f64 (*.f64 1/2 (*.f64 im (/.f64 im re))))) (pow.f64 (cbrt.f64 (*.f64 1/2 (*.f64 im (/.f64 im re)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 1/2))) (sqrt.f64 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (cbrt.f64 (/.f64 im (sqrt.f64 re)))) (cbrt.f64 (*.f64 im (/.f64 im re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 im 1) (/.f64 im re))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 im (sqrt.f64 (/.f64 re im))) (/.f64 (sqrt.f64 im) (sqrt.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 im (pow.f64 (cbrt.f64 re) 2)) (/.f64 im (cbrt.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 re) (*.f64 im im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 re) (*.f64 (/.f64 im 1) im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 im) (sqrt.f64 re)) (/.f64 im (sqrt.f64 (/.f64 re im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (pow.f64 (cbrt.f64 (/.f64 re im)) 2)) (/.f64 im (cbrt.f64 (/.f64 re im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 im 1) im) (/.f64 1 re))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 im (cbrt.f64 (/.f64 re im))) (/.f64 1 (pow.f64 (cbrt.f64 (/.f64 re im)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (neg.f64 re)) (neg.f64 (*.f64 im im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 im) re) (*.f64 (/.f64 im 1) (sqrt.f64 im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 im 1) (sqrt.f64 im)) (/.f64 (sqrt.f64 im) re))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 im) 1) (*.f64 (sqrt.f64 im) (/.f64 im re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 im) (/.f64 im re)) (sqrt.f64 im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 im) (/.f64 im re)) (/.f64 (sqrt.f64 im) 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 im) (pow.f64 (cbrt.f64 (/.f64 re im)) 2)) (/.f64 (sqrt.f64 im) (cbrt.f64 (/.f64 re im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 im) (cbrt.f64 (/.f64 re im))) (/.f64 (sqrt.f64 im) (pow.f64 (cbrt.f64 (/.f64 re im)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (*.f64 im im)) re) (*.f64 (/.f64 im 1) (cbrt.f64 im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 im 1) (cbrt.f64 im)) (/.f64 (cbrt.f64 (*.f64 im im)) re))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (*.f64 im im)) 1) (*.f64 (cbrt.f64 im) (/.f64 im re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cbrt.f64 im) (/.f64 im re)) (cbrt.f64 (*.f64 im im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cbrt.f64 im) (/.f64 im re)) (/.f64 (cbrt.f64 (*.f64 im im)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (*.f64 im im)) (sqrt.f64 (/.f64 re im))) (/.f64 (cbrt.f64 im) (sqrt.f64 (/.f64 re im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 im) (sqrt.f64 (/.f64 re im))) (/.f64 (cbrt.f64 (*.f64 im im)) (sqrt.f64 (/.f64 re im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (/.f64 (cbrt.f64 (/.f64 re im)) (/.f64 im (cbrt.f64 re)))) (cbrt.f64 (*.f64 im (/.f64 im re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 im (neg.f64 re)) (neg.f64 im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 im (/.f64 re (sqrt.f64 im))) (sqrt.f64 im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (*.f64 im im)) (/.f64 re im)) (cbrt.f64 im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 im -1) (/.f64 im (neg.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 im (/.f64 re (cbrt.f64 (*.f64 im im)))) (cbrt.f64 im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (/.f64 re (*.f64 im (cbrt.f64 (*.f64 im im))))) (cbrt.f64 im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 im re) (/.f64 1 (sqrt.f64 im))) (sqrt.f64 im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 im re) (/.f64 1 (cbrt.f64 (*.f64 im im)))) (cbrt.f64 im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 im re) -1) (neg.f64 im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (neg.f64 im) -1) (/.f64 im re))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 2 (*.f64 1/2 im)) re) im)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 2 (*.f64 1/2 im)) 1) (/.f64 im re))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 2 (*.f64 1/2 im)) (sqrt.f64 re)) (/.f64 im (sqrt.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 2 (*.f64 1/2 im)) (pow.f64 (cbrt.f64 re) 2)) (/.f64 im (cbrt.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 2 (*.f64 1/2 im)) (neg.f64 re)) (neg.f64 im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 2 (*.f64 1/2 im)) (/.f64 re 1)) im)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 2 (*.f64 1/2 im)) (/.f64 re (sqrt.f64 im))) (sqrt.f64 im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 2 (*.f64 1/2 im)) (/.f64 re (cbrt.f64 (*.f64 im im)))) (cbrt.f64 im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 2 (*.f64 1/2 im)) -1) (/.f64 im (neg.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 im 1) 1) (/.f64 im re))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 im 1) (sqrt.f64 re)) (/.f64 im (sqrt.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 im 1) (pow.f64 (cbrt.f64 re) 2)) (/.f64 im (cbrt.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 im 1) (neg.f64 re)) (neg.f64 im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 im 1) (/.f64 re 1)) im)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 im 1) (/.f64 re (sqrt.f64 im))) (sqrt.f64 im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 im 1) (/.f64 re (cbrt.f64 (*.f64 im im)))) (cbrt.f64 im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 im 1) -1) (/.f64 im (neg.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 im (sqrt.f64 (/.f64 re im))) 1) (sqrt.f64 (/.f64 im re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 im (sqrt.f64 (/.f64 re im))) (sqrt.f64 re)) (sqrt.f64 im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 im (sqrt.f64 (/.f64 re im))) (sqrt.f64 (neg.f64 re))) (sqrt.f64 (neg.f64 im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 im (pow.f64 (cbrt.f64 (/.f64 re im)) 2)) 1) (cbrt.f64 (/.f64 im re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 im (pow.f64 (cbrt.f64 (/.f64 re im)) 2)) (cbrt.f64 re)) (cbrt.f64 im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 im (pow.f64 (cbrt.f64 (/.f64 re im)) 2)) (cbrt.f64 (neg.f64 re))) (cbrt.f64 (neg.f64 im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 (/.f64 im re) 1/2) (pow.f64 (/.f64 im re) 1/2)) im)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 1 1/2) (pow.f64 1 1/2)) (*.f64 im (/.f64 im re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2) 1/2) (pow.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2) 1/2)) (*.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 1/2) (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 im) (/.f64 (sqrt.f64 im) (sqrt.f64 re))) (*.f64 (sqrt.f64 im) (/.f64 (sqrt.f64 im) (sqrt.f64 re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (cbrt.f64 (*.f64 im (/.f64 im re)))) (cbrt.f64 (*.f64 im (/.f64 im re)))) (*.f64 (sqrt.f64 (cbrt.f64 (*.f64 im (/.f64 im re)))) (cbrt.f64 (*.f64 im (/.f64 im re)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2))) (*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2)) (cbrt.f64 (/.f64 im (sqrt.f64 re)))) (*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2)) (cbrt.f64 (/.f64 im (sqrt.f64 re)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (sqrt.f64 (cbrt.f64 (*.f64 im (/.f64 im re))))) (*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (sqrt.f64 (cbrt.f64 (*.f64 im (/.f64 im re))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 im (/.f64 im re)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 im (sqrt.f64 re)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 im (/.f64 im re)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 im (/.f64 im re)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 re (*.f64 im im)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (*.f64 (/.f64 im re) (neg.f64 im)))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (neg.f64 im) (/.f64 re im)))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (*.f64 im (/.f64 im (neg.f64 re))))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (*.f64 (*.f64 (/.f64 im re) (neg.f64 im)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (*.f64 1 (*.f64 (/.f64 im re) (neg.f64 im))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 im (/.f64 im re)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 im) (/.f64 im re)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 im (/.f64 im re)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 im (/.f64 im re)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 im 3) (pow.f64 (/.f64 re im) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 im (/.f64 im re))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 im (/.f64 im re))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 im (/.f64 im re))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 im (/.f64 im re)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 2 (/.f64 re (*.f64 (*.f64 1/2 im) im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 im (/.f64 re im))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 im (sqrt.f64 re)) (*.f64 (sqrt.f64 re) (/.f64 1 im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 re (*.f64 im im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (/.f64 re (*.f64 im (cbrt.f64 im))) (cbrt.f64 (*.f64 im im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 im) (/.f64 re (*.f64 im (sqrt.f64 im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 im) (/.f64 (/.f64 re (neg.f64 im)) (neg.f64 (sqrt.f64 im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 im) (*.f64 (/.f64 1 im) (/.f64 re (sqrt.f64 im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 im) (/.f64 re (*.f64 im (cbrt.f64 (*.f64 im im)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 im) (/.f64 (/.f64 re (*.f64 im (sqrt.f64 im))) (cbrt.f64 (sqrt.f64 im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 im) (/.f64 (/.f64 re (*.f64 im (cbrt.f64 im))) (cbrt.f64 im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 (*.f64 im im)) (/.f64 re (*.f64 im (cbrt.f64 im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 (*.f64 im im)) (/.f64 (/.f64 re (neg.f64 im)) (neg.f64 (cbrt.f64 im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 (*.f64 im im)) (*.f64 (/.f64 1 im) (/.f64 re (cbrt.f64 im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 im im) re)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1/2 im) (/.f64 (/.f64 re im) 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 im re) (/.f64 1 im))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 im) (/.f64 re (neg.f64 im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (/.f64 im re)) (/.f64 (/.f64 1 im) (sqrt.f64 (/.f64 im re))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (sqrt.f64 im)) (/.f64 (/.f64 re (*.f64 im (sqrt.f64 im))) (sqrt.f64 (sqrt.f64 im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (neg.f64 im)) (/.f64 (/.f64 re (neg.f64 im)) (sqrt.f64 (neg.f64 im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (cbrt.f64 (*.f64 im im))) (/.f64 (/.f64 re (*.f64 im (sqrt.f64 im))) (sqrt.f64 (cbrt.f64 im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (cbrt.f64 (*.f64 im im))) (/.f64 (/.f64 re (*.f64 im (cbrt.f64 im))) (sqrt.f64 (cbrt.f64 (*.f64 im im)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cbrt.f64 (/.f64 im re)) (cbrt.f64 (/.f64 im re))) (/.f64 (/.f64 1 im) (cbrt.f64 (/.f64 im re))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cbrt.f64 (neg.f64 im)) (cbrt.f64 (neg.f64 im))) (/.f64 (/.f64 re (neg.f64 im)) (cbrt.f64 (neg.f64 im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cbrt.f64 (cbrt.f64 (*.f64 im im))) (cbrt.f64 (cbrt.f64 (*.f64 im im)))) (/.f64 (/.f64 re (*.f64 im (cbrt.f64 im))) (cbrt.f64 (cbrt.f64 (*.f64 im im)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 im (sqrt.f64 im)) (/.f64 re (sqrt.f64 im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cbrt.f64 (*.f64 im im)) (cbrt.f64 (*.f64 im im))) (/.f64 re (cbrt.f64 (*.f64 im im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 im (cbrt.f64 (*.f64 im im))) (/.f64 re (cbrt.f64 im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 1/2 im)) (/.f64 re im))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 im 1) (/.f64 re im))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 im (sqrt.f64 (/.f64 re im))) (sqrt.f64 (/.f64 re im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 im (pow.f64 (cbrt.f64 (/.f64 re im)) 2)) (cbrt.f64 (/.f64 re im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 im (pow.f64 (cbrt.f64 re) 2)) (*.f64 (cbrt.f64 re) (/.f64 1 im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 1 re) (*.f64 (/.f64 1 im) (/.f64 1 im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 1 re) (/.f64 1 (*.f64 im im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (sqrt.f64 im) (sqrt.f64 re)) (/.f64 (/.f64 1 im) (/.f64 (sqrt.f64 im) (sqrt.f64 re))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (sqrt.f64 im) (sqrt.f64 re)) (*.f64 (/.f64 1 im) (sqrt.f64 (/.f64 re im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 1 (pow.f64 (cbrt.f64 (/.f64 re im)) 2)) (*.f64 (/.f64 1 im) (cbrt.f64 (/.f64 re im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 1 (neg.f64 re)) (/.f64 (/.f64 1 im) (neg.f64 im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 -1 (/.f64 re (neg.f64 (*.f64 im im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 -1 (*.f64 (/.f64 1 im) (/.f64 re (neg.f64 im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (sqrt.f64 im)) (/.f64 (/.f64 re (neg.f64 im)) (sqrt.f64 im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (cbrt.f64 (*.f64 im im))) (/.f64 (/.f64 re (neg.f64 im)) (cbrt.f64 im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (sqrt.f64 im) 1) (/.f64 re (*.f64 im (sqrt.f64 im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (cbrt.f64 (*.f64 im im)) 1) (/.f64 re (*.f64 im (cbrt.f64 im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 1 (sqrt.f64 re)) (/.f64 (/.f64 1 im) (/.f64 im (sqrt.f64 re))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 1 (pow.f64 (cbrt.f64 re) 2)) (/.f64 (/.f64 1 im) (/.f64 im (cbrt.f64 re))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (sqrt.f64 im) (pow.f64 (cbrt.f64 re) 2)) (/.f64 (/.f64 1 im) (/.f64 (sqrt.f64 im) (cbrt.f64 re))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (cbrt.f64 (*.f64 im im)) (sqrt.f64 re)) (/.f64 (/.f64 1 im) (/.f64 (cbrt.f64 im) (sqrt.f64 re))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (cbrt.f64 (*.f64 im im)) (pow.f64 (cbrt.f64 re) 2)) (/.f64 (/.f64 1 im) (/.f64 (cbrt.f64 im) (cbrt.f64 re))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 im (/.f64 im re)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 im (sqrt.f64 re)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 im (/.f64 im re)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 im (/.f64 im re)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 re (*.f64 im im)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (*.f64 (/.f64 im re) (neg.f64 im)))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (neg.f64 im) (/.f64 re im)))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (*.f64 im (/.f64 im (neg.f64 re))))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (*.f64 (*.f64 (/.f64 im re) (neg.f64 im)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (*.f64 1 (*.f64 (/.f64 im re) (neg.f64 im))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 im (/.f64 im re)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 im) (/.f64 im re)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 im (/.f64 im re)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 im (/.f64 im re)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 im 3) (pow.f64 (/.f64 re im) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 im (/.f64 im re))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 im (/.f64 im re))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 im (/.f64 im re))))))))

simplify118.0ms (1.3%)

Algorithm
egg-herbie
Rules
1650×distribute-lft-in
924×associate-*r*
842×associate-*l*
754×*-commutative
662×associate-*r/
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
05237642
114697494
258527494
Stop Event
node limit
Counts
354 → 338
Calls
Call 1
Inputs
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(-.f64 (exp.f64 (log1p.f64 (/.f64 im (sqrt.f64 re)))) 1)
(*.f64 (/.f64 im (sqrt.f64 re)) 1)
(*.f64 (/.f64 im (sqrt.f64 re)) (pow.f64 1 1/2))
(*.f64 1 (/.f64 im (sqrt.f64 re)))
(*.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) (sqrt.f64 (/.f64 im (sqrt.f64 re))))
(*.f64 (sqrt.f64 im) (sqrt.f64 (/.f64 im re)))
(*.f64 (sqrt.f64 im) (pow.f64 (/.f64 im re) 1/2))
(*.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 1/2)) (sqrt.f64 2))
(*.f64 (sqrt.f64 2) (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 1/2)))
(*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (cbrt.f64 (*.f64 im (/.f64 im re))))
(*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (cbrt.f64 (/.f64 im (sqrt.f64 re))))
(*.f64 (sqrt.f64 (/.f64 im re)) (sqrt.f64 im))
(*.f64 (sqrt.f64 (cbrt.f64 (*.f64 im (/.f64 im re)))) (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2)))
(*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2)) (sqrt.f64 (cbrt.f64 (*.f64 im (/.f64 im re)))))
(*.f64 (/.f64 (sqrt.f64 im) (sqrt.f64 re)) (sqrt.f64 im))
(*.f64 (/.f64 (sqrt.f64 im) 1) (sqrt.f64 (/.f64 im re)))
(*.f64 (pow.f64 (/.f64 im re) 1/2) (sqrt.f64 im))
(*.f64 (pow.f64 1 1/2) (/.f64 im (sqrt.f64 re)))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2) 1/2) (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 1/2))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 1/2) (pow.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2) 1/2))
(*.f64 (/.f64 (sqrt.f64 im) (sqrt.f64 (neg.f64 re))) (sqrt.f64 (neg.f64 im)))
(*.f64 (*.f64 (sqrt.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re)))) (cbrt.f64 (/.f64 im (sqrt.f64 re)))) (*.f64 (sqrt.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re)))) (cbrt.f64 (/.f64 im (sqrt.f64 re)))))
(*.f64 (*.f64 (cbrt.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re)))) (sqrt.f64 (cbrt.f64 (*.f64 im (/.f64 im re))))) (*.f64 (cbrt.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re)))) (sqrt.f64 (cbrt.f64 (*.f64 im (/.f64 im re))))))
(*.f64 (*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (sqrt.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))))) (*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (sqrt.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))))))
(*.f64 (*.f64 (sqrt.f64 (cbrt.f64 (*.f64 im (/.f64 im re)))) (cbrt.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))))) (*.f64 (sqrt.f64 (cbrt.f64 (*.f64 im (/.f64 im re)))) (cbrt.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))))))
(/.f64 im (sqrt.f64 re))
(/.f64 im (/.f64 (sqrt.f64 re) 1))
(/.f64 1 (sqrt.f64 (/.f64 re (*.f64 im im))))
(/.f64 1 (/.f64 (sqrt.f64 re) im))
(/.f64 (sqrt.f64 im) (sqrt.f64 (/.f64 re im)))
(/.f64 (cbrt.f64 im) (/.f64 (sqrt.f64 re) (cbrt.f64 (*.f64 im im))))
(/.f64 (cbrt.f64 im) (/.f64 (sqrt.f64 (/.f64 re im)) (cbrt.f64 (sqrt.f64 im))))
(/.f64 (cbrt.f64 (*.f64 im im)) (/.f64 (sqrt.f64 re) (cbrt.f64 im)))
(/.f64 (sqrt.f64 (sqrt.f64 im)) (/.f64 (sqrt.f64 (/.f64 re im)) (sqrt.f64 (sqrt.f64 im))))
(/.f64 (sqrt.f64 (neg.f64 im)) (sqrt.f64 (/.f64 re (neg.f64 im))))
(/.f64 (sqrt.f64 (cbrt.f64 (*.f64 im im))) (/.f64 (sqrt.f64 (/.f64 re im)) (sqrt.f64 (cbrt.f64 im))))
(pow.f64 (*.f64 im (/.f64 im re)) 1/2)
(pow.f64 (/.f64 im (sqrt.f64 re)) 1)
(pow.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) 2)
(pow.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) 3)
(pow.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 3) 1/3)
(fabs.f64 (/.f64 im (sqrt.f64 re)))
(log.f64 (exp.f64 (/.f64 im (sqrt.f64 re))))
(log.f64 (+.f64 1 (expm1.f64 (/.f64 im (sqrt.f64 re)))))
(cbrt.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 3))
(expm1.f64 (log1p.f64 (/.f64 im (sqrt.f64 re))))
(exp.f64 (log.f64 (/.f64 im (sqrt.f64 re))))
(log1p.f64 (expm1.f64 (/.f64 im (sqrt.f64 re))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 1/2 (*.f64 im (/.f64 im re))))) 1)
(/.f64 1/2 (/.f64 re (*.f64 im im)))
(/.f64 im (/.f64 (/.f64 re im) 1/2))
(/.f64 1 (/.f64 re (*.f64 (*.f64 1/2 im) im)))
(/.f64 (*.f64 1/2 im) (/.f64 re im))
(/.f64 (neg.f64 im) (/.f64 (/.f64 re (neg.f64 im)) 1/2))
(/.f64 (sqrt.f64 (*.f64 1/2 im)) (/.f64 (/.f64 re im) (sqrt.f64 (*.f64 1/2 im))))
(/.f64 (*.f64 (cbrt.f64 (*.f64 1/2 im)) (cbrt.f64 (*.f64 1/2 im))) (/.f64 (/.f64 re im) (cbrt.f64 (*.f64 1/2 im))))
(/.f64 (*.f64 1/2 (sqrt.f64 im)) (/.f64 re (*.f64 im (sqrt.f64 im))))
(/.f64 (*.f64 1/2 (cbrt.f64 (*.f64 im im))) (/.f64 re (*.f64 im (cbrt.f64 im))))
(/.f64 (*.f64 im -1/2) (/.f64 re (neg.f64 im)))
(/.f64 (/.f64 1/2 (/.f64 re im)) (/.f64 1 im))
(/.f64 (/.f64 im 2) (/.f64 re im))
(/.f64 (*.f64 (/.f64 im 2) (sqrt.f64 (/.f64 im re))) (sqrt.f64 (/.f64 re im)))
(/.f64 (/.f64 (*.f64 1/2 im) (pow.f64 (cbrt.f64 (/.f64 re im)) 2)) (cbrt.f64 (/.f64 re im)))
(pow.f64 (*.f64 1/2 (*.f64 im (/.f64 im re))) 1)
(pow.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 1/2)) 2)
(pow.f64 (cbrt.f64 (*.f64 1/2 (*.f64 im (/.f64 im re)))) 3)
(pow.f64 (pow.f64 (*.f64 1/2 (*.f64 im (/.f64 im re))) 3) 1/3)
(neg.f64 (*.f64 (*.f64 (/.f64 im re) (neg.f64 im)) 1/2))
(neg.f64 (*.f64 1/2 (*.f64 (/.f64 im re) (neg.f64 im))))
(neg.f64 (*.f64 (/.f64 (*.f64 1/2 im) (neg.f64 re)) im))
(neg.f64 (/.f64 (*.f64 1/2 im) (/.f64 re (neg.f64 im))))
(sqrt.f64 (*.f64 1/4 (pow.f64 (*.f64 im (/.f64 im re)) 2)))
(log.f64 (pow.f64 (exp.f64 1/2) (*.f64 im (/.f64 im re))))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 1/2 (*.f64 im (/.f64 im re))))))
(cbrt.f64 (pow.f64 (*.f64 1/2 (*.f64 im (/.f64 im re))) 3))
(expm1.f64 (log1p.f64 (*.f64 1/2 (*.f64 im (/.f64 im re)))))
(exp.f64 (log.f64 (*.f64 1/2 (*.f64 im (/.f64 im re)))))
(log1p.f64 (expm1.f64 (*.f64 1/2 (*.f64 im (/.f64 im re)))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 im (/.f64 im re)))) 1)
(*.f64 2 (*.f64 1/2 (*.f64 im (/.f64 im re))))
(*.f64 1/2 (*.f64 2 (*.f64 im (/.f64 im re))))
(*.f64 im (/.f64 im re))
(*.f64 im (*.f64 (pow.f64 (/.f64 im re) 1/2) (pow.f64 (/.f64 im re) 1/2)))
(*.f64 (*.f64 im (/.f64 im re)) 1)
(*.f64 (*.f64 1/2 (*.f64 im (/.f64 im re))) 2)
(*.f64 (/.f64 im (sqrt.f64 re)) (/.f64 im (sqrt.f64 re)))
(*.f64 1 (*.f64 im (/.f64 im re)))
(*.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 (/.f64 im (sqrt.f64 re)))))
(*.f64 (sqrt.f64 im) (*.f64 (sqrt.f64 im) (/.f64 im re)))
(*.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 1/2)) (*.f64 2 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 1/2))))
(*.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 1/2)) (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 2)))
(*.f64 (sqrt.f64 2) (*.f64 (/.f64 im (sqrt.f64 re)) (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 1/2))))
(*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (*.f64 (/.f64 im (sqrt.f64 re)) (cbrt.f64 (*.f64 im (/.f64 im re)))))
(*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2))
(*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (*.f64 (/.f64 im (sqrt.f64 re)) (cbrt.f64 (/.f64 im (sqrt.f64 re)))))
(*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (/.f64 1 (/.f64 (cbrt.f64 (/.f64 re im)) (/.f64 im (cbrt.f64 re)))))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2) (cbrt.f64 (*.f64 im (/.f64 im re))))
(*.f64 (cbrt.f64 im) (*.f64 (cbrt.f64 (*.f64 im im)) (/.f64 im re)))
(*.f64 (cbrt.f64 (*.f64 im im)) (*.f64 (cbrt.f64 im) (/.f64 im re)))
(*.f64 (cbrt.f64 (*.f64 1/2 (*.f64 im (/.f64 im re)))) (*.f64 2 (pow.f64 (cbrt.f64 (*.f64 1/2 (*.f64 im (/.f64 im re)))) 2)))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 1/2 (*.f64 im (/.f64 im re)))) 2) (*.f64 2 (cbrt.f64 (*.f64 1/2 (*.f64 im (/.f64 im re))))))
(*.f64 (/.f64 im re) im)
(*.f64 (/.f64 im re) (/.f64 im 1))
(*.f64 (neg.f64 im) (/.f64 im (neg.f64 re)))
(*.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 (/.f64 im (sqrt.f64 re)))) (sqrt.f64 (/.f64 im (sqrt.f64 re))))
(*.f64 (*.f64 2 (*.f64 im (/.f64 im re))) 1/2)
(*.f64 (*.f64 2 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 1/2))) (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 1/2)))
(*.f64 (*.f64 2 (pow.f64 (cbrt.f64 (*.f64 1/2 (*.f64 im (/.f64 im re)))) 2)) (cbrt.f64 (*.f64 1/2 (*.f64 im (/.f64 im re)))))
(*.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 2)) (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 1/2)))
(*.f64 (*.f64 (cbrt.f64 (*.f64 im im)) (/.f64 im re)) (cbrt.f64 im))
(*.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (cbrt.f64 (*.f64 im (/.f64 im re)))) (cbrt.f64 (/.f64 im (sqrt.f64 re))))
(*.f64 (*.f64 2 (cbrt.f64 (*.f64 1/2 (*.f64 im (/.f64 im re))))) (pow.f64 (cbrt.f64 (*.f64 1/2 (*.f64 im (/.f64 im re)))) 2))
(*.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 1/2))) (sqrt.f64 2))
(*.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (cbrt.f64 (/.f64 im (sqrt.f64 re)))) (cbrt.f64 (*.f64 im (/.f64 im re))))
(*.f64 (/.f64 im 1) (/.f64 im re))
(*.f64 (/.f64 im (sqrt.f64 (/.f64 re im))) (/.f64 (sqrt.f64 im) (sqrt.f64 re)))
(*.f64 (/.f64 im (pow.f64 (cbrt.f64 re) 2)) (/.f64 im (cbrt.f64 re)))
(*.f64 (/.f64 1 re) (*.f64 im im))
(*.f64 (/.f64 1 re) (*.f64 (/.f64 im 1) im))
(*.f64 (/.f64 (sqrt.f64 im) (sqrt.f64 re)) (/.f64 im (sqrt.f64 (/.f64 re im))))
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 (/.f64 re im)) 2)) (/.f64 im (cbrt.f64 (/.f64 re im))))
(*.f64 (*.f64 (/.f64 im 1) im) (/.f64 1 re))
(*.f64 (/.f64 im (cbrt.f64 (/.f64 re im))) (/.f64 1 (pow.f64 (cbrt.f64 (/.f64 re im)) 2)))
(*.f64 (/.f64 1 (neg.f64 re)) (neg.f64 (*.f64 im im)))
(*.f64 (/.f64 (sqrt.f64 im) re) (*.f64 (/.f64 im 1) (sqrt.f64 im)))
(*.f64 (*.f64 (/.f64 im 1) (sqrt.f64 im)) (/.f64 (sqrt.f64 im) re))
(*.f64 (/.f64 (sqrt.f64 im) 1) (*.f64 (sqrt.f64 im) (/.f64 im re)))
(*.f64 (*.f64 (sqrt.f64 im) (/.f64 im re)) (sqrt.f64 im))
(*.f64 (*.f64 (sqrt.f64 im) (/.f64 im re)) (/.f64 (sqrt.f64 im) 1))
(*.f64 (/.f64 (sqrt.f64 im) (pow.f64 (cbrt.f64 (/.f64 re im)) 2)) (/.f64 (sqrt.f64 im) (cbrt.f64 (/.f64 re im))))
(*.f64 (/.f64 (sqrt.f64 im) (cbrt.f64 (/.f64 re im))) (/.f64 (sqrt.f64 im) (pow.f64 (cbrt.f64 (/.f64 re im)) 2)))
(*.f64 (/.f64 (cbrt.f64 (*.f64 im im)) re) (*.f64 (/.f64 im 1) (cbrt.f64 im)))
(*.f64 (*.f64 (/.f64 im 1) (cbrt.f64 im)) (/.f64 (cbrt.f64 (*.f64 im im)) re))
(*.f64 (/.f64 (cbrt.f64 (*.f64 im im)) 1) (*.f64 (cbrt.f64 im) (/.f64 im re)))
(*.f64 (*.f64 (cbrt.f64 im) (/.f64 im re)) (cbrt.f64 (*.f64 im im)))
(*.f64 (*.f64 (cbrt.f64 im) (/.f64 im re)) (/.f64 (cbrt.f64 (*.f64 im im)) 1))
(*.f64 (/.f64 (cbrt.f64 (*.f64 im im)) (sqrt.f64 (/.f64 re im))) (/.f64 (cbrt.f64 im) (sqrt.f64 (/.f64 re im))))
(*.f64 (/.f64 (cbrt.f64 im) (sqrt.f64 (/.f64 re im))) (/.f64 (cbrt.f64 (*.f64 im im)) (sqrt.f64 (/.f64 re im))))
(*.f64 (/.f64 1 (/.f64 (cbrt.f64 (/.f64 re im)) (/.f64 im (cbrt.f64 re)))) (cbrt.f64 (*.f64 im (/.f64 im re))))
(*.f64 (/.f64 im (neg.f64 re)) (neg.f64 im))
(*.f64 (/.f64 im (/.f64 re (sqrt.f64 im))) (sqrt.f64 im))
(*.f64 (/.f64 (cbrt.f64 (*.f64 im im)) (/.f64 re im)) (cbrt.f64 im))
(*.f64 (/.f64 im -1) (/.f64 im (neg.f64 re)))
(*.f64 (/.f64 im (/.f64 re (cbrt.f64 (*.f64 im im)))) (cbrt.f64 im))
(*.f64 (/.f64 1 (/.f64 re (*.f64 im (cbrt.f64 (*.f64 im im))))) (cbrt.f64 im))
(*.f64 (/.f64 (/.f64 im re) (/.f64 1 (sqrt.f64 im))) (sqrt.f64 im))
(*.f64 (/.f64 (/.f64 im re) (/.f64 1 (cbrt.f64 (*.f64 im im)))) (cbrt.f64 im))
(*.f64 (/.f64 (/.f64 im re) -1) (neg.f64 im))
(*.f64 (/.f64 (neg.f64 im) -1) (/.f64 im re))
(*.f64 (/.f64 (*.f64 2 (*.f64 1/2 im)) re) im)
(*.f64 (/.f64 (*.f64 2 (*.f64 1/2 im)) 1) (/.f64 im re))
(*.f64 (/.f64 (*.f64 2 (*.f64 1/2 im)) (sqrt.f64 re)) (/.f64 im (sqrt.f64 re)))
(*.f64 (/.f64 (*.f64 2 (*.f64 1/2 im)) (pow.f64 (cbrt.f64 re) 2)) (/.f64 im (cbrt.f64 re)))
(*.f64 (/.f64 (*.f64 2 (*.f64 1/2 im)) (neg.f64 re)) (neg.f64 im))
(*.f64 (/.f64 (*.f64 2 (*.f64 1/2 im)) (/.f64 re 1)) im)
(*.f64 (/.f64 (*.f64 2 (*.f64 1/2 im)) (/.f64 re (sqrt.f64 im))) (sqrt.f64 im))
(*.f64 (/.f64 (*.f64 2 (*.f64 1/2 im)) (/.f64 re (cbrt.f64 (*.f64 im im)))) (cbrt.f64 im))
(*.f64 (/.f64 (*.f64 2 (*.f64 1/2 im)) -1) (/.f64 im (neg.f64 re)))
(*.f64 (/.f64 (/.f64 im 1) 1) (/.f64 im re))
(*.f64 (/.f64 (/.f64 im 1) (sqrt.f64 re)) (/.f64 im (sqrt.f64 re)))
(*.f64 (/.f64 (/.f64 im 1) (pow.f64 (cbrt.f64 re) 2)) (/.f64 im (cbrt.f64 re)))
(*.f64 (/.f64 (/.f64 im 1) (neg.f64 re)) (neg.f64 im))
(*.f64 (/.f64 (/.f64 im 1) (/.f64 re 1)) im)
(*.f64 (/.f64 (/.f64 im 1) (/.f64 re (sqrt.f64 im))) (sqrt.f64 im))
(*.f64 (/.f64 (/.f64 im 1) (/.f64 re (cbrt.f64 (*.f64 im im)))) (cbrt.f64 im))
(*.f64 (/.f64 (/.f64 im 1) -1) (/.f64 im (neg.f64 re)))
(*.f64 (/.f64 (/.f64 im (sqrt.f64 (/.f64 re im))) 1) (sqrt.f64 (/.f64 im re)))
(*.f64 (/.f64 (/.f64 im (sqrt.f64 (/.f64 re im))) (sqrt.f64 re)) (sqrt.f64 im))
(*.f64 (/.f64 (/.f64 im (sqrt.f64 (/.f64 re im))) (sqrt.f64 (neg.f64 re))) (sqrt.f64 (neg.f64 im)))
(*.f64 (/.f64 (/.f64 im (pow.f64 (cbrt.f64 (/.f64 re im)) 2)) 1) (cbrt.f64 (/.f64 im re)))
(*.f64 (/.f64 (/.f64 im (pow.f64 (cbrt.f64 (/.f64 re im)) 2)) (cbrt.f64 re)) (cbrt.f64 im))
(*.f64 (/.f64 (/.f64 im (pow.f64 (cbrt.f64 (/.f64 re im)) 2)) (cbrt.f64 (neg.f64 re))) (cbrt.f64 (neg.f64 im)))
(*.f64 (*.f64 (pow.f64 (/.f64 im re) 1/2) (pow.f64 (/.f64 im re) 1/2)) im)
(*.f64 (*.f64 (pow.f64 1 1/2) (pow.f64 1 1/2)) (*.f64 im (/.f64 im re)))
(*.f64 (*.f64 (pow.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2) 1/2) (pow.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2) 1/2)) (*.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 1/2) (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 1/2)))
(*.f64 (*.f64 (sqrt.f64 im) (/.f64 (sqrt.f64 im) (sqrt.f64 re))) (*.f64 (sqrt.f64 im) (/.f64 (sqrt.f64 im) (sqrt.f64 re))))
(*.f64 (*.f64 (sqrt.f64 (cbrt.f64 (*.f64 im (/.f64 im re)))) (cbrt.f64 (*.f64 im (/.f64 im re)))) (*.f64 (sqrt.f64 (cbrt.f64 (*.f64 im (/.f64 im re)))) (cbrt.f64 (*.f64 im (/.f64 im re)))))
(*.f64 (*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2))) (*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2))))
(*.f64 (*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2)) (cbrt.f64 (/.f64 im (sqrt.f64 re)))) (*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2)) (cbrt.f64 (/.f64 im (sqrt.f64 re)))))
(*.f64 (*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (sqrt.f64 (cbrt.f64 (*.f64 im (/.f64 im re))))) (*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (sqrt.f64 (cbrt.f64 (*.f64 im (/.f64 im re))))))
(pow.f64 (*.f64 im (/.f64 im re)) 1)
(pow.f64 (/.f64 im (sqrt.f64 re)) 2)
(pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 3)
(pow.f64 (pow.f64 (*.f64 im (/.f64 im re)) 2) 1/2)
(pow.f64 (pow.f64 (*.f64 im (/.f64 im re)) 3) 1/3)
(pow.f64 (/.f64 re (*.f64 im im)) -1)
(neg.f64 (*.f64 (/.f64 im re) (neg.f64 im)))
(neg.f64 (/.f64 (neg.f64 im) (/.f64 re im)))
(neg.f64 (*.f64 im (/.f64 im (neg.f64 re))))
(neg.f64 (*.f64 (*.f64 (/.f64 im re) (neg.f64 im)) 1))
(neg.f64 (*.f64 1 (*.f64 (/.f64 im re) (neg.f64 im))))
(sqrt.f64 (pow.f64 (*.f64 im (/.f64 im re)) 2))
(log.f64 (pow.f64 (exp.f64 im) (/.f64 im re)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 im (/.f64 im re)))))
(cbrt.f64 (pow.f64 (*.f64 im (/.f64 im re)) 3))
(cbrt.f64 (/.f64 (pow.f64 im 3) (pow.f64 (/.f64 re im) 3)))
(expm1.f64 (log1p.f64 (*.f64 im (/.f64 im re))))
(exp.f64 (log.f64 (*.f64 im (/.f64 im re))))
(log1p.f64 (expm1.f64 (*.f64 im (/.f64 im re))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 im (/.f64 im re)))) 1)
(/.f64 2 (/.f64 re (*.f64 (*.f64 1/2 im) im)))
(/.f64 im (/.f64 re im))
(/.f64 (/.f64 im (sqrt.f64 re)) (*.f64 (sqrt.f64 re) (/.f64 1 im)))
(/.f64 1 (/.f64 re (*.f64 im im)))
(/.f64 1 (/.f64 (/.f64 re (*.f64 im (cbrt.f64 im))) (cbrt.f64 (*.f64 im im))))
(/.f64 (sqrt.f64 im) (/.f64 re (*.f64 im (sqrt.f64 im))))
(/.f64 (sqrt.f64 im) (/.f64 (/.f64 re (neg.f64 im)) (neg.f64 (sqrt.f64 im))))
(/.f64 (sqrt.f64 im) (*.f64 (/.f64 1 im) (/.f64 re (sqrt.f64 im))))
(/.f64 (cbrt.f64 im) (/.f64 re (*.f64 im (cbrt.f64 (*.f64 im im)))))
(/.f64 (cbrt.f64 im) (/.f64 (/.f64 re (*.f64 im (sqrt.f64 im))) (cbrt.f64 (sqrt.f64 im))))
(/.f64 (cbrt.f64 im) (/.f64 (/.f64 re (*.f64 im (cbrt.f64 im))) (cbrt.f64 im)))
(/.f64 (cbrt.f64 (*.f64 im im)) (/.f64 re (*.f64 im (cbrt.f64 im))))
(/.f64 (cbrt.f64 (*.f64 im im)) (/.f64 (/.f64 re (neg.f64 im)) (neg.f64 (cbrt.f64 im))))
(/.f64 (cbrt.f64 (*.f64 im im)) (*.f64 (/.f64 1 im) (/.f64 re (cbrt.f64 im))))
(/.f64 (*.f64 im im) re)
(/.f64 (*.f64 1/2 im) (/.f64 (/.f64 re im) 2))
(/.f64 (/.f64 im re) (/.f64 1 im))
(/.f64 (neg.f64 im) (/.f64 re (neg.f64 im)))
(/.f64 (sqrt.f64 (/.f64 im re)) (/.f64 (/.f64 1 im) (sqrt.f64 (/.f64 im re))))
(/.f64 (sqrt.f64 (sqrt.f64 im)) (/.f64 (/.f64 re (*.f64 im (sqrt.f64 im))) (sqrt.f64 (sqrt.f64 im))))
(/.f64 (sqrt.f64 (neg.f64 im)) (/.f64 (/.f64 re (neg.f64 im)) (sqrt.f64 (neg.f64 im))))
(/.f64 (sqrt.f64 (cbrt.f64 (*.f64 im im))) (/.f64 (/.f64 re (*.f64 im (sqrt.f64 im))) (sqrt.f64 (cbrt.f64 im))))
(/.f64 (sqrt.f64 (cbrt.f64 (*.f64 im im))) (/.f64 (/.f64 re (*.f64 im (cbrt.f64 im))) (sqrt.f64 (cbrt.f64 (*.f64 im im)))))
(/.f64 (*.f64 (cbrt.f64 (/.f64 im re)) (cbrt.f64 (/.f64 im re))) (/.f64 (/.f64 1 im) (cbrt.f64 (/.f64 im re))))
(/.f64 (*.f64 (cbrt.f64 (neg.f64 im)) (cbrt.f64 (neg.f64 im))) (/.f64 (/.f64 re (neg.f64 im)) (cbrt.f64 (neg.f64 im))))
(/.f64 (*.f64 (cbrt.f64 (cbrt.f64 (*.f64 im im))) (cbrt.f64 (cbrt.f64 (*.f64 im im)))) (/.f64 (/.f64 re (*.f64 im (cbrt.f64 im))) (cbrt.f64 (cbrt.f64 (*.f64 im im)))))
(/.f64 (*.f64 im (sqrt.f64 im)) (/.f64 re (sqrt.f64 im)))
(/.f64 (*.f64 (cbrt.f64 (*.f64 im im)) (cbrt.f64 (*.f64 im im))) (/.f64 re (cbrt.f64 (*.f64 im im))))
(/.f64 (*.f64 im (cbrt.f64 (*.f64 im im))) (/.f64 re (cbrt.f64 im)))
(/.f64 (*.f64 2 (*.f64 1/2 im)) (/.f64 re im))
(/.f64 (/.f64 im 1) (/.f64 re im))
(/.f64 (/.f64 im (sqrt.f64 (/.f64 re im))) (sqrt.f64 (/.f64 re im)))
(/.f64 (/.f64 im (pow.f64 (cbrt.f64 (/.f64 re im)) 2)) (cbrt.f64 (/.f64 re im)))
(/.f64 (/.f64 im (pow.f64 (cbrt.f64 re) 2)) (*.f64 (cbrt.f64 re) (/.f64 1 im)))
(/.f64 (/.f64 1 re) (*.f64 (/.f64 1 im) (/.f64 1 im)))
(/.f64 (/.f64 1 re) (/.f64 1 (*.f64 im im)))
(/.f64 (/.f64 (sqrt.f64 im) (sqrt.f64 re)) (/.f64 (/.f64 1 im) (/.f64 (sqrt.f64 im) (sqrt.f64 re))))
(/.f64 (/.f64 (sqrt.f64 im) (sqrt.f64 re)) (*.f64 (/.f64 1 im) (sqrt.f64 (/.f64 re im))))
(/.f64 (/.f64 1 (pow.f64 (cbrt.f64 (/.f64 re im)) 2)) (*.f64 (/.f64 1 im) (cbrt.f64 (/.f64 re im))))
(/.f64 (/.f64 1 (neg.f64 re)) (/.f64 (/.f64 1 im) (neg.f64 im)))
(/.f64 -1 (/.f64 re (neg.f64 (*.f64 im im))))
(/.f64 -1 (*.f64 (/.f64 1 im) (/.f64 re (neg.f64 im))))
(/.f64 (neg.f64 (sqrt.f64 im)) (/.f64 (/.f64 re (neg.f64 im)) (sqrt.f64 im)))
(/.f64 (neg.f64 (cbrt.f64 (*.f64 im im))) (/.f64 (/.f64 re (neg.f64 im)) (cbrt.f64 im)))
(/.f64 (/.f64 (sqrt.f64 im) 1) (/.f64 re (*.f64 im (sqrt.f64 im))))
(/.f64 (/.f64 (cbrt.f64 (*.f64 im im)) 1) (/.f64 re (*.f64 im (cbrt.f64 im))))
(/.f64 (/.f64 1 (sqrt.f64 re)) (/.f64 (/.f64 1 im) (/.f64 im (sqrt.f64 re))))
(/.f64 (/.f64 1 (pow.f64 (cbrt.f64 re) 2)) (/.f64 (/.f64 1 im) (/.f64 im (cbrt.f64 re))))
(/.f64 (/.f64 (sqrt.f64 im) (pow.f64 (cbrt.f64 re) 2)) (/.f64 (/.f64 1 im) (/.f64 (sqrt.f64 im) (cbrt.f64 re))))
(/.f64 (/.f64 (cbrt.f64 (*.f64 im im)) (sqrt.f64 re)) (/.f64 (/.f64 1 im) (/.f64 (cbrt.f64 im) (sqrt.f64 re))))
(/.f64 (/.f64 (cbrt.f64 (*.f64 im im)) (pow.f64 (cbrt.f64 re) 2)) (/.f64 (/.f64 1 im) (/.f64 (cbrt.f64 im) (cbrt.f64 re))))
(pow.f64 (*.f64 im (/.f64 im re)) 1)
(pow.f64 (/.f64 im (sqrt.f64 re)) 2)
(pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 3)
(pow.f64 (pow.f64 (*.f64 im (/.f64 im re)) 2) 1/2)
(pow.f64 (pow.f64 (*.f64 im (/.f64 im re)) 3) 1/3)
(pow.f64 (/.f64 re (*.f64 im im)) -1)
(neg.f64 (*.f64 (/.f64 im re) (neg.f64 im)))
(neg.f64 (/.f64 (neg.f64 im) (/.f64 re im)))
(neg.f64 (*.f64 im (/.f64 im (neg.f64 re))))
(neg.f64 (*.f64 (*.f64 (/.f64 im re) (neg.f64 im)) 1))
(neg.f64 (*.f64 1 (*.f64 (/.f64 im re) (neg.f64 im))))
(sqrt.f64 (pow.f64 (*.f64 im (/.f64 im re)) 2))
(log.f64 (pow.f64 (exp.f64 im) (/.f64 im re)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 im (/.f64 im re)))))
(cbrt.f64 (pow.f64 (*.f64 im (/.f64 im re)) 3))
(cbrt.f64 (/.f64 (pow.f64 im 3) (pow.f64 (/.f64 re im) 3)))
(expm1.f64 (log1p.f64 (*.f64 im (/.f64 im re))))
(exp.f64 (log.f64 (*.f64 im (/.f64 im re))))
(log1p.f64 (expm1.f64 (*.f64 im (/.f64 im re))))
Outputs
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(neg.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (sqrt.f64 (/.f64 1 re)) (neg.f64 im))
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(neg.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (sqrt.f64 (/.f64 1 re)) (neg.f64 im))
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(neg.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (sqrt.f64 (/.f64 1 re)) (neg.f64 im))
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(neg.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (sqrt.f64 (/.f64 1 re)) (neg.f64 im))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(-.f64 (exp.f64 (log1p.f64 (/.f64 im (sqrt.f64 re)))) 1)
(/.f64 im (sqrt.f64 re))
(*.f64 (/.f64 im (sqrt.f64 re)) 1)
(/.f64 im (sqrt.f64 re))
(*.f64 (/.f64 im (sqrt.f64 re)) (pow.f64 1 1/2))
(/.f64 im (sqrt.f64 re))
(*.f64 1 (/.f64 im (sqrt.f64 re)))
(/.f64 im (sqrt.f64 re))
(*.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) (sqrt.f64 (/.f64 im (sqrt.f64 re))))
(/.f64 im (sqrt.f64 re))
(*.f64 (sqrt.f64 im) (sqrt.f64 (/.f64 im re)))
(*.f64 (sqrt.f64 im) (pow.f64 (/.f64 im re) 1/2))
(*.f64 (sqrt.f64 im) (sqrt.f64 (/.f64 im re)))
(*.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 1/2)) (sqrt.f64 2))
(*.f64 (/.f64 im (sqrt.f64 re)) (*.f64 (sqrt.f64 1/2) (sqrt.f64 2)))
(*.f64 (sqrt.f64 1/2) (/.f64 im (/.f64 (sqrt.f64 re) (sqrt.f64 2))))
(*.f64 (sqrt.f64 2) (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 1/2)))
(*.f64 (/.f64 im (sqrt.f64 re)) (*.f64 (sqrt.f64 1/2) (sqrt.f64 2)))
(*.f64 (sqrt.f64 1/2) (/.f64 im (/.f64 (sqrt.f64 re) (sqrt.f64 2))))
(*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (cbrt.f64 (*.f64 im (/.f64 im re))))
(*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (cbrt.f64 (/.f64 im (sqrt.f64 re))))
(*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (cbrt.f64 (*.f64 im (/.f64 im re))))
(*.f64 (sqrt.f64 (/.f64 im re)) (sqrt.f64 im))
(*.f64 (sqrt.f64 im) (sqrt.f64 (/.f64 im re)))
(*.f64 (sqrt.f64 (cbrt.f64 (*.f64 im (/.f64 im re)))) (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2)))
(*.f64 (sqrt.f64 (cbrt.f64 (*.f64 im (/.f64 im re)))) (fabs.f64 (cbrt.f64 (*.f64 im (/.f64 im re)))))
(*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2)) (sqrt.f64 (cbrt.f64 (*.f64 im (/.f64 im re)))))
(*.f64 (sqrt.f64 (cbrt.f64 (*.f64 im (/.f64 im re)))) (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2)))
(*.f64 (sqrt.f64 (cbrt.f64 (*.f64 im (/.f64 im re)))) (fabs.f64 (cbrt.f64 (*.f64 im (/.f64 im re)))))
(*.f64 (/.f64 (sqrt.f64 im) (sqrt.f64 re)) (sqrt.f64 im))
(/.f64 im (sqrt.f64 re))
(*.f64 (/.f64 (sqrt.f64 im) 1) (sqrt.f64 (/.f64 im re)))
(*.f64 (sqrt.f64 im) (sqrt.f64 (/.f64 im re)))
(*.f64 (pow.f64 (/.f64 im re) 1/2) (sqrt.f64 im))
(*.f64 (sqrt.f64 im) (sqrt.f64 (/.f64 im re)))
(*.f64 (pow.f64 1 1/2) (/.f64 im (sqrt.f64 re)))
(/.f64 im (sqrt.f64 re))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2) 1/2) (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 1/2))
(*.f64 (sqrt.f64 (cbrt.f64 (*.f64 im (/.f64 im re)))) (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2)))
(*.f64 (sqrt.f64 (cbrt.f64 (*.f64 im (/.f64 im re)))) (fabs.f64 (cbrt.f64 (*.f64 im (/.f64 im re)))))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 1/2) (pow.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2) 1/2))
(*.f64 (sqrt.f64 (cbrt.f64 (*.f64 im (/.f64 im re)))) (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2)))
(*.f64 (sqrt.f64 (cbrt.f64 (*.f64 im (/.f64 im re)))) (fabs.f64 (cbrt.f64 (*.f64 im (/.f64 im re)))))
(*.f64 (/.f64 (sqrt.f64 im) (sqrt.f64 (neg.f64 re))) (sqrt.f64 (neg.f64 im)))
(/.f64 (*.f64 (sqrt.f64 im) (sqrt.f64 (neg.f64 im))) (sqrt.f64 (neg.f64 re)))
(/.f64 (sqrt.f64 im) (/.f64 (sqrt.f64 (neg.f64 re)) (sqrt.f64 (neg.f64 im))))
(*.f64 (*.f64 (sqrt.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re)))) (cbrt.f64 (/.f64 im (sqrt.f64 re)))) (*.f64 (sqrt.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re)))) (cbrt.f64 (/.f64 im (sqrt.f64 re)))))
(/.f64 im (sqrt.f64 re))
(*.f64 (*.f64 (cbrt.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re)))) (sqrt.f64 (cbrt.f64 (*.f64 im (/.f64 im re))))) (*.f64 (cbrt.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re)))) (sqrt.f64 (cbrt.f64 (*.f64 im (/.f64 im re))))))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 1) (*.f64 (cbrt.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re)))) (cbrt.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))))))
(*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (*.f64 (cbrt.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re)))) (cbrt.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))))))
(*.f64 (*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (sqrt.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))))) (*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (sqrt.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))))))
(/.f64 im (sqrt.f64 re))
(*.f64 (*.f64 (sqrt.f64 (cbrt.f64 (*.f64 im (/.f64 im re)))) (cbrt.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))))) (*.f64 (sqrt.f64 (cbrt.f64 (*.f64 im (/.f64 im re)))) (cbrt.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))))))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 1) (*.f64 (cbrt.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re)))) (cbrt.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))))))
(*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (*.f64 (cbrt.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re)))) (cbrt.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))))))
(/.f64 im (sqrt.f64 re))
(/.f64 im (/.f64 (sqrt.f64 re) 1))
(/.f64 im (sqrt.f64 re))
(/.f64 1 (sqrt.f64 (/.f64 re (*.f64 im im))))
(/.f64 1 (/.f64 (sqrt.f64 re) im))
(/.f64 im (sqrt.f64 re))
(/.f64 (sqrt.f64 im) (sqrt.f64 (/.f64 re im)))
(/.f64 (cbrt.f64 im) (/.f64 (sqrt.f64 re) (cbrt.f64 (*.f64 im im))))
(*.f64 (/.f64 (cbrt.f64 im) (sqrt.f64 re)) (cbrt.f64 (*.f64 im im)))
(*.f64 (cbrt.f64 im) (/.f64 (cbrt.f64 (*.f64 im im)) (sqrt.f64 re)))
(/.f64 (cbrt.f64 im) (/.f64 (sqrt.f64 (/.f64 re im)) (cbrt.f64 (sqrt.f64 im))))
(*.f64 (/.f64 (cbrt.f64 im) (sqrt.f64 (/.f64 re im))) (cbrt.f64 (sqrt.f64 im)))
(*.f64 (cbrt.f64 (sqrt.f64 im)) (/.f64 (cbrt.f64 im) (sqrt.f64 (/.f64 re im))))
(/.f64 (cbrt.f64 (*.f64 im im)) (/.f64 (sqrt.f64 re) (cbrt.f64 im)))
(*.f64 (/.f64 (cbrt.f64 im) (sqrt.f64 re)) (cbrt.f64 (*.f64 im im)))
(*.f64 (cbrt.f64 im) (/.f64 (cbrt.f64 (*.f64 im im)) (sqrt.f64 re)))
(/.f64 (sqrt.f64 (sqrt.f64 im)) (/.f64 (sqrt.f64 (/.f64 re im)) (sqrt.f64 (sqrt.f64 im))))
(*.f64 (/.f64 (sqrt.f64 (sqrt.f64 im)) (sqrt.f64 (/.f64 re im))) (sqrt.f64 (sqrt.f64 im)))
(*.f64 (sqrt.f64 (sqrt.f64 im)) (/.f64 (sqrt.f64 (sqrt.f64 im)) (sqrt.f64 (/.f64 re im))))
(/.f64 (sqrt.f64 (neg.f64 im)) (sqrt.f64 (/.f64 re (neg.f64 im))))
(/.f64 (sqrt.f64 (cbrt.f64 (*.f64 im im))) (/.f64 (sqrt.f64 (/.f64 re im)) (sqrt.f64 (cbrt.f64 im))))
(*.f64 (/.f64 (sqrt.f64 (cbrt.f64 (*.f64 im im))) (sqrt.f64 (/.f64 re im))) (sqrt.f64 (cbrt.f64 im)))
(*.f64 (sqrt.f64 (cbrt.f64 im)) (/.f64 (sqrt.f64 (cbrt.f64 (*.f64 im im))) (sqrt.f64 (/.f64 re im))))
(pow.f64 (*.f64 im (/.f64 im re)) 1/2)
(sqrt.f64 (*.f64 im (/.f64 im re)))
(pow.f64 (/.f64 im (sqrt.f64 re)) 1)
(/.f64 im (sqrt.f64 re))
(pow.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) 2)
(/.f64 im (sqrt.f64 re))
(pow.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) 3)
(/.f64 im (sqrt.f64 re))
(pow.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 3) 1/3)
(/.f64 im (sqrt.f64 re))
(fabs.f64 (/.f64 im (sqrt.f64 re)))
(/.f64 im (sqrt.f64 re))
(log.f64 (exp.f64 (/.f64 im (sqrt.f64 re))))
(/.f64 im (sqrt.f64 re))
(log.f64 (+.f64 1 (expm1.f64 (/.f64 im (sqrt.f64 re)))))
(/.f64 im (sqrt.f64 re))
(cbrt.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 3))
(/.f64 im (sqrt.f64 re))
(expm1.f64 (log1p.f64 (/.f64 im (sqrt.f64 re))))
(/.f64 im (sqrt.f64 re))
(exp.f64 (log.f64 (/.f64 im (sqrt.f64 re))))
(/.f64 im (sqrt.f64 re))
(log1p.f64 (expm1.f64 (/.f64 im (sqrt.f64 re))))
(/.f64 im (sqrt.f64 re))
(-.f64 (exp.f64 (log1p.f64 (*.f64 1/2 (*.f64 im (/.f64 im re))))) 1)
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(/.f64 1/2 (/.f64 re (*.f64 im im)))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(/.f64 im (/.f64 (/.f64 re im) 1/2))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(/.f64 1 (/.f64 re (*.f64 (*.f64 1/2 im) im)))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(/.f64 (*.f64 1/2 im) (/.f64 re im))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(/.f64 (neg.f64 im) (/.f64 (/.f64 re (neg.f64 im)) 1/2))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(/.f64 (sqrt.f64 (*.f64 1/2 im)) (/.f64 (/.f64 re im) (sqrt.f64 (*.f64 1/2 im))))
(*.f64 (/.f64 (sqrt.f64 (*.f64 im 1/2)) (/.f64 re im)) (sqrt.f64 (*.f64 im 1/2)))
(*.f64 (sqrt.f64 (*.f64 im 1/2)) (/.f64 (sqrt.f64 (*.f64 im 1/2)) (/.f64 re im)))
(/.f64 (*.f64 (cbrt.f64 (*.f64 1/2 im)) (cbrt.f64 (*.f64 1/2 im))) (/.f64 (/.f64 re im) (cbrt.f64 (*.f64 1/2 im))))
(/.f64 (cbrt.f64 (*.f64 im 1/2)) (/.f64 (/.f64 (/.f64 re im) (cbrt.f64 (*.f64 im 1/2))) (cbrt.f64 (*.f64 im 1/2))))
(/.f64 (cbrt.f64 (*.f64 im 1/2)) (/.f64 (/.f64 re (*.f64 im (cbrt.f64 (*.f64 im 1/2)))) (cbrt.f64 (*.f64 im 1/2))))
(/.f64 (*.f64 1/2 (sqrt.f64 im)) (/.f64 re (*.f64 im (sqrt.f64 im))))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(/.f64 (*.f64 1/2 (cbrt.f64 (*.f64 im im))) (/.f64 re (*.f64 im (cbrt.f64 im))))
(*.f64 (/.f64 (*.f64 1/2 (cbrt.f64 (*.f64 im im))) re) (*.f64 im (cbrt.f64 im)))
(*.f64 (*.f64 im (cbrt.f64 im)) (/.f64 1/2 (/.f64 re (cbrt.f64 (*.f64 im im)))))
(/.f64 (*.f64 im -1/2) (/.f64 re (neg.f64 im)))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(/.f64 (/.f64 1/2 (/.f64 re im)) (/.f64 1 im))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(/.f64 (/.f64 im 2) (/.f64 re im))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(/.f64 (*.f64 (/.f64 im 2) (sqrt.f64 (/.f64 im re))) (sqrt.f64 (/.f64 re im)))
(/.f64 (/.f64 im 2) (/.f64 (sqrt.f64 (/.f64 re im)) (sqrt.f64 (/.f64 im re))))
(*.f64 (/.f64 (/.f64 im 2) (sqrt.f64 (/.f64 re im))) (sqrt.f64 (/.f64 im re)))
(/.f64 (/.f64 (*.f64 1/2 im) (pow.f64 (cbrt.f64 (/.f64 re im)) 2)) (cbrt.f64 (/.f64 re im)))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(pow.f64 (*.f64 1/2 (*.f64 im (/.f64 im re))) 1)
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(pow.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 1/2)) 2)
(pow.f64 (/.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 re)) 2)
(pow.f64 (cbrt.f64 (*.f64 1/2 (*.f64 im (/.f64 im re)))) 3)
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(pow.f64 (pow.f64 (*.f64 1/2 (*.f64 im (/.f64 im re))) 3) 1/3)
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(neg.f64 (*.f64 (*.f64 (/.f64 im re) (neg.f64 im)) 1/2))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(neg.f64 (*.f64 1/2 (*.f64 (/.f64 im re) (neg.f64 im))))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(neg.f64 (*.f64 (/.f64 (*.f64 1/2 im) (neg.f64 re)) im))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(neg.f64 (/.f64 (*.f64 1/2 im) (/.f64 re (neg.f64 im))))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(sqrt.f64 (*.f64 1/4 (pow.f64 (*.f64 im (/.f64 im re)) 2)))
(sqrt.f64 (pow.f64 (*.f64 im (*.f64 im (/.f64 1/2 re))) 2))
(log.f64 (pow.f64 (exp.f64 1/2) (*.f64 im (/.f64 im re))))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 1/2 (*.f64 im (/.f64 im re))))))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(cbrt.f64 (pow.f64 (*.f64 1/2 (*.f64 im (/.f64 im re))) 3))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(expm1.f64 (log1p.f64 (*.f64 1/2 (*.f64 im (/.f64 im re)))))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(exp.f64 (log.f64 (*.f64 1/2 (*.f64 im (/.f64 im re)))))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(log1p.f64 (expm1.f64 (*.f64 1/2 (*.f64 im (/.f64 im re)))))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 im (/.f64 1/2 re)))
(-.f64 (exp.f64 (log1p.f64 (*.f64 im (/.f64 im re)))) 1)
(*.f64 im (/.f64 im re))
(*.f64 2 (*.f64 1/2 (*.f64 im (/.f64 im re))))
(*.f64 im (/.f64 im re))
(*.f64 1/2 (*.f64 2 (*.f64 im (/.f64 im re))))
(*.f64 im (/.f64 im re))
(*.f64 im (/.f64 im re))
(*.f64 im (*.f64 (pow.f64 (/.f64 im re) 1/2) (pow.f64 (/.f64 im re) 1/2)))
(*.f64 im (/.f64 im re))
(*.f64 (*.f64 im (/.f64 im re)) 1)
(*.f64 im (/.f64 im re))
(*.f64 (*.f64 1/2 (*.f64 im (/.f64 im re))) 2)
(*.f64 im (/.f64 im re))
(*.f64 (/.f64 im (sqrt.f64 re)) (/.f64 im (sqrt.f64 re)))
(pow.f64 (/.f64 im (sqrt.f64 re)) 2)
(*.f64 1 (*.f64 im (/.f64 im re)))
(*.f64 im (/.f64 im re))
(*.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 (/.f64 im (sqrt.f64 re)))))
(pow.f64 (/.f64 im (sqrt.f64 re)) 2)
(*.f64 (sqrt.f64 im) (*.f64 (sqrt.f64 im) (/.f64 im re)))
(*.f64 im (/.f64 im re))
(*.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 1/2)) (*.f64 2 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 1/2))))
(*.f64 2 (pow.f64 (/.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 re)) 2))
(*.f64 2 (pow.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 1/2)) 2))
(*.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 1/2)) (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 2)))
(*.f64 (sqrt.f64 2) (*.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 2) (sqrt.f64 1/2)))
(*.f64 (sqrt.f64 1/2) (*.f64 (sqrt.f64 2) (pow.f64 (/.f64 im (sqrt.f64 re)) 2)))
(*.f64 (sqrt.f64 2) (*.f64 (/.f64 im (sqrt.f64 re)) (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 1/2))))
(*.f64 (sqrt.f64 2) (*.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 2) (sqrt.f64 1/2)))
(*.f64 (sqrt.f64 1/2) (*.f64 (sqrt.f64 2) (pow.f64 (/.f64 im (sqrt.f64 re)) 2)))
(*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (*.f64 (/.f64 im (sqrt.f64 re)) (cbrt.f64 (*.f64 im (/.f64 im re)))))
(*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (pow.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) 4))
(*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2))
(*.f64 im (/.f64 im re))
(*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (*.f64 (/.f64 im (sqrt.f64 re)) (cbrt.f64 (/.f64 im (sqrt.f64 re)))))
(*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (*.f64 (/.f64 im (sqrt.f64 re)) (cbrt.f64 (*.f64 im (/.f64 im re)))))
(*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (pow.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) 4))
(*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (/.f64 1 (/.f64 (cbrt.f64 (/.f64 re im)) (/.f64 im (cbrt.f64 re)))))
(/.f64 (*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 1) (/.f64 (cbrt.f64 (/.f64 re im)) (/.f64 im (cbrt.f64 re))))
(*.f64 (/.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (cbrt.f64 (/.f64 re im))) (/.f64 im (cbrt.f64 re)))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2) (cbrt.f64 (*.f64 im (/.f64 im re))))
(*.f64 im (/.f64 im re))
(*.f64 (cbrt.f64 im) (*.f64 (cbrt.f64 (*.f64 im im)) (/.f64 im re)))
(*.f64 (cbrt.f64 im) (*.f64 (/.f64 im re) (cbrt.f64 (*.f64 im im))))
(*.f64 im (/.f64 (*.f64 (cbrt.f64 im) (cbrt.f64 (*.f64 im im))) re))
(*.f64 (cbrt.f64 (*.f64 im im)) (*.f64 (cbrt.f64 im) (/.f64 im re)))
(*.f64 (cbrt.f64 im) (*.f64 (/.f64 im re) (cbrt.f64 (*.f64 im im))))
(*.f64 im (/.f64 (*.f64 (cbrt.f64 im) (cbrt.f64 (*.f64 im im))) re))
(*.f64 (cbrt.f64 (*.f64 1/2 (*.f64 im (/.f64 im re)))) (*.f64 2 (pow.f64 (cbrt.f64 (*.f64 1/2 (*.f64 im (/.f64 im re)))) 2)))
(*.f64 im (/.f64 im re))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 1/2 (*.f64 im (/.f64 im re)))) 2) (*.f64 2 (cbrt.f64 (*.f64 1/2 (*.f64 im (/.f64 im re))))))
(*.f64 im (/.f64 im re))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(*.f64 (/.f64 im re) (/.f64 im 1))
(*.f64 im (/.f64 im re))
(*.f64 (neg.f64 im) (/.f64 im (neg.f64 re)))
(*.f64 im (/.f64 im re))
(*.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 (/.f64 im (sqrt.f64 re)))) (sqrt.f64 (/.f64 im (sqrt.f64 re))))
(pow.f64 (/.f64 im (sqrt.f64 re)) 2)
(*.f64 (*.f64 2 (*.f64 im (/.f64 im re))) 1/2)
(*.f64 im (/.f64 im re))
(*.f64 (*.f64 2 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 1/2))) (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 1/2)))
(*.f64 2 (pow.f64 (/.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 re)) 2))
(*.f64 2 (pow.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 1/2)) 2))
(*.f64 (*.f64 2 (pow.f64 (cbrt.f64 (*.f64 1/2 (*.f64 im (/.f64 im re)))) 2)) (cbrt.f64 (*.f64 1/2 (*.f64 im (/.f64 im re)))))
(*.f64 im (/.f64 im re))
(*.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 2)) (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 1/2)))
(*.f64 (sqrt.f64 2) (*.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 2) (sqrt.f64 1/2)))
(*.f64 (sqrt.f64 1/2) (*.f64 (sqrt.f64 2) (pow.f64 (/.f64 im (sqrt.f64 re)) 2)))
(*.f64 (*.f64 (cbrt.f64 (*.f64 im im)) (/.f64 im re)) (cbrt.f64 im))
(*.f64 (cbrt.f64 im) (*.f64 (/.f64 im re) (cbrt.f64 (*.f64 im im))))
(*.f64 im (/.f64 (*.f64 (cbrt.f64 im) (cbrt.f64 (*.f64 im im))) re))
(*.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (cbrt.f64 (*.f64 im (/.f64 im re)))) (cbrt.f64 (/.f64 im (sqrt.f64 re))))
(*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (*.f64 (/.f64 im (sqrt.f64 re)) (cbrt.f64 (*.f64 im (/.f64 im re)))))
(*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (pow.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) 4))
(*.f64 (*.f64 2 (cbrt.f64 (*.f64 1/2 (*.f64 im (/.f64 im re))))) (pow.f64 (cbrt.f64 (*.f64 1/2 (*.f64 im (/.f64 im re)))) 2))
(*.f64 im (/.f64 im re))
(*.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 1/2))) (sqrt.f64 2))
(*.f64 (sqrt.f64 2) (*.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 2) (sqrt.f64 1/2)))
(*.f64 (sqrt.f64 1/2) (*.f64 (sqrt.f64 2) (pow.f64 (/.f64 im (sqrt.f64 re)) 2)))
(*.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (cbrt.f64 (/.f64 im (sqrt.f64 re)))) (cbrt.f64 (*.f64 im (/.f64 im re))))
(*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (*.f64 (/.f64 im (sqrt.f64 re)) (cbrt.f64 (*.f64 im (/.f64 im re)))))
(*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (pow.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) 4))
(*.f64 (/.f64 im 1) (/.f64 im re))
(*.f64 im (/.f64 im re))
(*.f64 (/.f64 im (sqrt.f64 (/.f64 re im))) (/.f64 (sqrt.f64 im) (sqrt.f64 re)))
(*.f64 (sqrt.f64 im) (/.f64 (/.f64 im (sqrt.f64 (/.f64 re im))) (sqrt.f64 re)))
(*.f64 (/.f64 (sqrt.f64 im) (sqrt.f64 re)) (/.f64 im (sqrt.f64 (/.f64 re im))))
(*.f64 (/.f64 im (pow.f64 (cbrt.f64 re) 2)) (/.f64 im (cbrt.f64 re)))
(*.f64 (/.f64 im (cbrt.f64 re)) (/.f64 im (pow.f64 (cbrt.f64 re) 2)))
(/.f64 im (/.f64 (pow.f64 (cbrt.f64 re) 2) (/.f64 im (cbrt.f64 re))))
(*.f64 (/.f64 1 re) (*.f64 im im))
(*.f64 im (/.f64 im re))
(*.f64 (/.f64 1 re) (*.f64 (/.f64 im 1) im))
(*.f64 im (/.f64 im re))
(*.f64 (/.f64 (sqrt.f64 im) (sqrt.f64 re)) (/.f64 im (sqrt.f64 (/.f64 re im))))
(*.f64 (sqrt.f64 im) (/.f64 (/.f64 im (sqrt.f64 (/.f64 re im))) (sqrt.f64 re)))
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 (/.f64 re im)) 2)) (/.f64 im (cbrt.f64 (/.f64 re im))))
(*.f64 im (/.f64 im re))
(*.f64 (*.f64 (/.f64 im 1) im) (/.f64 1 re))
(*.f64 im (/.f64 im re))
(*.f64 (/.f64 im (cbrt.f64 (/.f64 re im))) (/.f64 1 (pow.f64 (cbrt.f64 (/.f64 re im)) 2)))
(*.f64 im (/.f64 im re))
(*.f64 (/.f64 1 (neg.f64 re)) (neg.f64 (*.f64 im im)))
(*.f64 im (/.f64 im re))
(*.f64 (/.f64 (sqrt.f64 im) re) (*.f64 (/.f64 im 1) (sqrt.f64 im)))
(*.f64 im (/.f64 im re))
(*.f64 (*.f64 (/.f64 im 1) (sqrt.f64 im)) (/.f64 (sqrt.f64 im) re))
(*.f64 im (/.f64 im re))
(*.f64 (/.f64 (sqrt.f64 im) 1) (*.f64 (sqrt.f64 im) (/.f64 im re)))
(*.f64 im (/.f64 im re))
(*.f64 (*.f64 (sqrt.f64 im) (/.f64 im re)) (sqrt.f64 im))
(*.f64 im (/.f64 im re))
(*.f64 (*.f64 (sqrt.f64 im) (/.f64 im re)) (/.f64 (sqrt.f64 im) 1))
(*.f64 im (/.f64 im re))
(*.f64 (/.f64 (sqrt.f64 im) (pow.f64 (cbrt.f64 (/.f64 re im)) 2)) (/.f64 (sqrt.f64 im) (cbrt.f64 (/.f64 re im))))
(*.f64 im (/.f64 im re))
(*.f64 (/.f64 (sqrt.f64 im) (cbrt.f64 (/.f64 re im))) (/.f64 (sqrt.f64 im) (pow.f64 (cbrt.f64 (/.f64 re im)) 2)))
(*.f64 im (/.f64 im re))
(*.f64 (/.f64 (cbrt.f64 (*.f64 im im)) re) (*.f64 (/.f64 im 1) (cbrt.f64 im)))
(*.f64 (cbrt.f64 im) (*.f64 (/.f64 im re) (cbrt.f64 (*.f64 im im))))
(*.f64 im (/.f64 (*.f64 (cbrt.f64 im) (cbrt.f64 (*.f64 im im))) re))
(*.f64 (*.f64 (/.f64 im 1) (cbrt.f64 im)) (/.f64 (cbrt.f64 (*.f64 im im)) re))
(*.f64 (cbrt.f64 im) (*.f64 (/.f64 im re) (cbrt.f64 (*.f64 im im))))
(*.f64 im (/.f64 (*.f64 (cbrt.f64 im) (cbrt.f64 (*.f64 im im))) re))
(*.f64 (/.f64 (cbrt.f64 (*.f64 im im)) 1) (*.f64 (cbrt.f64 im) (/.f64 im re)))
(*.f64 (cbrt.f64 im) (*.f64 (/.f64 im re) (cbrt.f64 (*.f64 im im))))
(*.f64 im (/.f64 (*.f64 (cbrt.f64 im) (cbrt.f64 (*.f64 im im))) re))
(*.f64 (*.f64 (cbrt.f64 im) (/.f64 im re)) (cbrt.f64 (*.f64 im im)))
(*.f64 (cbrt.f64 im) (*.f64 (/.f64 im re) (cbrt.f64 (*.f64 im im))))
(*.f64 im (/.f64 (*.f64 (cbrt.f64 im) (cbrt.f64 (*.f64 im im))) re))
(*.f64 (*.f64 (cbrt.f64 im) (/.f64 im re)) (/.f64 (cbrt.f64 (*.f64 im im)) 1))
(*.f64 (cbrt.f64 im) (*.f64 (/.f64 im re) (cbrt.f64 (*.f64 im im))))
(*.f64 im (/.f64 (*.f64 (cbrt.f64 im) (cbrt.f64 (*.f64 im im))) re))
(*.f64 (/.f64 (cbrt.f64 (*.f64 im im)) (sqrt.f64 (/.f64 re im))) (/.f64 (cbrt.f64 im) (sqrt.f64 (/.f64 re im))))
(*.f64 (/.f64 (cbrt.f64 im) (sqrt.f64 (/.f64 re im))) (/.f64 (cbrt.f64 (*.f64 im im)) (sqrt.f64 (/.f64 re im))))
(*.f64 (/.f64 (cbrt.f64 (*.f64 im im)) (sqrt.f64 (/.f64 re im))) (/.f64 (cbrt.f64 im) (sqrt.f64 (/.f64 re im))))
(*.f64 (/.f64 1 (/.f64 (cbrt.f64 (/.f64 re im)) (/.f64 im (cbrt.f64 re)))) (cbrt.f64 (*.f64 im (/.f64 im re))))
(/.f64 (*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 1) (/.f64 (cbrt.f64 (/.f64 re im)) (/.f64 im (cbrt.f64 re))))
(*.f64 (/.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (cbrt.f64 (/.f64 re im))) (/.f64 im (cbrt.f64 re)))
(*.f64 (/.f64 im (neg.f64 re)) (neg.f64 im))
(*.f64 im (/.f64 im re))
(*.f64 (/.f64 im (/.f64 re (sqrt.f64 im))) (sqrt.f64 im))
(*.f64 im (/.f64 im re))
(*.f64 (/.f64 (cbrt.f64 (*.f64 im im)) (/.f64 re im)) (cbrt.f64 im))
(*.f64 (cbrt.f64 im) (*.f64 (/.f64 im re) (cbrt.f64 (*.f64 im im))))
(*.f64 im (/.f64 (*.f64 (cbrt.f64 im) (cbrt.f64 (*.f64 im im))) re))
(*.f64 (/.f64 im -1) (/.f64 im (neg.f64 re)))
(*.f64 im (/.f64 im re))
(*.f64 (/.f64 im (/.f64 re (cbrt.f64 (*.f64 im im)))) (cbrt.f64 im))
(*.f64 (cbrt.f64 im) (*.f64 (/.f64 im re) (cbrt.f64 (*.f64 im im))))
(*.f64 im (/.f64 (*.f64 (cbrt.f64 im) (cbrt.f64 (*.f64 im im))) re))
(*.f64 (/.f64 1 (/.f64 re (*.f64 im (cbrt.f64 (*.f64 im im))))) (cbrt.f64 im))
(*.f64 (cbrt.f64 im) (*.f64 (/.f64 im re) (cbrt.f64 (*.f64 im im))))
(*.f64 im (/.f64 (*.f64 (cbrt.f64 im) (cbrt.f64 (*.f64 im im))) re))
(*.f64 (/.f64 (/.f64 im re) (/.f64 1 (sqrt.f64 im))) (sqrt.f64 im))
(*.f64 im (/.f64 im re))
(*.f64 (/.f64 (/.f64 im re) (/.f64 1 (cbrt.f64 (*.f64 im im)))) (cbrt.f64 im))
(*.f64 (cbrt.f64 im) (*.f64 (/.f64 im re) (cbrt.f64 (*.f64 im im))))
(*.f64 im (/.f64 (*.f64 (cbrt.f64 im) (cbrt.f64 (*.f64 im im))) re))
(*.f64 (/.f64 (/.f64 im re) -1) (neg.f64 im))
(*.f64 im (/.f64 im re))
(*.f64 (/.f64 (neg.f64 im) -1) (/.f64 im re))
(*.f64 im (/.f64 im re))
(*.f64 (/.f64 (*.f64 2 (*.f64 1/2 im)) re) im)
(*.f64 im (/.f64 im re))
(*.f64 (/.f64 (*.f64 2 (*.f64 1/2 im)) 1) (/.f64 im re))
(*.f64 im (/.f64 im re))
(*.f64 (/.f64 (*.f64 2 (*.f64 1/2 im)) (sqrt.f64 re)) (/.f64 im (sqrt.f64 re)))
(pow.f64 (/.f64 im (sqrt.f64 re)) 2)
(*.f64 (/.f64 (*.f64 2 (*.f64 1/2 im)) (pow.f64 (cbrt.f64 re) 2)) (/.f64 im (cbrt.f64 re)))
(*.f64 (/.f64 im (cbrt.f64 re)) (/.f64 im (pow.f64 (cbrt.f64 re) 2)))
(/.f64 im (/.f64 (pow.f64 (cbrt.f64 re) 2) (/.f64 im (cbrt.f64 re))))
(*.f64 (/.f64 (*.f64 2 (*.f64 1/2 im)) (neg.f64 re)) (neg.f64 im))
(*.f64 im (/.f64 im re))
(*.f64 (/.f64 (*.f64 2 (*.f64 1/2 im)) (/.f64 re 1)) im)
(*.f64 im (/.f64 im re))
(*.f64 (/.f64 (*.f64 2 (*.f64 1/2 im)) (/.f64 re (sqrt.f64 im))) (sqrt.f64 im))
(*.f64 im (/.f64 im re))
(*.f64 (/.f64 (*.f64 2 (*.f64 1/2 im)) (/.f64 re (cbrt.f64 (*.f64 im im)))) (cbrt.f64 im))
(*.f64 (cbrt.f64 im) (*.f64 (/.f64 im re) (cbrt.f64 (*.f64 im im))))
(*.f64 im (/.f64 (*.f64 (cbrt.f64 im) (cbrt.f64 (*.f64 im im))) re))
(*.f64 (/.f64 (*.f64 2 (*.f64 1/2 im)) -1) (/.f64 im (neg.f64 re)))
(*.f64 im (/.f64 im re))
(*.f64 (/.f64 (/.f64 im 1) 1) (/.f64 im re))
(*.f64 im (/.f64 im re))
(*.f64 (/.f64 (/.f64 im 1) (sqrt.f64 re)) (/.f64 im (sqrt.f64 re)))
(pow.f64 (/.f64 im (sqrt.f64 re)) 2)
(*.f64 (/.f64 (/.f64 im 1) (pow.f64 (cbrt.f64 re) 2)) (/.f64 im (cbrt.f64 re)))
(*.f64 (/.f64 im (cbrt.f64 re)) (/.f64 im (pow.f64 (cbrt.f64 re) 2)))
(/.f64 im (/.f64 (pow.f64 (cbrt.f64 re) 2) (/.f64 im (cbrt.f64 re))))
(*.f64 (/.f64 (/.f64 im 1) (neg.f64 re)) (neg.f64 im))
(*.f64 im (/.f64 im re))
(*.f64 (/.f64 (/.f64 im 1) (/.f64 re 1)) im)
(*.f64 im (/.f64 im re))
(*.f64 (/.f64 (/.f64 im 1) (/.f64 re (sqrt.f64 im))) (sqrt.f64 im))
(*.f64 im (/.f64 im re))
(*.f64 (/.f64 (/.f64 im 1) (/.f64 re (cbrt.f64 (*.f64 im im)))) (cbrt.f64 im))
(*.f64 (cbrt.f64 im) (*.f64 (/.f64 im re) (cbrt.f64 (*.f64 im im))))
(*.f64 im (/.f64 (*.f64 (cbrt.f64 im) (cbrt.f64 (*.f64 im im))) re))
(*.f64 (/.f64 (/.f64 im 1) -1) (/.f64 im (neg.f64 re)))
(*.f64 im (/.f64 im re))
(*.f64 (/.f64 (/.f64 im (sqrt.f64 (/.f64 re im))) 1) (sqrt.f64 (/.f64 im re)))
(*.f64 (sqrt.f64 (/.f64 im re)) (/.f64 im (sqrt.f64 (/.f64 re im))))
(*.f64 (/.f64 (/.f64 im (sqrt.f64 (/.f64 re im))) (sqrt.f64 re)) (sqrt.f64 im))
(*.f64 (sqrt.f64 im) (/.f64 (/.f64 im (sqrt.f64 (/.f64 re im))) (sqrt.f64 re)))
(*.f64 (/.f64 (sqrt.f64 im) (sqrt.f64 re)) (/.f64 im (sqrt.f64 (/.f64 re im))))
(*.f64 (/.f64 (/.f64 im (sqrt.f64 (/.f64 re im))) (sqrt.f64 (neg.f64 re))) (sqrt.f64 (neg.f64 im)))
(*.f64 (sqrt.f64 (neg.f64 im)) (/.f64 (/.f64 im (sqrt.f64 (/.f64 re im))) (sqrt.f64 (neg.f64 re))))
(*.f64 (sqrt.f64 (neg.f64 im)) (/.f64 im (*.f64 (sqrt.f64 (neg.f64 re)) (sqrt.f64 (/.f64 re im)))))
(*.f64 (/.f64 (/.f64 im (pow.f64 (cbrt.f64 (/.f64 re im)) 2)) 1) (cbrt.f64 (/.f64 im re)))
(*.f64 (/.f64 im (pow.f64 (cbrt.f64 (/.f64 re im)) 2)) (cbrt.f64 (/.f64 im re)))
(*.f64 (/.f64 (/.f64 im (pow.f64 (cbrt.f64 (/.f64 re im)) 2)) (cbrt.f64 re)) (cbrt.f64 im))
(/.f64 (*.f64 (/.f64 im (pow.f64 (cbrt.f64 (/.f64 re im)) 2)) (cbrt.f64 im)) (cbrt.f64 re))
(/.f64 (*.f64 im (cbrt.f64 im)) (*.f64 (pow.f64 (cbrt.f64 (/.f64 re im)) 2) (cbrt.f64 re)))
(*.f64 (/.f64 (/.f64 im (pow.f64 (cbrt.f64 (/.f64 re im)) 2)) (cbrt.f64 (neg.f64 re))) (cbrt.f64 (neg.f64 im)))
(/.f64 (/.f64 (*.f64 im (cbrt.f64 (neg.f64 im))) (pow.f64 (cbrt.f64 (/.f64 re im)) 2)) (cbrt.f64 (neg.f64 re)))
(*.f64 (*.f64 (pow.f64 (/.f64 im re) 1/2) (pow.f64 (/.f64 im re) 1/2)) im)
(*.f64 im (/.f64 im re))
(*.f64 (*.f64 (pow.f64 1 1/2) (pow.f64 1 1/2)) (*.f64 im (/.f64 im re)))
(*.f64 im (/.f64 im re))
(*.f64 (*.f64 (pow.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2) 1/2) (pow.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2) 1/2)) (*.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 1/2) (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 1/2)))
(*.f64 im (/.f64 im re))
(*.f64 (*.f64 (sqrt.f64 im) (/.f64 (sqrt.f64 im) (sqrt.f64 re))) (*.f64 (sqrt.f64 im) (/.f64 (sqrt.f64 im) (sqrt.f64 re))))
(pow.f64 (/.f64 im (sqrt.f64 re)) 2)
(*.f64 (*.f64 (sqrt.f64 (cbrt.f64 (*.f64 im (/.f64 im re)))) (cbrt.f64 (*.f64 im (/.f64 im re)))) (*.f64 (sqrt.f64 (cbrt.f64 (*.f64 im (/.f64 im re)))) (cbrt.f64 (*.f64 im (/.f64 im re)))))
(*.f64 im (/.f64 im re))
(*.f64 (*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2))) (*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2))))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2) 1) (*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (cbrt.f64 (/.f64 im (sqrt.f64 re)))))
(*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2)))
(*.f64 (*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2)) (cbrt.f64 (/.f64 im (sqrt.f64 re)))) (*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2)) (cbrt.f64 (/.f64 im (sqrt.f64 re)))))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2) 1) (*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (cbrt.f64 (/.f64 im (sqrt.f64 re)))))
(*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2)))
(*.f64 (*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (sqrt.f64 (cbrt.f64 (*.f64 im (/.f64 im re))))) (*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (sqrt.f64 (cbrt.f64 (*.f64 im (/.f64 im re))))))
(*.f64 im (/.f64 im re))
(pow.f64 (*.f64 im (/.f64 im re)) 1)
(*.f64 im (/.f64 im re))
(pow.f64 (/.f64 im (sqrt.f64 re)) 2)
(pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 3)
(*.f64 im (/.f64 im re))
(pow.f64 (pow.f64 (*.f64 im (/.f64 im re)) 2) 1/2)
(sqrt.f64 (pow.f64 (*.f64 im (/.f64 im re)) 2))
(fabs.f64 (*.f64 im (/.f64 im re)))
(pow.f64 (pow.f64 (*.f64 im (/.f64 im re)) 3) 1/3)
(*.f64 im (/.f64 im re))
(pow.f64 (/.f64 re (*.f64 im im)) -1)
(*.f64 im (/.f64 im re))
(neg.f64 (*.f64 (/.f64 im re) (neg.f64 im)))
(*.f64 im (/.f64 im re))
(neg.f64 (/.f64 (neg.f64 im) (/.f64 re im)))
(*.f64 im (/.f64 im re))
(neg.f64 (*.f64 im (/.f64 im (neg.f64 re))))
(*.f64 im (/.f64 im re))
(neg.f64 (*.f64 (*.f64 (/.f64 im re) (neg.f64 im)) 1))
(*.f64 im (/.f64 im re))
(neg.f64 (*.f64 1 (*.f64 (/.f64 im re) (neg.f64 im))))
(*.f64 im (/.f64 im re))
(sqrt.f64 (pow.f64 (*.f64 im (/.f64 im re)) 2))
(fabs.f64 (*.f64 im (/.f64 im re)))
(log.f64 (pow.f64 (exp.f64 im) (/.f64 im re)))
(*.f64 im (/.f64 im re))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 im (/.f64 im re)))))
(*.f64 im (/.f64 im re))
(cbrt.f64 (pow.f64 (*.f64 im (/.f64 im re)) 3))
(*.f64 im (/.f64 im re))
(cbrt.f64 (/.f64 (pow.f64 im 3) (pow.f64 (/.f64 re im) 3)))
(*.f64 im (/.f64 im re))
(expm1.f64 (log1p.f64 (*.f64 im (/.f64 im re))))
(*.f64 im (/.f64 im re))
(exp.f64 (log.f64 (*.f64 im (/.f64 im re))))
(*.f64 im (/.f64 im re))
(log1p.f64 (expm1.f64 (*.f64 im (/.f64 im re))))
(*.f64 im (/.f64 im re))
(-.f64 (exp.f64 (log1p.f64 (*.f64 im (/.f64 im re)))) 1)
(*.f64 im (/.f64 im re))
(/.f64 2 (/.f64 re (*.f64 (*.f64 1/2 im) im)))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(/.f64 (/.f64 im (sqrt.f64 re)) (*.f64 (sqrt.f64 re) (/.f64 1 im)))
(pow.f64 (/.f64 im (sqrt.f64 re)) 2)
(/.f64 1 (/.f64 re (*.f64 im im)))
(*.f64 im (/.f64 im re))
(/.f64 1 (/.f64 (/.f64 re (*.f64 im (cbrt.f64 im))) (cbrt.f64 (*.f64 im im))))
(*.f64 (cbrt.f64 im) (*.f64 (/.f64 im re) (cbrt.f64 (*.f64 im im))))
(*.f64 im (/.f64 (*.f64 (cbrt.f64 im) (cbrt.f64 (*.f64 im im))) re))
(/.f64 (sqrt.f64 im) (/.f64 re (*.f64 im (sqrt.f64 im))))
(*.f64 im (/.f64 im re))
(/.f64 (sqrt.f64 im) (/.f64 (/.f64 re (neg.f64 im)) (neg.f64 (sqrt.f64 im))))
(*.f64 (/.f64 (sqrt.f64 im) (/.f64 re (neg.f64 im))) (neg.f64 (sqrt.f64 im)))
(*.f64 (sqrt.f64 im) (/.f64 (neg.f64 (sqrt.f64 im)) (/.f64 re (neg.f64 im))))
(/.f64 (sqrt.f64 im) (*.f64 (/.f64 1 im) (/.f64 re (sqrt.f64 im))))
(*.f64 im (/.f64 im re))
(/.f64 (cbrt.f64 im) (/.f64 re (*.f64 im (cbrt.f64 (*.f64 im im)))))
(*.f64 (cbrt.f64 im) (*.f64 (/.f64 im re) (cbrt.f64 (*.f64 im im))))
(*.f64 im (/.f64 (*.f64 (cbrt.f64 im) (cbrt.f64 (*.f64 im im))) re))
(/.f64 (cbrt.f64 im) (/.f64 (/.f64 re (*.f64 im (sqrt.f64 im))) (cbrt.f64 (sqrt.f64 im))))
(*.f64 (/.f64 (cbrt.f64 im) (/.f64 (/.f64 re im) (sqrt.f64 im))) (cbrt.f64 (sqrt.f64 im)))
(/.f64 (*.f64 (cbrt.f64 im) (cbrt.f64 (sqrt.f64 im))) (/.f64 (/.f64 re im) (sqrt.f64 im)))
(/.f64 (cbrt.f64 im) (/.f64 (/.f64 re (*.f64 im (cbrt.f64 im))) (cbrt.f64 im)))
(*.f64 (/.f64 (cbrt.f64 im) (/.f64 re (*.f64 im (cbrt.f64 im)))) (cbrt.f64 im))
(*.f64 (cbrt.f64 im) (*.f64 (/.f64 (cbrt.f64 im) (/.f64 re im)) (cbrt.f64 im)))
(/.f64 (cbrt.f64 (*.f64 im im)) (/.f64 re (*.f64 im (cbrt.f64 im))))
(*.f64 (cbrt.f64 im) (*.f64 (/.f64 im re) (cbrt.f64 (*.f64 im im))))
(*.f64 im (/.f64 (*.f64 (cbrt.f64 im) (cbrt.f64 (*.f64 im im))) re))
(/.f64 (cbrt.f64 (*.f64 im im)) (/.f64 (/.f64 re (neg.f64 im)) (neg.f64 (cbrt.f64 im))))
(*.f64 (/.f64 (cbrt.f64 (*.f64 im im)) (/.f64 re (neg.f64 im))) (neg.f64 (cbrt.f64 im)))
(*.f64 (/.f64 (cbrt.f64 (*.f64 im im)) re) (*.f64 (neg.f64 im) (neg.f64 (cbrt.f64 im))))
(/.f64 (cbrt.f64 (*.f64 im im)) (*.f64 (/.f64 1 im) (/.f64 re (cbrt.f64 im))))
(*.f64 (cbrt.f64 im) (*.f64 (/.f64 im re) (cbrt.f64 (*.f64 im im))))
(*.f64 im (/.f64 (*.f64 (cbrt.f64 im) (cbrt.f64 (*.f64 im im))) re))
(/.f64 (*.f64 im im) re)
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 1/2 im) (/.f64 (/.f64 re im) 2))
(*.f64 im (/.f64 im re))
(/.f64 (/.f64 im re) (/.f64 1 im))
(*.f64 im (/.f64 im re))
(/.f64 (neg.f64 im) (/.f64 re (neg.f64 im)))
(*.f64 im (/.f64 im re))
(/.f64 (sqrt.f64 (/.f64 im re)) (/.f64 (/.f64 1 im) (sqrt.f64 (/.f64 im re))))
(*.f64 im (/.f64 im re))
(/.f64 (sqrt.f64 (sqrt.f64 im)) (/.f64 (/.f64 re (*.f64 im (sqrt.f64 im))) (sqrt.f64 (sqrt.f64 im))))
(*.f64 (/.f64 (sqrt.f64 (sqrt.f64 im)) (/.f64 (/.f64 re im) (sqrt.f64 im))) (sqrt.f64 (sqrt.f64 im)))
(*.f64 (sqrt.f64 (sqrt.f64 im)) (*.f64 (/.f64 (sqrt.f64 (sqrt.f64 im)) re) (*.f64 im (sqrt.f64 im))))
(/.f64 (sqrt.f64 (neg.f64 im)) (/.f64 (/.f64 re (neg.f64 im)) (sqrt.f64 (neg.f64 im))))
(*.f64 (/.f64 (sqrt.f64 (neg.f64 im)) (/.f64 re (neg.f64 im))) (sqrt.f64 (neg.f64 im)))
(*.f64 (/.f64 (sqrt.f64 (neg.f64 im)) re) (*.f64 (neg.f64 im) (sqrt.f64 (neg.f64 im))))
(/.f64 (sqrt.f64 (cbrt.f64 (*.f64 im im))) (/.f64 (/.f64 re (*.f64 im (sqrt.f64 im))) (sqrt.f64 (cbrt.f64 im))))
(*.f64 (/.f64 (sqrt.f64 (cbrt.f64 (*.f64 im im))) (/.f64 (/.f64 re im) (sqrt.f64 im))) (sqrt.f64 (cbrt.f64 im)))
(*.f64 (sqrt.f64 (cbrt.f64 im)) (/.f64 (sqrt.f64 (cbrt.f64 (*.f64 im im))) (/.f64 (/.f64 re im) (sqrt.f64 im))))
(/.f64 (sqrt.f64 (cbrt.f64 (*.f64 im im))) (/.f64 (/.f64 re (*.f64 im (cbrt.f64 im))) (sqrt.f64 (cbrt.f64 (*.f64 im im)))))
(*.f64 (/.f64 (sqrt.f64 (cbrt.f64 (*.f64 im im))) (/.f64 re (*.f64 im (cbrt.f64 im)))) (sqrt.f64 (cbrt.f64 (*.f64 im im))))
(*.f64 (sqrt.f64 (cbrt.f64 (*.f64 im im))) (*.f64 (/.f64 (sqrt.f64 (cbrt.f64 (*.f64 im im))) re) (*.f64 im (cbrt.f64 im))))
(/.f64 (*.f64 (cbrt.f64 (/.f64 im re)) (cbrt.f64 (/.f64 im re))) (/.f64 (/.f64 1 im) (cbrt.f64 (/.f64 im re))))
(*.f64 (/.f64 (*.f64 (cbrt.f64 (/.f64 im re)) (cbrt.f64 (/.f64 im re))) (/.f64 1 im)) (cbrt.f64 (/.f64 im re)))
(*.f64 (cbrt.f64 (/.f64 im re)) (/.f64 (cbrt.f64 (/.f64 im re)) (/.f64 (/.f64 1 im) (cbrt.f64 (/.f64 im re)))))
(/.f64 (*.f64 (cbrt.f64 (neg.f64 im)) (cbrt.f64 (neg.f64 im))) (/.f64 (/.f64 re (neg.f64 im)) (cbrt.f64 (neg.f64 im))))
(*.f64 (/.f64 (*.f64 (cbrt.f64 (neg.f64 im)) (cbrt.f64 (neg.f64 im))) (/.f64 re (neg.f64 im))) (cbrt.f64 (neg.f64 im)))
(/.f64 (cbrt.f64 (neg.f64 im)) (/.f64 (/.f64 re (*.f64 (neg.f64 im) (cbrt.f64 (neg.f64 im)))) (cbrt.f64 (neg.f64 im))))
(/.f64 (*.f64 (cbrt.f64 (cbrt.f64 (*.f64 im im))) (cbrt.f64 (cbrt.f64 (*.f64 im im)))) (/.f64 (/.f64 re (*.f64 im (cbrt.f64 im))) (cbrt.f64 (cbrt.f64 (*.f64 im im)))))
(*.f64 (/.f64 (*.f64 (cbrt.f64 (cbrt.f64 (*.f64 im im))) (cbrt.f64 (cbrt.f64 (*.f64 im im)))) (/.f64 re (*.f64 im (cbrt.f64 im)))) (cbrt.f64 (cbrt.f64 (*.f64 im im))))
(*.f64 (cbrt.f64 (cbrt.f64 (*.f64 im im))) (/.f64 (cbrt.f64 (cbrt.f64 (*.f64 im im))) (/.f64 re (*.f64 (*.f64 im (cbrt.f64 im)) (cbrt.f64 (cbrt.f64 (*.f64 im im)))))))
(/.f64 (*.f64 im (sqrt.f64 im)) (/.f64 re (sqrt.f64 im)))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 (cbrt.f64 (*.f64 im im)) (cbrt.f64 (*.f64 im im))) (/.f64 re (cbrt.f64 (*.f64 im im))))
(*.f64 (/.f64 (*.f64 (cbrt.f64 (*.f64 im im)) (cbrt.f64 (*.f64 im im))) re) (cbrt.f64 (*.f64 im im)))
(*.f64 (cbrt.f64 (*.f64 im im)) (/.f64 (cbrt.f64 (*.f64 im im)) (/.f64 re (cbrt.f64 (*.f64 im im)))))
(/.f64 (*.f64 im (cbrt.f64 (*.f64 im im))) (/.f64 re (cbrt.f64 im)))
(*.f64 (cbrt.f64 im) (*.f64 (/.f64 im re) (cbrt.f64 (*.f64 im im))))
(*.f64 im (/.f64 (*.f64 (cbrt.f64 im) (cbrt.f64 (*.f64 im im))) re))
(/.f64 (*.f64 2 (*.f64 1/2 im)) (/.f64 re im))
(*.f64 im (/.f64 im re))
(/.f64 (/.f64 im 1) (/.f64 re im))
(*.f64 im (/.f64 im re))
(/.f64 (/.f64 im (sqrt.f64 (/.f64 re im))) (sqrt.f64 (/.f64 re im)))
(*.f64 im (/.f64 im re))
(/.f64 (/.f64 im (pow.f64 (cbrt.f64 (/.f64 re im)) 2)) (cbrt.f64 (/.f64 re im)))
(*.f64 im (/.f64 im re))
(/.f64 (/.f64 im (pow.f64 (cbrt.f64 re) 2)) (*.f64 (cbrt.f64 re) (/.f64 1 im)))
(*.f64 (/.f64 im (cbrt.f64 re)) (/.f64 im (pow.f64 (cbrt.f64 re) 2)))
(/.f64 im (/.f64 (pow.f64 (cbrt.f64 re) 2) (/.f64 im (cbrt.f64 re))))
(/.f64 (/.f64 1 re) (*.f64 (/.f64 1 im) (/.f64 1 im)))
(*.f64 im (/.f64 im re))
(/.f64 (/.f64 1 re) (/.f64 1 (*.f64 im im)))
(*.f64 im (/.f64 im re))
(/.f64 (/.f64 (sqrt.f64 im) (sqrt.f64 re)) (/.f64 (/.f64 1 im) (/.f64 (sqrt.f64 im) (sqrt.f64 re))))
(pow.f64 (/.f64 im (sqrt.f64 re)) 2)
(/.f64 (/.f64 (sqrt.f64 im) (sqrt.f64 re)) (*.f64 (/.f64 1 im) (sqrt.f64 (/.f64 re im))))
(*.f64 (sqrt.f64 im) (/.f64 (/.f64 im (sqrt.f64 (/.f64 re im))) (sqrt.f64 re)))
(*.f64 (/.f64 (sqrt.f64 im) (sqrt.f64 re)) (/.f64 im (sqrt.f64 (/.f64 re im))))
(/.f64 (/.f64 1 (pow.f64 (cbrt.f64 (/.f64 re im)) 2)) (*.f64 (/.f64 1 im) (cbrt.f64 (/.f64 re im))))
(*.f64 im (/.f64 im re))
(/.f64 (/.f64 1 (neg.f64 re)) (/.f64 (/.f64 1 im) (neg.f64 im)))
(*.f64 im (/.f64 im re))
(/.f64 -1 (/.f64 re (neg.f64 (*.f64 im im))))
(*.f64 im (/.f64 im re))
(/.f64 -1 (*.f64 (/.f64 1 im) (/.f64 re (neg.f64 im))))
(*.f64 im (/.f64 im re))
(/.f64 (neg.f64 (sqrt.f64 im)) (/.f64 (/.f64 re (neg.f64 im)) (sqrt.f64 im)))
(*.f64 (/.f64 (sqrt.f64 im) (/.f64 re (neg.f64 im))) (neg.f64 (sqrt.f64 im)))
(*.f64 (sqrt.f64 im) (/.f64 (neg.f64 (sqrt.f64 im)) (/.f64 re (neg.f64 im))))
(/.f64 (neg.f64 (cbrt.f64 (*.f64 im im))) (/.f64 (/.f64 re (neg.f64 im)) (cbrt.f64 im)))
(*.f64 (/.f64 (cbrt.f64 (*.f64 im im)) (/.f64 re (neg.f64 im))) (neg.f64 (cbrt.f64 im)))
(*.f64 (/.f64 (cbrt.f64 (*.f64 im im)) re) (*.f64 (neg.f64 im) (neg.f64 (cbrt.f64 im))))
(/.f64 (/.f64 (sqrt.f64 im) 1) (/.f64 re (*.f64 im (sqrt.f64 im))))
(*.f64 im (/.f64 im re))
(/.f64 (/.f64 (cbrt.f64 (*.f64 im im)) 1) (/.f64 re (*.f64 im (cbrt.f64 im))))
(*.f64 (cbrt.f64 im) (*.f64 (/.f64 im re) (cbrt.f64 (*.f64 im im))))
(*.f64 im (/.f64 (*.f64 (cbrt.f64 im) (cbrt.f64 (*.f64 im im))) re))
(/.f64 (/.f64 1 (sqrt.f64 re)) (/.f64 (/.f64 1 im) (/.f64 im (sqrt.f64 re))))
(pow.f64 (/.f64 im (sqrt.f64 re)) 2)
(/.f64 (/.f64 1 (pow.f64 (cbrt.f64 re) 2)) (/.f64 (/.f64 1 im) (/.f64 im (cbrt.f64 re))))
(/.f64 1 (*.f64 (*.f64 (/.f64 1 (*.f64 im im)) (cbrt.f64 re)) (pow.f64 (cbrt.f64 re) 2)))
(/.f64 1 (*.f64 (pow.f64 (cbrt.f64 re) 2) (/.f64 (cbrt.f64 re) (*.f64 im im))))
(/.f64 (/.f64 (sqrt.f64 im) (pow.f64 (cbrt.f64 re) 2)) (/.f64 (/.f64 1 im) (/.f64 (sqrt.f64 im) (cbrt.f64 re))))
(*.f64 (/.f64 (/.f64 (sqrt.f64 im) (pow.f64 (cbrt.f64 re) 2)) (/.f64 1 im)) (/.f64 (sqrt.f64 im) (cbrt.f64 re)))
(/.f64 (sqrt.f64 im) (/.f64 (pow.f64 (cbrt.f64 re) 2) (/.f64 (*.f64 im (sqrt.f64 im)) (cbrt.f64 re))))
(/.f64 (/.f64 (cbrt.f64 (*.f64 im im)) (sqrt.f64 re)) (/.f64 (/.f64 1 im) (/.f64 (cbrt.f64 im) (sqrt.f64 re))))
(*.f64 (/.f64 (/.f64 (cbrt.f64 (*.f64 im im)) (sqrt.f64 re)) (/.f64 1 im)) (/.f64 (cbrt.f64 im) (sqrt.f64 re)))
(/.f64 (cbrt.f64 (*.f64 im im)) (/.f64 (sqrt.f64 re) (/.f64 (*.f64 im (cbrt.f64 im)) (sqrt.f64 re))))
(/.f64 (/.f64 (cbrt.f64 (*.f64 im im)) (pow.f64 (cbrt.f64 re) 2)) (/.f64 (/.f64 1 im) (/.f64 (cbrt.f64 im) (cbrt.f64 re))))
(*.f64 (/.f64 (/.f64 (cbrt.f64 (*.f64 im im)) (pow.f64 (cbrt.f64 re) 2)) (/.f64 1 im)) (/.f64 (cbrt.f64 im) (cbrt.f64 re)))
(/.f64 (/.f64 (cbrt.f64 (*.f64 im im)) (/.f64 (/.f64 (cbrt.f64 re) im) (cbrt.f64 im))) (pow.f64 (cbrt.f64 re) 2))
(pow.f64 (*.f64 im (/.f64 im re)) 1)
(*.f64 im (/.f64 im re))
(pow.f64 (/.f64 im (sqrt.f64 re)) 2)
(pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 3)
(*.f64 im (/.f64 im re))
(pow.f64 (pow.f64 (*.f64 im (/.f64 im re)) 2) 1/2)
(sqrt.f64 (pow.f64 (*.f64 im (/.f64 im re)) 2))
(fabs.f64 (*.f64 im (/.f64 im re)))
(pow.f64 (pow.f64 (*.f64 im (/.f64 im re)) 3) 1/3)
(*.f64 im (/.f64 im re))
(pow.f64 (/.f64 re (*.f64 im im)) -1)
(*.f64 im (/.f64 im re))
(neg.f64 (*.f64 (/.f64 im re) (neg.f64 im)))
(*.f64 im (/.f64 im re))
(neg.f64 (/.f64 (neg.f64 im) (/.f64 re im)))
(*.f64 im (/.f64 im re))
(neg.f64 (*.f64 im (/.f64 im (neg.f64 re))))
(*.f64 im (/.f64 im re))
(neg.f64 (*.f64 (*.f64 (/.f64 im re) (neg.f64 im)) 1))
(*.f64 im (/.f64 im re))
(neg.f64 (*.f64 1 (*.f64 (/.f64 im re) (neg.f64 im))))
(*.f64 im (/.f64 im re))
(sqrt.f64 (pow.f64 (*.f64 im (/.f64 im re)) 2))
(fabs.f64 (*.f64 im (/.f64 im re)))
(log.f64 (pow.f64 (exp.f64 im) (/.f64 im re)))
(*.f64 im (/.f64 im re))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 im (/.f64 im re)))))
(*.f64 im (/.f64 im re))
(cbrt.f64 (pow.f64 (*.f64 im (/.f64 im re)) 3))
(*.f64 im (/.f64 im re))
(cbrt.f64 (/.f64 (pow.f64 im 3) (pow.f64 (/.f64 re im) 3)))
(*.f64 im (/.f64 im re))
(expm1.f64 (log1p.f64 (*.f64 im (/.f64 im re))))
(*.f64 im (/.f64 im re))
(exp.f64 (log.f64 (*.f64 im (/.f64 im re))))
(*.f64 im (/.f64 im re))
(log1p.f64 (expm1.f64 (*.f64 im (/.f64 im re))))
(*.f64 im (/.f64 im re))

localize16.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(*.f64 2 (*.f64 1/2 (/.f64 (*.f64 im im) re)))
0.2b
(*.f64 1/2 (/.f64 (*.f64 im im) re))
7.0b
(/.f64 (*.f64 im im) re)
19.4b
(sqrt.f64 (*.f64 2 (*.f64 1/2 (/.f64 (*.f64 im im) re))))
Compiler

Compiled 52 to 24 computations (53.8% saved)

series2.0ms (0%)

Counts
4 → 84
Calls

24 calls:

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

rewrite140.0ms (1.6%)

Algorithm
batch-egg-rewrite
Rules
1404×associate-*r/
1234×associate-/r*
1114×associate-*l/
1026×*-commutative
910×associate-/l*
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01262
125056
2286256
Stop Event
node limit
Counts
4 → 417
Calls
Call 1
Inputs
(sqrt.f64 (*.f64 2 (*.f64 1/2 (/.f64 (*.f64 im im) re))))
(/.f64 (*.f64 im im) re)
(*.f64 1/2 (/.f64 (*.f64 im im) re))
(*.f64 2 (*.f64 1/2 (/.f64 (*.f64 im im) re)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 im (sqrt.f64 re)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 im (sqrt.f64 (pow.f64 re -1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 im (pow.f64 (pow.f64 re -1) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 im (sqrt.f64 re)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 im (sqrt.f64 re)) (pow.f64 1 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 im (sqrt.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) (sqrt.f64 (/.f64 im (sqrt.f64 re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 re)) (sqrt.f64 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 2) (/.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (cbrt.f64 (*.f64 im (/.f64 im re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (cbrt.f64 (/.f64 im (sqrt.f64 re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (cbrt.f64 (*.f64 im (/.f64 im re)))) (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (pow.f64 re -1)) im)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2)) (sqrt.f64 (cbrt.f64 (*.f64 im (/.f64 im re)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 re -1) 1/2) im)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 1/2) (/.f64 im (sqrt.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2) 1/2) (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 1/2) (pow.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 im (sqrt.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 im (/.f64 (sqrt.f64 re) 1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (sqrt.f64 (/.f64 re (*.f64 im im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (sqrt.f64 re) im))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (sqrt.f64 (/.f64 re im)) (sqrt.f64 im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 im) (sqrt.f64 (/.f64 re im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 im) (/.f64 (sqrt.f64 re) (sqrt.f64 im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (cbrt.f64 (/.f64 re (*.f64 im im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 im) (/.f64 (sqrt.f64 re) (cbrt.f64 (*.f64 im im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 im) (/.f64 (sqrt.f64 (/.f64 re im)) (cbrt.f64 (sqrt.f64 im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 (*.f64 im im)) (/.f64 (sqrt.f64 re) (cbrt.f64 im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (*.f64 im (neg.f64 im))) (sqrt.f64 (neg.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (sqrt.f64 im)) (/.f64 (sqrt.f64 (/.f64 re im)) (sqrt.f64 (sqrt.f64 im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (cbrt.f64 (*.f64 im im))) (/.f64 (sqrt.f64 (/.f64 re im)) (sqrt.f64 (cbrt.f64 im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (cbrt.f64 (pow.f64 im 4))) (/.f64 (sqrt.f64 re) (sqrt.f64 (cbrt.f64 (*.f64 im im)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 im (cbrt.f64 re)) (cbrt.f64 (sqrt.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 im 1) (sqrt.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1 (sqrt.f64 (*.f64 im (neg.f64 im)))) (sqrt.f64 (neg.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 (*.f64 1/2 (*.f64 im im)))) (sqrt.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (cbrt.f64 im)) (cbrt.f64 (/.f64 re im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (cbrt.f64 (*.f64 im im))) (cbrt.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (cbrt.f64 (*.f64 im (neg.f64 im)))) (cbrt.f64 (neg.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 1 1/2) im) (sqrt.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 1 1/2) 1) (sqrt.f64 (/.f64 re (*.f64 im im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 1 1/2) (sqrt.f64 im)) (sqrt.f64 (/.f64 re im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 1 1/2) (sqrt.f64 (*.f64 im (neg.f64 im)))) (sqrt.f64 (neg.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 (*.f64 im (neg.f64 im))) 1) (sqrt.f64 (neg.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 (*.f64 1/2 (*.f64 im im))) (sqrt.f64 2)) (sqrt.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cbrt.f64 im) (cbrt.f64 (/.f64 im (sqrt.f64 re)))) (cbrt.f64 (/.f64 re im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cbrt.f64 (*.f64 im im)) (cbrt.f64 (/.f64 im (sqrt.f64 re)))) (cbrt.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cbrt.f64 (*.f64 im (neg.f64 im))) (cbrt.f64 (/.f64 im (sqrt.f64 re)))) (cbrt.f64 (neg.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 im (sqrt.f64 (pow.f64 (cbrt.f64 re) 2))) (sqrt.f64 (cbrt.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 im (sqrt.f64 (sqrt.f64 re))) (sqrt.f64 (sqrt.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 im (/.f64 im re)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 im (sqrt.f64 re)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (/.f64 im (sqrt.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 im (sqrt.f64 re))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 im (sqrt.f64 re)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 im (sqrt.f64 re))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 im (sqrt.f64 re))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 im (sqrt.f64 re))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 im (/.f64 im re)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 1/2 (*.f64 im (/.f64 im re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 2 (*.f64 im (/.f64 im re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 im (/.f64 im re))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 im im) (pow.f64 re -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 im (/.f64 im re)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 1/2 (*.f64 im (/.f64 im re))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 im (sqrt.f64 re)) (/.f64 im (sqrt.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 im (/.f64 im re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 (/.f64 im (sqrt.f64 re)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 re)) (/.f64 (*.f64 im (sqrt.f64 2)) (sqrt.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 re)) (*.f64 2 (/.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 2) (*.f64 (/.f64 im (sqrt.f64 re)) (/.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (/.f64 (*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) im) (sqrt.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (*.f64 (/.f64 im (sqrt.f64 re)) (cbrt.f64 (/.f64 im (sqrt.f64 re)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (/.f64 (cbrt.f64 (pow.f64 im 4)) (pow.f64 (cbrt.f64 re) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2) (cbrt.f64 (*.f64 im (/.f64 im re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 1/2 (*.f64 im (/.f64 im re)))) (*.f64 2 (cbrt.f64 (*.f64 1/4 (/.f64 (pow.f64 im 4) (*.f64 re re))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 1/4 (/.f64 (pow.f64 im 4) (*.f64 re re)))) (*.f64 2 (cbrt.f64 (*.f64 1/2 (*.f64 im (/.f64 im re))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 im 4)) (/.f64 (cbrt.f64 (*.f64 im im)) re))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 re -1) (*.f64 im im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 im (neg.f64 im)) (/.f64 -1 re))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 (/.f64 im (sqrt.f64 re)))) (sqrt.f64 (/.f64 im (sqrt.f64 re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (*.f64 im (/.f64 im re))) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (cbrt.f64 (*.f64 1/4 (/.f64 (pow.f64 im 4) (*.f64 re re))))) (cbrt.f64 (*.f64 1/2 (*.f64 im (/.f64 im re)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 im (sqrt.f64 2)) (sqrt.f64 re)) (/.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) im) (sqrt.f64 re)) (cbrt.f64 (/.f64 im (sqrt.f64 re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (*.f64 im im)) re) (cbrt.f64 (pow.f64 im 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (*.f64 im im)) re) (/.f64 (cbrt.f64 (pow.f64 im 4)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (/.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 re))) (/.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (cbrt.f64 (*.f64 1/2 (*.f64 im (/.f64 im re))))) (cbrt.f64 (*.f64 1/4 (/.f64 (pow.f64 im 4) (*.f64 re re)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (/.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 re))) (sqrt.f64 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (cbrt.f64 (/.f64 im (sqrt.f64 re)))) (cbrt.f64 (*.f64 im (/.f64 im re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 im (/.f64 (sqrt.f64 re) im)) (/.f64 1 (sqrt.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sqrt.f64 re)) (/.f64 im (/.f64 (sqrt.f64 re) im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (pow.f64 (cbrt.f64 re) 2)) (/.f64 im (/.f64 (cbrt.f64 re) im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 im (/.f64 (cbrt.f64 re) im)) (/.f64 1 (pow.f64 (cbrt.f64 re) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 im re) im)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 im re) (/.f64 im 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 im (cbrt.f64 re)) (/.f64 im (pow.f64 (cbrt.f64 re) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 -1 re) (*.f64 im (neg.f64 im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 im 1) (/.f64 im re))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 im (pow.f64 (cbrt.f64 re) 2)) (/.f64 im (cbrt.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 im 4)) 1) (/.f64 (cbrt.f64 (*.f64 im im)) re))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 im 4)) (sqrt.f64 re)) (/.f64 (cbrt.f64 (*.f64 im im)) (sqrt.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (*.f64 im im)) (sqrt.f64 re)) (/.f64 (cbrt.f64 (pow.f64 im 4)) (sqrt.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 im 4)) (pow.f64 (cbrt.f64 re) 2)) (cbrt.f64 (*.f64 im (/.f64 im re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 im) (/.f64 re im)) (sqrt.f64 im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 im 4)) re) (cbrt.f64 (*.f64 im im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 im (/.f64 re (sqrt.f64 im))) (sqrt.f64 im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 im (neg.f64 re)) (neg.f64 im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 im (/.f64 re (cbrt.f64 (*.f64 im im)))) (cbrt.f64 im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (/.f64 re (cbrt.f64 (pow.f64 im 4)))) (cbrt.f64 (*.f64 im im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (*.f64 im im)) (/.f64 re im)) (cbrt.f64 im))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 im (/.f64 im re)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 im (sqrt.f64 re)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 im 4) (*.f64 re re)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 im (/.f64 im re)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 re (*.f64 im im)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 im (/.f64 (neg.f64 re) im)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (/.f64 (pow.f64 im 4) (*.f64 re re)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (*.f64 im (/.f64 im re))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 im (/.f64 im re)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 im (/.f64 im re)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 im (/.f64 im re))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 im (/.f64 im re))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 im (/.f64 im re))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 1/2 (*.f64 im (/.f64 im re))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1/2 (/.f64 re (*.f64 im im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 im (/.f64 (/.f64 re im) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 im im) (/.f64 re 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1/2 (*.f64 im (/.f64 im re))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 re (*.f64 1/2 (*.f64 im im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1/2 (*.f64 im im)) re)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1/2 (*.f64 im im)) (/.f64 re 1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 im (neg.f64 im)) (/.f64 (neg.f64 re) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (*.f64 1/2 (*.f64 im im))) (/.f64 re (sqrt.f64 (*.f64 1/2 (*.f64 im im)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cbrt.f64 (*.f64 1/2 (*.f64 im im))) (cbrt.f64 (*.f64 1/2 (*.f64 im im)))) (/.f64 re (cbrt.f64 (*.f64 1/2 (*.f64 im im)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1/2 im) (/.f64 re im))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1/2 (cbrt.f64 (pow.f64 im 4))) (/.f64 re (cbrt.f64 (*.f64 im im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re)) (sqrt.f64 (/.f64 re (*.f64 im im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 1/2 re) (/.f64 1 (*.f64 im im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1/2 (*.f64 im (neg.f64 im))) (neg.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 im im) 2) re)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 1/2 (*.f64 im im)) (sqrt.f64 re)) (sqrt.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 1/2 (*.f64 im im)) (pow.f64 (cbrt.f64 re) 2)) (cbrt.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 1/2 (*.f64 im im))) (neg.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1/2 (sqrt.f64 im)) (/.f64 (/.f64 re im) (sqrt.f64 im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1/2 (cbrt.f64 (*.f64 im im))) (/.f64 re (cbrt.f64 (pow.f64 im 4))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1/2 (*.f64 2 (*.f64 1/2 (*.f64 im im)))) re)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1/2 (/.f64 (*.f64 im im) 1)) re)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1/2 (/.f64 im (/.f64 (sqrt.f64 re) im))) (sqrt.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1/2 (/.f64 im (/.f64 (pow.f64 (cbrt.f64 re) 2) im))) (cbrt.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1/2 (neg.f64 im)) (neg.f64 (/.f64 re im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 -1/2 (neg.f64 (/.f64 re (*.f64 im im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1/2 (neg.f64 (*.f64 im (neg.f64 im)))) (neg.f64 (neg.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1 (*.f64 1/2 im)) (/.f64 re im))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1 (*.f64 1/2 (*.f64 im (neg.f64 im)))) (neg.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1 (/.f64 (*.f64 im im) 2)) re)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1 (/.f64 (*.f64 1/2 (*.f64 im im)) (sqrt.f64 re))) (sqrt.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1 (/.f64 (*.f64 1/2 (*.f64 im im)) (pow.f64 (cbrt.f64 re) 2))) (cbrt.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1 (neg.f64 (*.f64 1/2 (*.f64 im im)))) (neg.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 re)) (sqrt.f64 (*.f64 1/2 (*.f64 im im)))) (sqrt.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cbrt.f64 (*.f64 1/4 (/.f64 (pow.f64 im 4) (*.f64 re re)))) (cbrt.f64 (*.f64 1/2 (*.f64 im im)))) (cbrt.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 1/2 (*.f64 im im)) (/.f64 1 (sqrt.f64 re))) (sqrt.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 1/2 (*.f64 im im)) (/.f64 1 (pow.f64 (cbrt.f64 re) 2))) (cbrt.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 1/2 (*.f64 im im)) -1) (neg.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re)) im) (sqrt.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re)) 1) (sqrt.f64 (/.f64 re (*.f64 im im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re)) (sqrt.f64 im)) (sqrt.f64 (/.f64 re im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re)) (sqrt.f64 (*.f64 im (neg.f64 im)))) (sqrt.f64 (neg.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 1/2 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2)) 1) (cbrt.f64 (/.f64 re (*.f64 im im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 1/2 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2)) (cbrt.f64 im)) (cbrt.f64 (/.f64 re im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 1/2 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2)) (cbrt.f64 (*.f64 im im))) (cbrt.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 1/2 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2)) (cbrt.f64 (*.f64 im (neg.f64 im)))) (cbrt.f64 (neg.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 1/2 (sqrt.f64 re)) (*.f64 im im)) (sqrt.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 1/2 (pow.f64 (cbrt.f64 re) 2)) (*.f64 im im)) (cbrt.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cbrt.f64 (*.f64 im im)) 1/2) (/.f64 re (cbrt.f64 (pow.f64 im 4))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 im) 1/2) (/.f64 (/.f64 re im) (sqrt.f64 im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 2 (*.f64 1/2 (*.f64 im im))) 1/2) re)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 (*.f64 im im) 1) 1/2) re)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 im (/.f64 (sqrt.f64 re) im)) 1/2) (sqrt.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 im (/.f64 (pow.f64 (cbrt.f64 re) 2) im)) 1/2) (cbrt.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 im) 1/2) (neg.f64 (/.f64 re im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 (*.f64 im (neg.f64 im))) 1/2) (neg.f64 (neg.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 1/2 im) 1) (/.f64 re im))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 1/2 (*.f64 im (neg.f64 im))) 1) (neg.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 (*.f64 im im) 2) 1) re)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 (*.f64 1/2 (*.f64 im im)) (sqrt.f64 re)) 1) (sqrt.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 (*.f64 1/2 (*.f64 im im)) (pow.f64 (cbrt.f64 re) 2)) 1) (cbrt.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 (*.f64 1/2 (*.f64 im im))) 1) (neg.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 im (/.f64 (*.f64 1/2 im) (sqrt.f64 re))) (sqrt.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1 (/.f64 (*.f64 1/2 im) (sqrt.f64 re))) (sqrt.f64 (/.f64 re (*.f64 im im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 im) (/.f64 (*.f64 1/2 im) (sqrt.f64 re))) (sqrt.f64 (/.f64 re im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 (*.f64 im (neg.f64 im))) (/.f64 (*.f64 1/2 im) (sqrt.f64 re))) (sqrt.f64 (neg.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 (*.f64 1/2 (*.f64 im im))) (/.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 re))) (sqrt.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cbrt.f64 (*.f64 1/2 (*.f64 im im))) (cbrt.f64 (*.f64 1/4 (/.f64 (pow.f64 im 4) (*.f64 re re))))) (cbrt.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1/2 (/.f64 im (/.f64 (cbrt.f64 re) im))) (pow.f64 (cbrt.f64 re) 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 1/2 (*.f64 im im)) (cbrt.f64 re)) (pow.f64 (cbrt.f64 re) 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 1/2 (*.f64 (cbrt.f64 (/.f64 re (*.f64 im im))) (cbrt.f64 (/.f64 re (*.f64 im im))))) (cbrt.f64 (/.f64 re (*.f64 im im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 1/2 (/.f64 1 im)) (/.f64 re im))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 1/2 (/.f64 1 (cbrt.f64 (pow.f64 im 4)))) (/.f64 re (cbrt.f64 (*.f64 im im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 1/2 (/.f64 (sqrt.f64 re) im)) (/.f64 (sqrt.f64 re) im))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 1/2 (/.f64 (sqrt.f64 re) 1)) (/.f64 (sqrt.f64 re) (*.f64 im im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 1/2 (/.f64 (sqrt.f64 re) (cbrt.f64 (pow.f64 im 4)))) (/.f64 (sqrt.f64 re) (cbrt.f64 (*.f64 im im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 1/2 (/.f64 (pow.f64 (cbrt.f64 re) 2) im)) (/.f64 (cbrt.f64 re) im))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 1/2 (/.f64 (pow.f64 (cbrt.f64 re) 2) 1)) (/.f64 (cbrt.f64 re) (*.f64 im im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 1/2 (/.f64 (pow.f64 (cbrt.f64 re) 2) (cbrt.f64 (pow.f64 im 4)))) (/.f64 (cbrt.f64 re) (cbrt.f64 (*.f64 im im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 1/2 im) re) (/.f64 1 im))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 1/2 im) 1) (/.f64 re im))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 (/.f64 re im))) (sqrt.f64 (/.f64 re im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 1/2 im) (*.f64 (cbrt.f64 (/.f64 re im)) (cbrt.f64 (/.f64 re im)))) (cbrt.f64 (/.f64 re im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 1/2 im) (/.f64 (sqrt.f64 re) 1)) (/.f64 (sqrt.f64 re) im))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 1/2 im) (/.f64 (sqrt.f64 re) (cbrt.f64 (*.f64 im im)))) (/.f64 (sqrt.f64 re) (cbrt.f64 im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 1/2 im) (/.f64 (pow.f64 (cbrt.f64 re) 2) 1)) (/.f64 (cbrt.f64 re) im))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 1/2 im) (/.f64 1 (sqrt.f64 im))) (/.f64 re (sqrt.f64 im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 1/2 im) (/.f64 1 (cbrt.f64 (*.f64 im im)))) (/.f64 re (cbrt.f64 im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 1/2 im) (/.f64 (sqrt.f64 re) (sqrt.f64 im))) (/.f64 (sqrt.f64 re) (sqrt.f64 im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 1/2 im) (/.f64 (pow.f64 (cbrt.f64 re) 2) (sqrt.f64 im))) (/.f64 (cbrt.f64 re) (sqrt.f64 im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 1/2 im) (/.f64 (cbrt.f64 re) (cbrt.f64 (*.f64 im (/.f64 im re))))) (/.f64 (cbrt.f64 re) (cbrt.f64 im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 1/2 (*.f64 im (neg.f64 im))) 1) (neg.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 1/2 (*.f64 im (neg.f64 im))) (sqrt.f64 re)) (neg.f64 (sqrt.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 1/2 (*.f64 im (neg.f64 im))) (pow.f64 (cbrt.f64 re) 2)) (neg.f64 (cbrt.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 1/2 (*.f64 im (neg.f64 im))) (sqrt.f64 (neg.f64 re))) (sqrt.f64 (neg.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 1/2 (*.f64 im (neg.f64 im))) (*.f64 (cbrt.f64 (neg.f64 re)) (cbrt.f64 (neg.f64 re)))) (cbrt.f64 (neg.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 1/2 (*.f64 im (neg.f64 im))) -1) re)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 1/2 (*.f64 im (neg.f64 im))) (neg.f64 (sqrt.f64 re))) (sqrt.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 1/2 (*.f64 im (neg.f64 im))) (neg.f64 (pow.f64 (cbrt.f64 re) 2))) (cbrt.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (/.f64 (*.f64 im im) 2) 1) re)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (/.f64 (*.f64 im im) 2) (cbrt.f64 re)) (pow.f64 (cbrt.f64 re) 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (/.f64 (*.f64 1/2 (*.f64 im im)) (sqrt.f64 re)) 1) (sqrt.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (/.f64 (*.f64 1/2 (*.f64 im im)) (sqrt.f64 re)) (cbrt.f64 re)) (cbrt.f64 (sqrt.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (/.f64 (*.f64 1/2 (*.f64 im im)) (sqrt.f64 re)) (sqrt.f64 (pow.f64 (cbrt.f64 re) 2))) (sqrt.f64 (cbrt.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (/.f64 (*.f64 1/2 (*.f64 im im)) (sqrt.f64 re)) (sqrt.f64 (sqrt.f64 re))) (sqrt.f64 (sqrt.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (/.f64 (*.f64 1/2 (*.f64 im im)) (pow.f64 (cbrt.f64 re) 2)) 1) (cbrt.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (/.f64 (*.f64 1/2 (*.f64 im im)) (pow.f64 (cbrt.f64 re) 2)) (sqrt.f64 (cbrt.f64 re))) (sqrt.f64 (cbrt.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (/.f64 (*.f64 1/2 (*.f64 im im)) (pow.f64 (cbrt.f64 re) 2)) (cbrt.f64 (pow.f64 (cbrt.f64 re) 2))) (cbrt.f64 (cbrt.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (/.f64 (*.f64 1/2 (*.f64 im im)) (pow.f64 (cbrt.f64 re) 2)) (cbrt.f64 (sqrt.f64 re))) (cbrt.f64 (sqrt.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (/.f64 (*.f64 1/2 (*.f64 im im)) (pow.f64 (cbrt.f64 re) 2)) (*.f64 (cbrt.f64 (cbrt.f64 re)) (cbrt.f64 (cbrt.f64 re)))) (cbrt.f64 (cbrt.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (neg.f64 (*.f64 1/2 (*.f64 im im))) 1) (neg.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (neg.f64 (*.f64 1/2 (*.f64 im im))) (sqrt.f64 re)) (neg.f64 (sqrt.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (neg.f64 (*.f64 1/2 (*.f64 im im))) (pow.f64 (cbrt.f64 re) 2)) (neg.f64 (cbrt.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (neg.f64 (*.f64 1/2 (*.f64 im im))) (sqrt.f64 (neg.f64 re))) (sqrt.f64 (neg.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (neg.f64 (*.f64 1/2 (*.f64 im im))) (*.f64 (cbrt.f64 (neg.f64 re)) (cbrt.f64 (neg.f64 re)))) (cbrt.f64 (neg.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (neg.f64 (*.f64 1/2 (*.f64 im im))) -1) re)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (neg.f64 (*.f64 1/2 (*.f64 im im))) (neg.f64 (sqrt.f64 re))) (sqrt.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (neg.f64 (*.f64 1/2 (*.f64 im im))) (neg.f64 (pow.f64 (cbrt.f64 re) 2))) (cbrt.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 1/2 (*.f64 im (/.f64 im re))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 re)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 1/2 (*.f64 im (/.f64 im re)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 1/2 (*.f64 im (/.f64 im re))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 1/4 (/.f64 (pow.f64 im 4) (*.f64 re re))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 1/2) (*.f64 im (/.f64 im re))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 1/2 (*.f64 im (/.f64 im re))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 1/2 (*.f64 im (/.f64 im re))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 1/2 (*.f64 im (/.f64 im re)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 1/2 (*.f64 im (/.f64 im re)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 1/2 (*.f64 im (/.f64 im re)))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 im (/.f64 im re)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 2 (/.f64 re (*.f64 1/2 (*.f64 im im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 im (/.f64 re im))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 im im) re)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 im im) (/.f64 re 1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 im (/.f64 im re)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 (/.f64 re (*.f64 im im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 im (sqrt.f64 re)) (/.f64 (sqrt.f64 re) im))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 re (*.f64 im im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 im) (/.f64 (/.f64 re im) (sqrt.f64 im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2) (cbrt.f64 (/.f64 re (*.f64 im im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 im) (/.f64 (/.f64 re im) (cbrt.f64 (*.f64 im im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 im) (/.f64 (/.f64 (/.f64 re im) (sqrt.f64 im)) (cbrt.f64 (sqrt.f64 im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 im) (/.f64 (/.f64 re (cbrt.f64 (pow.f64 im 4))) (cbrt.f64 im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 (*.f64 im im)) (/.f64 re (cbrt.f64 (pow.f64 im 4))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 (pow.f64 im 4)) (/.f64 re (cbrt.f64 (*.f64 im im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 (pow.f64 im 4)) (/.f64 (neg.f64 re) (neg.f64 (cbrt.f64 (*.f64 im im)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1/2 (*.f64 im im)) (/.f64 re 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 re -1) (/.f64 1 (*.f64 im im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 im (neg.f64 im)) (neg.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (*.f64 im (neg.f64 im))) (/.f64 (neg.f64 re) (sqrt.f64 (*.f64 im (neg.f64 im)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (sqrt.f64 im)) (/.f64 (/.f64 (/.f64 re im) (sqrt.f64 im)) (sqrt.f64 (sqrt.f64 im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (cbrt.f64 (*.f64 im im))) (/.f64 (/.f64 (/.f64 re im) (sqrt.f64 im)) (sqrt.f64 (cbrt.f64 im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (cbrt.f64 (*.f64 im im))) (/.f64 (/.f64 re (cbrt.f64 (pow.f64 im 4))) (sqrt.f64 (cbrt.f64 (*.f64 im im)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (cbrt.f64 (pow.f64 im 4))) (/.f64 (/.f64 re im) (sqrt.f64 (cbrt.f64 (*.f64 im im)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (cbrt.f64 (pow.f64 im 4))) (/.f64 (/.f64 re (cbrt.f64 (*.f64 im im))) (sqrt.f64 (cbrt.f64 (pow.f64 im 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cbrt.f64 (*.f64 im (neg.f64 im))) (cbrt.f64 (*.f64 im (neg.f64 im)))) (/.f64 (neg.f64 re) (cbrt.f64 (*.f64 im (neg.f64 im)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cbrt.f64 (cbrt.f64 (*.f64 im im))) (cbrt.f64 (cbrt.f64 (*.f64 im im)))) (/.f64 (/.f64 re (cbrt.f64 (pow.f64 im 4))) (cbrt.f64 (cbrt.f64 (*.f64 im im)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 (cbrt.f64 (pow.f64 im 4))) (/.f64 (/.f64 re (cbrt.f64 (pow.f64 im 4))) (cbrt.f64 (cbrt.f64 (*.f64 im im)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cbrt.f64 (cbrt.f64 (pow.f64 im 4))) (cbrt.f64 (cbrt.f64 (pow.f64 im 4)))) (/.f64 (/.f64 re (cbrt.f64 (*.f64 im im))) (cbrt.f64 (cbrt.f64 (pow.f64 im 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 im (sqrt.f64 im)) (/.f64 re (sqrt.f64 im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 im (cbrt.f64 (*.f64 im im))) (/.f64 re (cbrt.f64 im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 1/2 (*.f64 im im))) re)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 im im) 1) re)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 im (/.f64 (sqrt.f64 re) im)) (sqrt.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 im (/.f64 (pow.f64 (cbrt.f64 re) 2) im)) (cbrt.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 im (/.f64 (cbrt.f64 re) im)) (pow.f64 (cbrt.f64 re) 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 im re) (/.f64 1 im))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 im) (neg.f64 (/.f64 re im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 im) (/.f64 (neg.f64 re) im))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 -1 (neg.f64 (/.f64 re (*.f64 im im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 -1 (/.f64 (neg.f64 re) (*.f64 im im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (cbrt.f64 (pow.f64 im 4))) (/.f64 (neg.f64 re) (cbrt.f64 (*.f64 im im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 im 1) (/.f64 re im))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 im (pow.f64 (cbrt.f64 re) 2)) (/.f64 (cbrt.f64 re) im))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (cbrt.f64 (pow.f64 im 4)) 1) (/.f64 re (cbrt.f64 (*.f64 im im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (cbrt.f64 (pow.f64 im 4)) (sqrt.f64 re)) (/.f64 (sqrt.f64 re) (cbrt.f64 (*.f64 im im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (cbrt.f64 (pow.f64 im 4)) (pow.f64 (cbrt.f64 re) 2)) (/.f64 (cbrt.f64 re) (cbrt.f64 (*.f64 im im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 im (neg.f64 im))) (neg.f64 (neg.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 1/2 im)) (/.f64 re im))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 1/2 (*.f64 im (neg.f64 im)))) (neg.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (/.f64 (*.f64 im im) 2)) re)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (/.f64 (*.f64 1/2 (*.f64 im im)) (sqrt.f64 re))) (sqrt.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (/.f64 (*.f64 1/2 (*.f64 im im)) (pow.f64 (cbrt.f64 re) 2))) (cbrt.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (neg.f64 (*.f64 1/2 (*.f64 im im)))) (neg.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 im im) (/.f64 1 (sqrt.f64 re))) (sqrt.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 im im) (/.f64 1 (pow.f64 (cbrt.f64 re) 2))) (cbrt.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 im)) (sqrt.f64 (/.f64 re im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 (*.f64 im (neg.f64 im)))) (sqrt.f64 (neg.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1 (*.f64 2 (*.f64 1/2 (*.f64 im im)))) re)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1 (/.f64 (*.f64 im im) 1)) re)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1 (/.f64 im (/.f64 (sqrt.f64 re) im))) (sqrt.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1 (/.f64 im (/.f64 (pow.f64 (cbrt.f64 re) 2) im))) (cbrt.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1 (neg.f64 im)) (neg.f64 (/.f64 re im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1 (neg.f64 (*.f64 im (neg.f64 im)))) (neg.f64 (neg.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2) (cbrt.f64 im)) (cbrt.f64 (/.f64 re im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2) (cbrt.f64 (*.f64 im im))) (cbrt.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2) (cbrt.f64 (*.f64 im (neg.f64 im)))) (cbrt.f64 (neg.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 2 (/.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 re))) (sqrt.f64 (*.f64 1/2 (*.f64 im im)))) (sqrt.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 2 (cbrt.f64 (*.f64 1/4 (/.f64 (pow.f64 im 4) (*.f64 re re))))) (cbrt.f64 (*.f64 1/2 (*.f64 im im)))) (cbrt.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 (*.f64 im (sqrt.f64 2)) (sqrt.f64 re)) (sqrt.f64 (*.f64 1/2 (*.f64 im im)))) (sqrt.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 1 (sqrt.f64 re)) (*.f64 im im)) (sqrt.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 1 (pow.f64 (cbrt.f64 re) 2)) (*.f64 im im)) (cbrt.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 im 1) im) re)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 im (pow.f64 (cbrt.f64 re) 2)) im) (cbrt.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 (cbrt.f64 (pow.f64 im 4)) 1) (cbrt.f64 (*.f64 im im))) re)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 (cbrt.f64 (pow.f64 im 4)) (sqrt.f64 re)) (cbrt.f64 (*.f64 im im))) (sqrt.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 (cbrt.f64 (pow.f64 im 4)) (pow.f64 (cbrt.f64 re) 2)) 1) (cbrt.f64 (/.f64 re (*.f64 im im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 (cbrt.f64 (pow.f64 im 4)) (pow.f64 (cbrt.f64 re) 2)) (cbrt.f64 im)) (cbrt.f64 (/.f64 re im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 (cbrt.f64 (pow.f64 im 4)) (pow.f64 (cbrt.f64 re) 2)) (cbrt.f64 (*.f64 im im))) (cbrt.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 (cbrt.f64 (pow.f64 im 4)) (pow.f64 (cbrt.f64 re) 2)) (cbrt.f64 (*.f64 im (neg.f64 im)))) (cbrt.f64 (neg.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cbrt.f64 (pow.f64 im 4)) (cbrt.f64 (*.f64 im (/.f64 im re)))) (pow.f64 (cbrt.f64 re) 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 2 (*.f64 1/2 (*.f64 im im))) 1) re)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 (*.f64 im im) 1) 1) re)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 im (/.f64 (sqrt.f64 re) im)) 1) (sqrt.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 im (/.f64 (pow.f64 (cbrt.f64 re) 2) im)) 1) (cbrt.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 im) 1) (neg.f64 (/.f64 re im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 (*.f64 im (neg.f64 im))) 1) (neg.f64 (neg.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 1/2 im) 2) (/.f64 re im))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 1/2 (*.f64 im (neg.f64 im))) 2) (neg.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 (*.f64 im im) 2) 2) re)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 (*.f64 1/2 (*.f64 im im)) (sqrt.f64 re)) 2) (sqrt.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 (*.f64 1/2 (*.f64 im im)) (pow.f64 (cbrt.f64 re) 2)) 2) (cbrt.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 (*.f64 1/2 (*.f64 im im))) 2) (neg.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 im) (/.f64 im (sqrt.f64 re))) (sqrt.f64 (/.f64 re im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 (*.f64 im (neg.f64 im))) (/.f64 im (sqrt.f64 re))) (sqrt.f64 (neg.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 (*.f64 1/2 (*.f64 im im))) (*.f64 2 (/.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 re)))) (sqrt.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cbrt.f64 im) (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2)) (cbrt.f64 (/.f64 re im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cbrt.f64 (*.f64 im im)) (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2)) (cbrt.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cbrt.f64 (*.f64 im (neg.f64 im))) (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2)) (cbrt.f64 (neg.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1 (*.f64 (/.f64 im (sqrt.f64 re)) (cbrt.f64 (/.f64 im (sqrt.f64 re))))) (cbrt.f64 (/.f64 re (*.f64 im im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cbrt.f64 im) (*.f64 (/.f64 im (sqrt.f64 re)) (cbrt.f64 (/.f64 im (sqrt.f64 re))))) (cbrt.f64 (/.f64 re im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cbrt.f64 (*.f64 im im)) (*.f64 (/.f64 im (sqrt.f64 re)) (cbrt.f64 (/.f64 im (sqrt.f64 re))))) (cbrt.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cbrt.f64 (*.f64 im (neg.f64 im))) (*.f64 (/.f64 im (sqrt.f64 re)) (cbrt.f64 (/.f64 im (sqrt.f64 re))))) (cbrt.f64 (neg.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1 (/.f64 im (/.f64 (cbrt.f64 re) im))) (pow.f64 (cbrt.f64 re) 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 im (/.f64 im (cbrt.f64 re))) (pow.f64 (cbrt.f64 re) 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cbrt.f64 (pow.f64 im 4)) (/.f64 (cbrt.f64 (*.f64 im im)) (sqrt.f64 re))) (sqrt.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 im (sqrt.f64 (/.f64 re im))) (sqrt.f64 (/.f64 re im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 im (*.f64 (cbrt.f64 (/.f64 re im)) (cbrt.f64 (/.f64 re im)))) (cbrt.f64 (/.f64 re im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 im (/.f64 (sqrt.f64 re) (cbrt.f64 (*.f64 im im)))) (/.f64 (sqrt.f64 re) (cbrt.f64 im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 im (/.f64 1 (sqrt.f64 im))) (/.f64 re (sqrt.f64 im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 im (/.f64 1 (cbrt.f64 (*.f64 im im)))) (/.f64 re (cbrt.f64 im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 im (/.f64 (sqrt.f64 re) (sqrt.f64 im))) (/.f64 (sqrt.f64 re) (sqrt.f64 im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 im (/.f64 (pow.f64 (cbrt.f64 re) 2) (sqrt.f64 im))) (/.f64 (cbrt.f64 re) (sqrt.f64 im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 im (/.f64 (cbrt.f64 re) (cbrt.f64 (*.f64 im (/.f64 im re))))) (/.f64 (cbrt.f64 re) (cbrt.f64 im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 1 (*.f64 (cbrt.f64 (/.f64 re (*.f64 im im))) (cbrt.f64 (/.f64 re (*.f64 im im))))) (cbrt.f64 (/.f64 re (*.f64 im im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 1 (/.f64 (sqrt.f64 re) 1)) (/.f64 (sqrt.f64 re) (*.f64 im im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 1 (/.f64 (pow.f64 (cbrt.f64 re) 2) 1)) (/.f64 (cbrt.f64 re) (*.f64 im im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 im (neg.f64 im)) 1) (neg.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 im (neg.f64 im)) (sqrt.f64 re)) (neg.f64 (sqrt.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 im (neg.f64 im)) (pow.f64 (cbrt.f64 re) 2)) (neg.f64 (cbrt.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 im (neg.f64 im)) (sqrt.f64 (neg.f64 re))) (sqrt.f64 (neg.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 im (neg.f64 im)) (*.f64 (cbrt.f64 (neg.f64 re)) (cbrt.f64 (neg.f64 re)))) (cbrt.f64 (neg.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 im (neg.f64 im)) -1) re)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 im (neg.f64 im)) (neg.f64 (sqrt.f64 re))) (sqrt.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 im (neg.f64 im)) (neg.f64 (pow.f64 (cbrt.f64 re) 2))) (cbrt.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 2 (*.f64 1/2 (*.f64 im im))) 1) re)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 2 (*.f64 1/2 (*.f64 im im))) (sqrt.f64 re)) (sqrt.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 2 (*.f64 1/2 (*.f64 im im))) (cbrt.f64 re)) (pow.f64 (cbrt.f64 re) 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 2 (*.f64 1/2 (*.f64 im im))) (pow.f64 (cbrt.f64 re) 2)) (cbrt.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (/.f64 (*.f64 im im) 1) 1) re)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (/.f64 im (/.f64 (sqrt.f64 re) im)) 1) (sqrt.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (/.f64 im (/.f64 (sqrt.f64 re) im)) (cbrt.f64 re)) (cbrt.f64 (sqrt.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (/.f64 im (/.f64 (sqrt.f64 re) im)) (sqrt.f64 (pow.f64 (cbrt.f64 re) 2))) (sqrt.f64 (cbrt.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (/.f64 im (/.f64 (sqrt.f64 re) im)) (sqrt.f64 (sqrt.f64 re))) (sqrt.f64 (sqrt.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (/.f64 im (/.f64 (pow.f64 (cbrt.f64 re) 2) im)) 1) (cbrt.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (/.f64 im (/.f64 (pow.f64 (cbrt.f64 re) 2) im)) (sqrt.f64 (cbrt.f64 re))) (sqrt.f64 (cbrt.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (/.f64 im (/.f64 (pow.f64 (cbrt.f64 re) 2) im)) (cbrt.f64 (pow.f64 (cbrt.f64 re) 2))) (cbrt.f64 (cbrt.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (/.f64 im (/.f64 (pow.f64 (cbrt.f64 re) 2) im)) (cbrt.f64 (sqrt.f64 re))) (cbrt.f64 (sqrt.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (/.f64 im (/.f64 (pow.f64 (cbrt.f64 re) 2) im)) (*.f64 (cbrt.f64 (cbrt.f64 re)) (cbrt.f64 (cbrt.f64 re)))) (cbrt.f64 (cbrt.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 im (/.f64 im re)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 im (sqrt.f64 re)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 im 4) (*.f64 re re)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 im (/.f64 im re)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 re (*.f64 im im)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 im (/.f64 (neg.f64 re) im)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (/.f64 (pow.f64 im 4) (*.f64 re re)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (*.f64 im (/.f64 im re))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 im (/.f64 im re)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 im (/.f64 im re)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 im (/.f64 im re))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 im (/.f64 im re))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 im (/.f64 im re))))))))

simplify298.0ms (3.3%)

Algorithm
egg-herbie
Rules
1378×times-frac
1146×associate-*r*
1032×associate-*l*
948×associate-/r/
902×associate-/r*
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
083412123
1202211955
2792211955
Stop Event
node limit
Counts
501 → 561
Calls
Call 1
Inputs
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(-.f64 (exp.f64 (log1p.f64 (/.f64 im (sqrt.f64 re)))) 1)
(*.f64 im (sqrt.f64 (pow.f64 re -1)))
(*.f64 im (pow.f64 (pow.f64 re -1) 1/2))
(*.f64 (/.f64 im (sqrt.f64 re)) 1)
(*.f64 (/.f64 im (sqrt.f64 re)) (pow.f64 1 1/2))
(*.f64 1 (/.f64 im (sqrt.f64 re)))
(*.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) (sqrt.f64 (/.f64 im (sqrt.f64 re))))
(*.f64 (/.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 re)) (sqrt.f64 2))
(*.f64 (sqrt.f64 2) (/.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 re)))
(*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (cbrt.f64 (*.f64 im (/.f64 im re))))
(*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (cbrt.f64 (/.f64 im (sqrt.f64 re))))
(*.f64 (sqrt.f64 (cbrt.f64 (*.f64 im (/.f64 im re)))) (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2)))
(*.f64 (sqrt.f64 (pow.f64 re -1)) im)
(*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2)) (sqrt.f64 (cbrt.f64 (*.f64 im (/.f64 im re)))))
(*.f64 (pow.f64 (pow.f64 re -1) 1/2) im)
(*.f64 (pow.f64 1 1/2) (/.f64 im (sqrt.f64 re)))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2) 1/2) (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 1/2))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 1/2) (pow.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2) 1/2))
(/.f64 im (sqrt.f64 re))
(/.f64 im (/.f64 (sqrt.f64 re) 1))
(/.f64 1 (sqrt.f64 (/.f64 re (*.f64 im im))))
(/.f64 1 (/.f64 (sqrt.f64 re) im))
(/.f64 1 (/.f64 (sqrt.f64 (/.f64 re im)) (sqrt.f64 im)))
(/.f64 (sqrt.f64 im) (sqrt.f64 (/.f64 re im)))
(/.f64 (sqrt.f64 im) (/.f64 (sqrt.f64 re) (sqrt.f64 im)))
(/.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (cbrt.f64 (/.f64 re (*.f64 im im))))
(/.f64 (cbrt.f64 im) (/.f64 (sqrt.f64 re) (cbrt.f64 (*.f64 im im))))
(/.f64 (cbrt.f64 im) (/.f64 (sqrt.f64 (/.f64 re im)) (cbrt.f64 (sqrt.f64 im))))
(/.f64 (cbrt.f64 (*.f64 im im)) (/.f64 (sqrt.f64 re) (cbrt.f64 im)))
(/.f64 (sqrt.f64 (*.f64 im (neg.f64 im))) (sqrt.f64 (neg.f64 re)))
(/.f64 (sqrt.f64 (sqrt.f64 im)) (/.f64 (sqrt.f64 (/.f64 re im)) (sqrt.f64 (sqrt.f64 im))))
(/.f64 (sqrt.f64 (cbrt.f64 (*.f64 im im))) (/.f64 (sqrt.f64 (/.f64 re im)) (sqrt.f64 (cbrt.f64 im))))
(/.f64 (sqrt.f64 (cbrt.f64 (pow.f64 im 4))) (/.f64 (sqrt.f64 re) (sqrt.f64 (cbrt.f64 (*.f64 im im)))))
(/.f64 (/.f64 im (cbrt.f64 re)) (cbrt.f64 (sqrt.f64 re)))
(/.f64 (/.f64 im 1) (sqrt.f64 re))
(/.f64 (*.f64 1 (sqrt.f64 (*.f64 im (neg.f64 im)))) (sqrt.f64 (neg.f64 re)))
(/.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 (*.f64 1/2 (*.f64 im im)))) (sqrt.f64 re))
(/.f64 (*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (cbrt.f64 im)) (cbrt.f64 (/.f64 re im)))
(/.f64 (*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (cbrt.f64 (*.f64 im im))) (cbrt.f64 re))
(/.f64 (*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (cbrt.f64 (*.f64 im (neg.f64 im)))) (cbrt.f64 (neg.f64 re)))
(/.f64 (*.f64 (pow.f64 1 1/2) im) (sqrt.f64 re))
(/.f64 (*.f64 (pow.f64 1 1/2) 1) (sqrt.f64 (/.f64 re (*.f64 im im))))
(/.f64 (*.f64 (pow.f64 1 1/2) (sqrt.f64 im)) (sqrt.f64 (/.f64 re im)))
(/.f64 (*.f64 (pow.f64 1 1/2) (sqrt.f64 (*.f64 im (neg.f64 im)))) (sqrt.f64 (neg.f64 re)))
(/.f64 (*.f64 (sqrt.f64 (*.f64 im (neg.f64 im))) 1) (sqrt.f64 (neg.f64 re)))
(/.f64 (*.f64 (sqrt.f64 (*.f64 1/2 (*.f64 im im))) (sqrt.f64 2)) (sqrt.f64 re))
(/.f64 (*.f64 (cbrt.f64 im) (cbrt.f64 (/.f64 im (sqrt.f64 re)))) (cbrt.f64 (/.f64 re im)))
(/.f64 (*.f64 (cbrt.f64 (*.f64 im im)) (cbrt.f64 (/.f64 im (sqrt.f64 re)))) (cbrt.f64 re))
(/.f64 (*.f64 (cbrt.f64 (*.f64 im (neg.f64 im))) (cbrt.f64 (/.f64 im (sqrt.f64 re)))) (cbrt.f64 (neg.f64 re)))
(/.f64 (/.f64 im (sqrt.f64 (pow.f64 (cbrt.f64 re) 2))) (sqrt.f64 (cbrt.f64 re)))
(/.f64 (/.f64 im (sqrt.f64 (sqrt.f64 re))) (sqrt.f64 (sqrt.f64 re)))
(pow.f64 (*.f64 im (/.f64 im re)) 1/2)
(pow.f64 (/.f64 im (sqrt.f64 re)) 1)
(pow.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) 2)
(pow.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) 3)
(pow.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 3) 1/3)
(fabs.f64 (/.f64 im (sqrt.f64 re)))
(log.f64 (exp.f64 (/.f64 im (sqrt.f64 re))))
(log.f64 (+.f64 1 (expm1.f64 (/.f64 im (sqrt.f64 re)))))
(cbrt.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 3))
(expm1.f64 (log1p.f64 (/.f64 im (sqrt.f64 re))))
(exp.f64 (log.f64 (/.f64 im (sqrt.f64 re))))
(log1p.f64 (expm1.f64 (/.f64 im (sqrt.f64 re))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 im (/.f64 im re)))) 1)
(*.f64 2 (*.f64 1/2 (*.f64 im (/.f64 im re))))
(*.f64 1/2 (*.f64 2 (*.f64 im (/.f64 im re))))
(*.f64 im (/.f64 im re))
(*.f64 (*.f64 im im) (pow.f64 re -1))
(*.f64 (*.f64 im (/.f64 im re)) 1)
(*.f64 (*.f64 1/2 (*.f64 im (/.f64 im re))) 2)
(*.f64 (/.f64 im (sqrt.f64 re)) (/.f64 im (sqrt.f64 re)))
(*.f64 1 (*.f64 im (/.f64 im re)))
(*.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 (/.f64 im (sqrt.f64 re)))))
(*.f64 (/.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 re)) (/.f64 (*.f64 im (sqrt.f64 2)) (sqrt.f64 re)))
(*.f64 (/.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 re)) (*.f64 2 (/.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 re))))
(*.f64 (sqrt.f64 2) (*.f64 (/.f64 im (sqrt.f64 re)) (/.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 re))))
(*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (/.f64 (*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) im) (sqrt.f64 re)))
(*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2))
(*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (*.f64 (/.f64 im (sqrt.f64 re)) (cbrt.f64 (/.f64 im (sqrt.f64 re)))))
(*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (/.f64 (cbrt.f64 (pow.f64 im 4)) (pow.f64 (cbrt.f64 re) 2)))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2) (cbrt.f64 (*.f64 im (/.f64 im re))))
(*.f64 (cbrt.f64 (*.f64 1/2 (*.f64 im (/.f64 im re)))) (*.f64 2 (cbrt.f64 (*.f64 1/4 (/.f64 (pow.f64 im 4) (*.f64 re re))))))
(*.f64 (cbrt.f64 (*.f64 1/4 (/.f64 (pow.f64 im 4) (*.f64 re re)))) (*.f64 2 (cbrt.f64 (*.f64 1/2 (*.f64 im (/.f64 im re))))))
(*.f64 (cbrt.f64 (pow.f64 im 4)) (/.f64 (cbrt.f64 (*.f64 im im)) re))
(*.f64 (pow.f64 re -1) (*.f64 im im))
(*.f64 (*.f64 im (neg.f64 im)) (/.f64 -1 re))
(*.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 (/.f64 im (sqrt.f64 re)))) (sqrt.f64 (/.f64 im (sqrt.f64 re))))
(*.f64 (*.f64 2 (*.f64 im (/.f64 im re))) 1/2)
(*.f64 (*.f64 2 (cbrt.f64 (*.f64 1/4 (/.f64 (pow.f64 im 4) (*.f64 re re))))) (cbrt.f64 (*.f64 1/2 (*.f64 im (/.f64 im re)))))
(*.f64 (/.f64 (*.f64 im (sqrt.f64 2)) (sqrt.f64 re)) (/.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 re)))
(*.f64 (/.f64 (*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) im) (sqrt.f64 re)) (cbrt.f64 (/.f64 im (sqrt.f64 re))))
(*.f64 (/.f64 (cbrt.f64 (*.f64 im im)) re) (cbrt.f64 (pow.f64 im 4)))
(*.f64 (/.f64 (cbrt.f64 (*.f64 im im)) re) (/.f64 (cbrt.f64 (pow.f64 im 4)) 1))
(*.f64 (*.f64 2 (/.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 re))) (/.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 re)))
(*.f64 (*.f64 2 (cbrt.f64 (*.f64 1/2 (*.f64 im (/.f64 im re))))) (cbrt.f64 (*.f64 1/4 (/.f64 (pow.f64 im 4) (*.f64 re re)))))
(*.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (/.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 re))) (sqrt.f64 2))
(*.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (cbrt.f64 (/.f64 im (sqrt.f64 re)))) (cbrt.f64 (*.f64 im (/.f64 im re))))
(*.f64 (/.f64 im (/.f64 (sqrt.f64 re) im)) (/.f64 1 (sqrt.f64 re)))
(*.f64 (/.f64 1 (sqrt.f64 re)) (/.f64 im (/.f64 (sqrt.f64 re) im)))
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 re) 2)) (/.f64 im (/.f64 (cbrt.f64 re) im)))
(*.f64 (/.f64 im (/.f64 (cbrt.f64 re) im)) (/.f64 1 (pow.f64 (cbrt.f64 re) 2)))
(*.f64 (/.f64 im re) im)
(*.f64 (/.f64 im re) (/.f64 im 1))
(*.f64 (/.f64 im (cbrt.f64 re)) (/.f64 im (pow.f64 (cbrt.f64 re) 2)))
(*.f64 (/.f64 -1 re) (*.f64 im (neg.f64 im)))
(*.f64 (/.f64 im 1) (/.f64 im re))
(*.f64 (/.f64 im (pow.f64 (cbrt.f64 re) 2)) (/.f64 im (cbrt.f64 re)))
(*.f64 (/.f64 (cbrt.f64 (pow.f64 im 4)) 1) (/.f64 (cbrt.f64 (*.f64 im im)) re))
(*.f64 (/.f64 (cbrt.f64 (pow.f64 im 4)) (sqrt.f64 re)) (/.f64 (cbrt.f64 (*.f64 im im)) (sqrt.f64 re)))
(*.f64 (/.f64 (cbrt.f64 (*.f64 im im)) (sqrt.f64 re)) (/.f64 (cbrt.f64 (pow.f64 im 4)) (sqrt.f64 re)))
(*.f64 (/.f64 (cbrt.f64 (pow.f64 im 4)) (pow.f64 (cbrt.f64 re) 2)) (cbrt.f64 (*.f64 im (/.f64 im re))))
(*.f64 (/.f64 (sqrt.f64 im) (/.f64 re im)) (sqrt.f64 im))
(*.f64 (/.f64 (cbrt.f64 (pow.f64 im 4)) re) (cbrt.f64 (*.f64 im im)))
(*.f64 (/.f64 im (/.f64 re (sqrt.f64 im))) (sqrt.f64 im))
(*.f64 (/.f64 im (neg.f64 re)) (neg.f64 im))
(*.f64 (/.f64 im (/.f64 re (cbrt.f64 (*.f64 im im)))) (cbrt.f64 im))
(*.f64 (/.f64 1 (/.f64 re (cbrt.f64 (pow.f64 im 4)))) (cbrt.f64 (*.f64 im im)))
(*.f64 (/.f64 (cbrt.f64 (*.f64 im im)) (/.f64 re im)) (cbrt.f64 im))
(pow.f64 (*.f64 im (/.f64 im re)) 1)
(pow.f64 (/.f64 im (sqrt.f64 re)) 2)
(pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 3)
(pow.f64 (/.f64 (pow.f64 im 4) (*.f64 re re)) 1/2)
(pow.f64 (pow.f64 (*.f64 im (/.f64 im re)) 3) 1/3)
(pow.f64 (/.f64 re (*.f64 im im)) -1)
(neg.f64 (/.f64 im (/.f64 (neg.f64 re) im)))
(sqrt.f64 (/.f64 (pow.f64 im 4) (*.f64 re re)))
(log.f64 (exp.f64 (*.f64 im (/.f64 im re))))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 im (/.f64 im re)))))
(cbrt.f64 (pow.f64 (*.f64 im (/.f64 im re)) 3))
(expm1.f64 (log1p.f64 (*.f64 im (/.f64 im re))))
(exp.f64 (log.f64 (*.f64 im (/.f64 im re))))
(log1p.f64 (expm1.f64 (*.f64 im (/.f64 im re))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 1/2 (*.f64 im (/.f64 im re))))) 1)
(/.f64 1/2 (/.f64 re (*.f64 im im)))
(/.f64 im (/.f64 (/.f64 re im) 1/2))
(/.f64 (*.f64 im im) (/.f64 re 1/2))
(/.f64 (*.f64 1/2 (*.f64 im (/.f64 im re))) 1)
(/.f64 1 (/.f64 re (*.f64 1/2 (*.f64 im im))))
(/.f64 (*.f64 1/2 (*.f64 im im)) re)
(/.f64 (*.f64 1/2 (*.f64 im im)) (/.f64 re 1))
(/.f64 (*.f64 im (neg.f64 im)) (/.f64 (neg.f64 re) 1/2))
(/.f64 (sqrt.f64 (*.f64 1/2 (*.f64 im im))) (/.f64 re (sqrt.f64 (*.f64 1/2 (*.f64 im im)))))
(/.f64 (*.f64 (cbrt.f64 (*.f64 1/2 (*.f64 im im))) (cbrt.f64 (*.f64 1/2 (*.f64 im im)))) (/.f64 re (cbrt.f64 (*.f64 1/2 (*.f64 im im)))))
(/.f64 (*.f64 1/2 im) (/.f64 re im))
(/.f64 (*.f64 1/2 (cbrt.f64 (pow.f64 im 4))) (/.f64 re (cbrt.f64 (*.f64 im im))))
(/.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re)) (sqrt.f64 (/.f64 re (*.f64 im im))))
(/.f64 (/.f64 1/2 re) (/.f64 1 (*.f64 im im)))
(/.f64 (*.f64 1/2 (*.f64 im (neg.f64 im))) (neg.f64 re))
(/.f64 (/.f64 (*.f64 im im) 2) re)
(/.f64 (/.f64 (*.f64 1/2 (*.f64 im im)) (sqrt.f64 re)) (sqrt.f64 re))
(/.f64 (/.f64 (*.f64 1/2 (*.f64 im im)) (pow.f64 (cbrt.f64 re) 2)) (cbrt.f64 re))
(/.f64 (neg.f64 (*.f64 1/2 (*.f64 im im))) (neg.f64 re))
(/.f64 (*.f64 1/2 (sqrt.f64 im)) (/.f64 (/.f64 re im) (sqrt.f64 im)))
(/.f64 (*.f64 1/2 (cbrt.f64 (*.f64 im im))) (/.f64 re (cbrt.f64 (pow.f64 im 4))))
(/.f64 (*.f64 1/2 (*.f64 2 (*.f64 1/2 (*.f64 im im)))) re)
(/.f64 (*.f64 1/2 (/.f64 (*.f64 im im) 1)) re)
(/.f64 (*.f64 1/2 (/.f64 im (/.f64 (sqrt.f64 re) im))) (sqrt.f64 re))
(/.f64 (*.f64 1/2 (/.f64 im (/.f64 (pow.f64 (cbrt.f64 re) 2) im))) (cbrt.f64 re))
(/.f64 (*.f64 1/2 (neg.f64 im)) (neg.f64 (/.f64 re im)))
(/.f64 -1/2 (neg.f64 (/.f64 re (*.f64 im im))))
(/.f64 (*.f64 1/2 (neg.f64 (*.f64 im (neg.f64 im)))) (neg.f64 (neg.f64 re)))
(/.f64 (*.f64 1 (*.f64 1/2 im)) (/.f64 re im))
(/.f64 (*.f64 1 (*.f64 1/2 (*.f64 im (neg.f64 im)))) (neg.f64 re))
(/.f64 (*.f64 1 (/.f64 (*.f64 im im) 2)) re)
(/.f64 (*.f64 1 (/.f64 (*.f64 1/2 (*.f64 im im)) (sqrt.f64 re))) (sqrt.f64 re))
(/.f64 (*.f64 1 (/.f64 (*.f64 1/2 (*.f64 im im)) (pow.f64 (cbrt.f64 re) 2))) (cbrt.f64 re))
(/.f64 (*.f64 1 (neg.f64 (*.f64 1/2 (*.f64 im im)))) (neg.f64 re))
(/.f64 (*.f64 (/.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 re)) (sqrt.f64 (*.f64 1/2 (*.f64 im im)))) (sqrt.f64 re))
(/.f64 (*.f64 (cbrt.f64 (*.f64 1/4 (/.f64 (pow.f64 im 4) (*.f64 re re)))) (cbrt.f64 (*.f64 1/2 (*.f64 im im)))) (cbrt.f64 re))
(/.f64 (*.f64 (*.f64 1/2 (*.f64 im im)) (/.f64 1 (sqrt.f64 re))) (sqrt.f64 re))
(/.f64 (*.f64 (*.f64 1/2 (*.f64 im im)) (/.f64 1 (pow.f64 (cbrt.f64 re) 2))) (cbrt.f64 re))
(/.f64 (*.f64 (*.f64 1/2 (*.f64 im im)) -1) (neg.f64 re))
(/.f64 (*.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re)) im) (sqrt.f64 re))
(/.f64 (*.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re)) 1) (sqrt.f64 (/.f64 re (*.f64 im im))))
(/.f64 (*.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re)) (sqrt.f64 im)) (sqrt.f64 (/.f64 re im)))
(/.f64 (*.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re)) (sqrt.f64 (*.f64 im (neg.f64 im)))) (sqrt.f64 (neg.f64 re)))
(/.f64 (*.f64 (*.f64 1/2 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2)) 1) (cbrt.f64 (/.f64 re (*.f64 im im))))
(/.f64 (*.f64 (*.f64 1/2 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2)) (cbrt.f64 im)) (cbrt.f64 (/.f64 re im)))
(/.f64 (*.f64 (*.f64 1/2 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2)) (cbrt.f64 (*.f64 im im))) (cbrt.f64 re))
(/.f64 (*.f64 (*.f64 1/2 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2)) (cbrt.f64 (*.f64 im (neg.f64 im)))) (cbrt.f64 (neg.f64 re)))
(/.f64 (*.f64 (/.f64 1/2 (sqrt.f64 re)) (*.f64 im im)) (sqrt.f64 re))
(/.f64 (*.f64 (/.f64 1/2 (pow.f64 (cbrt.f64 re) 2)) (*.f64 im im)) (cbrt.f64 re))
(/.f64 (*.f64 (cbrt.f64 (*.f64 im im)) 1/2) (/.f64 re (cbrt.f64 (pow.f64 im 4))))
(/.f64 (*.f64 (sqrt.f64 im) 1/2) (/.f64 (/.f64 re im) (sqrt.f64 im)))
(/.f64 (*.f64 (*.f64 2 (*.f64 1/2 (*.f64 im im))) 1/2) re)
(/.f64 (*.f64 (/.f64 (*.f64 im im) 1) 1/2) re)
(/.f64 (*.f64 (/.f64 im (/.f64 (sqrt.f64 re) im)) 1/2) (sqrt.f64 re))
(/.f64 (*.f64 (/.f64 im (/.f64 (pow.f64 (cbrt.f64 re) 2) im)) 1/2) (cbrt.f64 re))
(/.f64 (*.f64 (neg.f64 im) 1/2) (neg.f64 (/.f64 re im)))
(/.f64 (*.f64 (neg.f64 (*.f64 im (neg.f64 im))) 1/2) (neg.f64 (neg.f64 re)))
(/.f64 (*.f64 (*.f64 1/2 im) 1) (/.f64 re im))
(/.f64 (*.f64 (*.f64 1/2 (*.f64 im (neg.f64 im))) 1) (neg.f64 re))
(/.f64 (*.f64 (/.f64 (*.f64 im im) 2) 1) re)
(/.f64 (*.f64 (/.f64 (*.f64 1/2 (*.f64 im im)) (sqrt.f64 re)) 1) (sqrt.f64 re))
(/.f64 (*.f64 (/.f64 (*.f64 1/2 (*.f64 im im)) (pow.f64 (cbrt.f64 re) 2)) 1) (cbrt.f64 re))
(/.f64 (*.f64 (neg.f64 (*.f64 1/2 (*.f64 im im))) 1) (neg.f64 re))
(/.f64 (*.f64 im (/.f64 (*.f64 1/2 im) (sqrt.f64 re))) (sqrt.f64 re))
(/.f64 (*.f64 1 (/.f64 (*.f64 1/2 im) (sqrt.f64 re))) (sqrt.f64 (/.f64 re (*.f64 im im))))
(/.f64 (*.f64 (sqrt.f64 im) (/.f64 (*.f64 1/2 im) (sqrt.f64 re))) (sqrt.f64 (/.f64 re im)))
(/.f64 (*.f64 (sqrt.f64 (*.f64 im (neg.f64 im))) (/.f64 (*.f64 1/2 im) (sqrt.f64 re))) (sqrt.f64 (neg.f64 re)))
(/.f64 (*.f64 (sqrt.f64 (*.f64 1/2 (*.f64 im im))) (/.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 re))) (sqrt.f64 re))
(/.f64 (*.f64 (cbrt.f64 (*.f64 1/2 (*.f64 im im))) (cbrt.f64 (*.f64 1/4 (/.f64 (pow.f64 im 4) (*.f64 re re))))) (cbrt.f64 re))
(/.f64 (*.f64 1/2 (/.f64 im (/.f64 (cbrt.f64 re) im))) (pow.f64 (cbrt.f64 re) 2))
(/.f64 (/.f64 (*.f64 1/2 (*.f64 im im)) (cbrt.f64 re)) (pow.f64 (cbrt.f64 re) 2))
(/.f64 (/.f64 1/2 (*.f64 (cbrt.f64 (/.f64 re (*.f64 im im))) (cbrt.f64 (/.f64 re (*.f64 im im))))) (cbrt.f64 (/.f64 re (*.f64 im im))))
(/.f64 (/.f64 1/2 (/.f64 1 im)) (/.f64 re im))
(/.f64 (/.f64 1/2 (/.f64 1 (cbrt.f64 (pow.f64 im 4)))) (/.f64 re (cbrt.f64 (*.f64 im im))))
(/.f64 (/.f64 1/2 (/.f64 (sqrt.f64 re) im)) (/.f64 (sqrt.f64 re) im))
(/.f64 (/.f64 1/2 (/.f64 (sqrt.f64 re) 1)) (/.f64 (sqrt.f64 re) (*.f64 im im)))
(/.f64 (/.f64 1/2 (/.f64 (sqrt.f64 re) (cbrt.f64 (pow.f64 im 4)))) (/.f64 (sqrt.f64 re) (cbrt.f64 (*.f64 im im))))
(/.f64 (/.f64 1/2 (/.f64 (pow.f64 (cbrt.f64 re) 2) im)) (/.f64 (cbrt.f64 re) im))
(/.f64 (/.f64 1/2 (/.f64 (pow.f64 (cbrt.f64 re) 2) 1)) (/.f64 (cbrt.f64 re) (*.f64 im im)))
(/.f64 (/.f64 1/2 (/.f64 (pow.f64 (cbrt.f64 re) 2) (cbrt.f64 (pow.f64 im 4)))) (/.f64 (cbrt.f64 re) (cbrt.f64 (*.f64 im im))))
(/.f64 (/.f64 (*.f64 1/2 im) re) (/.f64 1 im))
(/.f64 (/.f64 (*.f64 1/2 im) 1) (/.f64 re im))
(/.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 (/.f64 re im))) (sqrt.f64 (/.f64 re im)))
(/.f64 (/.f64 (*.f64 1/2 im) (*.f64 (cbrt.f64 (/.f64 re im)) (cbrt.f64 (/.f64 re im)))) (cbrt.f64 (/.f64 re im)))
(/.f64 (/.f64 (*.f64 1/2 im) (/.f64 (sqrt.f64 re) 1)) (/.f64 (sqrt.f64 re) im))
(/.f64 (/.f64 (*.f64 1/2 im) (/.f64 (sqrt.f64 re) (cbrt.f64 (*.f64 im im)))) (/.f64 (sqrt.f64 re) (cbrt.f64 im)))
(/.f64 (/.f64 (*.f64 1/2 im) (/.f64 (pow.f64 (cbrt.f64 re) 2) 1)) (/.f64 (cbrt.f64 re) im))
(/.f64 (/.f64 (*.f64 1/2 im) (/.f64 1 (sqrt.f64 im))) (/.f64 re (sqrt.f64 im)))
(/.f64 (/.f64 (*.f64 1/2 im) (/.f64 1 (cbrt.f64 (*.f64 im im)))) (/.f64 re (cbrt.f64 im)))
(/.f64 (/.f64 (*.f64 1/2 im) (/.f64 (sqrt.f64 re) (sqrt.f64 im))) (/.f64 (sqrt.f64 re) (sqrt.f64 im)))
(/.f64 (/.f64 (*.f64 1/2 im) (/.f64 (pow.f64 (cbrt.f64 re) 2) (sqrt.f64 im))) (/.f64 (cbrt.f64 re) (sqrt.f64 im)))
(/.f64 (/.f64 (*.f64 1/2 im) (/.f64 (cbrt.f64 re) (cbrt.f64 (*.f64 im (/.f64 im re))))) (/.f64 (cbrt.f64 re) (cbrt.f64 im)))
(/.f64 (/.f64 (*.f64 1/2 (*.f64 im (neg.f64 im))) 1) (neg.f64 re))
(/.f64 (/.f64 (*.f64 1/2 (*.f64 im (neg.f64 im))) (sqrt.f64 re)) (neg.f64 (sqrt.f64 re)))
(/.f64 (/.f64 (*.f64 1/2 (*.f64 im (neg.f64 im))) (pow.f64 (cbrt.f64 re) 2)) (neg.f64 (cbrt.f64 re)))
(/.f64 (/.f64 (*.f64 1/2 (*.f64 im (neg.f64 im))) (sqrt.f64 (neg.f64 re))) (sqrt.f64 (neg.f64 re)))
(/.f64 (/.f64 (*.f64 1/2 (*.f64 im (neg.f64 im))) (*.f64 (cbrt.f64 (neg.f64 re)) (cbrt.f64 (neg.f64 re)))) (cbrt.f64 (neg.f64 re)))
(/.f64 (/.f64 (*.f64 1/2 (*.f64 im (neg.f64 im))) -1) re)
(/.f64 (/.f64 (*.f64 1/2 (*.f64 im (neg.f64 im))) (neg.f64 (sqrt.f64 re))) (sqrt.f64 re))
(/.f64 (/.f64 (*.f64 1/2 (*.f64 im (neg.f64 im))) (neg.f64 (pow.f64 (cbrt.f64 re) 2))) (cbrt.f64 re))
(/.f64 (/.f64 (/.f64 (*.f64 im im) 2) 1) re)
(/.f64 (/.f64 (/.f64 (*.f64 im im) 2) (cbrt.f64 re)) (pow.f64 (cbrt.f64 re) 2))
(/.f64 (/.f64 (/.f64 (*.f64 1/2 (*.f64 im im)) (sqrt.f64 re)) 1) (sqrt.f64 re))
(/.f64 (/.f64 (/.f64 (*.f64 1/2 (*.f64 im im)) (sqrt.f64 re)) (cbrt.f64 re)) (cbrt.f64 (sqrt.f64 re)))
(/.f64 (/.f64 (/.f64 (*.f64 1/2 (*.f64 im im)) (sqrt.f64 re)) (sqrt.f64 (pow.f64 (cbrt.f64 re) 2))) (sqrt.f64 (cbrt.f64 re)))
(/.f64 (/.f64 (/.f64 (*.f64 1/2 (*.f64 im im)) (sqrt.f64 re)) (sqrt.f64 (sqrt.f64 re))) (sqrt.f64 (sqrt.f64 re)))
(/.f64 (/.f64 (/.f64 (*.f64 1/2 (*.f64 im im)) (pow.f64 (cbrt.f64 re) 2)) 1) (cbrt.f64 re))
(/.f64 (/.f64 (/.f64 (*.f64 1/2 (*.f64 im im)) (pow.f64 (cbrt.f64 re) 2)) (sqrt.f64 (cbrt.f64 re))) (sqrt.f64 (cbrt.f64 re)))
(/.f64 (/.f64 (/.f64 (*.f64 1/2 (*.f64 im im)) (pow.f64 (cbrt.f64 re) 2)) (cbrt.f64 (pow.f64 (cbrt.f64 re) 2))) (cbrt.f64 (cbrt.f64 re)))
(/.f64 (/.f64 (/.f64 (*.f64 1/2 (*.f64 im im)) (pow.f64 (cbrt.f64 re) 2)) (cbrt.f64 (sqrt.f64 re))) (cbrt.f64 (sqrt.f64 re)))
(/.f64 (/.f64 (/.f64 (*.f64 1/2 (*.f64 im im)) (pow.f64 (cbrt.f64 re) 2)) (*.f64 (cbrt.f64 (cbrt.f64 re)) (cbrt.f64 (cbrt.f64 re)))) (cbrt.f64 (cbrt.f64 re)))
(/.f64 (/.f64 (neg.f64 (*.f64 1/2 (*.f64 im im))) 1) (neg.f64 re))
(/.f64 (/.f64 (neg.f64 (*.f64 1/2 (*.f64 im im))) (sqrt.f64 re)) (neg.f64 (sqrt.f64 re)))
(/.f64 (/.f64 (neg.f64 (*.f64 1/2 (*.f64 im im))) (pow.f64 (cbrt.f64 re) 2)) (neg.f64 (cbrt.f64 re)))
(/.f64 (/.f64 (neg.f64 (*.f64 1/2 (*.f64 im im))) (sqrt.f64 (neg.f64 re))) (sqrt.f64 (neg.f64 re)))
(/.f64 (/.f64 (neg.f64 (*.f64 1/2 (*.f64 im im))) (*.f64 (cbrt.f64 (neg.f64 re)) (cbrt.f64 (neg.f64 re)))) (cbrt.f64 (neg.f64 re)))
(/.f64 (/.f64 (neg.f64 (*.f64 1/2 (*.f64 im im))) -1) re)
(/.f64 (/.f64 (neg.f64 (*.f64 1/2 (*.f64 im im))) (neg.f64 (sqrt.f64 re))) (sqrt.f64 re))
(/.f64 (/.f64 (neg.f64 (*.f64 1/2 (*.f64 im im))) (neg.f64 (pow.f64 (cbrt.f64 re) 2))) (cbrt.f64 re))
(pow.f64 (*.f64 1/2 (*.f64 im (/.f64 im re))) 1)
(pow.f64 (/.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 re)) 2)
(pow.f64 (cbrt.f64 (*.f64 1/2 (*.f64 im (/.f64 im re)))) 3)
(pow.f64 (pow.f64 (*.f64 1/2 (*.f64 im (/.f64 im re))) 3) 1/3)
(sqrt.f64 (*.f64 1/4 (/.f64 (pow.f64 im 4) (*.f64 re re))))
(log.f64 (pow.f64 (exp.f64 1/2) (*.f64 im (/.f64 im re))))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 1/2 (*.f64 im (/.f64 im re))))))
(cbrt.f64 (pow.f64 (*.f64 1/2 (*.f64 im (/.f64 im re))) 3))
(expm1.f64 (log1p.f64 (*.f64 1/2 (*.f64 im (/.f64 im re)))))
(exp.f64 (log.f64 (*.f64 1/2 (*.f64 im (/.f64 im re)))))
(log1p.f64 (expm1.f64 (*.f64 1/2 (*.f64 im (/.f64 im re)))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 im (/.f64 im re)))) 1)
(/.f64 2 (/.f64 re (*.f64 1/2 (*.f64 im im))))
(/.f64 im (/.f64 re im))
(/.f64 (*.f64 im im) re)
(/.f64 (*.f64 im im) (/.f64 re 1))
(/.f64 (*.f64 im (/.f64 im re)) 1)
(/.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 (/.f64 re (*.f64 im im))))
(/.f64 (/.f64 im (sqrt.f64 re)) (/.f64 (sqrt.f64 re) im))
(/.f64 1 (/.f64 re (*.f64 im im)))
(/.f64 (sqrt.f64 im) (/.f64 (/.f64 re im) (sqrt.f64 im)))
(/.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2) (cbrt.f64 (/.f64 re (*.f64 im im))))
(/.f64 (cbrt.f64 im) (/.f64 (/.f64 re im) (cbrt.f64 (*.f64 im im))))
(/.f64 (cbrt.f64 im) (/.f64 (/.f64 (/.f64 re im) (sqrt.f64 im)) (cbrt.f64 (sqrt.f64 im))))
(/.f64 (cbrt.f64 im) (/.f64 (/.f64 re (cbrt.f64 (pow.f64 im 4))) (cbrt.f64 im)))
(/.f64 (cbrt.f64 (*.f64 im im)) (/.f64 re (cbrt.f64 (pow.f64 im 4))))
(/.f64 (cbrt.f64 (pow.f64 im 4)) (/.f64 re (cbrt.f64 (*.f64 im im))))
(/.f64 (cbrt.f64 (pow.f64 im 4)) (/.f64 (neg.f64 re) (neg.f64 (cbrt.f64 (*.f64 im im)))))
(/.f64 (*.f64 1/2 (*.f64 im im)) (/.f64 re 2))
(/.f64 (pow.f64 re -1) (/.f64 1 (*.f64 im im)))
(/.f64 (*.f64 im (neg.f64 im)) (neg.f64 re))
(/.f64 (sqrt.f64 (*.f64 im (neg.f64 im))) (/.f64 (neg.f64 re) (sqrt.f64 (*.f64 im (neg.f64 im)))))
(/.f64 (sqrt.f64 (sqrt.f64 im)) (/.f64 (/.f64 (/.f64 re im) (sqrt.f64 im)) (sqrt.f64 (sqrt.f64 im))))
(/.f64 (sqrt.f64 (cbrt.f64 (*.f64 im im))) (/.f64 (/.f64 (/.f64 re im) (sqrt.f64 im)) (sqrt.f64 (cbrt.f64 im))))
(/.f64 (sqrt.f64 (cbrt.f64 (*.f64 im im))) (/.f64 (/.f64 re (cbrt.f64 (pow.f64 im 4))) (sqrt.f64 (cbrt.f64 (*.f64 im im)))))
(/.f64 (sqrt.f64 (cbrt.f64 (pow.f64 im 4))) (/.f64 (/.f64 re im) (sqrt.f64 (cbrt.f64 (*.f64 im im)))))
(/.f64 (sqrt.f64 (cbrt.f64 (pow.f64 im 4))) (/.f64 (/.f64 re (cbrt.f64 (*.f64 im im))) (sqrt.f64 (cbrt.f64 (pow.f64 im 4)))))
(/.f64 (*.f64 (cbrt.f64 (*.f64 im (neg.f64 im))) (cbrt.f64 (*.f64 im (neg.f64 im)))) (/.f64 (neg.f64 re) (cbrt.f64 (*.f64 im (neg.f64 im)))))
(/.f64 (*.f64 (cbrt.f64 (cbrt.f64 (*.f64 im im))) (cbrt.f64 (cbrt.f64 (*.f64 im im)))) (/.f64 (/.f64 re (cbrt.f64 (pow.f64 im 4))) (cbrt.f64 (cbrt.f64 (*.f64 im im)))))
(/.f64 (cbrt.f64 (cbrt.f64 (pow.f64 im 4))) (/.f64 (/.f64 re (cbrt.f64 (pow.f64 im 4))) (cbrt.f64 (cbrt.f64 (*.f64 im im)))))
(/.f64 (*.f64 (cbrt.f64 (cbrt.f64 (pow.f64 im 4))) (cbrt.f64 (cbrt.f64 (pow.f64 im 4)))) (/.f64 (/.f64 re (cbrt.f64 (*.f64 im im))) (cbrt.f64 (cbrt.f64 (pow.f64 im 4)))))
(/.f64 (*.f64 im (sqrt.f64 im)) (/.f64 re (sqrt.f64 im)))
(/.f64 (*.f64 im (cbrt.f64 (*.f64 im im))) (/.f64 re (cbrt.f64 im)))
(/.f64 (*.f64 2 (*.f64 1/2 (*.f64 im im))) re)
(/.f64 (/.f64 (*.f64 im im) 1) re)
(/.f64 (/.f64 im (/.f64 (sqrt.f64 re) im)) (sqrt.f64 re))
(/.f64 (/.f64 im (/.f64 (pow.f64 (cbrt.f64 re) 2) im)) (cbrt.f64 re))
(/.f64 (/.f64 im (/.f64 (cbrt.f64 re) im)) (pow.f64 (cbrt.f64 re) 2))
(/.f64 (/.f64 im re) (/.f64 1 im))
(/.f64 (neg.f64 im) (neg.f64 (/.f64 re im)))
(/.f64 (neg.f64 im) (/.f64 (neg.f64 re) im))
(/.f64 -1 (neg.f64 (/.f64 re (*.f64 im im))))
(/.f64 -1 (/.f64 (neg.f64 re) (*.f64 im im)))
(/.f64 (neg.f64 (cbrt.f64 (pow.f64 im 4))) (/.f64 (neg.f64 re) (cbrt.f64 (*.f64 im im))))
(/.f64 (/.f64 im 1) (/.f64 re im))
(/.f64 (/.f64 im (pow.f64 (cbrt.f64 re) 2)) (/.f64 (cbrt.f64 re) im))
(/.f64 (/.f64 (cbrt.f64 (pow.f64 im 4)) 1) (/.f64 re (cbrt.f64 (*.f64 im im))))
(/.f64 (/.f64 (cbrt.f64 (pow.f64 im 4)) (sqrt.f64 re)) (/.f64 (sqrt.f64 re) (cbrt.f64 (*.f64 im im))))
(/.f64 (/.f64 (cbrt.f64 (pow.f64 im 4)) (pow.f64 (cbrt.f64 re) 2)) (/.f64 (cbrt.f64 re) (cbrt.f64 (*.f64 im im))))
(/.f64 (neg.f64 (*.f64 im (neg.f64 im))) (neg.f64 (neg.f64 re)))
(/.f64 (*.f64 2 (*.f64 1/2 im)) (/.f64 re im))
(/.f64 (*.f64 2 (*.f64 1/2 (*.f64 im (neg.f64 im)))) (neg.f64 re))
(/.f64 (*.f64 2 (/.f64 (*.f64 im im) 2)) re)
(/.f64 (*.f64 2 (/.f64 (*.f64 1/2 (*.f64 im im)) (sqrt.f64 re))) (sqrt.f64 re))
(/.f64 (*.f64 2 (/.f64 (*.f64 1/2 (*.f64 im im)) (pow.f64 (cbrt.f64 re) 2))) (cbrt.f64 re))
(/.f64 (*.f64 2 (neg.f64 (*.f64 1/2 (*.f64 im im)))) (neg.f64 re))
(/.f64 (*.f64 (*.f64 im im) (/.f64 1 (sqrt.f64 re))) (sqrt.f64 re))
(/.f64 (*.f64 (*.f64 im im) (/.f64 1 (pow.f64 (cbrt.f64 re) 2))) (cbrt.f64 re))
(/.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 im)) (sqrt.f64 (/.f64 re im)))
(/.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 (*.f64 im (neg.f64 im)))) (sqrt.f64 (neg.f64 re)))
(/.f64 (*.f64 1 (*.f64 2 (*.f64 1/2 (*.f64 im im)))) re)
(/.f64 (*.f64 1 (/.f64 (*.f64 im im) 1)) re)
(/.f64 (*.f64 1 (/.f64 im (/.f64 (sqrt.f64 re) im))) (sqrt.f64 re))
(/.f64 (*.f64 1 (/.f64 im (/.f64 (pow.f64 (cbrt.f64 re) 2) im))) (cbrt.f64 re))
(/.f64 (*.f64 1 (neg.f64 im)) (neg.f64 (/.f64 re im)))
(/.f64 (*.f64 1 (neg.f64 (*.f64 im (neg.f64 im)))) (neg.f64 (neg.f64 re)))
(/.f64 (*.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2) (cbrt.f64 im)) (cbrt.f64 (/.f64 re im)))
(/.f64 (*.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2) (cbrt.f64 (*.f64 im im))) (cbrt.f64 re))
(/.f64 (*.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2) (cbrt.f64 (*.f64 im (neg.f64 im)))) (cbrt.f64 (neg.f64 re)))
(/.f64 (*.f64 (*.f64 2 (/.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 re))) (sqrt.f64 (*.f64 1/2 (*.f64 im im)))) (sqrt.f64 re))
(/.f64 (*.f64 (*.f64 2 (cbrt.f64 (*.f64 1/4 (/.f64 (pow.f64 im 4) (*.f64 re re))))) (cbrt.f64 (*.f64 1/2 (*.f64 im im)))) (cbrt.f64 re))
(/.f64 (*.f64 (/.f64 (*.f64 im (sqrt.f64 2)) (sqrt.f64 re)) (sqrt.f64 (*.f64 1/2 (*.f64 im im)))) (sqrt.f64 re))
(/.f64 (*.f64 (/.f64 1 (sqrt.f64 re)) (*.f64 im im)) (sqrt.f64 re))
(/.f64 (*.f64 (/.f64 1 (pow.f64 (cbrt.f64 re) 2)) (*.f64 im im)) (cbrt.f64 re))
(/.f64 (*.f64 (/.f64 im 1) im) re)
(/.f64 (*.f64 (/.f64 im (pow.f64 (cbrt.f64 re) 2)) im) (cbrt.f64 re))
(/.f64 (*.f64 (/.f64 (cbrt.f64 (pow.f64 im 4)) 1) (cbrt.f64 (*.f64 im im))) re)
(/.f64 (*.f64 (/.f64 (cbrt.f64 (pow.f64 im 4)) (sqrt.f64 re)) (cbrt.f64 (*.f64 im im))) (sqrt.f64 re))
(/.f64 (*.f64 (/.f64 (cbrt.f64 (pow.f64 im 4)) (pow.f64 (cbrt.f64 re) 2)) 1) (cbrt.f64 (/.f64 re (*.f64 im im))))
(/.f64 (*.f64 (/.f64 (cbrt.f64 (pow.f64 im 4)) (pow.f64 (cbrt.f64 re) 2)) (cbrt.f64 im)) (cbrt.f64 (/.f64 re im)))
(/.f64 (*.f64 (/.f64 (cbrt.f64 (pow.f64 im 4)) (pow.f64 (cbrt.f64 re) 2)) (cbrt.f64 (*.f64 im im))) (cbrt.f64 re))
(/.f64 (*.f64 (/.f64 (cbrt.f64 (pow.f64 im 4)) (pow.f64 (cbrt.f64 re) 2)) (cbrt.f64 (*.f64 im (neg.f64 im)))) (cbrt.f64 (neg.f64 re)))
(/.f64 (*.f64 (cbrt.f64 (pow.f64 im 4)) (cbrt.f64 (*.f64 im (/.f64 im re)))) (pow.f64 (cbrt.f64 re) 2))
(/.f64 (*.f64 (*.f64 2 (*.f64 1/2 (*.f64 im im))) 1) re)
(/.f64 (*.f64 (/.f64 (*.f64 im im) 1) 1) re)
(/.f64 (*.f64 (/.f64 im (/.f64 (sqrt.f64 re) im)) 1) (sqrt.f64 re))
(/.f64 (*.f64 (/.f64 im (/.f64 (pow.f64 (cbrt.f64 re) 2) im)) 1) (cbrt.f64 re))
(/.f64 (*.f64 (neg.f64 im) 1) (neg.f64 (/.f64 re im)))
(/.f64 (*.f64 (neg.f64 (*.f64 im (neg.f64 im))) 1) (neg.f64 (neg.f64 re)))
(/.f64 (*.f64 (*.f64 1/2 im) 2) (/.f64 re im))
(/.f64 (*.f64 (*.f64 1/2 (*.f64 im (neg.f64 im))) 2) (neg.f64 re))
(/.f64 (*.f64 (/.f64 (*.f64 im im) 2) 2) re)
(/.f64 (*.f64 (/.f64 (*.f64 1/2 (*.f64 im im)) (sqrt.f64 re)) 2) (sqrt.f64 re))
(/.f64 (*.f64 (/.f64 (*.f64 1/2 (*.f64 im im)) (pow.f64 (cbrt.f64 re) 2)) 2) (cbrt.f64 re))
(/.f64 (*.f64 (neg.f64 (*.f64 1/2 (*.f64 im im))) 2) (neg.f64 re))
(/.f64 (*.f64 (sqrt.f64 im) (/.f64 im (sqrt.f64 re))) (sqrt.f64 (/.f64 re im)))
(/.f64 (*.f64 (sqrt.f64 (*.f64 im (neg.f64 im))) (/.f64 im (sqrt.f64 re))) (sqrt.f64 (neg.f64 re)))
(/.f64 (*.f64 (sqrt.f64 (*.f64 1/2 (*.f64 im im))) (*.f64 2 (/.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 re)))) (sqrt.f64 re))
(/.f64 (*.f64 (cbrt.f64 im) (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2)) (cbrt.f64 (/.f64 re im)))
(/.f64 (*.f64 (cbrt.f64 (*.f64 im im)) (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2)) (cbrt.f64 re))
(/.f64 (*.f64 (cbrt.f64 (*.f64 im (neg.f64 im))) (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2)) (cbrt.f64 (neg.f64 re)))
(/.f64 (*.f64 1 (*.f64 (/.f64 im (sqrt.f64 re)) (cbrt.f64 (/.f64 im (sqrt.f64 re))))) (cbrt.f64 (/.f64 re (*.f64 im im))))
(/.f64 (*.f64 (cbrt.f64 im) (*.f64 (/.f64 im (sqrt.f64 re)) (cbrt.f64 (/.f64 im (sqrt.f64 re))))) (cbrt.f64 (/.f64 re im)))
(/.f64 (*.f64 (cbrt.f64 (*.f64 im im)) (*.f64 (/.f64 im (sqrt.f64 re)) (cbrt.f64 (/.f64 im (sqrt.f64 re))))) (cbrt.f64 re))
(/.f64 (*.f64 (cbrt.f64 (*.f64 im (neg.f64 im))) (*.f64 (/.f64 im (sqrt.f64 re)) (cbrt.f64 (/.f64 im (sqrt.f64 re))))) (cbrt.f64 (neg.f64 re)))
(/.f64 (*.f64 1 (/.f64 im (/.f64 (cbrt.f64 re) im))) (pow.f64 (cbrt.f64 re) 2))
(/.f64 (*.f64 im (/.f64 im (cbrt.f64 re))) (pow.f64 (cbrt.f64 re) 2))
(/.f64 (*.f64 (cbrt.f64 (pow.f64 im 4)) (/.f64 (cbrt.f64 (*.f64 im im)) (sqrt.f64 re))) (sqrt.f64 re))
(/.f64 (/.f64 im (sqrt.f64 (/.f64 re im))) (sqrt.f64 (/.f64 re im)))
(/.f64 (/.f64 im (*.f64 (cbrt.f64 (/.f64 re im)) (cbrt.f64 (/.f64 re im)))) (cbrt.f64 (/.f64 re im)))
(/.f64 (/.f64 im (/.f64 (sqrt.f64 re) (cbrt.f64 (*.f64 im im)))) (/.f64 (sqrt.f64 re) (cbrt.f64 im)))
(/.f64 (/.f64 im (/.f64 1 (sqrt.f64 im))) (/.f64 re (sqrt.f64 im)))
(/.f64 (/.f64 im (/.f64 1 (cbrt.f64 (*.f64 im im)))) (/.f64 re (cbrt.f64 im)))
(/.f64 (/.f64 im (/.f64 (sqrt.f64 re) (sqrt.f64 im))) (/.f64 (sqrt.f64 re) (sqrt.f64 im)))
(/.f64 (/.f64 im (/.f64 (pow.f64 (cbrt.f64 re) 2) (sqrt.f64 im))) (/.f64 (cbrt.f64 re) (sqrt.f64 im)))
(/.f64 (/.f64 im (/.f64 (cbrt.f64 re) (cbrt.f64 (*.f64 im (/.f64 im re))))) (/.f64 (cbrt.f64 re) (cbrt.f64 im)))
(/.f64 (/.f64 1 (*.f64 (cbrt.f64 (/.f64 re (*.f64 im im))) (cbrt.f64 (/.f64 re (*.f64 im im))))) (cbrt.f64 (/.f64 re (*.f64 im im))))
(/.f64 (/.f64 1 (/.f64 (sqrt.f64 re) 1)) (/.f64 (sqrt.f64 re) (*.f64 im im)))
(/.f64 (/.f64 1 (/.f64 (pow.f64 (cbrt.f64 re) 2) 1)) (/.f64 (cbrt.f64 re) (*.f64 im im)))
(/.f64 (/.f64 (*.f64 im (neg.f64 im)) 1) (neg.f64 re))
(/.f64 (/.f64 (*.f64 im (neg.f64 im)) (sqrt.f64 re)) (neg.f64 (sqrt.f64 re)))
(/.f64 (/.f64 (*.f64 im (neg.f64 im)) (pow.f64 (cbrt.f64 re) 2)) (neg.f64 (cbrt.f64 re)))
(/.f64 (/.f64 (*.f64 im (neg.f64 im)) (sqrt.f64 (neg.f64 re))) (sqrt.f64 (neg.f64 re)))
(/.f64 (/.f64 (*.f64 im (neg.f64 im)) (*.f64 (cbrt.f64 (neg.f64 re)) (cbrt.f64 (neg.f64 re)))) (cbrt.f64 (neg.f64 re)))
(/.f64 (/.f64 (*.f64 im (neg.f64 im)) -1) re)
(/.f64 (/.f64 (*.f64 im (neg.f64 im)) (neg.f64 (sqrt.f64 re))) (sqrt.f64 re))
(/.f64 (/.f64 (*.f64 im (neg.f64 im)) (neg.f64 (pow.f64 (cbrt.f64 re) 2))) (cbrt.f64 re))
(/.f64 (/.f64 (*.f64 2 (*.f64 1/2 (*.f64 im im))) 1) re)
(/.f64 (/.f64 (*.f64 2 (*.f64 1/2 (*.f64 im im))) (sqrt.f64 re)) (sqrt.f64 re))
(/.f64 (/.f64 (*.f64 2 (*.f64 1/2 (*.f64 im im))) (cbrt.f64 re)) (pow.f64 (cbrt.f64 re) 2))
(/.f64 (/.f64 (*.f64 2 (*.f64 1/2 (*.f64 im im))) (pow.f64 (cbrt.f64 re) 2)) (cbrt.f64 re))
(/.f64 (/.f64 (/.f64 (*.f64 im im) 1) 1) re)
(/.f64 (/.f64 (/.f64 im (/.f64 (sqrt.f64 re) im)) 1) (sqrt.f64 re))
(/.f64 (/.f64 (/.f64 im (/.f64 (sqrt.f64 re) im)) (cbrt.f64 re)) (cbrt.f64 (sqrt.f64 re)))
(/.f64 (/.f64 (/.f64 im (/.f64 (sqrt.f64 re) im)) (sqrt.f64 (pow.f64 (cbrt.f64 re) 2))) (sqrt.f64 (cbrt.f64 re)))
(/.f64 (/.f64 (/.f64 im (/.f64 (sqrt.f64 re) im)) (sqrt.f64 (sqrt.f64 re))) (sqrt.f64 (sqrt.f64 re)))
(/.f64 (/.f64 (/.f64 im (/.f64 (pow.f64 (cbrt.f64 re) 2) im)) 1) (cbrt.f64 re))
(/.f64 (/.f64 (/.f64 im (/.f64 (pow.f64 (cbrt.f64 re) 2) im)) (sqrt.f64 (cbrt.f64 re))) (sqrt.f64 (cbrt.f64 re)))
(/.f64 (/.f64 (/.f64 im (/.f64 (pow.f64 (cbrt.f64 re) 2) im)) (cbrt.f64 (pow.f64 (cbrt.f64 re) 2))) (cbrt.f64 (cbrt.f64 re)))
(/.f64 (/.f64 (/.f64 im (/.f64 (pow.f64 (cbrt.f64 re) 2) im)) (cbrt.f64 (sqrt.f64 re))) (cbrt.f64 (sqrt.f64 re)))
(/.f64 (/.f64 (/.f64 im (/.f64 (pow.f64 (cbrt.f64 re) 2) im)) (*.f64 (cbrt.f64 (cbrt.f64 re)) (cbrt.f64 (cbrt.f64 re)))) (cbrt.f64 (cbrt.f64 re)))
(pow.f64 (*.f64 im (/.f64 im re)) 1)
(pow.f64 (/.f64 im (sqrt.f64 re)) 2)
(pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 3)
(pow.f64 (/.f64 (pow.f64 im 4) (*.f64 re re)) 1/2)
(pow.f64 (pow.f64 (*.f64 im (/.f64 im re)) 3) 1/3)
(pow.f64 (/.f64 re (*.f64 im im)) -1)
(neg.f64 (/.f64 im (/.f64 (neg.f64 re) im)))
(sqrt.f64 (/.f64 (pow.f64 im 4) (*.f64 re re)))
(log.f64 (exp.f64 (*.f64 im (/.f64 im re))))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 im (/.f64 im re)))))
(cbrt.f64 (pow.f64 (*.f64 im (/.f64 im re)) 3))
(expm1.f64 (log1p.f64 (*.f64 im (/.f64 im re))))
(exp.f64 (log.f64 (*.f64 im (/.f64 im re))))
(log1p.f64 (expm1.f64 (*.f64 im (/.f64 im re))))
Outputs
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (sqrt.f64 (/.f64 1 re)))
(*.f64 im (fabs.f64 (pow.f64 re -1/2)))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (sqrt.f64 (/.f64 1 re)))
(*.f64 im (fabs.f64 (pow.f64 re -1/2)))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (sqrt.f64 (/.f64 1 re)))
(*.f64 im (fabs.f64 (pow.f64 re -1/2)))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (sqrt.f64 (/.f64 1 re)))
(*.f64 im (fabs.f64 (pow.f64 re -1/2)))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (sqrt.f64 (/.f64 1 re)))
(*.f64 im (fabs.f64 (pow.f64 re -1/2)))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (sqrt.f64 (/.f64 1 re)))
(*.f64 im (fabs.f64 (pow.f64 re -1/2)))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (sqrt.f64 (/.f64 1 re)))
(*.f64 im (fabs.f64 (pow.f64 re -1/2)))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 im (sqrt.f64 (/.f64 1 re)))
(*.f64 im (fabs.f64 (pow.f64 re -1/2)))
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(neg.f64 (*.f64 im (sqrt.f64 (/.f64 1 re))))
(*.f64 im (neg.f64 (fabs.f64 (pow.f64 re -1/2))))
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(neg.f64 (*.f64 im (sqrt.f64 (/.f64 1 re))))
(*.f64 im (neg.f64 (fabs.f64 (pow.f64 re -1/2))))
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(neg.f64 (*.f64 im (sqrt.f64 (/.f64 1 re))))
(*.f64 im (neg.f64 (fabs.f64 (pow.f64 re -1/2))))
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(neg.f64 (*.f64 im (sqrt.f64 (/.f64 1 re))))
(*.f64 im (neg.f64 (fabs.f64 (pow.f64 re -1/2))))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(*.f64 1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(-.f64 (exp.f64 (log1p.f64 (/.f64 im (sqrt.f64 re)))) 1)
(/.f64 im (sqrt.f64 re))
(*.f64 im (sqrt.f64 (pow.f64 re -1)))
(*.f64 im (sqrt.f64 (/.f64 1 re)))
(*.f64 im (fabs.f64 (pow.f64 re -1/2)))
(*.f64 im (pow.f64 (pow.f64 re -1) 1/2))
(*.f64 im (sqrt.f64 (/.f64 1 re)))
(*.f64 im (fabs.f64 (pow.f64 re -1/2)))
(*.f64 (/.f64 im (sqrt.f64 re)) 1)
(/.f64 im (sqrt.f64 re))
(*.f64 (/.f64 im (sqrt.f64 re)) (pow.f64 1 1/2))
(/.f64 im (sqrt.f64 re))
(*.f64 1 (/.f64 im (sqrt.f64 re)))
(/.f64 im (sqrt.f64 re))
(*.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) (sqrt.f64 (/.f64 im (sqrt.f64 re))))
(/.f64 im (sqrt.f64 re))
(*.f64 (/.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 re)) (sqrt.f64 2))
(*.f64 (/.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 re)) (sqrt.f64 2))
(/.f64 (*.f64 (sqrt.f64 1/2) (*.f64 im (sqrt.f64 2))) (sqrt.f64 re))
(*.f64 (sqrt.f64 2) (/.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 re)))
(*.f64 (/.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 re)) (sqrt.f64 2))
(/.f64 (*.f64 (sqrt.f64 1/2) (*.f64 im (sqrt.f64 2))) (sqrt.f64 re))
(*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (cbrt.f64 (*.f64 im (/.f64 im re))))
(*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (cbrt.f64 (/.f64 im (sqrt.f64 re))))
(*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (cbrt.f64 (*.f64 im (/.f64 im re))))
(*.f64 (sqrt.f64 (cbrt.f64 (*.f64 im (/.f64 im re)))) (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2)))
(*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2)) (sqrt.f64 (cbrt.f64 (*.f64 im (/.f64 im re)))))
(*.f64 (fabs.f64 (cbrt.f64 (*.f64 im (/.f64 im re)))) (sqrt.f64 (cbrt.f64 (*.f64 im (/.f64 im re)))))
(*.f64 (sqrt.f64 (pow.f64 re -1)) im)
(*.f64 im (sqrt.f64 (/.f64 1 re)))
(*.f64 im (fabs.f64 (pow.f64 re -1/2)))
(*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2)) (sqrt.f64 (cbrt.f64 (*.f64 im (/.f64 im re)))))
(*.f64 (fabs.f64 (cbrt.f64 (*.f64 im (/.f64 im re)))) (sqrt.f64 (cbrt.f64 (*.f64 im (/.f64 im re)))))
(*.f64 (pow.f64 (pow.f64 re -1) 1/2) im)
(*.f64 im (sqrt.f64 (/.f64 1 re)))
(*.f64 im (fabs.f64 (pow.f64 re -1/2)))
(*.f64 (pow.f64 1 1/2) (/.f64 im (sqrt.f64 re)))
(/.f64 im (sqrt.f64 re))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2) 1/2) (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 1/2))
(*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2)) (sqrt.f64 (cbrt.f64 (*.f64 im (/.f64 im re)))))
(*.f64 (fabs.f64 (cbrt.f64 (*.f64 im (/.f64 im re)))) (sqrt.f64 (cbrt.f64 (*.f64 im (/.f64 im re)))))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 1/2) (pow.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2) 1/2))
(*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2)) (sqrt.f64 (cbrt.f64 (*.f64 im (/.f64 im re)))))
(*.f64 (fabs.f64 (cbrt.f64 (*.f64 im (/.f64 im re)))) (sqrt.f64 (cbrt.f64 (*.f64 im (/.f64 im re)))))
(/.f64 im (sqrt.f64 re))
(/.f64 im (/.f64 (sqrt.f64 re) 1))
(/.f64 im (sqrt.f64 re))
(/.f64 1 (sqrt.f64 (/.f64 re (*.f64 im im))))
(/.f64 1 (/.f64 (sqrt.f64 re) im))
(/.f64 im (sqrt.f64 re))
(/.f64 1 (/.f64 (sqrt.f64 (/.f64 re im)) (sqrt.f64 im)))
(*.f64 (/.f64 1 (sqrt.f64 (/.f64 re im))) (sqrt.f64 im))
(/.f64 (sqrt.f64 im) (sqrt.f64 (/.f64 re im)))
(/.f64 (sqrt.f64 im) (sqrt.f64 (/.f64 re im)))
(*.f64 (/.f64 1 (sqrt.f64 (/.f64 re im))) (sqrt.f64 im))
(/.f64 (sqrt.f64 im) (/.f64 (sqrt.f64 re) (sqrt.f64 im)))
(/.f64 im (sqrt.f64 re))
(/.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (cbrt.f64 (/.f64 re (*.f64 im im))))
(/.f64 (cbrt.f64 im) (/.f64 (sqrt.f64 re) (cbrt.f64 (*.f64 im im))))
(*.f64 (/.f64 (cbrt.f64 im) (sqrt.f64 re)) (cbrt.f64 (*.f64 im im)))
(*.f64 (cbrt.f64 im) (/.f64 (cbrt.f64 (*.f64 im im)) (sqrt.f64 re)))
(/.f64 (cbrt.f64 im) (/.f64 (sqrt.f64 (/.f64 re im)) (cbrt.f64 (sqrt.f64 im))))
(*.f64 (/.f64 (cbrt.f64 im) (sqrt.f64 (/.f64 re im))) (cbrt.f64 (sqrt.f64 im)))
(*.f64 (cbrt.f64 (sqrt.f64 im)) (/.f64 (cbrt.f64 im) (sqrt.f64 (/.f64 re im))))
(/.f64 (cbrt.f64 (*.f64 im im)) (/.f64 (sqrt.f64 re) (cbrt.f64 im)))
(*.f64 (/.f64 (cbrt.f64 im) (sqrt.f64 re)) (cbrt.f64 (*.f64 im im)))
(*.f64 (cbrt.f64 im) (/.f64 (cbrt.f64 (*.f64 im im)) (sqrt.f64 re)))
(/.f64 (sqrt.f64 (*.f64 im (neg.f64 im))) (sqrt.f64 (neg.f64 re)))
(/.f64 (sqrt.f64 (sqrt.f64 im)) (/.f64 (sqrt.f64 (/.f64 re im)) (sqrt.f64 (sqrt.f64 im))))
(*.f64 (/.f64 (sqrt.f64 (sqrt.f64 im)) (sqrt.f64 (/.f64 re im))) (sqrt.f64 (sqrt.f64 im)))
(*.f64 (sqrt.f64 (sqrt.f64 im)) (/.f64 (sqrt.f64 (sqrt.f64 im)) (sqrt.f64 (/.f64 re im))))
(/.f64 (sqrt.f64 (cbrt.f64 (*.f64 im im))) (/.f64 (sqrt.f64 (/.f64 re im)) (sqrt.f64 (cbrt.f64 im))))
(*.f64 (/.f64 (sqrt.f64 (cbrt.f64 (*.f64 im im))) (sqrt.f64 (/.f64 re im))) (sqrt.f64 (cbrt.f64 im)))
(*.f64 (sqrt.f64 (cbrt.f64 im)) (/.f64 (sqrt.f64 (cbrt.f64 (*.f64 im im))) (sqrt.f64 (/.f64 re im))))
(/.f64 (sqrt.f64 (cbrt.f64 (pow.f64 im 4))) (/.f64 (sqrt.f64 re) (sqrt.f64 (cbrt.f64 (*.f64 im im)))))
(*.f64 (/.f64 (sqrt.f64 (cbrt.f64 (pow.f64 im 4))) (sqrt.f64 re)) (sqrt.f64 (cbrt.f64 (*.f64 im im))))
(*.f64 (sqrt.f64 (cbrt.f64 (*.f64 im im))) (/.f64 (sqrt.f64 (cbrt.f64 (pow.f64 im 4))) (sqrt.f64 re)))
(/.f64 (/.f64 im (cbrt.f64 re)) (cbrt.f64 (sqrt.f64 re)))
(/.f64 im (*.f64 (cbrt.f64 re) (cbrt.f64 (sqrt.f64 re))))
(/.f64 (/.f64 im 1) (sqrt.f64 re))
(/.f64 im (sqrt.f64 re))
(/.f64 (*.f64 1 (sqrt.f64 (*.f64 im (neg.f64 im)))) (sqrt.f64 (neg.f64 re)))
(/.f64 (sqrt.f64 (*.f64 im (neg.f64 im))) (sqrt.f64 (neg.f64 re)))
(/.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 (*.f64 1/2 (*.f64 im im)))) (sqrt.f64 re))
(/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 re) (sqrt.f64 (*.f64 1/2 (*.f64 im im)))))
(*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 re)) (sqrt.f64 (*.f64 im (*.f64 im 1/2))))
(/.f64 (*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (cbrt.f64 im)) (cbrt.f64 (/.f64 re im)))
(/.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (/.f64 (cbrt.f64 (/.f64 re im)) (cbrt.f64 im)))
(*.f64 (/.f64 (cbrt.f64 im) (cbrt.f64 (/.f64 re im))) (cbrt.f64 (/.f64 im (sqrt.f64 re))))
(/.f64 (*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (cbrt.f64 (*.f64 im im))) (cbrt.f64 re))
(/.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (/.f64 (cbrt.f64 re) (cbrt.f64 (*.f64 im im))))
(*.f64 (/.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (cbrt.f64 re)) (cbrt.f64 (*.f64 im im)))
(/.f64 (*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (cbrt.f64 (*.f64 im (neg.f64 im)))) (cbrt.f64 (neg.f64 re)))
(/.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (/.f64 (cbrt.f64 (neg.f64 re)) (cbrt.f64 (*.f64 im (neg.f64 im)))))
(*.f64 (/.f64 (cbrt.f64 (*.f64 im (neg.f64 im))) (cbrt.f64 (neg.f64 re))) (cbrt.f64 (/.f64 im (sqrt.f64 re))))
(/.f64 (*.f64 (pow.f64 1 1/2) im) (sqrt.f64 re))
(/.f64 im (sqrt.f64 re))
(/.f64 (*.f64 (pow.f64 1 1/2) 1) (sqrt.f64 (/.f64 re (*.f64 im im))))
(/.f64 1 (sqrt.f64 (/.f64 re (*.f64 im im))))
(/.f64 (*.f64 (pow.f64 1 1/2) (sqrt.f64 im)) (sqrt.f64 (/.f64 re im)))
(*.f64 (/.f64 1 (sqrt.f64 (/.f64 re im))) (sqrt.f64 im))
(/.f64 (sqrt.f64 im) (sqrt.f64 (/.f64 re im)))
(/.f64 (*.f64 (pow.f64 1 1/2) (sqrt.f64 (*.f64 im (neg.f64 im)))) (sqrt.f64 (neg.f64 re)))
(/.f64 (sqrt.f64 (*.f64 im (neg.f64 im))) (sqrt.f64 (neg.f64 re)))
(/.f64 (*.f64 (sqrt.f64 (*.f64 im (neg.f64 im))) 1) (sqrt.f64 (neg.f64 re)))
(/.f64 (sqrt.f64 (*.f64 im (neg.f64 im))) (sqrt.f64 (neg.f64 re)))
(/.f64 (*.f64 (sqrt.f64 (*.f64 1/2 (*.f64 im im))) (sqrt.f64 2)) (sqrt.f64 re))
(/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 re) (sqrt.f64 (*.f64 1/2 (*.f64 im im)))))
(*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 re)) (sqrt.f64 (*.f64 im (*.f64 im 1/2))))
(/.f64 (*.f64 (cbrt.f64 im) (cbrt.f64 (/.f64 im (sqrt.f64 re)))) (cbrt.f64 (/.f64 re im)))
(/.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (/.f64 (cbrt.f64 (/.f64 re im)) (cbrt.f64 im)))
(*.f64 (/.f64 (cbrt.f64 im) (cbrt.f64 (/.f64 re im))) (cbrt.f64 (/.f64 im (sqrt.f64 re))))
(/.f64 (*.f64 (cbrt.f64 (*.f64 im im)) (cbrt.f64 (/.f64 im (sqrt.f64 re)))) (cbrt.f64 re))
(/.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (/.f64 (cbrt.f64 re) (cbrt.f64 (*.f64 im im))))
(*.f64 (/.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (cbrt.f64 re)) (cbrt.f64 (*.f64 im im)))
(/.f64 (*.f64 (cbrt.f64 (*.f64 im (neg.f64 im))) (cbrt.f64 (/.f64 im (sqrt.f64 re)))) (cbrt.f64 (neg.f64 re)))
(/.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (/.f64 (cbrt.f64 (neg.f64 re)) (cbrt.f64 (*.f64 im (neg.f64 im)))))
(*.f64 (/.f64 (cbrt.f64 (*.f64 im (neg.f64 im))) (cbrt.f64 (neg.f64 re))) (cbrt.f64 (/.f64 im (sqrt.f64 re))))
(/.f64 (/.f64 im (sqrt.f64 (pow.f64 (cbrt.f64 re) 2))) (sqrt.f64 (cbrt.f64 re)))
(/.f64 im (*.f64 (sqrt.f64 (cbrt.f64 re)) (sqrt.f64 (pow.f64 (cbrt.f64 re) 2))))
(/.f64 im (*.f64 (fabs.f64 (cbrt.f64 re)) (sqrt.f64 (cbrt.f64 re))))
(/.f64 (/.f64 im (sqrt.f64 (sqrt.f64 re))) (sqrt.f64 (sqrt.f64 re)))
(/.f64 im (sqrt.f64 re))
(pow.f64 (*.f64 im (/.f64 im re)) 1/2)
(sqrt.f64 (*.f64 im (/.f64 im re)))
(pow.f64 (/.f64 im (sqrt.f64 re)) 1)
(/.f64 im (sqrt.f64 re))
(pow.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) 2)
(/.f64 im (sqrt.f64 re))
(pow.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) 3)
(/.f64 im (sqrt.f64 re))
(pow.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 3) 1/3)
(/.f64 im (sqrt.f64 re))
(fabs.f64 (/.f64 im (sqrt.f64 re)))
(/.f64 im (sqrt.f64 re))
(log.f64 (exp.f64 (/.f64 im (sqrt.f64 re))))
(/.f64 im (sqrt.f64 re))
(log.f64 (+.f64 1 (expm1.f64 (/.f64 im (sqrt.f64 re)))))
(/.f64 im (sqrt.f64 re))
(cbrt.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 3))
(/.f64 im (sqrt.f64 re))
(expm1.f64 (log1p.f64 (/.f64 im (sqrt.f64 re))))
(/.f64 im (sqrt.f64 re))
(exp.f64 (log.f64 (/.f64 im (sqrt.f64 re))))
(/.f64 im (sqrt.f64 re))
(log1p.f64 (expm1.f64 (/.f64 im (sqrt.f64 re))))
(/.f64 im (sqrt.f64 re))
(-.f64 (exp.f64 (log1p.f64 (*.f64 im (/.f64 im re)))) 1)
(*.f64 im (/.f64 im re))
(*.f64 2 (*.f64 1/2 (*.f64 im (/.f64 im re))))
(*.f64 im (/.f64 im re))
(*.f64 1/2 (*.f64 2 (*.f64 im (/.f64 im re))))
(*.f64 im (/.f64 im re))
(*.f64 im (/.f64 im re))
(*.f64 (*.f64 im im) (pow.f64 re -1))
(*.f64 im (/.f64 im re))
(*.f64 (*.f64 im (/.f64 im re)) 1)
(*.f64 im (/.f64 im re))
(*.f64 (*.f64 1/2 (*.f64 im (/.f64 im re))) 2)
(*.f64 im (/.f64 im re))
(*.f64 (/.f64 im (sqrt.f64 re)) (/.f64 im (sqrt.f64 re)))
(*.f64 im (/.f64 im re))
(*.f64 1 (*.f64 im (/.f64 im re)))
(*.f64 im (/.f64 im re))
(*.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 (/.f64 im (sqrt.f64 re)))))
(*.f64 im (/.f64 im re))
(*.f64 (/.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 re)) (/.f64 (*.f64 im (sqrt.f64 2)) (sqrt.f64 re)))
(*.f64 (/.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 re)) (/.f64 im (/.f64 (sqrt.f64 re) (sqrt.f64 2))))
(*.f64 (/.f64 im (sqrt.f64 re)) (/.f64 (*.f64 (sqrt.f64 1/2) (*.f64 im (sqrt.f64 2))) (sqrt.f64 re)))
(*.f64 (/.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 re)) (*.f64 2 (/.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 re))))
(*.f64 2 (pow.f64 (/.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 re)) 2))
(*.f64 2 (pow.f64 (*.f64 (/.f64 (sqrt.f64 1/2) (sqrt.f64 re)) im) 2))
(*.f64 (sqrt.f64 2) (*.f64 (/.f64 im (sqrt.f64 re)) (/.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 re))))
(*.f64 (/.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 re)) (/.f64 im (/.f64 (sqrt.f64 re) (sqrt.f64 2))))
(*.f64 (/.f64 im (sqrt.f64 re)) (/.f64 (*.f64 (sqrt.f64 1/2) (*.f64 im (sqrt.f64 2))) (sqrt.f64 re)))
(*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (/.f64 (*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) im) (sqrt.f64 re)))
(*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (/.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (/.f64 (sqrt.f64 re) im)))
(*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (pow.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) 4))
(*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2))
(*.f64 im (/.f64 im re))
(*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (*.f64 (/.f64 im (sqrt.f64 re)) (cbrt.f64 (/.f64 im (sqrt.f64 re)))))
(*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (/.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (/.f64 (sqrt.f64 re) im)))
(*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (pow.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) 4))
(*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (/.f64 (cbrt.f64 (pow.f64 im 4)) (pow.f64 (cbrt.f64 re) 2)))
(/.f64 (*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (cbrt.f64 (pow.f64 im 4))) (pow.f64 (cbrt.f64 re) 2))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2) (cbrt.f64 (*.f64 im (/.f64 im re))))
(*.f64 im (/.f64 im re))
(*.f64 (cbrt.f64 (*.f64 1/2 (*.f64 im (/.f64 im re)))) (*.f64 2 (cbrt.f64 (*.f64 1/4 (/.f64 (pow.f64 im 4) (*.f64 re re))))))
(*.f64 (cbrt.f64 (*.f64 1/4 (/.f64 (pow.f64 im 4) (*.f64 re re)))) (*.f64 2 (cbrt.f64 (*.f64 1/2 (*.f64 im (/.f64 im re))))))
(*.f64 2 (*.f64 (cbrt.f64 (*.f64 im (*.f64 1/2 (/.f64 im re)))) (cbrt.f64 (pow.f64 (*.f64 im (*.f64 1/2 (/.f64 im re))) 2))))
(*.f64 (cbrt.f64 (*.f64 1/4 (/.f64 (pow.f64 im 4) (*.f64 re re)))) (*.f64 2 (cbrt.f64 (*.f64 1/2 (*.f64 im (/.f64 im re))))))
(*.f64 2 (*.f64 (cbrt.f64 (*.f64 im (*.f64 1/2 (/.f64 im re)))) (cbrt.f64 (pow.f64 (*.f64 im (*.f64 1/2 (/.f64 im re))) 2))))
(*.f64 (cbrt.f64 (pow.f64 im 4)) (/.f64 (cbrt.f64 (*.f64 im im)) re))
(*.f64 (cbrt.f64 (*.f64 im im)) (/.f64 (cbrt.f64 (pow.f64 im 4)) re))
(*.f64 (pow.f64 re -1) (*.f64 im im))
(*.f64 im (/.f64 im re))
(*.f64 (*.f64 im (neg.f64 im)) (/.f64 -1 re))
(*.f64 im (/.f64 im re))
(*.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 (/.f64 im (sqrt.f64 re)))) (sqrt.f64 (/.f64 im (sqrt.f64 re))))
(*.f64 im (/.f64 im re))
(*.f64 (*.f64 2 (*.f64 im (/.f64 im re))) 1/2)
(*.f64 im (/.f64 im re))
(*.f64 (*.f64 2 (cbrt.f64 (*.f64 1/4 (/.f64 (pow.f64 im 4) (*.f64 re re))))) (cbrt.f64 (*.f64 1/2 (*.f64 im (/.f64 im re)))))
(*.f64 (cbrt.f64 (*.f64 1/4 (/.f64 (pow.f64 im 4) (*.f64 re re)))) (*.f64 2 (cbrt.f64 (*.f64 1/2 (*.f64 im (/.f64 im re))))))
(*.f64 2 (*.f64 (cbrt.f64 (*.f64 im (*.f64 1/2 (/.f64 im re)))) (cbrt.f64 (pow.f64 (*.f64 im (*.f64 1/2 (/.f64 im re))) 2))))
(*.f64 (/.f64 (*.f64 im (sqrt.f64 2)) (sqrt.f64 re)) (/.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 re)))
(*.f64 (/.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 re)) (/.f64 im (/.f64 (sqrt.f64 re) (sqrt.f64 2))))
(*.f64 (/.f64 im (sqrt.f64 re)) (/.f64 (*.f64 (sqrt.f64 1/2) (*.f64 im (sqrt.f64 2))) (sqrt.f64 re)))
(*.f64 (/.f64 (*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) im) (sqrt.f64 re)) (cbrt.f64 (/.f64 im (sqrt.f64 re))))
(*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (/.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (/.f64 (sqrt.f64 re) im)))
(*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (pow.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) 4))
(*.f64 (/.f64 (cbrt.f64 (*.f64 im im)) re) (cbrt.f64 (pow.f64 im 4)))
(*.f64 (cbrt.f64 (pow.f64 im 4)) (/.f64 (cbrt.f64 (*.f64 im im)) re))
(*.f64 (cbrt.f64 (*.f64 im im)) (/.f64 (cbrt.f64 (pow.f64 im 4)) re))
(*.f64 (/.f64 (cbrt.f64 (*.f64 im im)) re) (/.f64 (cbrt.f64 (pow.f64 im 4)) 1))
(*.f64 (cbrt.f64 (pow.f64 im 4)) (/.f64 (cbrt.f64 (*.f64 im im)) re))
(*.f64 (cbrt.f64 (*.f64 im im)) (/.f64 (cbrt.f64 (pow.f64 im 4)) re))
(*.f64 (*.f64 2 (/.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 re))) (/.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 re)))
(*.f64 2 (pow.f64 (/.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 re)) 2))
(*.f64 2 (pow.f64 (*.f64 (/.f64 (sqrt.f64 1/2) (sqrt.f64 re)) im) 2))
(*.f64 (*.f64 2 (cbrt.f64 (*.f64 1/2 (*.f64 im (/.f64 im re))))) (cbrt.f64 (*.f64 1/4 (/.f64 (pow.f64 im 4) (*.f64 re re)))))
(*.f64 (cbrt.f64 (*.f64 1/4 (/.f64 (pow.f64 im 4) (*.f64 re re)))) (*.f64 2 (cbrt.f64 (*.f64 1/2 (*.f64 im (/.f64 im re))))))
(*.f64 2 (*.f64 (cbrt.f64 (*.f64 im (*.f64 1/2 (/.f64 im re)))) (cbrt.f64 (pow.f64 (*.f64 im (*.f64 1/2 (/.f64 im re))) 2))))
(*.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (/.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 re))) (sqrt.f64 2))
(*.f64 (/.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 re)) (/.f64 im (/.f64 (sqrt.f64 re) (sqrt.f64 2))))
(*.f64 (/.f64 im (sqrt.f64 re)) (/.f64 (*.f64 (sqrt.f64 1/2) (*.f64 im (sqrt.f64 2))) (sqrt.f64 re)))
(*.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (cbrt.f64 (/.f64 im (sqrt.f64 re)))) (cbrt.f64 (*.f64 im (/.f64 im re))))
(*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (/.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (/.f64 (sqrt.f64 re) im)))
(*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (pow.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) 4))
(*.f64 (/.f64 im (/.f64 (sqrt.f64 re) im)) (/.f64 1 (sqrt.f64 re)))
(*.f64 im (/.f64 im re))
(*.f64 (/.f64 1 (sqrt.f64 re)) (/.f64 im (/.f64 (sqrt.f64 re) im)))
(*.f64 im (/.f64 im re))
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 re) 2)) (/.f64 im (/.f64 (cbrt.f64 re) im)))
(*.f64 im (/.f64 im re))
(*.f64 (/.f64 im (/.f64 (cbrt.f64 re) im)) (/.f64 1 (pow.f64 (cbrt.f64 re) 2)))
(*.f64 im (/.f64 im re))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(*.f64 (/.f64 im re) (/.f64 im 1))
(*.f64 im (/.f64 im re))
(*.f64 (/.f64 im (cbrt.f64 re)) (/.f64 im (pow.f64 (cbrt.f64 re) 2)))
(*.f64 im (/.f64 im re))
(*.f64 (/.f64 -1 re) (*.f64 im (neg.f64 im)))
(*.f64 im (/.f64 im re))
(*.f64 (/.f64 im 1) (/.f64 im re))
(*.f64 im (/.f64 im re))
(*.f64 (/.f64 im (pow.f64 (cbrt.f64 re) 2)) (/.f64 im (cbrt.f64 re)))
(*.f64 im (/.f64 im re))
(*.f64 (/.f64 (cbrt.f64 (pow.f64 im 4)) 1) (/.f64 (cbrt.f64 (*.f64 im im)) re))
(*.f64 (cbrt.f64 (pow.f64 im 4)) (/.f64 (cbrt.f64 (*.f64 im im)) re))
(*.f64 (cbrt.f64 (*.f64 im im)) (/.f64 (cbrt.f64 (pow.f64 im 4)) re))
(*.f64 (/.f64 (cbrt.f64 (pow.f64 im 4)) (sqrt.f64 re)) (/.f64 (cbrt.f64 (*.f64 im im)) (sqrt.f64 re)))
(*.f64 (cbrt.f64 (pow.f64 im 4)) (/.f64 (cbrt.f64 (*.f64 im im)) re))
(*.f64 (cbrt.f64 (*.f64 im im)) (/.f64 (cbrt.f64 (pow.f64 im 4)) re))
(*.f64 (/.f64 (cbrt.f64 (*.f64 im im)) (sqrt.f64 re)) (/.f64 (cbrt.f64 (pow.f64 im 4)) (sqrt.f64 re)))
(*.f64 (cbrt.f64 (pow.f64 im 4)) (/.f64 (cbrt.f64 (*.f64 im im)) re))
(*.f64 (cbrt.f64 (*.f64 im im)) (/.f64 (cbrt.f64 (pow.f64 im 4)) re))
(*.f64 (/.f64 (cbrt.f64 (pow.f64 im 4)) (pow.f64 (cbrt.f64 re) 2)) (cbrt.f64 (*.f64 im (/.f64 im re))))
(*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (/.f64 (cbrt.f64 (pow.f64 im 4)) (pow.f64 (cbrt.f64 re) 2)))
(/.f64 (*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (cbrt.f64 (pow.f64 im 4))) (pow.f64 (cbrt.f64 re) 2))
(*.f64 (/.f64 (sqrt.f64 im) (/.f64 re im)) (sqrt.f64 im))
(*.f64 im (/.f64 im re))
(*.f64 (/.f64 (cbrt.f64 (pow.f64 im 4)) re) (cbrt.f64 (*.f64 im im)))
(*.f64 (cbrt.f64 (pow.f64 im 4)) (/.f64 (cbrt.f64 (*.f64 im im)) re))
(*.f64 (cbrt.f64 (*.f64 im im)) (/.f64 (cbrt.f64 (pow.f64 im 4)) re))
(*.f64 (/.f64 im (/.f64 re (sqrt.f64 im))) (sqrt.f64 im))
(*.f64 im (/.f64 im re))
(*.f64 (/.f64 im (neg.f64 re)) (neg.f64 im))
(*.f64 im (/.f64 im re))
(*.f64 (/.f64 im (/.f64 re (cbrt.f64 (*.f64 im im)))) (cbrt.f64 im))
(*.f64 (cbrt.f64 im) (*.f64 (/.f64 im re) (cbrt.f64 (*.f64 im im))))
(*.f64 (cbrt.f64 (*.f64 im im)) (/.f64 (cbrt.f64 im) (/.f64 re im)))
(*.f64 (/.f64 1 (/.f64 re (cbrt.f64 (pow.f64 im 4)))) (cbrt.f64 (*.f64 im im)))
(*.f64 (cbrt.f64 (pow.f64 im 4)) (/.f64 (cbrt.f64 (*.f64 im im)) re))
(*.f64 (cbrt.f64 (*.f64 im im)) (/.f64 (cbrt.f64 (pow.f64 im 4)) re))
(*.f64 (/.f64 (cbrt.f64 (*.f64 im im)) (/.f64 re im)) (cbrt.f64 im))
(*.f64 (cbrt.f64 im) (*.f64 (/.f64 im re) (cbrt.f64 (*.f64 im im))))
(*.f64 (cbrt.f64 (*.f64 im im)) (/.f64 (cbrt.f64 im) (/.f64 re im)))
(pow.f64 (*.f64 im (/.f64 im re)) 1)
(*.f64 im (/.f64 im re))
(pow.f64 (/.f64 im (sqrt.f64 re)) 2)
(*.f64 im (/.f64 im re))
(pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 3)
(*.f64 im (/.f64 im re))
(pow.f64 (/.f64 (pow.f64 im 4) (*.f64 re re)) 1/2)
(sqrt.f64 (/.f64 (pow.f64 im 4) (*.f64 re re)))
(pow.f64 (pow.f64 (*.f64 im (/.f64 im re)) 3) 1/3)
(*.f64 im (/.f64 im re))
(pow.f64 (/.f64 re (*.f64 im im)) -1)
(*.f64 im (/.f64 im re))
(neg.f64 (/.f64 im (/.f64 (neg.f64 re) im)))
(*.f64 im (/.f64 im re))
(sqrt.f64 (/.f64 (pow.f64 im 4) (*.f64 re re)))
(log.f64 (exp.f64 (*.f64 im (/.f64 im re))))
(*.f64 im (/.f64 im re))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 im (/.f64 im re)))))
(*.f64 im (/.f64 im re))
(cbrt.f64 (pow.f64 (*.f64 im (/.f64 im re)) 3))
(*.f64 im (/.f64 im re))
(expm1.f64 (log1p.f64 (*.f64 im (/.f64 im re))))
(*.f64 im (/.f64 im re))
(exp.f64 (log.f64 (*.f64 im (/.f64 im re))))
(*.f64 im (/.f64 im re))
(log1p.f64 (expm1.f64 (*.f64 im (/.f64 im re))))
(*.f64 im (/.f64 im re))
(-.f64 (exp.f64 (log1p.f64 (*.f64 1/2 (*.f64 im (/.f64 im re))))) 1)
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 1/2 (/.f64 re (*.f64 im im)))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 im (/.f64 (/.f64 re im) 1/2))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (*.f64 im im) (/.f64 re 1/2))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (*.f64 1/2 (*.f64 im (/.f64 im re))) 1)
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 1 (/.f64 re (*.f64 1/2 (*.f64 im im))))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (*.f64 1/2 (*.f64 im im)) re)
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (*.f64 1/2 (*.f64 im im)) (/.f64 re 1))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (*.f64 im (neg.f64 im)) (/.f64 (neg.f64 re) 1/2))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (sqrt.f64 (*.f64 1/2 (*.f64 im im))) (/.f64 re (sqrt.f64 (*.f64 1/2 (*.f64 im im)))))
(*.f64 (/.f64 (sqrt.f64 (*.f64 1/2 (*.f64 im im))) re) (sqrt.f64 (*.f64 1/2 (*.f64 im im))))
(*.f64 (sqrt.f64 (*.f64 im (*.f64 im 1/2))) (/.f64 (sqrt.f64 (*.f64 im (*.f64 im 1/2))) re))
(/.f64 (*.f64 (cbrt.f64 (*.f64 1/2 (*.f64 im im))) (cbrt.f64 (*.f64 1/2 (*.f64 im im)))) (/.f64 re (cbrt.f64 (*.f64 1/2 (*.f64 im im)))))
(*.f64 (/.f64 (*.f64 (cbrt.f64 (*.f64 1/2 (*.f64 im im))) (cbrt.f64 (*.f64 1/2 (*.f64 im im)))) re) (cbrt.f64 (*.f64 1/2 (*.f64 im im))))
(*.f64 (cbrt.f64 (*.f64 im (*.f64 im 1/2))) (/.f64 (*.f64 (cbrt.f64 (*.f64 im (*.f64 im 1/2))) (cbrt.f64 (*.f64 im (*.f64 im 1/2)))) re))
(/.f64 (*.f64 1/2 im) (/.f64 re im))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (*.f64 1/2 (cbrt.f64 (pow.f64 im 4))) (/.f64 re (cbrt.f64 (*.f64 im im))))
(*.f64 (cbrt.f64 (*.f64 im im)) (/.f64 (*.f64 1/2 (cbrt.f64 (pow.f64 im 4))) re))
(/.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re)) (sqrt.f64 (/.f64 re (*.f64 im im))))
(/.f64 (/.f64 (*.f64 im 1/2) (sqrt.f64 re)) (sqrt.f64 (/.f64 re (*.f64 im im))))
(*.f64 (/.f64 im (sqrt.f64 (/.f64 re (*.f64 im im)))) (/.f64 1/2 (sqrt.f64 re)))
(/.f64 (/.f64 1/2 re) (/.f64 1 (*.f64 im im)))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (*.f64 1/2 (*.f64 im (neg.f64 im))) (neg.f64 re))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (/.f64 (*.f64 im im) 2) re)
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (/.f64 (*.f64 1/2 (*.f64 im im)) (sqrt.f64 re)) (sqrt.f64 re))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (/.f64 (*.f64 1/2 (*.f64 im im)) (pow.f64 (cbrt.f64 re) 2)) (cbrt.f64 re))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (neg.f64 (*.f64 1/2 (*.f64 im im))) (neg.f64 re))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (*.f64 1/2 (sqrt.f64 im)) (/.f64 (/.f64 re im) (sqrt.f64 im)))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (*.f64 1/2 (cbrt.f64 (*.f64 im im))) (/.f64 re (cbrt.f64 (pow.f64 im 4))))
(*.f64 (/.f64 (*.f64 1/2 (cbrt.f64 (*.f64 im im))) re) (cbrt.f64 (pow.f64 im 4)))
(*.f64 (cbrt.f64 (pow.f64 im 4)) (/.f64 (*.f64 1/2 (cbrt.f64 (*.f64 im im))) re))
(/.f64 (*.f64 1/2 (*.f64 2 (*.f64 1/2 (*.f64 im im)))) re)
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (*.f64 1/2 (/.f64 (*.f64 im im) 1)) re)
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (*.f64 1/2 (/.f64 im (/.f64 (sqrt.f64 re) im))) (sqrt.f64 re))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (*.f64 1/2 (/.f64 im (/.f64 (pow.f64 (cbrt.f64 re) 2) im))) (cbrt.f64 re))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (*.f64 1/2 (neg.f64 im)) (neg.f64 (/.f64 re im)))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 -1/2 (neg.f64 (/.f64 re (*.f64 im im))))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (*.f64 1/2 (neg.f64 (*.f64 im (neg.f64 im)))) (neg.f64 (neg.f64 re)))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (*.f64 1 (*.f64 1/2 im)) (/.f64 re im))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (*.f64 1 (*.f64 1/2 (*.f64 im (neg.f64 im)))) (neg.f64 re))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (*.f64 1 (/.f64 (*.f64 im im) 2)) re)
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (*.f64 1 (/.f64 (*.f64 1/2 (*.f64 im im)) (sqrt.f64 re))) (sqrt.f64 re))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (*.f64 1 (/.f64 (*.f64 1/2 (*.f64 im im)) (pow.f64 (cbrt.f64 re) 2))) (cbrt.f64 re))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (*.f64 1 (neg.f64 (*.f64 1/2 (*.f64 im im)))) (neg.f64 re))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (*.f64 (/.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 re)) (sqrt.f64 (*.f64 1/2 (*.f64 im im)))) (sqrt.f64 re))
(/.f64 (/.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 re)) (/.f64 (sqrt.f64 re) (sqrt.f64 (*.f64 1/2 (*.f64 im im)))))
(*.f64 (/.f64 (sqrt.f64 (*.f64 im (*.f64 im 1/2))) (sqrt.f64 re)) (*.f64 (/.f64 (sqrt.f64 1/2) (sqrt.f64 re)) im))
(/.f64 (*.f64 (cbrt.f64 (*.f64 1/4 (/.f64 (pow.f64 im 4) (*.f64 re re)))) (cbrt.f64 (*.f64 1/2 (*.f64 im im)))) (cbrt.f64 re))
(/.f64 (cbrt.f64 (*.f64 1/4 (/.f64 (pow.f64 im 4) (*.f64 re re)))) (/.f64 (cbrt.f64 re) (cbrt.f64 (*.f64 1/2 (*.f64 im im)))))
(*.f64 (/.f64 (cbrt.f64 (pow.f64 (*.f64 im (*.f64 1/2 (/.f64 im re))) 2)) (cbrt.f64 re)) (cbrt.f64 (*.f64 im (*.f64 im 1/2))))
(/.f64 (*.f64 (*.f64 1/2 (*.f64 im im)) (/.f64 1 (sqrt.f64 re))) (sqrt.f64 re))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (*.f64 (*.f64 1/2 (*.f64 im im)) (/.f64 1 (pow.f64 (cbrt.f64 re) 2))) (cbrt.f64 re))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (*.f64 (*.f64 1/2 (*.f64 im im)) -1) (neg.f64 re))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (*.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re)) im) (sqrt.f64 re))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (*.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re)) 1) (sqrt.f64 (/.f64 re (*.f64 im im))))
(/.f64 (/.f64 (*.f64 im 1/2) (sqrt.f64 re)) (sqrt.f64 (/.f64 re (*.f64 im im))))
(*.f64 (/.f64 im (sqrt.f64 (/.f64 re (*.f64 im im)))) (/.f64 1/2 (sqrt.f64 re)))
(/.f64 (*.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re)) (sqrt.f64 im)) (sqrt.f64 (/.f64 re im)))
(/.f64 (/.f64 (*.f64 im 1/2) (sqrt.f64 re)) (/.f64 (sqrt.f64 (/.f64 re im)) (sqrt.f64 im)))
(/.f64 (sqrt.f64 im) (*.f64 (/.f64 (sqrt.f64 (/.f64 re im)) 1/2) (/.f64 (sqrt.f64 re) im)))
(/.f64 (*.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re)) (sqrt.f64 (*.f64 im (neg.f64 im)))) (sqrt.f64 (neg.f64 re)))
(/.f64 (sqrt.f64 (*.f64 im (neg.f64 im))) (/.f64 (sqrt.f64 (neg.f64 re)) (/.f64 (*.f64 im 1/2) (sqrt.f64 re))))
(*.f64 (/.f64 (/.f64 (*.f64 im 1/2) (sqrt.f64 re)) (sqrt.f64 (neg.f64 re))) (sqrt.f64 (*.f64 im (neg.f64 im))))
(/.f64 (*.f64 (*.f64 1/2 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2)) 1) (cbrt.f64 (/.f64 re (*.f64 im im))))
(/.f64 (*.f64 1/2 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2)) (cbrt.f64 (/.f64 re (*.f64 im im))))
(/.f64 (*.f64 (*.f64 1/2 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2)) (cbrt.f64 im)) (cbrt.f64 (/.f64 re im)))
(/.f64 (*.f64 1/2 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2)) (/.f64 (cbrt.f64 (/.f64 re im)) (cbrt.f64 im)))
(/.f64 (*.f64 (*.f64 1/2 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2)) (cbrt.f64 (*.f64 im im))) (cbrt.f64 re))
(/.f64 (*.f64 1/2 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2)) (/.f64 (cbrt.f64 re) (cbrt.f64 (*.f64 im im))))
(*.f64 (/.f64 (*.f64 1/2 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2)) (cbrt.f64 re)) (cbrt.f64 (*.f64 im im)))
(/.f64 (*.f64 (*.f64 1/2 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2)) (cbrt.f64 (*.f64 im (neg.f64 im)))) (cbrt.f64 (neg.f64 re)))
(/.f64 (*.f64 1/2 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2)) (/.f64 (cbrt.f64 (neg.f64 re)) (cbrt.f64 (*.f64 im (neg.f64 im)))))
(*.f64 (/.f64 (*.f64 1/2 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2)) (cbrt.f64 (neg.f64 re))) (cbrt.f64 (*.f64 im (neg.f64 im))))
(/.f64 (*.f64 (/.f64 1/2 (sqrt.f64 re)) (*.f64 im im)) (sqrt.f64 re))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (*.f64 (/.f64 1/2 (pow.f64 (cbrt.f64 re) 2)) (*.f64 im im)) (cbrt.f64 re))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (*.f64 (cbrt.f64 (*.f64 im im)) 1/2) (/.f64 re (cbrt.f64 (pow.f64 im 4))))
(*.f64 (/.f64 (*.f64 1/2 (cbrt.f64 (*.f64 im im))) re) (cbrt.f64 (pow.f64 im 4)))
(*.f64 (cbrt.f64 (pow.f64 im 4)) (/.f64 (*.f64 1/2 (cbrt.f64 (*.f64 im im))) re))
(/.f64 (*.f64 (sqrt.f64 im) 1/2) (/.f64 (/.f64 re im) (sqrt.f64 im)))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (*.f64 (*.f64 2 (*.f64 1/2 (*.f64 im im))) 1/2) re)
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (*.f64 (/.f64 (*.f64 im im) 1) 1/2) re)
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (*.f64 (/.f64 im (/.f64 (sqrt.f64 re) im)) 1/2) (sqrt.f64 re))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (*.f64 (/.f64 im (/.f64 (pow.f64 (cbrt.f64 re) 2) im)) 1/2) (cbrt.f64 re))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (*.f64 (neg.f64 im) 1/2) (neg.f64 (/.f64 re im)))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (*.f64 (neg.f64 (*.f64 im (neg.f64 im))) 1/2) (neg.f64 (neg.f64 re)))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (*.f64 (*.f64 1/2 im) 1) (/.f64 re im))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (*.f64 (*.f64 1/2 (*.f64 im (neg.f64 im))) 1) (neg.f64 re))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (*.f64 (/.f64 (*.f64 im im) 2) 1) re)
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (*.f64 (/.f64 (*.f64 1/2 (*.f64 im im)) (sqrt.f64 re)) 1) (sqrt.f64 re))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (*.f64 (/.f64 (*.f64 1/2 (*.f64 im im)) (pow.f64 (cbrt.f64 re) 2)) 1) (cbrt.f64 re))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (*.f64 (neg.f64 (*.f64 1/2 (*.f64 im im))) 1) (neg.f64 re))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (*.f64 im (/.f64 (*.f64 1/2 im) (sqrt.f64 re))) (sqrt.f64 re))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (*.f64 1 (/.f64 (*.f64 1/2 im) (sqrt.f64 re))) (sqrt.f64 (/.f64 re (*.f64 im im))))
(/.f64 (/.f64 (*.f64 im 1/2) (sqrt.f64 re)) (sqrt.f64 (/.f64 re (*.f64 im im))))
(*.f64 (/.f64 im (sqrt.f64 (/.f64 re (*.f64 im im)))) (/.f64 1/2 (sqrt.f64 re)))
(/.f64 (*.f64 (sqrt.f64 im) (/.f64 (*.f64 1/2 im) (sqrt.f64 re))) (sqrt.f64 (/.f64 re im)))
(/.f64 (/.f64 (*.f64 im 1/2) (sqrt.f64 re)) (/.f64 (sqrt.f64 (/.f64 re im)) (sqrt.f64 im)))
(/.f64 (sqrt.f64 im) (*.f64 (/.f64 (sqrt.f64 (/.f64 re im)) 1/2) (/.f64 (sqrt.f64 re) im)))
(/.f64 (*.f64 (sqrt.f64 (*.f64 im (neg.f64 im))) (/.f64 (*.f64 1/2 im) (sqrt.f64 re))) (sqrt.f64 (neg.f64 re)))
(/.f64 (sqrt.f64 (*.f64 im (neg.f64 im))) (/.f64 (sqrt.f64 (neg.f64 re)) (/.f64 (*.f64 im 1/2) (sqrt.f64 re))))
(*.f64 (/.f64 (/.f64 (*.f64 im 1/2) (sqrt.f64 re)) (sqrt.f64 (neg.f64 re))) (sqrt.f64 (*.f64 im (neg.f64 im))))
(/.f64 (*.f64 (sqrt.f64 (*.f64 1/2 (*.f64 im im))) (/.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 re))) (sqrt.f64 re))
(/.f64 (/.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 re)) (/.f64 (sqrt.f64 re) (sqrt.f64 (*.f64 1/2 (*.f64 im im)))))
(*.f64 (/.f64 (sqrt.f64 (*.f64 im (*.f64 im 1/2))) (sqrt.f64 re)) (*.f64 (/.f64 (sqrt.f64 1/2) (sqrt.f64 re)) im))
(/.f64 (*.f64 (cbrt.f64 (*.f64 1/2 (*.f64 im im))) (cbrt.f64 (*.f64 1/4 (/.f64 (pow.f64 im 4) (*.f64 re re))))) (cbrt.f64 re))
(/.f64 (cbrt.f64 (*.f64 1/4 (/.f64 (pow.f64 im 4) (*.f64 re re)))) (/.f64 (cbrt.f64 re) (cbrt.f64 (*.f64 1/2 (*.f64 im im)))))
(*.f64 (/.f64 (cbrt.f64 (pow.f64 (*.f64 im (*.f64 1/2 (/.f64 im re))) 2)) (cbrt.f64 re)) (cbrt.f64 (*.f64 im (*.f64 im 1/2))))
(/.f64 (*.f64 1/2 (/.f64 im (/.f64 (cbrt.f64 re) im))) (pow.f64 (cbrt.f64 re) 2))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (/.f64 (*.f64 1/2 (*.f64 im im)) (cbrt.f64 re)) (pow.f64 (cbrt.f64 re) 2))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (/.f64 1/2 (*.f64 (cbrt.f64 (/.f64 re (*.f64 im im))) (cbrt.f64 (/.f64 re (*.f64 im im))))) (cbrt.f64 (/.f64 re (*.f64 im im))))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (/.f64 1/2 (/.f64 1 im)) (/.f64 re im))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (/.f64 1/2 (/.f64 1 (cbrt.f64 (pow.f64 im 4)))) (/.f64 re (cbrt.f64 (*.f64 im im))))
(/.f64 (*.f64 1/2 (cbrt.f64 (pow.f64 im 4))) (/.f64 re (cbrt.f64 (*.f64 im im))))
(*.f64 (cbrt.f64 (*.f64 im im)) (/.f64 (*.f64 1/2 (cbrt.f64 (pow.f64 im 4))) re))
(/.f64 (/.f64 1/2 (/.f64 (sqrt.f64 re) im)) (/.f64 (sqrt.f64 re) im))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (/.f64 1/2 (/.f64 (sqrt.f64 re) 1)) (/.f64 (sqrt.f64 re) (*.f64 im im)))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (/.f64 1/2 (/.f64 (sqrt.f64 re) (cbrt.f64 (pow.f64 im 4)))) (/.f64 (sqrt.f64 re) (cbrt.f64 (*.f64 im im))))
(/.f64 (*.f64 1/2 (cbrt.f64 (pow.f64 im 4))) (/.f64 re (cbrt.f64 (*.f64 im im))))
(*.f64 (cbrt.f64 (*.f64 im im)) (/.f64 (*.f64 1/2 (cbrt.f64 (pow.f64 im 4))) re))
(/.f64 (/.f64 1/2 (/.f64 (pow.f64 (cbrt.f64 re) 2) im)) (/.f64 (cbrt.f64 re) im))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (/.f64 1/2 (/.f64 (pow.f64 (cbrt.f64 re) 2) 1)) (/.f64 (cbrt.f64 re) (*.f64 im im)))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (/.f64 1/2 (/.f64 (pow.f64 (cbrt.f64 re) 2) (cbrt.f64 (pow.f64 im 4)))) (/.f64 (cbrt.f64 re) (cbrt.f64 (*.f64 im im))))
(/.f64 (*.f64 1/2 (cbrt.f64 (pow.f64 im 4))) (/.f64 re (cbrt.f64 (*.f64 im im))))
(*.f64 (cbrt.f64 (*.f64 im im)) (/.f64 (*.f64 1/2 (cbrt.f64 (pow.f64 im 4))) re))
(/.f64 (/.f64 (*.f64 1/2 im) re) (/.f64 1 im))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (/.f64 (*.f64 1/2 im) 1) (/.f64 re im))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 (/.f64 re im))) (sqrt.f64 (/.f64 re im)))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (/.f64 (*.f64 1/2 im) (*.f64 (cbrt.f64 (/.f64 re im)) (cbrt.f64 (/.f64 re im)))) (cbrt.f64 (/.f64 re im)))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (/.f64 (*.f64 1/2 im) (/.f64 (sqrt.f64 re) 1)) (/.f64 (sqrt.f64 re) im))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (/.f64 (*.f64 1/2 im) (/.f64 (sqrt.f64 re) (cbrt.f64 (*.f64 im im)))) (/.f64 (sqrt.f64 re) (cbrt.f64 im)))
(/.f64 (*.f64 (/.f64 (*.f64 im 1/2) (sqrt.f64 re)) (cbrt.f64 (*.f64 im im))) (/.f64 (sqrt.f64 re) (cbrt.f64 im)))
(/.f64 (*.f64 im 1/2) (/.f64 (/.f64 re (cbrt.f64 (*.f64 im im))) (cbrt.f64 im)))
(/.f64 (/.f64 (*.f64 1/2 im) (/.f64 (pow.f64 (cbrt.f64 re) 2) 1)) (/.f64 (cbrt.f64 re) im))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (/.f64 (*.f64 1/2 im) (/.f64 1 (sqrt.f64 im))) (/.f64 re (sqrt.f64 im)))
(*.f64 (/.f64 (*.f64 (*.f64 im 1/2) (sqrt.f64 im)) re) (sqrt.f64 im))
(*.f64 (/.f64 1/2 (/.f64 re (sqrt.f64 im))) (*.f64 im (sqrt.f64 im)))
(/.f64 (/.f64 (*.f64 1/2 im) (/.f64 1 (cbrt.f64 (*.f64 im im)))) (/.f64 re (cbrt.f64 im)))
(*.f64 (/.f64 (*.f64 (*.f64 im 1/2) (cbrt.f64 (*.f64 im im))) re) (cbrt.f64 im))
(*.f64 (cbrt.f64 im) (/.f64 (*.f64 1/2 (*.f64 im (cbrt.f64 (*.f64 im im)))) re))
(/.f64 (/.f64 (*.f64 1/2 im) (/.f64 (sqrt.f64 re) (sqrt.f64 im))) (/.f64 (sqrt.f64 re) (sqrt.f64 im)))
(/.f64 (*.f64 (sqrt.f64 im) (/.f64 (*.f64 im 1/2) (sqrt.f64 re))) (/.f64 (sqrt.f64 re) (sqrt.f64 im)))
(/.f64 (/.f64 (*.f64 1/2 im) (/.f64 (pow.f64 (cbrt.f64 re) 2) (sqrt.f64 im))) (/.f64 (cbrt.f64 re) (sqrt.f64 im)))
(*.f64 (/.f64 (*.f64 (/.f64 (*.f64 im 1/2) (pow.f64 (cbrt.f64 re) 2)) (sqrt.f64 im)) (cbrt.f64 re)) (sqrt.f64 im))
(*.f64 (sqrt.f64 im) (/.f64 (*.f64 (sqrt.f64 im) (/.f64 (*.f64 im 1/2) (pow.f64 (cbrt.f64 re) 2))) (cbrt.f64 re)))
(/.f64 (/.f64 (*.f64 1/2 im) (/.f64 (cbrt.f64 re) (cbrt.f64 (*.f64 im (/.f64 im re))))) (/.f64 (cbrt.f64 re) (cbrt.f64 im)))
(*.f64 (/.f64 (/.f64 (*.f64 im 1/2) (/.f64 (cbrt.f64 re) (cbrt.f64 (*.f64 im (/.f64 im re))))) (cbrt.f64 re)) (cbrt.f64 im))
(*.f64 (cbrt.f64 im) (/.f64 (*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (/.f64 (*.f64 im 1/2) (cbrt.f64 re))) (cbrt.f64 re)))
(/.f64 (/.f64 (*.f64 1/2 (*.f64 im (neg.f64 im))) 1) (neg.f64 re))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (/.f64 (*.f64 1/2 (*.f64 im (neg.f64 im))) (sqrt.f64 re)) (neg.f64 (sqrt.f64 re)))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (/.f64 (*.f64 1/2 (*.f64 im (neg.f64 im))) (pow.f64 (cbrt.f64 re) 2)) (neg.f64 (cbrt.f64 re)))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (/.f64 (*.f64 1/2 (*.f64 im (neg.f64 im))) (sqrt.f64 (neg.f64 re))) (sqrt.f64 (neg.f64 re)))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (/.f64 (*.f64 1/2 (*.f64 im (neg.f64 im))) (*.f64 (cbrt.f64 (neg.f64 re)) (cbrt.f64 (neg.f64 re)))) (cbrt.f64 (neg.f64 re)))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (/.f64 (*.f64 1/2 (*.f64 im (neg.f64 im))) -1) re)
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (/.f64 (*.f64 1/2 (*.f64 im (neg.f64 im))) (neg.f64 (sqrt.f64 re))) (sqrt.f64 re))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (/.f64 (*.f64 1/2 (*.f64 im (neg.f64 im))) (neg.f64 (pow.f64 (cbrt.f64 re) 2))) (cbrt.f64 re))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (/.f64 (/.f64 (*.f64 im im) 2) 1) re)
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (/.f64 (/.f64 (*.f64 im im) 2) (cbrt.f64 re)) (pow.f64 (cbrt.f64 re) 2))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (/.f64 (/.f64 (*.f64 1/2 (*.f64 im im)) (sqrt.f64 re)) 1) (sqrt.f64 re))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (/.f64 (/.f64 (*.f64 1/2 (*.f64 im im)) (sqrt.f64 re)) (cbrt.f64 re)) (cbrt.f64 (sqrt.f64 re)))
(/.f64 (/.f64 (*.f64 1/2 (*.f64 im im)) (*.f64 (cbrt.f64 re) (sqrt.f64 re))) (cbrt.f64 (sqrt.f64 re)))
(*.f64 (/.f64 (/.f64 (*.f64 im im) (sqrt.f64 re)) (cbrt.f64 (sqrt.f64 re))) (/.f64 1/2 (cbrt.f64 re)))
(/.f64 (/.f64 (/.f64 (*.f64 1/2 (*.f64 im im)) (sqrt.f64 re)) (sqrt.f64 (pow.f64 (cbrt.f64 re) 2))) (sqrt.f64 (cbrt.f64 re)))
(/.f64 (/.f64 (*.f64 im (*.f64 im 1/2)) (sqrt.f64 re)) (*.f64 (sqrt.f64 (cbrt.f64 re)) (sqrt.f64 (pow.f64 (cbrt.f64 re) 2))))
(*.f64 (/.f64 im (sqrt.f64 (cbrt.f64 re))) (/.f64 (/.f64 (*.f64 im 1/2) (sqrt.f64 re)) (fabs.f64 (cbrt.f64 re))))
(/.f64 (/.f64 (/.f64 (*.f64 1/2 (*.f64 im im)) (sqrt.f64 re)) (sqrt.f64 (sqrt.f64 re))) (sqrt.f64 (sqrt.f64 re)))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (/.f64 (/.f64 (*.f64 1/2 (*.f64 im im)) (pow.f64 (cbrt.f64 re) 2)) 1) (cbrt.f64 re))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (/.f64 (/.f64 (*.f64 1/2 (*.f64 im im)) (pow.f64 (cbrt.f64 re) 2)) (sqrt.f64 (cbrt.f64 re))) (sqrt.f64 (cbrt.f64 re)))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (/.f64 (/.f64 (*.f64 1/2 (*.f64 im im)) (pow.f64 (cbrt.f64 re) 2)) (cbrt.f64 (pow.f64 (cbrt.f64 re) 2))) (cbrt.f64 (cbrt.f64 re)))
(/.f64 (*.f64 1/2 (/.f64 (*.f64 im im) (pow.f64 (cbrt.f64 re) 2))) (*.f64 (cbrt.f64 (cbrt.f64 re)) (cbrt.f64 (pow.f64 (cbrt.f64 re) 2))))
(*.f64 (/.f64 (/.f64 (*.f64 im im) (pow.f64 (cbrt.f64 re) 2)) (cbrt.f64 (cbrt.f64 re))) (/.f64 1/2 (cbrt.f64 (pow.f64 (cbrt.f64 re) 2))))
(/.f64 (/.f64 (/.f64 (*.f64 1/2 (*.f64 im im)) (pow.f64 (cbrt.f64 re) 2)) (cbrt.f64 (sqrt.f64 re))) (cbrt.f64 (sqrt.f64 re)))
(/.f64 (*.f64 1/2 (/.f64 (*.f64 im im) (pow.f64 (cbrt.f64 re) 2))) (*.f64 (cbrt.f64 (sqrt.f64 re)) (cbrt.f64 (sqrt.f64 re))))
(*.f64 (/.f64 (/.f64 (*.f64 im im) (pow.f64 (cbrt.f64 re) 2)) (cbrt.f64 (sqrt.f64 re))) (/.f64 1/2 (cbrt.f64 (sqrt.f64 re))))
(/.f64 (/.f64 (/.f64 (*.f64 1/2 (*.f64 im im)) (pow.f64 (cbrt.f64 re) 2)) (*.f64 (cbrt.f64 (cbrt.f64 re)) (cbrt.f64 (cbrt.f64 re)))) (cbrt.f64 (cbrt.f64 re)))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (/.f64 (neg.f64 (*.f64 1/2 (*.f64 im im))) 1) (neg.f64 re))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (/.f64 (neg.f64 (*.f64 1/2 (*.f64 im im))) (sqrt.f64 re)) (neg.f64 (sqrt.f64 re)))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (/.f64 (neg.f64 (*.f64 1/2 (*.f64 im im))) (pow.f64 (cbrt.f64 re) 2)) (neg.f64 (cbrt.f64 re)))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (/.f64 (neg.f64 (*.f64 1/2 (*.f64 im im))) (sqrt.f64 (neg.f64 re))) (sqrt.f64 (neg.f64 re)))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (/.f64 (neg.f64 (*.f64 1/2 (*.f64 im im))) (*.f64 (cbrt.f64 (neg.f64 re)) (cbrt.f64 (neg.f64 re)))) (cbrt.f64 (neg.f64 re)))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (/.f64 (neg.f64 (*.f64 1/2 (*.f64 im im))) -1) re)
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (/.f64 (neg.f64 (*.f64 1/2 (*.f64 im im))) (neg.f64 (sqrt.f64 re))) (sqrt.f64 re))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(/.f64 (/.f64 (neg.f64 (*.f64 1/2 (*.f64 im im))) (neg.f64 (pow.f64 (cbrt.f64 re) 2))) (cbrt.f64 re))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(pow.f64 (*.f64 1/2 (*.f64 im (/.f64 im re))) 1)
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(pow.f64 (/.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 re)) 2)
(pow.f64 (/.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 re)) 2)
(pow.f64 (*.f64 (/.f64 (sqrt.f64 1/2) (sqrt.f64 re)) im) 2)
(pow.f64 (cbrt.f64 (*.f64 1/2 (*.f64 im (/.f64 im re)))) 3)
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(pow.f64 (pow.f64 (*.f64 1/2 (*.f64 im (/.f64 im re))) 3) 1/3)
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(sqrt.f64 (*.f64 1/4 (/.f64 (pow.f64 im 4) (*.f64 re re))))
(sqrt.f64 (pow.f64 (*.f64 im (*.f64 1/2 (/.f64 im re))) 2))
(log.f64 (pow.f64 (exp.f64 1/2) (*.f64 im (/.f64 im re))))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 1/2 (*.f64 im (/.f64 im re))))))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(cbrt.f64 (pow.f64 (*.f64 1/2 (*.f64 im (/.f64 im re))) 3))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(expm1.f64 (log1p.f64 (*.f64 1/2 (*.f64 im (/.f64 im re)))))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(exp.f64 (log.f64 (*.f64 1/2 (*.f64 im (/.f64 im re)))))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(log1p.f64 (expm1.f64 (*.f64 1/2 (*.f64 im (/.f64 im re)))))
(*.f64 1/2 (*.f64 im (/.f64 im re)))
(*.f64 im (*.f64 1/2 (/.f64 im re)))
(-.f64 (exp.f64 (log1p.f64 (*.f64 im (/.f64 im re)))) 1)
(*.f64 im (/.f64 im re))
(/.f64 2 (/.f64 re (*.f64 1/2 (*.f64 im im))))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) re)
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im im) (/.f64 re 1))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im (/.f64 im re)) 1)
(*.f64 im (/.f64 im re))
(/.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 (/.f64 re (*.f64 im im))))
(/.f64 im (*.f64 (sqrt.f64 re) (sqrt.f64 (/.f64 re (*.f64 im im)))))
(/.f64 (/.f64 im (sqrt.f64 re)) (/.f64 (sqrt.f64 re) im))
(*.f64 im (/.f64 im re))
(/.f64 1 (/.f64 re (*.f64 im im)))
(*.f64 im (/.f64 im re))
(/.f64 (sqrt.f64 im) (/.f64 (/.f64 re im) (sqrt.f64 im)))
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2) (cbrt.f64 (/.f64 re (*.f64 im im))))
(/.f64 (cbrt.f64 im) (/.f64 (/.f64 re im) (cbrt.f64 (*.f64 im im))))
(*.f64 (cbrt.f64 im) (*.f64 (/.f64 im re) (cbrt.f64 (*.f64 im im))))
(*.f64 (cbrt.f64 (*.f64 im im)) (/.f64 (cbrt.f64 im) (/.f64 re im)))
(/.f64 (cbrt.f64 im) (/.f64 (/.f64 (/.f64 re im) (sqrt.f64 im)) (cbrt.f64 (sqrt.f64 im))))
(*.f64 (/.f64 (cbrt.f64 im) (/.f64 (/.f64 re im) (sqrt.f64 im))) (cbrt.f64 (sqrt.f64 im)))
(*.f64 (cbrt.f64 (sqrt.f64 im)) (*.f64 (/.f64 (cbrt.f64 im) (/.f64 re im)) (sqrt.f64 im)))
(/.f64 (cbrt.f64 im) (/.f64 (/.f64 re (cbrt.f64 (pow.f64 im 4))) (cbrt.f64 im)))
(/.f64 (cbrt.f64 im) (/.f64 re (*.f64 (cbrt.f64 im) (cbrt.f64 (pow.f64 im 4)))))
(*.f64 (cbrt.f64 im) (*.f64 (/.f64 (cbrt.f64 im) re) (cbrt.f64 (pow.f64 im 4))))
(/.f64 (cbrt.f64 (*.f64 im im)) (/.f64 re (cbrt.f64 (pow.f64 im 4))))
(*.f64 (cbrt.f64 (pow.f64 im 4)) (/.f64 (cbrt.f64 (*.f64 im im)) re))
(*.f64 (cbrt.f64 (*.f64 im im)) (/.f64 (cbrt.f64 (pow.f64 im 4)) re))
(/.f64 (cbrt.f64 (pow.f64 im 4)) (/.f64 re (cbrt.f64 (*.f64 im im))))
(*.f64 (cbrt.f64 (pow.f64 im 4)) (/.f64 (cbrt.f64 (*.f64 im im)) re))
(*.f64 (cbrt.f64 (*.f64 im im)) (/.f64 (cbrt.f64 (pow.f64 im 4)) re))
(/.f64 (cbrt.f64 (pow.f64 im 4)) (/.f64 (neg.f64 re) (neg.f64 (cbrt.f64 (*.f64 im im)))))
(*.f64 (cbrt.f64 (pow.f64 im 4)) (/.f64 (cbrt.f64 (*.f64 im im)) re))
(*.f64 (cbrt.f64 (*.f64 im im)) (/.f64 (cbrt.f64 (pow.f64 im 4)) re))
(/.f64 (*.f64 1/2 (*.f64 im im)) (/.f64 re 2))
(*.f64 im (/.f64 im re))
(/.f64 (pow.f64 re -1) (/.f64 1 (*.f64 im im)))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im (neg.f64 im)) (neg.f64 re))
(*.f64 im (/.f64 im re))
(/.f64 (sqrt.f64 (*.f64 im (neg.f64 im))) (/.f64 (neg.f64 re) (sqrt.f64 (*.f64 im (neg.f64 im)))))
(*.f64 (/.f64 (sqrt.f64 (*.f64 im (neg.f64 im))) (neg.f64 re)) (sqrt.f64 (*.f64 im (neg.f64 im))))
(*.f64 (sqrt.f64 (*.f64 im (neg.f64 im))) (/.f64 (sqrt.f64 (*.f64 im (neg.f64 im))) (neg.f64 re)))
(/.f64 (sqrt.f64 (sqrt.f64 im)) (/.f64 (/.f64 (/.f64 re im) (sqrt.f64 im)) (sqrt.f64 (sqrt.f64 im))))
(*.f64 (/.f64 (sqrt.f64 (sqrt.f64 im)) (/.f64 (/.f64 re im) (sqrt.f64 im))) (sqrt.f64 (sqrt.f64 im)))
(*.f64 (sqrt.f64 (sqrt.f64 im)) (/.f64 (sqrt.f64 (sqrt.f64 im)) (/.f64 (/.f64 re (sqrt.f64 im)) im)))
(/.f64 (sqrt.f64 (cbrt.f64 (*.f64 im im))) (/.f64 (/.f64 (/.f64 re im) (sqrt.f64 im)) (sqrt.f64 (cbrt.f64 im))))
(*.f64 (/.f64 (sqrt.f64 (cbrt.f64 (*.f64 im im))) (/.f64 (/.f64 re im) (sqrt.f64 im))) (sqrt.f64 (cbrt.f64 im)))
(*.f64 (sqrt.f64 (cbrt.f64 im)) (/.f64 (sqrt.f64 (cbrt.f64 (*.f64 im im))) (/.f64 (/.f64 re (sqrt.f64 im)) im)))
(/.f64 (sqrt.f64 (cbrt.f64 (*.f64 im im))) (/.f64 (/.f64 re (cbrt.f64 (pow.f64 im 4))) (sqrt.f64 (cbrt.f64 (*.f64 im im)))))
(*.f64 (/.f64 (sqrt.f64 (cbrt.f64 (*.f64 im im))) (/.f64 re (cbrt.f64 (pow.f64 im 4)))) (sqrt.f64 (cbrt.f64 (*.f64 im im))))
(*.f64 (sqrt.f64 (cbrt.f64 (*.f64 im im))) (*.f64 (/.f64 (sqrt.f64 (cbrt.f64 (*.f64 im im))) re) (cbrt.f64 (pow.f64 im 4))))
(/.f64 (sqrt.f64 (cbrt.f64 (pow.f64 im 4))) (/.f64 (/.f64 re im) (sqrt.f64 (cbrt.f64 (*.f64 im im)))))
(*.f64 (/.f64 (sqrt.f64 (cbrt.f64 (pow.f64 im 4))) (/.f64 re im)) (sqrt.f64 (cbrt.f64 (*.f64 im im))))
(*.f64 (sqrt.f64 (cbrt.f64 (*.f64 im im))) (*.f64 (/.f64 (sqrt.f64 (cbrt.f64 (pow.f64 im 4))) re) im))
(/.f64 (sqrt.f64 (cbrt.f64 (pow.f64 im 4))) (/.f64 (/.f64 re (cbrt.f64 (*.f64 im im))) (sqrt.f64 (cbrt.f64 (pow.f64 im 4)))))
(/.f64 (sqrt.f64 (cbrt.f64 (pow.f64 im 4))) (/.f64 re (*.f64 (sqrt.f64 (cbrt.f64 (pow.f64 im 4))) (cbrt.f64 (*.f64 im im)))))
(*.f64 (sqrt.f64 (cbrt.f64 (pow.f64 im 4))) (*.f64 (/.f64 (sqrt.f64 (cbrt.f64 (pow.f64 im 4))) re) (cbrt.f64 (*.f64 im im))))
(/.f64 (*.f64 (cbrt.f64 (*.f64 im (neg.f64 im))) (cbrt.f64 (*.f64 im (neg.f64 im)))) (/.f64 (neg.f64 re) (cbrt.f64 (*.f64 im (neg.f64 im)))))
(*.f64 (/.f64 (*.f64 (cbrt.f64 (*.f64 im (neg.f64 im))) (cbrt.f64 (*.f64 im (neg.f64 im)))) (neg.f64 re)) (cbrt.f64 (*.f64 im (neg.f64 im))))
(*.f64 (cbrt.f64 (*.f64 im (neg.f64 im))) (/.f64 (*.f64 (cbrt.f64 (*.f64 im (neg.f64 im))) (cbrt.f64 (*.f64 im (neg.f64 im)))) (neg.f64 re)))
(/.f64 (*.f64 (cbrt.f64 (cbrt.f64 (*.f64 im im))) (cbrt.f64 (cbrt.f64 (*.f64 im im)))) (/.f64 (/.f64 re (cbrt.f64 (pow.f64 im 4))) (cbrt.f64 (cbrt.f64 (*.f64 im im)))))
(/.f64 (*.f64 (cbrt.f64 (cbrt.f64 (*.f64 im im))) (cbrt.f64 (cbrt.f64 (*.f64 im im)))) (/.f64 re (*.f64 (cbrt.f64 (cbrt.f64 (*.f64 im im))) (cbrt.f64 (pow.f64 im 4)))))
(/.f64 (cbrt.f64 (cbrt.f64 (*.f64 im im))) (/.f64 (/.f64 re (*.f64 (cbrt.f64 (pow.f64 im 4)) (cbrt.f64 (cbrt.f64 (*.f64 im im))))) (cbrt.f64 (cbrt.f64 (*.f64 im im)))))
(/.f64 (cbrt.f64 (cbrt.f64 (pow.f64 im 4))) (/.f64 (/.f64 re (cbrt.f64 (pow.f64 im 4))) (cbrt.f64 (cbrt.f64 (*.f64 im im)))))
(*.f64 (/.f64 (cbrt.f64 (cbrt.f64 (pow.f64 im 4))) (/.f64 re (cbrt.f64 (pow.f64 im 4)))) (cbrt.f64 (cbrt.f64 (*.f64 im im))))
(*.f64 (cbrt.f64 (cbrt.f64 (*.f64 im im))) (/.f64 (cbrt.f64 (cbrt.f64 (pow.f64 im 4))) (/.f64 re (cbrt.f64 (pow.f64 im 4)))))
(/.f64 (*.f64 (cbrt.f64 (cbrt.f64 (pow.f64 im 4))) (cbrt.f64 (cbrt.f64 (pow.f64 im 4)))) (/.f64 (/.f64 re (cbrt.f64 (*.f64 im im))) (cbrt.f64 (cbrt.f64 (pow.f64 im 4)))))
(/.f64 (*.f64 (cbrt.f64 (cbrt.f64 (pow.f64 im 4))) (cbrt.f64 (cbrt.f64 (pow.f64 im 4)))) (/.f64 re (*.f64 (cbrt.f64 (cbrt.f64 (pow.f64 im 4))) (cbrt.f64 (*.f64 im im)))))
(*.f64 (cbrt.f64 (cbrt.f64 (pow.f64 im 4))) (*.f64 (/.f64 (*.f64 (cbrt.f64 (cbrt.f64 (pow.f64 im 4))) (cbrt.f64 (cbrt.f64 (pow.f64 im 4)))) re) (cbrt.f64 (*.f64 im im))))
(/.f64 (*.f64 im (sqrt.f64 im)) (/.f64 re (sqrt.f64 im)))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im (cbrt.f64 (*.f64 im im))) (/.f64 re (cbrt.f64 im)))
(*.f64 (cbrt.f64 im) (*.f64 (/.f64 im re) (cbrt.f64 (*.f64 im im))))
(*.f64 (cbrt.f64 (*.f64 im im)) (/.f64 (cbrt.f64 im) (/.f64 re im)))
(/.f64 (*.f64 2 (*.f64 1/2 (*.f64 im im))) re)
(*.f64 im (/.f64 im re))
(/.f64 (/.f64 (*.f64 im im) 1) re)
(*.f64 im (/.f64 im re))
(/.f64 (/.f64 im (/.f64 (sqrt.f64 re) im)) (sqrt.f64 re))
(*.f64 im (/.f64 im re))
(/.f64 (/.f64 im (/.f64 (pow.f64 (cbrt.f64 re) 2) im)) (cbrt.f64 re))
(*.f64 im (/.f64 im re))
(/.f64 (/.f64 im (/.f64 (cbrt.f64 re) im)) (pow.f64 (cbrt.f64 re) 2))
(*.f64 im (/.f64 im re))
(/.f64 (/.f64 im re) (/.f64 1 im))
(*.f64 im (/.f64 im re))
(/.f64 (neg.f64 im) (neg.f64 (/.f64 re im)))
(*.f64 im (/.f64 im re))
(/.f64 (neg.f64 im) (/.f64 (neg.f64 re) im))
(*.f64 im (/.f64 im re))
(/.f64 -1 (neg.f64 (/.f64 re (*.f64 im im))))
(*.f64 im (/.f64 im re))
(/.f64 -1 (/.f64 (neg.f64 re) (*.f64 im im)))
(*.f64 im (/.f64 im re))
(/.f64 (neg.f64 (cbrt.f64 (pow.f64 im 4))) (/.f64 (neg.f64 re) (cbrt.f64 (*.f64 im im))))
(*.f64 (cbrt.f64 (pow.f64 im 4)) (/.f64 (cbrt.f64 (*.f64 im im)) re))
(*.f64 (cbrt.f64 (*.f64 im im)) (/.f64 (cbrt.f64 (pow.f64 im 4)) re))
(/.f64 (/.f64 im 1) (/.f64 re im))
(*.f64 im (/.f64 im re))
(/.f64 (/.f64 im (pow.f64 (cbrt.f64 re) 2)) (/.f64 (cbrt.f64 re) im))
(*.f64 im (/.f64 im re))
(/.f64 (/.f64 (cbrt.f64 (pow.f64 im 4)) 1) (/.f64 re (cbrt.f64 (*.f64 im im))))
(*.f64 (cbrt.f64 (pow.f64 im 4)) (/.f64 (cbrt.f64 (*.f64 im im)) re))
(*.f64 (cbrt.f64 (*.f64 im im)) (/.f64 (cbrt.f64 (pow.f64 im 4)) re))
(/.f64 (/.f64 (cbrt.f64 (pow.f64 im 4)) (sqrt.f64 re)) (/.f64 (sqrt.f64 re) (cbrt.f64 (*.f64 im im))))
(*.f64 (cbrt.f64 (pow.f64 im 4)) (/.f64 (cbrt.f64 (*.f64 im im)) re))
(*.f64 (cbrt.f64 (*.f64 im im)) (/.f64 (cbrt.f64 (pow.f64 im 4)) re))
(/.f64 (/.f64 (cbrt.f64 (pow.f64 im 4)) (pow.f64 (cbrt.f64 re) 2)) (/.f64 (cbrt.f64 re) (cbrt.f64 (*.f64 im im))))
(*.f64 (cbrt.f64 (pow.f64 im 4)) (/.f64 (cbrt.f64 (*.f64 im im)) re))
(*.f64 (cbrt.f64 (*.f64 im im)) (/.f64 (cbrt.f64 (pow.f64 im 4)) re))
(/.f64 (neg.f64 (*.f64 im (neg.f64 im))) (neg.f64 (neg.f64 re)))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 2 (*.f64 1/2 im)) (/.f64 re im))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 2 (*.f64 1/2 (*.f64 im (neg.f64 im)))) (neg.f64 re))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 2 (/.f64 (*.f64 im im) 2)) re)
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 2 (/.f64 (*.f64 1/2 (*.f64 im im)) (sqrt.f64 re))) (sqrt.f64 re))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 2 (/.f64 (*.f64 1/2 (*.f64 im im)) (pow.f64 (cbrt.f64 re) 2))) (cbrt.f64 re))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 2 (neg.f64 (*.f64 1/2 (*.f64 im im)))) (neg.f64 re))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 (*.f64 im im) (/.f64 1 (sqrt.f64 re))) (sqrt.f64 re))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 (*.f64 im im) (/.f64 1 (pow.f64 (cbrt.f64 re) 2))) (cbrt.f64 re))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 im)) (sqrt.f64 (/.f64 re im)))
(/.f64 (/.f64 im (sqrt.f64 re)) (/.f64 (sqrt.f64 (/.f64 re im)) (sqrt.f64 im)))
(/.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 (*.f64 im (neg.f64 im)))) (sqrt.f64 (neg.f64 re)))
(/.f64 (/.f64 im (sqrt.f64 re)) (/.f64 (sqrt.f64 (neg.f64 re)) (sqrt.f64 (*.f64 im (neg.f64 im)))))
(*.f64 (/.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 (neg.f64 re))) (sqrt.f64 (*.f64 im (neg.f64 im))))
(/.f64 (*.f64 1 (*.f64 2 (*.f64 1/2 (*.f64 im im)))) re)
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 1 (/.f64 (*.f64 im im) 1)) re)
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 1 (/.f64 im (/.f64 (sqrt.f64 re) im))) (sqrt.f64 re))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 1 (/.f64 im (/.f64 (pow.f64 (cbrt.f64 re) 2) im))) (cbrt.f64 re))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 1 (neg.f64 im)) (neg.f64 (/.f64 re im)))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 1 (neg.f64 (*.f64 im (neg.f64 im)))) (neg.f64 (neg.f64 re)))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2) (cbrt.f64 im)) (cbrt.f64 (/.f64 re im)))
(/.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2) (/.f64 (cbrt.f64 (/.f64 re im)) (cbrt.f64 im)))
(*.f64 (/.f64 (cbrt.f64 im) (cbrt.f64 (/.f64 re im))) (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2))
(/.f64 (*.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2) (cbrt.f64 (*.f64 im im))) (cbrt.f64 re))
(/.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2) (/.f64 (cbrt.f64 re) (cbrt.f64 (*.f64 im im))))
(*.f64 (/.f64 (cbrt.f64 (*.f64 im im)) (cbrt.f64 re)) (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2))
(/.f64 (*.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2) (cbrt.f64 (*.f64 im (neg.f64 im)))) (cbrt.f64 (neg.f64 re)))
(/.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2) (/.f64 (cbrt.f64 (neg.f64 re)) (cbrt.f64 (*.f64 im (neg.f64 im)))))
(*.f64 (/.f64 (cbrt.f64 (*.f64 im (neg.f64 im))) (cbrt.f64 (neg.f64 re))) (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2))
(/.f64 (*.f64 (*.f64 2 (/.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 re))) (sqrt.f64 (*.f64 1/2 (*.f64 im im)))) (sqrt.f64 re))
(/.f64 (*.f64 2 (/.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 re))) (/.f64 (sqrt.f64 re) (sqrt.f64 (*.f64 1/2 (*.f64 im im)))))
(*.f64 (/.f64 (sqrt.f64 (*.f64 im (*.f64 im 1/2))) (sqrt.f64 re)) (/.f64 (*.f64 (*.f64 im 2) (sqrt.f64 1/2)) (sqrt.f64 re)))
(/.f64 (*.f64 (*.f64 2 (cbrt.f64 (*.f64 1/4 (/.f64 (pow.f64 im 4) (*.f64 re re))))) (cbrt.f64 (*.f64 1/2 (*.f64 im im)))) (cbrt.f64 re))
(/.f64 (*.f64 2 (cbrt.f64 (*.f64 1/4 (/.f64 (pow.f64 im 4) (*.f64 re re))))) (/.f64 (cbrt.f64 re) (cbrt.f64 (*.f64 1/2 (*.f64 im im)))))
(*.f64 (/.f64 (*.f64 2 (cbrt.f64 (pow.f64 (*.f64 im (*.f64 1/2 (/.f64 im re))) 2))) (cbrt.f64 re)) (cbrt.f64 (*.f64 im (*.f64 im 1/2))))
(/.f64 (*.f64 (/.f64 (*.f64 im (sqrt.f64 2)) (sqrt.f64 re)) (sqrt.f64 (*.f64 1/2 (*.f64 im im)))) (sqrt.f64 re))
(/.f64 (/.f64 im (/.f64 (sqrt.f64 re) (sqrt.f64 2))) (/.f64 (sqrt.f64 re) (sqrt.f64 (*.f64 1/2 (*.f64 im im)))))
(/.f64 (/.f64 im (/.f64 (sqrt.f64 re) (sqrt.f64 2))) (/.f64 (sqrt.f64 re) (sqrt.f64 (*.f64 im (*.f64 im 1/2)))))
(/.f64 (*.f64 (/.f64 1 (sqrt.f64 re)) (*.f64 im im)) (sqrt.f64 re))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 (/.f64 1 (pow.f64 (cbrt.f64 re) 2)) (*.f64 im im)) (cbrt.f64 re))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 (/.f64 im 1) im) re)
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 (/.f64 im (pow.f64 (cbrt.f64 re) 2)) im) (cbrt.f64 re))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 (/.f64 (cbrt.f64 (pow.f64 im 4)) 1) (cbrt.f64 (*.f64 im im))) re)
(*.f64 (cbrt.f64 (pow.f64 im 4)) (/.f64 (cbrt.f64 (*.f64 im im)) re))
(*.f64 (cbrt.f64 (*.f64 im im)) (/.f64 (cbrt.f64 (pow.f64 im 4)) re))
(/.f64 (*.f64 (/.f64 (cbrt.f64 (pow.f64 im 4)) (sqrt.f64 re)) (cbrt.f64 (*.f64 im im))) (sqrt.f64 re))
(*.f64 (cbrt.f64 (pow.f64 im 4)) (/.f64 (cbrt.f64 (*.f64 im im)) re))
(*.f64 (cbrt.f64 (*.f64 im im)) (/.f64 (cbrt.f64 (pow.f64 im 4)) re))
(/.f64 (*.f64 (/.f64 (cbrt.f64 (pow.f64 im 4)) (pow.f64 (cbrt.f64 re) 2)) 1) (cbrt.f64 (/.f64 re (*.f64 im im))))
(/.f64 (/.f64 (cbrt.f64 (pow.f64 im 4)) (pow.f64 (cbrt.f64 re) 2)) (cbrt.f64 (/.f64 re (*.f64 im im))))
(/.f64 (*.f64 (/.f64 (cbrt.f64 (pow.f64 im 4)) (pow.f64 (cbrt.f64 re) 2)) (cbrt.f64 im)) (cbrt.f64 (/.f64 re im)))
(/.f64 (/.f64 (cbrt.f64 (pow.f64 im 4)) (pow.f64 (cbrt.f64 re) 2)) (/.f64 (cbrt.f64 (/.f64 re im)) (cbrt.f64 im)))
(/.f64 (*.f64 (/.f64 (cbrt.f64 (pow.f64 im 4)) (pow.f64 (cbrt.f64 re) 2)) (cbrt.f64 (*.f64 im im))) (cbrt.f64 re))
(*.f64 (cbrt.f64 (pow.f64 im 4)) (/.f64 (cbrt.f64 (*.f64 im im)) re))
(*.f64 (cbrt.f64 (*.f64 im im)) (/.f64 (cbrt.f64 (pow.f64 im 4)) re))
(/.f64 (*.f64 (/.f64 (cbrt.f64 (pow.f64 im 4)) (pow.f64 (cbrt.f64 re) 2)) (cbrt.f64 (*.f64 im (neg.f64 im)))) (cbrt.f64 (neg.f64 re)))
(/.f64 (/.f64 (cbrt.f64 (pow.f64 im 4)) (pow.f64 (cbrt.f64 re) 2)) (/.f64 (cbrt.f64 (neg.f64 re)) (cbrt.f64 (*.f64 im (neg.f64 im)))))
(*.f64 (/.f64 (/.f64 (cbrt.f64 (pow.f64 im 4)) (pow.f64 (cbrt.f64 re) 2)) (cbrt.f64 (neg.f64 re))) (cbrt.f64 (*.f64 im (neg.f64 im))))
(/.f64 (*.f64 (cbrt.f64 (pow.f64 im 4)) (cbrt.f64 (*.f64 im (/.f64 im re)))) (pow.f64 (cbrt.f64 re) 2))
(*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (/.f64 (cbrt.f64 (pow.f64 im 4)) (pow.f64 (cbrt.f64 re) 2)))
(/.f64 (*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (cbrt.f64 (pow.f64 im 4))) (pow.f64 (cbrt.f64 re) 2))
(/.f64 (*.f64 (*.f64 2 (*.f64 1/2 (*.f64 im im))) 1) re)
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 (/.f64 (*.f64 im im) 1) 1) re)
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 (/.f64 im (/.f64 (sqrt.f64 re) im)) 1) (sqrt.f64 re))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 (/.f64 im (/.f64 (pow.f64 (cbrt.f64 re) 2) im)) 1) (cbrt.f64 re))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 (neg.f64 im) 1) (neg.f64 (/.f64 re im)))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 (neg.f64 (*.f64 im (neg.f64 im))) 1) (neg.f64 (neg.f64 re)))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 (*.f64 1/2 im) 2) (/.f64 re im))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 (*.f64 1/2 (*.f64 im (neg.f64 im))) 2) (neg.f64 re))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 (/.f64 (*.f64 im im) 2) 2) re)
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 (/.f64 (*.f64 1/2 (*.f64 im im)) (sqrt.f64 re)) 2) (sqrt.f64 re))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 (/.f64 (*.f64 1/2 (*.f64 im im)) (pow.f64 (cbrt.f64 re) 2)) 2) (cbrt.f64 re))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 (neg.f64 (*.f64 1/2 (*.f64 im im))) 2) (neg.f64 re))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 (sqrt.f64 im) (/.f64 im (sqrt.f64 re))) (sqrt.f64 (/.f64 re im)))
(/.f64 (/.f64 im (sqrt.f64 re)) (/.f64 (sqrt.f64 (/.f64 re im)) (sqrt.f64 im)))
(/.f64 (*.f64 (sqrt.f64 (*.f64 im (neg.f64 im))) (/.f64 im (sqrt.f64 re))) (sqrt.f64 (neg.f64 re)))
(/.f64 (/.f64 im (sqrt.f64 re)) (/.f64 (sqrt.f64 (neg.f64 re)) (sqrt.f64 (*.f64 im (neg.f64 im)))))
(*.f64 (/.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 (neg.f64 re))) (sqrt.f64 (*.f64 im (neg.f64 im))))
(/.f64 (*.f64 (sqrt.f64 (*.f64 1/2 (*.f64 im im))) (*.f64 2 (/.f64 (*.f64 (sqrt.f64 1/2) im) (sqrt.f64 re)))) (sqrt.f64 re))
(/.f64 (*.f64 2 (/.f64 (*.f64 im (sqrt.f64 1/2)) (sqrt.f64 re))) (/.f64 (sqrt.f64 re) (sqrt.f64 (*.f64 1/2 (*.f64 im im)))))
(*.f64 (/.f64 (sqrt.f64 (*.f64 im (*.f64 im 1/2))) (sqrt.f64 re)) (/.f64 (*.f64 (*.f64 im 2) (sqrt.f64 1/2)) (sqrt.f64 re)))
(/.f64 (*.f64 (cbrt.f64 im) (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2)) (cbrt.f64 (/.f64 re im)))
(/.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2) (/.f64 (cbrt.f64 (/.f64 re im)) (cbrt.f64 im)))
(*.f64 (/.f64 (cbrt.f64 im) (cbrt.f64 (/.f64 re im))) (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2))
(/.f64 (*.f64 (cbrt.f64 (*.f64 im im)) (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2)) (cbrt.f64 re))
(/.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2) (/.f64 (cbrt.f64 re) (cbrt.f64 (*.f64 im im))))
(*.f64 (/.f64 (cbrt.f64 (*.f64 im im)) (cbrt.f64 re)) (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2))
(/.f64 (*.f64 (cbrt.f64 (*.f64 im (neg.f64 im))) (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2)) (cbrt.f64 (neg.f64 re)))
(/.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2) (/.f64 (cbrt.f64 (neg.f64 re)) (cbrt.f64 (*.f64 im (neg.f64 im)))))
(*.f64 (/.f64 (cbrt.f64 (*.f64 im (neg.f64 im))) (cbrt.f64 (neg.f64 re))) (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2))
(/.f64 (*.f64 1 (*.f64 (/.f64 im (sqrt.f64 re)) (cbrt.f64 (/.f64 im (sqrt.f64 re))))) (cbrt.f64 (/.f64 re (*.f64 im im))))
(/.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (cbrt.f64 (/.f64 im (sqrt.f64 re)))) (cbrt.f64 (/.f64 re (*.f64 im im))))
(/.f64 (pow.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) 4) (cbrt.f64 (/.f64 re (*.f64 im im))))
(/.f64 (*.f64 (cbrt.f64 im) (*.f64 (/.f64 im (sqrt.f64 re)) (cbrt.f64 (/.f64 im (sqrt.f64 re))))) (cbrt.f64 (/.f64 re im)))
(/.f64 (cbrt.f64 im) (/.f64 (cbrt.f64 (/.f64 re im)) (*.f64 (/.f64 im (sqrt.f64 re)) (cbrt.f64 (/.f64 im (sqrt.f64 re))))))
(*.f64 (/.f64 (cbrt.f64 im) (cbrt.f64 (/.f64 re im))) (pow.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) 4))
(/.f64 (*.f64 (cbrt.f64 (*.f64 im im)) (*.f64 (/.f64 im (sqrt.f64 re)) (cbrt.f64 (/.f64 im (sqrt.f64 re))))) (cbrt.f64 re))
(*.f64 (/.f64 (cbrt.f64 (*.f64 im im)) (cbrt.f64 re)) (pow.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) 4))
(/.f64 (*.f64 (cbrt.f64 (*.f64 im (neg.f64 im))) (*.f64 (/.f64 im (sqrt.f64 re)) (cbrt.f64 (/.f64 im (sqrt.f64 re))))) (cbrt.f64 (neg.f64 re)))
(/.f64 (cbrt.f64 (*.f64 im (neg.f64 im))) (/.f64 (cbrt.f64 (neg.f64 re)) (*.f64 (/.f64 im (sqrt.f64 re)) (cbrt.f64 (/.f64 im (sqrt.f64 re))))))
(*.f64 (/.f64 (cbrt.f64 (*.f64 im (neg.f64 im))) (cbrt.f64 (neg.f64 re))) (pow.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) 4))
(/.f64 (*.f64 1 (/.f64 im (/.f64 (cbrt.f64 re) im))) (pow.f64 (cbrt.f64 re) 2))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 im (/.f64 im (cbrt.f64 re))) (pow.f64 (cbrt.f64 re) 2))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 (cbrt.f64 (pow.f64 im 4)) (/.f64 (cbrt.f64 (*.f64 im im)) (sqrt.f64 re))) (sqrt.f64 re))
(*.f64 (cbrt.f64 (pow.f64 im 4)) (/.f64 (cbrt.f64 (*.f64 im im)) re))
(*.f64 (cbrt.f64 (*.f64 im im)) (/.f64 (cbrt.f64 (pow.f64 im 4)) re))
(/.f64 (/.f64 im (sqrt.f64 (/.f64 re im))) (sqrt.f64 (/.f64 re im)))
(*.f64 im (/.f64 im re))
(/.f64 (/.f64 im (*.f64 (cbrt.f64 (/.f64 re im)) (cbrt.f64 (/.f64 re im)))) (cbrt.f64 (/.f64 re im)))
(*.f64 im (/.f64 im re))
(/.f64 (/.f64 im (/.f64 (sqrt.f64 re) (cbrt.f64 (*.f64 im im)))) (/.f64 (sqrt.f64 re) (cbrt.f64 im)))
(*.f64 (/.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (cbrt.f64 (*.f64 im im))) (sqrt.f64 re)) (cbrt.f64 im))
(/.f64 im (/.f64 (/.f64 re (cbrt.f64 (*.f64 im im))) (cbrt.f64 im)))
(/.f64 (/.f64 im (/.f64 1 (sqrt.f64 im))) (/.f64 re (sqrt.f64 im)))
(*.f64 im (/.f64 im re))
(/.f64 (/.f64 im (/.f64 1 (cbrt.f64 (*.f64 im im)))) (/.f64 re (cbrt.f64 im)))
(*.f64 (cbrt.f64 im) (*.f64 (/.f64 im re) (cbrt.f64 (*.f64 im im))))
(*.f64 (cbrt.f64 (*.f64 im im)) (/.f64 (cbrt.f64 im) (/.f64 re im)))
(/.f64 (/.f64 im (/.f64 (sqrt.f64 re) (sqrt.f64 im))) (/.f64 (sqrt.f64 re) (sqrt.f64 im)))
(/.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 im)) (/.f64 (sqrt.f64 re) (sqrt.f64 im)))
(*.f64 (sqrt.f64 im) (/.f64 (/.f64 (*.f64 im (sqrt.f64 im)) (sqrt.f64 re)) (sqrt.f64 re)))
(/.f64 (/.f64 im (/.f64 (pow.f64 (cbrt.f64 re) 2) (sqrt.f64 im))) (/.f64 (cbrt.f64 re) (sqrt.f64 im)))
(/.f64 im (*.f64 (/.f64 (cbrt.f64 re) (sqrt.f64 im)) (/.f64 (pow.f64 (cbrt.f64 re) 2) (sqrt.f64 im))))
(/.f64 (/.f64 (*.f64 im (sqrt.f64 im)) (pow.f64 (cbrt.f64 re) 2)) (/.f64 (cbrt.f64 re) (sqrt.f64 im)))
(/.f64 (/.f64 im (/.f64 (cbrt.f64 re) (cbrt.f64 (*.f64 im (/.f64 im re))))) (/.f64 (cbrt.f64 re) (cbrt.f64 im)))
(*.f64 (/.f64 (*.f64 (/.f64 im (cbrt.f64 re)) (cbrt.f64 (*.f64 im (/.f64 im re)))) (cbrt.f64 re)) (cbrt.f64 im))
(*.f64 (cbrt.f64 im) (/.f64 (*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (/.f64 im (cbrt.f64 re))) (cbrt.f64 re)))
(/.f64 (/.f64 1 (*.f64 (cbrt.f64 (/.f64 re (*.f64 im im))) (cbrt.f64 (/.f64 re (*.f64 im im))))) (cbrt.f64 (/.f64 re (*.f64 im im))))
(*.f64 im (/.f64 im re))
(/.f64 (/.f64 1 (/.f64 (sqrt.f64 re) 1)) (/.f64 (sqrt.f64 re) (*.f64 im im)))
(*.f64 im (/.f64 im re))
(/.f64 (/.f64 1 (/.f64 (pow.f64 (cbrt.f64 re) 2) 1)) (/.f64 (cbrt.f64 re) (*.f64 im im)))
(*.f64 im (/.f64 im re))
(/.f64 (/.f64 (*.f64 im (neg.f64 im)) 1) (neg.f64 re))
(*.f64 im (/.f64 im re))
(/.f64 (/.f64 (*.f64 im (neg.f64 im)) (sqrt.f64 re)) (neg.f64 (sqrt.f64 re)))
(*.f64 im (/.f64 im re))
(/.f64 (/.f64 (*.f64 im (neg.f64 im)) (pow.f64 (cbrt.f64 re) 2)) (neg.f64 (cbrt.f64 re)))
(*.f64 im (/.f64 im re))
(/.f64 (/.f64 (*.f64 im (neg.f64 im)) (sqrt.f64 (neg.f64 re))) (sqrt.f64 (neg.f64 re)))
(*.f64 im (/.f64 im re))
(/.f64 (/.f64 (*.f64 im (neg.f64 im)) (*.f64 (cbrt.f64 (neg.f64 re)) (cbrt.f64 (neg.f64 re)))) (cbrt.f64 (neg.f64 re)))
(*.f64 im (/.f64 im re))
(/.f64 (/.f64 (*.f64 im (neg.f64 im)) -1) re)
(*.f64 im (/.f64 im re))
(/.f64 (/.f64 (*.f64 im (neg.f64 im)) (neg.f64 (sqrt.f64 re))) (sqrt.f64 re))
(*.f64 im (/.f64 im re))
(/.f64 (/.f64 (*.f64 im (neg.f64 im)) (neg.f64 (pow.f64 (cbrt.f64 re) 2))) (cbrt.f64 re))
(*.f64 im (/.f64 im re))
(/.f64 (/.f64 (*.f64 2 (*.f64 1/2 (*.f64 im im))) 1) re)
(*.f64 im (/.f64 im re))
(/.f64 (/.f64 (*.f64 2 (*.f64 1/2 (*.f64 im im))) (sqrt.f64 re)) (sqrt.f64 re))
(*.f64 im (/.f64 im re))
(/.f64 (/.f64 (*.f64 2 (*.f64 1/2 (*.f64 im im))) (cbrt.f64 re)) (pow.f64 (cbrt.f64 re) 2))
(*.f64 im (/.f64 im re))
(/.f64 (/.f64 (*.f64 2 (*.f64 1/2 (*.f64 im im))) (pow.f64 (cbrt.f64 re) 2)) (cbrt.f64 re))
(*.f64 im (/.f64 im re))
(/.f64 (/.f64 (/.f64 (*.f64 im im) 1) 1) re)
(*.f64 im (/.f64 im re))
(/.f64 (/.f64 (/.f64 im (/.f64 (sqrt.f64 re) im)) 1) (sqrt.f64 re))
(*.f64 im (/.f64 im re))
(/.f64 (/.f64 (/.f64 im (/.f64 (sqrt.f64 re) im)) (cbrt.f64 re)) (cbrt.f64 (sqrt.f64 re)))
(/.f64 (/.f64 (*.f64 (/.f64 im (sqrt.f64 re)) im) (cbrt.f64 re)) (cbrt.f64 (sqrt.f64 re)))
(/.f64 (/.f64 (*.f64 im im) (sqrt.f64 re)) (*.f64 (cbrt.f64 re) (cbrt.f64 (sqrt.f64 re))))
(/.f64 (/.f64 (/.f64 im (/.f64 (sqrt.f64 re) im)) (sqrt.f64 (pow.f64 (cbrt.f64 re) 2))) (sqrt.f64 (cbrt.f64 re)))
(/.f64 (*.f64 (/.f64 im (sqrt.f64 re)) im) (*.f64 (sqrt.f64 (cbrt.f64 re)) (sqrt.f64 (pow.f64 (cbrt.f64 re) 2))))
(*.f64 (/.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 (cbrt.f64 re))) (/.f64 im (fabs.f64 (cbrt.f64 re))))
(/.f64 (/.f64 (/.f64 im (/.f64 (sqrt.f64 re) im)) (sqrt.f64 (sqrt.f64 re))) (sqrt.f64 (sqrt.f64 re)))
(*.f64 im (/.f64 im re))
(/.f64 (/.f64 (/.f64 im (/.f64 (pow.f64 (cbrt.f64 re) 2) im)) 1) (cbrt.f64 re))
(*.f64 im (/.f64 im re))
(/.f64 (/.f64 (/.f64 im (/.f64 (pow.f64 (cbrt.f64 re) 2) im)) (sqrt.f64 (cbrt.f64 re))) (sqrt.f64 (cbrt.f64 re)))
(*.f64 im (/.f64 im re))
(/.f64 (/.f64 (/.f64 im (/.f64 (pow.f64 (cbrt.f64 re) 2) im)) (cbrt.f64 (pow.f64 (cbrt.f64 re) 2))) (cbrt.f64 (cbrt.f64 re)))
(/.f64 (/.f64 (*.f64 im im) (pow.f64 (cbrt.f64 re) 2)) (*.f64 (cbrt.f64 (cbrt.f64 re)) (cbrt.f64 (pow.f64 (cbrt.f64 re) 2))))
(*.f64 (/.f64 im (cbrt.f64 (cbrt.f64 re))) (/.f64 (/.f64 im (pow.f64 (cbrt.f64 re) 2)) (cbrt.f64 (pow.f64 (cbrt.f64 re) 2))))
(/.f64 (/.f64 (/.f64 im (/.f64 (pow.f64 (cbrt.f64 re) 2) im)) (cbrt.f64 (sqrt.f64 re))) (cbrt.f64 (sqrt.f64 re)))
(/.f64 (/.f64 (*.f64 im im) (pow.f64 (cbrt.f64 re) 2)) (*.f64 (cbrt.f64 (sqrt.f64 re)) (cbrt.f64 (sqrt.f64 re))))
(*.f64 (/.f64 im (cbrt.f64 (sqrt.f64 re))) (/.f64 (/.f64 im (pow.f64 (cbrt.f64 re) 2)) (cbrt.f64 (sqrt.f64 re))))
(/.f64 (/.f64 (/.f64 im (/.f64 (pow.f64 (cbrt.f64 re) 2) im)) (*.f64 (cbrt.f64 (cbrt.f64 re)) (cbrt.f64 (cbrt.f64 re)))) (cbrt.f64 (cbrt.f64 re)))
(*.f64 im (/.f64 im re))
(pow.f64 (*.f64 im (/.f64 im re)) 1)
(*.f64 im (/.f64 im re))
(pow.f64 (/.f64 im (sqrt.f64 re)) 2)
(*.f64 im (/.f64 im re))
(pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 3)
(*.f64 im (/.f64 im re))
(pow.f64 (/.f64 (pow.f64 im 4) (*.f64 re re)) 1/2)
(sqrt.f64 (/.f64 (pow.f64 im 4) (*.f64 re re)))
(pow.f64 (pow.f64 (*.f64 im (/.f64 im re)) 3) 1/3)
(*.f64 im (/.f64 im re))
(pow.f64 (/.f64 re (*.f64 im im)) -1)
(*.f64 im (/.f64 im re))
(neg.f64 (/.f64 im (/.f64 (neg.f64 re) im)))
(*.f64 im (/.f64 im re))
(sqrt.f64 (/.f64 (pow.f64 im 4) (*.f64 re re)))
(log.f64 (exp.f64 (*.f64 im (/.f64 im re))))
(*.f64 im (/.f64 im re))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 im (/.f64 im re)))))
(*.f64 im (/.f64 im re))
(cbrt.f64 (pow.f64 (*.f64 im (/.f64 im re)) 3))
(*.f64 im (/.f64 im re))
(expm1.f64 (log1p.f64 (*.f64 im (/.f64 im re))))
(*.f64 im (/.f64 im re))
(exp.f64 (log.f64 (*.f64 im (/.f64 im re))))
(*.f64 im (/.f64 im re))
(log1p.f64 (expm1.f64 (*.f64 im (/.f64 im re))))
(*.f64 im (/.f64 im re))

eval475.0ms (5.3%)

Compiler

Compiled 16721 to 8988 computations (46.2% saved)

prune420.0ms (4.7%)

Pruning

11 alts after pruning (7 fresh and 4 done)

PrunedKeptTotal
New9557962
Fresh000
Picked101
Done145
Total95711968
Error
0.0b
Counts
968 → 11
Alt Table
Click to see full alt table
StatusErrorProgram
47.2b
(*.f64 1/2 (pow.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) 3))
49.8b
(*.f64 1/2 (/.f64 (sqrt.f64 im) (sqrt.f64 (/.f64 re im))))
47.0b
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
47.1b
(*.f64 1/2 (/.f64 1 (/.f64 (sqrt.f64 re) im)))
47.0b
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
29.3b
(*.f64 1/2 (*.f64 (sqrt.f64 (-.f64 im re)) (sqrt.f64 2)))
53.2b
(*.f64 1/2 (sqrt.f64 (*.f64 im (/.f64 im re))))
13.2b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))))
29.2b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 im re))))
47.0b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 re -2))))
30.8b
(*.f64 1/2 (sqrt.f64 (*.f64 2 im)))
Compiler

Compiled 182 to 143 computations (21.4% saved)

localize11.0ms (0.1%)

Local error

Found 1 expressions with local error:

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

Compiled 31 to 16 computations (48.4% saved)

series2.0ms (0%)

Counts
1 → 8
Calls

6 calls:

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

rewrite99.0ms (1.1%)

Algorithm
batch-egg-rewrite
Rules
886×*-commutative
714×unswap-sqr
516×swap-sqr
498×associate-*r/
436×associate-*l/
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01017
120817
2255117
Stop Event
node limit
Counts
1 → 22
Calls
Call 1
Inputs
(*.f64 (sqrt.f64 (-.f64 im re)) (sqrt.f64 2))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 (-.f64 im re) 2)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 (-.f64 im re) 2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 (*.f64 (-.f64 im re) (+.f64 im re)))) (sqrt.f64 (+.f64 im re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 (-.f64 (pow.f64 im 3) (pow.f64 re 3)))) (sqrt.f64 (fma.f64 im im (*.f64 re (+.f64 im re)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 (*.f64 (-.f64 im re) (+.f64 im re))) (sqrt.f64 2)) (sqrt.f64 (+.f64 im re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 (-.f64 (pow.f64 im 3) (pow.f64 re 3))) (sqrt.f64 2)) (sqrt.f64 (fma.f64 im im (*.f64 re (+.f64 im re)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cbrt.f64 (*.f64 (-.f64 im re) (+.f64 im re))) (*.f64 (sqrt.f64 2) (cbrt.f64 (sqrt.f64 (-.f64 im re))))) (cbrt.f64 (+.f64 im re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cbrt.f64 (-.f64 (pow.f64 im 3) (pow.f64 re 3))) (*.f64 (sqrt.f64 2) (cbrt.f64 (sqrt.f64 (-.f64 im re))))) (cbrt.f64 (fma.f64 im im (*.f64 re (+.f64 im re)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 (-.f64 im re) 2)))) (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 (-.f64 im re) 2))))) 1) (+.f64 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 (-.f64 im re) 2)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (-.f64 im re) 2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (sqrt.f64 (*.f64 (-.f64 im re) 2))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (sqrt.f64 (*.f64 (-.f64 im re) 2))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (-.f64 im re) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (sqrt.f64 (*.f64 (-.f64 im re) 2)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 (-.f64 im re) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (sqrt.f64 (*.f64 (-.f64 im re) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (sqrt.f64 (*.f64 (-.f64 im re) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (sqrt.f64 (*.f64 (-.f64 im re) 2)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (*.f64 2 (sqrt.f64 2)) (pow.f64 (-.f64 im re) 3/2)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (sqrt.f64 (*.f64 (-.f64 im re) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (sqrt.f64 (*.f64 (-.f64 im re) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (sqrt.f64 (*.f64 (-.f64 im re) 2))))))))

simplify63.0ms (0.7%)

Algorithm
egg-herbie
Rules
1444×associate-/r*
1374×associate-*r/
1136×associate-*l/
1080×associate-*r*
918×associate-*l*
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01361454
13351432
210631400
348881400
Stop Event
node limit
Counts
30 → 75
Calls
Call 1
Inputs
(*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 -1)) (sqrt.f64 re))
(+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) im) (sqrt.f64 -1)) (sqrt.f64 (/.f64 1 re)))) (*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 -1)) (sqrt.f64 re)))
(+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) im) (sqrt.f64 -1)) (sqrt.f64 (/.f64 1 re)))) (+.f64 (*.f64 -1/8 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 2)) (pow.f64 (sqrt.f64 -1) 3)) (sqrt.f64 (/.f64 1 (pow.f64 re 3))))) (*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 -1)) (sqrt.f64 re))))
(+.f64 (*.f64 1/16 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 3)) (pow.f64 (sqrt.f64 -1) 5)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) (+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) im) (sqrt.f64 -1)) (sqrt.f64 (/.f64 1 re)))) (+.f64 (*.f64 -1/8 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 2)) (pow.f64 (sqrt.f64 -1) 3)) (sqrt.f64 (/.f64 1 (pow.f64 re 3))))) (*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 -1)) (sqrt.f64 re)))))
(*.f64 (sqrt.f64 2) (sqrt.f64 im))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (+.f64 (*.f64 -1/8 (*.f64 (*.f64 (sqrt.f64 2) (pow.f64 re 2)) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (*.f64 (sqrt.f64 2) (sqrt.f64 im))))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (+.f64 (*.f64 -1/16 (*.f64 (*.f64 (sqrt.f64 2) (pow.f64 re 3)) (sqrt.f64 (/.f64 1 (pow.f64 im 5))))) (+.f64 (*.f64 -1/8 (*.f64 (*.f64 (sqrt.f64 2) (pow.f64 re 2)) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))))
(+.f64 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 (-.f64 im re) 2)))) -1)
(-.f64 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 (-.f64 im re) 2)))) 1)
(/.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 (*.f64 (-.f64 im re) (+.f64 im re)))) (sqrt.f64 (+.f64 im re)))
(/.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 (-.f64 (pow.f64 im 3) (pow.f64 re 3)))) (sqrt.f64 (fma.f64 im im (*.f64 re (+.f64 im re)))))
(/.f64 (*.f64 (sqrt.f64 (*.f64 (-.f64 im re) (+.f64 im re))) (sqrt.f64 2)) (sqrt.f64 (+.f64 im re)))
(/.f64 (*.f64 (sqrt.f64 (-.f64 (pow.f64 im 3) (pow.f64 re 3))) (sqrt.f64 2)) (sqrt.f64 (fma.f64 im im (*.f64 re (+.f64 im re)))))
(/.f64 (*.f64 (cbrt.f64 (*.f64 (-.f64 im re) (+.f64 im re))) (*.f64 (sqrt.f64 2) (cbrt.f64 (sqrt.f64 (-.f64 im re))))) (cbrt.f64 (+.f64 im re)))
(/.f64 (*.f64 (cbrt.f64 (-.f64 (pow.f64 im 3) (pow.f64 re 3))) (*.f64 (sqrt.f64 2) (cbrt.f64 (sqrt.f64 (-.f64 im re))))) (cbrt.f64 (fma.f64 im im (*.f64 re (+.f64 im re)))))
(/.f64 (-.f64 (*.f64 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 (-.f64 im re) 2)))) (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 (-.f64 im re) 2))))) 1) (+.f64 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 (-.f64 im re) 2)))) 1))
(pow.f64 (sqrt.f64 (*.f64 (-.f64 im re) 2)) 1)
(pow.f64 (sqrt.f64 (sqrt.f64 (*.f64 (-.f64 im re) 2))) 2)
(pow.f64 (cbrt.f64 (sqrt.f64 (*.f64 (-.f64 im re) 2))) 3)
(pow.f64 (*.f64 (-.f64 im re) 2) 1/2)
(pow.f64 (pow.f64 (sqrt.f64 (*.f64 (-.f64 im re) 2)) 3) 1/3)
(sqrt.f64 (*.f64 (-.f64 im re) 2))
(log.f64 (exp.f64 (sqrt.f64 (*.f64 (-.f64 im re) 2))))
(log.f64 (+.f64 1 (expm1.f64 (sqrt.f64 (*.f64 (-.f64 im re) 2)))))
(cbrt.f64 (pow.f64 (sqrt.f64 (*.f64 (-.f64 im re) 2)) 3))
(cbrt.f64 (*.f64 (*.f64 2 (sqrt.f64 2)) (pow.f64 (-.f64 im re) 3/2)))
(expm1.f64 (log1p.f64 (sqrt.f64 (*.f64 (-.f64 im re) 2))))
(exp.f64 (log.f64 (sqrt.f64 (*.f64 (-.f64 im re) 2))))
(log1p.f64 (expm1.f64 (sqrt.f64 (*.f64 (-.f64 im re) 2))))
Outputs
(*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 -1)) (sqrt.f64 re))
(*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1) (sqrt.f64 re)))
(+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) im) (sqrt.f64 -1)) (sqrt.f64 (/.f64 1 re)))) (*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 -1)) (sqrt.f64 re)))
(fma.f64 1/2 (*.f64 (/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 -1) im)) (sqrt.f64 (/.f64 1 re))) (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1) (sqrt.f64 re))))
(fma.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1) (sqrt.f64 re)) (*.f64 (*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 -1)) im) (*.f64 (sqrt.f64 (/.f64 1 re)) 1/2)))
(fma.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1) (sqrt.f64 re)) (*.f64 1/2 (*.f64 (*.f64 (/.f64 im (sqrt.f64 -1)) (sqrt.f64 2)) (sqrt.f64 (/.f64 1 re)))))
(fma.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1) (sqrt.f64 re)) (*.f64 (sqrt.f64 (/.f64 1 re)) (/.f64 (*.f64 (sqrt.f64 2) 1/2) (/.f64 (sqrt.f64 -1) im))))
(+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) im) (sqrt.f64 -1)) (sqrt.f64 (/.f64 1 re)))) (+.f64 (*.f64 -1/8 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 2)) (pow.f64 (sqrt.f64 -1) 3)) (sqrt.f64 (/.f64 1 (pow.f64 re 3))))) (*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 -1)) (sqrt.f64 re))))
(fma.f64 1/2 (*.f64 (/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 -1) im)) (sqrt.f64 (/.f64 1 re))) (fma.f64 -1/8 (*.f64 (/.f64 (sqrt.f64 2) (/.f64 (pow.f64 (sqrt.f64 -1) 3) (*.f64 im im))) (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1) (sqrt.f64 re)))))
(fma.f64 1/2 (*.f64 (*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 -1)) im) (sqrt.f64 (/.f64 1 re))) (fma.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1) (sqrt.f64 re)) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (*.f64 -1/8 (/.f64 (sqrt.f64 2) (/.f64 (*.f64 -1 (sqrt.f64 -1)) (*.f64 im im)))))))
(fma.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (*.f64 1/8 (/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 -1) (*.f64 im im)))) (fma.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1) (sqrt.f64 re)) (*.f64 1/2 (*.f64 (*.f64 (/.f64 im (sqrt.f64 -1)) (sqrt.f64 2)) (sqrt.f64 (/.f64 1 re))))))
(fma.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1) (sqrt.f64 re)) (fma.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (*.f64 1/8 (*.f64 (sqrt.f64 2) (/.f64 im (/.f64 (sqrt.f64 -1) im)))) (*.f64 (sqrt.f64 (/.f64 1 re)) (/.f64 (*.f64 (sqrt.f64 2) 1/2) (/.f64 (sqrt.f64 -1) im)))))
(+.f64 (*.f64 1/16 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 3)) (pow.f64 (sqrt.f64 -1) 5)) (sqrt.f64 (/.f64 1 (pow.f64 re 5))))) (+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) im) (sqrt.f64 -1)) (sqrt.f64 (/.f64 1 re)))) (+.f64 (*.f64 -1/8 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 2)) (pow.f64 (sqrt.f64 -1) 3)) (sqrt.f64 (/.f64 1 (pow.f64 re 3))))) (*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 -1)) (sqrt.f64 re)))))
(fma.f64 1/16 (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 im 3)) (pow.f64 (sqrt.f64 -1) 5)) (sqrt.f64 (/.f64 1 (pow.f64 re 5)))) (fma.f64 1/2 (*.f64 (/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 -1) im)) (sqrt.f64 (/.f64 1 re))) (fma.f64 -1/8 (*.f64 (/.f64 (sqrt.f64 2) (/.f64 (pow.f64 (sqrt.f64 -1) 3) (*.f64 im im))) (sqrt.f64 (/.f64 1 (pow.f64 re 3)))) (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1) (sqrt.f64 re))))))
(fma.f64 1/16 (*.f64 (/.f64 (sqrt.f64 2) (/.f64 (pow.f64 (sqrt.f64 -1) 5) (pow.f64 im 3))) (sqrt.f64 (/.f64 1 (pow.f64 re 5)))) (fma.f64 1/2 (*.f64 (*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 -1)) im) (sqrt.f64 (/.f64 1 re))) (fma.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1) (sqrt.f64 re)) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (*.f64 -1/8 (/.f64 (sqrt.f64 2) (/.f64 (*.f64 -1 (sqrt.f64 -1)) (*.f64 im im))))))))
(fma.f64 1/16 (*.f64 (/.f64 (pow.f64 im 3) (/.f64 (pow.f64 (sqrt.f64 -1) 5) (sqrt.f64 2))) (sqrt.f64 (/.f64 1 (pow.f64 re 5)))) (fma.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (*.f64 1/8 (/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 -1) (*.f64 im im)))) (fma.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1) (sqrt.f64 re)) (*.f64 1/2 (*.f64 (*.f64 (/.f64 im (sqrt.f64 -1)) (sqrt.f64 2)) (sqrt.f64 (/.f64 1 re)))))))
(fma.f64 1/16 (*.f64 (*.f64 (/.f64 (pow.f64 im 3) (pow.f64 (sqrt.f64 -1) 5)) (sqrt.f64 2)) (sqrt.f64 (/.f64 1 (pow.f64 re 5)))) (fma.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 -1) (sqrt.f64 re)) (fma.f64 (sqrt.f64 (/.f64 1 (pow.f64 re 3))) (*.f64 1/8 (*.f64 (sqrt.f64 2) (/.f64 im (/.f64 (sqrt.f64 -1) im)))) (*.f64 (sqrt.f64 (/.f64 1 re)) (/.f64 (*.f64 (sqrt.f64 2) 1/2) (/.f64 (sqrt.f64 -1) im))))))
(*.f64 (sqrt.f64 2) (sqrt.f64 im))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))
(fma.f64 -1/2 (*.f64 (sqrt.f64 2) (*.f64 re (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))
(fma.f64 -1/2 (*.f64 re (*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 1 im)))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))
(*.f64 (sqrt.f64 2) (+.f64 (sqrt.f64 im) (*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 re -1/2))))
(*.f64 (sqrt.f64 2) (+.f64 (*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 re -1/2)) (sqrt.f64 im)))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (+.f64 (*.f64 -1/8 (*.f64 (*.f64 (sqrt.f64 2) (pow.f64 re 2)) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (*.f64 (sqrt.f64 2) (sqrt.f64 im))))
(fma.f64 -1/2 (*.f64 (sqrt.f64 2) (*.f64 re (sqrt.f64 (/.f64 1 im)))) (fma.f64 -1/8 (*.f64 (sqrt.f64 2) (*.f64 (*.f64 re re) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (*.f64 (sqrt.f64 2) (sqrt.f64 im))))
(fma.f64 -1/2 (*.f64 re (*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 1 im)))) (fma.f64 (sqrt.f64 2) (sqrt.f64 im) (*.f64 (*.f64 (sqrt.f64 2) (*.f64 re re)) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 im 3))) -1/8))))
(fma.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 re -1/2)) (*.f64 (sqrt.f64 2) (+.f64 (sqrt.f64 im) (*.f64 -1/8 (*.f64 (*.f64 re re) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))))))
(fma.f64 (sqrt.f64 2) (*.f64 re (*.f64 (*.f64 re (sqrt.f64 (/.f64 1 (pow.f64 im 3)))) -1/8)) (*.f64 (sqrt.f64 2) (+.f64 (*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 re -1/2)) (sqrt.f64 im))))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 2) re) (sqrt.f64 (/.f64 1 im)))) (+.f64 (*.f64 -1/16 (*.f64 (*.f64 (sqrt.f64 2) (pow.f64 re 3)) (sqrt.f64 (/.f64 1 (pow.f64 im 5))))) (+.f64 (*.f64 -1/8 (*.f64 (*.f64 (sqrt.f64 2) (pow.f64 re 2)) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))))
(fma.f64 -1/2 (*.f64 (sqrt.f64 2) (*.f64 re (sqrt.f64 (/.f64 1 im)))) (fma.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 re 3) (sqrt.f64 (/.f64 1 (pow.f64 im 5))))) (fma.f64 -1/8 (*.f64 (sqrt.f64 2) (*.f64 (*.f64 re re) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (*.f64 (sqrt.f64 2) (sqrt.f64 im)))))
(fma.f64 -1/2 (*.f64 re (*.f64 (sqrt.f64 2) (sqrt.f64 (/.f64 1 im)))) (fma.f64 -1/16 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 re 3) (sqrt.f64 (/.f64 1 (pow.f64 im 5))))) (fma.f64 (sqrt.f64 2) (sqrt.f64 im) (*.f64 (*.f64 (sqrt.f64 2) (*.f64 re re)) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 im 3))) -1/8)))))
(+.f64 (*.f64 (sqrt.f64 2) (+.f64 (sqrt.f64 im) (*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 re -1/2)))) (*.f64 (sqrt.f64 2) (+.f64 (*.f64 -1/8 (*.f64 (*.f64 re re) (sqrt.f64 (/.f64 1 (pow.f64 im 3))))) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 im 5))) (*.f64 (pow.f64 re 3) -1/16)))))
(+.f64 (*.f64 (sqrt.f64 2) (+.f64 (*.f64 (sqrt.f64 (/.f64 1 im)) (*.f64 re -1/2)) (sqrt.f64 im))) (*.f64 (sqrt.f64 2) (+.f64 (*.f64 (pow.f64 re 3) (*.f64 -1/16 (sqrt.f64 (/.f64 1 (pow.f64 im 5))))) (*.f64 re (*.f64 (*.f64 re (sqrt.f64 (/.f64 1 (pow.f64 im 3)))) -1/8)))))
(+.f64 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 (-.f64 im re) 2)))) -1)
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(-.f64 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 (-.f64 im re) 2)))) 1)
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(/.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 (*.f64 (-.f64 im re) (+.f64 im re)))) (sqrt.f64 (+.f64 im re)))
(/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 (+.f64 re im)) (sqrt.f64 (*.f64 (-.f64 im re) (+.f64 re im)))))
(*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 (+.f64 re im))) (sqrt.f64 (*.f64 (-.f64 im re) (+.f64 re im))))
(*.f64 (sqrt.f64 (*.f64 (-.f64 im re) (+.f64 re im))) (/.f64 (sqrt.f64 2) (sqrt.f64 (+.f64 re im))))
(*.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 (*.f64 (-.f64 im re) (+.f64 re im))) (sqrt.f64 (+.f64 re im))))
(/.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 (-.f64 (pow.f64 im 3) (pow.f64 re 3)))) (sqrt.f64 (fma.f64 im im (*.f64 re (+.f64 im re)))))
(/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 (fma.f64 im im (*.f64 re (+.f64 re im)))) (sqrt.f64 (-.f64 (pow.f64 im 3) (pow.f64 re 3)))))
(*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 (fma.f64 im im (*.f64 re (+.f64 re im))))) (sqrt.f64 (-.f64 (pow.f64 im 3) (pow.f64 re 3))))
(*.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 (-.f64 (pow.f64 im 3) (pow.f64 re 3))) (sqrt.f64 (fma.f64 re (+.f64 re im) (*.f64 im im)))))
(/.f64 (*.f64 (sqrt.f64 (*.f64 (-.f64 im re) (+.f64 im re))) (sqrt.f64 2)) (sqrt.f64 (+.f64 im re)))
(/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 (+.f64 re im)) (sqrt.f64 (*.f64 (-.f64 im re) (+.f64 re im)))))
(*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 (+.f64 re im))) (sqrt.f64 (*.f64 (-.f64 im re) (+.f64 re im))))
(*.f64 (sqrt.f64 (*.f64 (-.f64 im re) (+.f64 re im))) (/.f64 (sqrt.f64 2) (sqrt.f64 (+.f64 re im))))
(*.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 (*.f64 (-.f64 im re) (+.f64 re im))) (sqrt.f64 (+.f64 re im))))
(/.f64 (*.f64 (sqrt.f64 (-.f64 (pow.f64 im 3) (pow.f64 re 3))) (sqrt.f64 2)) (sqrt.f64 (fma.f64 im im (*.f64 re (+.f64 im re)))))
(/.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 (fma.f64 im im (*.f64 re (+.f64 re im)))) (sqrt.f64 (-.f64 (pow.f64 im 3) (pow.f64 re 3)))))
(*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 (fma.f64 im im (*.f64 re (+.f64 re im))))) (sqrt.f64 (-.f64 (pow.f64 im 3) (pow.f64 re 3))))
(*.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 (-.f64 (pow.f64 im 3) (pow.f64 re 3))) (sqrt.f64 (fma.f64 re (+.f64 re im) (*.f64 im im)))))
(/.f64 (*.f64 (cbrt.f64 (*.f64 (-.f64 im re) (+.f64 im re))) (*.f64 (sqrt.f64 2) (cbrt.f64 (sqrt.f64 (-.f64 im re))))) (cbrt.f64 (+.f64 im re)))
(/.f64 (*.f64 (cbrt.f64 (*.f64 (-.f64 im re) (+.f64 re im))) (*.f64 (sqrt.f64 2) (cbrt.f64 (sqrt.f64 (-.f64 im re))))) (cbrt.f64 (+.f64 re im)))
(/.f64 (cbrt.f64 (*.f64 (-.f64 im re) (+.f64 re im))) (/.f64 (/.f64 (cbrt.f64 (+.f64 re im)) (sqrt.f64 2)) (cbrt.f64 (sqrt.f64 (-.f64 im re)))))
(*.f64 (*.f64 (sqrt.f64 2) (cbrt.f64 (sqrt.f64 (-.f64 im re)))) (/.f64 (cbrt.f64 (*.f64 (-.f64 im re) (+.f64 re im))) (cbrt.f64 (+.f64 re im))))
(*.f64 (/.f64 (*.f64 (sqrt.f64 2) (cbrt.f64 (*.f64 (-.f64 im re) (+.f64 re im)))) (cbrt.f64 (+.f64 re im))) (cbrt.f64 (sqrt.f64 (-.f64 im re))))
(/.f64 (*.f64 (cbrt.f64 (-.f64 (pow.f64 im 3) (pow.f64 re 3))) (*.f64 (sqrt.f64 2) (cbrt.f64 (sqrt.f64 (-.f64 im re))))) (cbrt.f64 (fma.f64 im im (*.f64 re (+.f64 im re)))))
(/.f64 (cbrt.f64 (-.f64 (pow.f64 im 3) (pow.f64 re 3))) (/.f64 (cbrt.f64 (fma.f64 im im (*.f64 re (+.f64 re im)))) (*.f64 (sqrt.f64 2) (cbrt.f64 (sqrt.f64 (-.f64 im re))))))
(/.f64 (*.f64 (sqrt.f64 2) (cbrt.f64 (-.f64 (pow.f64 im 3) (pow.f64 re 3)))) (/.f64 (cbrt.f64 (fma.f64 im im (*.f64 re (+.f64 re im)))) (cbrt.f64 (sqrt.f64 (-.f64 im re)))))
(*.f64 (*.f64 (sqrt.f64 2) (cbrt.f64 (sqrt.f64 (-.f64 im re)))) (/.f64 (cbrt.f64 (-.f64 (pow.f64 im 3) (pow.f64 re 3))) (cbrt.f64 (fma.f64 re (+.f64 re im) (*.f64 im im)))))
(*.f64 (/.f64 (*.f64 (sqrt.f64 2) (cbrt.f64 (-.f64 (pow.f64 im 3) (pow.f64 re 3)))) (cbrt.f64 (fma.f64 re (+.f64 re im) (*.f64 im im)))) (cbrt.f64 (sqrt.f64 (-.f64 im re))))
(/.f64 (-.f64 (*.f64 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 (-.f64 im re) 2)))) (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 (-.f64 im re) 2))))) 1) (+.f64 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 (-.f64 im re) 2)))) 1))
(/.f64 (*.f64 (+.f64 1 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 2 (-.f64 im re)))))) (sqrt.f64 (*.f64 2 (-.f64 im re)))) (+.f64 1 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 2 (-.f64 im re)))))))
(/.f64 (expm1.f64 (*.f64 2 (log1p.f64 (sqrt.f64 (*.f64 2 (-.f64 im re)))))) (+.f64 1 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 2 (-.f64 im re)))))))
(pow.f64 (sqrt.f64 (*.f64 (-.f64 im re) 2)) 1)
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(pow.f64 (sqrt.f64 (sqrt.f64 (*.f64 (-.f64 im re) 2))) 2)
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(pow.f64 (cbrt.f64 (sqrt.f64 (*.f64 (-.f64 im re) 2))) 3)
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(pow.f64 (*.f64 (-.f64 im re) 2) 1/2)
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(pow.f64 (pow.f64 (sqrt.f64 (*.f64 (-.f64 im re) 2)) 3) 1/3)
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(sqrt.f64 (*.f64 (-.f64 im re) 2))
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(log.f64 (exp.f64 (sqrt.f64 (*.f64 (-.f64 im re) 2))))
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(log.f64 (+.f64 1 (expm1.f64 (sqrt.f64 (*.f64 (-.f64 im re) 2)))))
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(cbrt.f64 (pow.f64 (sqrt.f64 (*.f64 (-.f64 im re) 2)) 3))
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(cbrt.f64 (*.f64 (*.f64 2 (sqrt.f64 2)) (pow.f64 (-.f64 im re) 3/2)))
(cbrt.f64 (*.f64 2 (*.f64 (sqrt.f64 2) (pow.f64 (-.f64 im re) 3/2))))
(cbrt.f64 (*.f64 (sqrt.f64 2) (*.f64 2 (pow.f64 (-.f64 im re) 3/2))))
(expm1.f64 (log1p.f64 (sqrt.f64 (*.f64 (-.f64 im re) 2))))
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(exp.f64 (log.f64 (sqrt.f64 (*.f64 (-.f64 im re) 2))))
(sqrt.f64 (*.f64 2 (-.f64 im re)))
(log1p.f64 (expm1.f64 (sqrt.f64 (*.f64 (-.f64 im re) 2))))
(sqrt.f64 (*.f64 2 (-.f64 im re)))

localize6.0ms (0.1%)

Local error

Found 2 expressions with local error:

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

Compiled 17 to 7 computations (58.8% saved)

series3.0ms (0%)

Counts
2 → 24
Calls

12 calls:

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

rewrite96.0ms (1.1%)

Algorithm
batch-egg-rewrite
Rules
1806×add-sqr-sqrt
1786×*-un-lft-identity
1662×add-cube-cbrt
1644×add-cbrt-cube
180×pow1
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0928
118328
2224928
Stop Event
node limit
Counts
2 → 54
Calls
Call 1
Inputs
(/.f64 im (sqrt.f64 re))
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 im (sqrt.f64 re)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 im (pow.f64 re -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 im (sqrt.f64 re)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 im (sqrt.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 im) (*.f64 (sqrt.f64 im) (pow.f64 re -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) (sqrt.f64 (/.f64 im (sqrt.f64 re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 im) 2) (*.f64 (cbrt.f64 im) (pow.f64 re -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (cbrt.f64 (/.f64 (*.f64 im im) re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (*.f64 im im) re)) (cbrt.f64 (/.f64 im (sqrt.f64 re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 re -1/2) im)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 im) (/.f64 1 (neg.f64 (sqrt.f64 re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (pow.f64 re 1/4)) (/.f64 im (pow.f64 re 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (cbrt.f64 re)) (/.f64 im (cbrt.f64 (sqrt.f64 re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 im) 1) (/.f64 (sqrt.f64 im) (sqrt.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 im) (cbrt.f64 re)) (/.f64 (sqrt.f64 im) (cbrt.f64 (sqrt.f64 re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 im) 2) 1) (/.f64 (cbrt.f64 im) (sqrt.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 im) 2) (pow.f64 re 1/4)) (/.f64 (cbrt.f64 im) (pow.f64 re 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 im) 2) (cbrt.f64 re)) (cbrt.f64 (/.f64 im (sqrt.f64 re))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 im (sqrt.f64 re)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (sqrt.f64 re) im) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 im (neg.f64 (sqrt.f64 re))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (/.f64 (*.f64 im im) re))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 im (sqrt.f64 re))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 im (sqrt.f64 re)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 im (sqrt.f64 re))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 im (sqrt.f64 re))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 im (sqrt.f64 re))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 im (sqrt.f64 re))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1/2 (/.f64 (sqrt.f64 re) im))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (sqrt.f64 re) (*.f64 im 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 im 1/2) (sqrt.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1/2 (neg.f64 im)) (neg.f64 (sqrt.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 im) 1/2) (neg.f64 (sqrt.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 im 1/2) 1) (sqrt.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 im 1/2) (pow.f64 re 1/4)) (pow.f64 re 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 im 1/2) (cbrt.f64 re)) (cbrt.f64 (sqrt.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 im 1/2)) (neg.f64 (sqrt.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 1/4 (/.f64 (*.f64 im im) re)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 1/2) (/.f64 im (sqrt.f64 re))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2)))))))

simplify69.0ms (0.8%)

Algorithm
egg-herbie
Rules
1404×associate-*r/
1044×associate-*l/
810×associate-/l*
742×associate-+r-
732×unswap-sqr
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01341362
13131350
212711350
372541350
Stop Event
node limit
Counts
78 → 76
Calls
Call 1
Inputs
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(-.f64 (exp.f64 (log1p.f64 (/.f64 im (sqrt.f64 re)))) 1)
(*.f64 im (pow.f64 re -1/2))
(*.f64 (/.f64 im (sqrt.f64 re)) 1)
(*.f64 1 (/.f64 im (sqrt.f64 re)))
(*.f64 (sqrt.f64 im) (*.f64 (sqrt.f64 im) (pow.f64 re -1/2)))
(*.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) (sqrt.f64 (/.f64 im (sqrt.f64 re))))
(*.f64 (pow.f64 (cbrt.f64 im) 2) (*.f64 (cbrt.f64 im) (pow.f64 re -1/2)))
(*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (cbrt.f64 (/.f64 (*.f64 im im) re)))
(*.f64 (cbrt.f64 (/.f64 (*.f64 im im) re)) (cbrt.f64 (/.f64 im (sqrt.f64 re))))
(*.f64 (pow.f64 re -1/2) im)
(*.f64 (neg.f64 im) (/.f64 1 (neg.f64 (sqrt.f64 re))))
(*.f64 (/.f64 1 (pow.f64 re 1/4)) (/.f64 im (pow.f64 re 1/4)))
(*.f64 (/.f64 1 (cbrt.f64 re)) (/.f64 im (cbrt.f64 (sqrt.f64 re))))
(*.f64 (/.f64 (sqrt.f64 im) 1) (/.f64 (sqrt.f64 im) (sqrt.f64 re)))
(*.f64 (/.f64 (sqrt.f64 im) (cbrt.f64 re)) (/.f64 (sqrt.f64 im) (cbrt.f64 (sqrt.f64 re))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 im) 2) 1) (/.f64 (cbrt.f64 im) (sqrt.f64 re)))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 im) 2) (pow.f64 re 1/4)) (/.f64 (cbrt.f64 im) (pow.f64 re 1/4)))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 im) 2) (cbrt.f64 re)) (cbrt.f64 (/.f64 im (sqrt.f64 re))))
(pow.f64 (/.f64 im (sqrt.f64 re)) 1)
(pow.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) 2)
(pow.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) 3)
(pow.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 3) 1/3)
(pow.f64 (/.f64 (sqrt.f64 re) im) -1)
(neg.f64 (/.f64 im (neg.f64 (sqrt.f64 re))))
(sqrt.f64 (/.f64 (*.f64 im im) re))
(log.f64 (exp.f64 (/.f64 im (sqrt.f64 re))))
(log.f64 (+.f64 1 (expm1.f64 (/.f64 im (sqrt.f64 re)))))
(cbrt.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 3))
(expm1.f64 (log1p.f64 (/.f64 im (sqrt.f64 re))))
(exp.f64 (log.f64 (/.f64 im (sqrt.f64 re))))
(exp.f64 (*.f64 (log.f64 (/.f64 im (sqrt.f64 re))) 1))
(log1p.f64 (expm1.f64 (/.f64 im (sqrt.f64 re))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2))) 1)
(/.f64 1/2 (/.f64 (sqrt.f64 re) im))
(/.f64 1 (/.f64 (sqrt.f64 re) (*.f64 im 1/2)))
(/.f64 (*.f64 im 1/2) (sqrt.f64 re))
(/.f64 (*.f64 1/2 (neg.f64 im)) (neg.f64 (sqrt.f64 re)))
(/.f64 (*.f64 (neg.f64 im) 1/2) (neg.f64 (sqrt.f64 re)))
(/.f64 (/.f64 (*.f64 im 1/2) 1) (sqrt.f64 re))
(/.f64 (/.f64 (*.f64 im 1/2) (pow.f64 re 1/4)) (pow.f64 re 1/4))
(/.f64 (/.f64 (*.f64 im 1/2) (cbrt.f64 re)) (cbrt.f64 (sqrt.f64 re)))
(/.f64 (neg.f64 (*.f64 im 1/2)) (neg.f64 (sqrt.f64 re)))
(pow.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2) 1)
(pow.f64 (sqrt.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2)) 2)
(pow.f64 (cbrt.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2)) 3)
(pow.f64 (pow.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2) 3) 1/3)
(sqrt.f64 (*.f64 1/4 (/.f64 (*.f64 im im) re)))
(log.f64 (pow.f64 (exp.f64 1/2) (/.f64 im (sqrt.f64 re))))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2))))
(cbrt.f64 (pow.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2) 3))
(expm1.f64 (log1p.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2)))
(exp.f64 (log.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2)))
(exp.f64 (*.f64 (log.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2)) 1))
(log1p.f64 (expm1.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2)))
Outputs
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 1/2)
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im 1/2))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 1/2)
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im 1/2))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 1/2)
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im 1/2))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 1/2)
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im 1/2))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 1/2)
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im 1/2))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 1/2)
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im 1/2))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 1/2)
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im 1/2))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 1/2)
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im 1/2))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 1/2)
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im 1/2))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 1/2)
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im 1/2))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 1/2)
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im 1/2))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 1/2)
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im 1/2))
(-.f64 (exp.f64 (log1p.f64 (/.f64 im (sqrt.f64 re)))) 1)
(/.f64 im (sqrt.f64 re))
(*.f64 im (pow.f64 re -1/2))
(*.f64 (/.f64 im (sqrt.f64 re)) 1)
(/.f64 im (sqrt.f64 re))
(*.f64 1 (/.f64 im (sqrt.f64 re)))
(/.f64 im (sqrt.f64 re))
(*.f64 (sqrt.f64 im) (*.f64 (sqrt.f64 im) (pow.f64 re -1/2)))
(*.f64 im (pow.f64 re -1/2))
(*.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) (sqrt.f64 (/.f64 im (sqrt.f64 re))))
(/.f64 im (sqrt.f64 re))
(*.f64 (pow.f64 (cbrt.f64 im) 2) (*.f64 (cbrt.f64 im) (pow.f64 re -1/2)))
(*.f64 im (pow.f64 re -1/2))
(*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (cbrt.f64 (/.f64 (*.f64 im im) re)))
(*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (cbrt.f64 (/.f64 im (/.f64 re im))))
(*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (cbrt.f64 (*.f64 (/.f64 im re) im)))
(*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (cbrt.f64 (*.f64 im (/.f64 im re))))
(*.f64 (cbrt.f64 (/.f64 (*.f64 im im) re)) (cbrt.f64 (/.f64 im (sqrt.f64 re))))
(*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (cbrt.f64 (/.f64 im (/.f64 re im))))
(*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (cbrt.f64 (*.f64 (/.f64 im re) im)))
(*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (cbrt.f64 (*.f64 im (/.f64 im re))))
(*.f64 (pow.f64 re -1/2) im)
(*.f64 im (pow.f64 re -1/2))
(*.f64 (neg.f64 im) (/.f64 1 (neg.f64 (sqrt.f64 re))))
(/.f64 im (sqrt.f64 re))
(*.f64 (/.f64 1 (pow.f64 re 1/4)) (/.f64 im (pow.f64 re 1/4)))
(/.f64 im (sqrt.f64 re))
(*.f64 (/.f64 1 (cbrt.f64 re)) (/.f64 im (cbrt.f64 (sqrt.f64 re))))
(/.f64 (/.f64 im (cbrt.f64 (sqrt.f64 re))) (cbrt.f64 re))
(/.f64 (/.f64 im (cbrt.f64 re)) (cbrt.f64 (sqrt.f64 re)))
(*.f64 (/.f64 (sqrt.f64 im) 1) (/.f64 (sqrt.f64 im) (sqrt.f64 re)))
(/.f64 im (sqrt.f64 re))
(*.f64 (/.f64 (sqrt.f64 im) (cbrt.f64 re)) (/.f64 (sqrt.f64 im) (cbrt.f64 (sqrt.f64 re))))
(*.f64 (/.f64 1 (cbrt.f64 re)) (/.f64 im (cbrt.f64 (sqrt.f64 re))))
(/.f64 (/.f64 im (cbrt.f64 (sqrt.f64 re))) (cbrt.f64 re))
(/.f64 (/.f64 im (cbrt.f64 re)) (cbrt.f64 (sqrt.f64 re)))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 im) 2) 1) (/.f64 (cbrt.f64 im) (sqrt.f64 re)))
(/.f64 im (sqrt.f64 re))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 im) 2) (pow.f64 re 1/4)) (/.f64 (cbrt.f64 im) (pow.f64 re 1/4)))
(/.f64 im (sqrt.f64 re))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 im) 2) (cbrt.f64 re)) (cbrt.f64 (/.f64 im (sqrt.f64 re))))
(/.f64 (*.f64 (pow.f64 (cbrt.f64 im) 2) (cbrt.f64 (/.f64 im (sqrt.f64 re)))) (cbrt.f64 re))
(*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (/.f64 (pow.f64 (cbrt.f64 im) 2) (cbrt.f64 re)))
(pow.f64 (/.f64 im (sqrt.f64 re)) 1)
(/.f64 im (sqrt.f64 re))
(pow.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) 2)
(/.f64 im (sqrt.f64 re))
(pow.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) 3)
(/.f64 im (sqrt.f64 re))
(pow.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 3) 1/3)
(/.f64 im (sqrt.f64 re))
(pow.f64 (/.f64 (sqrt.f64 re) im) -1)
(/.f64 im (sqrt.f64 re))
(neg.f64 (/.f64 im (neg.f64 (sqrt.f64 re))))
(/.f64 im (sqrt.f64 re))
(sqrt.f64 (/.f64 (*.f64 im im) re))
(sqrt.f64 (/.f64 im (/.f64 re im)))
(sqrt.f64 (*.f64 (/.f64 im re) im))
(sqrt.f64 (*.f64 im (/.f64 im re)))
(log.f64 (exp.f64 (/.f64 im (sqrt.f64 re))))
(/.f64 im (sqrt.f64 re))
(log.f64 (+.f64 1 (expm1.f64 (/.f64 im (sqrt.f64 re)))))
(/.f64 im (sqrt.f64 re))
(cbrt.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 3))
(/.f64 im (sqrt.f64 re))
(expm1.f64 (log1p.f64 (/.f64 im (sqrt.f64 re))))
(/.f64 im (sqrt.f64 re))
(exp.f64 (log.f64 (/.f64 im (sqrt.f64 re))))
(/.f64 im (sqrt.f64 re))
(exp.f64 (*.f64 (log.f64 (/.f64 im (sqrt.f64 re))) 1))
(/.f64 im (sqrt.f64 re))
(log1p.f64 (expm1.f64 (/.f64 im (sqrt.f64 re))))
(/.f64 im (sqrt.f64 re))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2))) 1)
(/.f64 (*.f64 im 1/2) (sqrt.f64 re))
(/.f64 im (/.f64 (sqrt.f64 re) 1/2))
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
(/.f64 1/2 (/.f64 (sqrt.f64 re) im))
(/.f64 (*.f64 im 1/2) (sqrt.f64 re))
(/.f64 im (/.f64 (sqrt.f64 re) 1/2))
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
(/.f64 1 (/.f64 (sqrt.f64 re) (*.f64 im 1/2)))
(/.f64 (*.f64 im 1/2) (sqrt.f64 re))
(/.f64 im (/.f64 (sqrt.f64 re) 1/2))
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
(/.f64 (*.f64 im 1/2) (sqrt.f64 re))
(/.f64 im (/.f64 (sqrt.f64 re) 1/2))
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
(/.f64 (*.f64 1/2 (neg.f64 im)) (neg.f64 (sqrt.f64 re)))
(/.f64 (*.f64 im 1/2) (sqrt.f64 re))
(/.f64 im (/.f64 (sqrt.f64 re) 1/2))
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
(/.f64 (*.f64 (neg.f64 im) 1/2) (neg.f64 (sqrt.f64 re)))
(/.f64 (*.f64 im 1/2) (sqrt.f64 re))
(/.f64 im (/.f64 (sqrt.f64 re) 1/2))
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
(/.f64 (/.f64 (*.f64 im 1/2) 1) (sqrt.f64 re))
(/.f64 (*.f64 im 1/2) (sqrt.f64 re))
(/.f64 im (/.f64 (sqrt.f64 re) 1/2))
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
(/.f64 (/.f64 (*.f64 im 1/2) (pow.f64 re 1/4)) (pow.f64 re 1/4))
(/.f64 (*.f64 im 1/2) (sqrt.f64 re))
(/.f64 im (/.f64 (sqrt.f64 re) 1/2))
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
(/.f64 (/.f64 (*.f64 im 1/2) (cbrt.f64 re)) (cbrt.f64 (sqrt.f64 re)))
(/.f64 (*.f64 im 1/2) (*.f64 (cbrt.f64 (sqrt.f64 re)) (cbrt.f64 re)))
(*.f64 (/.f64 im (cbrt.f64 (sqrt.f64 re))) (/.f64 1/2 (cbrt.f64 re)))
(/.f64 (neg.f64 (*.f64 im 1/2)) (neg.f64 (sqrt.f64 re)))
(/.f64 (*.f64 im 1/2) (sqrt.f64 re))
(/.f64 im (/.f64 (sqrt.f64 re) 1/2))
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
(pow.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2) 1)
(/.f64 (*.f64 im 1/2) (sqrt.f64 re))
(/.f64 im (/.f64 (sqrt.f64 re) 1/2))
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
(pow.f64 (sqrt.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2)) 2)
(/.f64 (*.f64 im 1/2) (sqrt.f64 re))
(/.f64 im (/.f64 (sqrt.f64 re) 1/2))
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
(pow.f64 (cbrt.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2)) 3)
(/.f64 (*.f64 im 1/2) (sqrt.f64 re))
(/.f64 im (/.f64 (sqrt.f64 re) 1/2))
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
(pow.f64 (pow.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2) 3) 1/3)
(/.f64 (*.f64 im 1/2) (sqrt.f64 re))
(/.f64 im (/.f64 (sqrt.f64 re) 1/2))
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
(sqrt.f64 (*.f64 1/4 (/.f64 (*.f64 im im) re)))
(sqrt.f64 (*.f64 (/.f64 im (/.f64 re im)) 1/4))
(sqrt.f64 (*.f64 (*.f64 (/.f64 im re) im) 1/4))
(sqrt.f64 (*.f64 (/.f64 1/4 re) (*.f64 im im)))
(log.f64 (pow.f64 (exp.f64 1/2) (/.f64 im (sqrt.f64 re))))
(/.f64 (*.f64 im 1/2) (sqrt.f64 re))
(/.f64 im (/.f64 (sqrt.f64 re) 1/2))
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2))))
(/.f64 (*.f64 im 1/2) (sqrt.f64 re))
(/.f64 im (/.f64 (sqrt.f64 re) 1/2))
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
(cbrt.f64 (pow.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2) 3))
(/.f64 (*.f64 im 1/2) (sqrt.f64 re))
(/.f64 im (/.f64 (sqrt.f64 re) 1/2))
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
(expm1.f64 (log1p.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2)))
(/.f64 (*.f64 im 1/2) (sqrt.f64 re))
(/.f64 im (/.f64 (sqrt.f64 re) 1/2))
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
(exp.f64 (log.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2)))
(/.f64 (*.f64 im 1/2) (sqrt.f64 re))
(/.f64 im (/.f64 (sqrt.f64 re) 1/2))
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
(exp.f64 (*.f64 (log.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2)) 1))
(/.f64 (*.f64 im 1/2) (sqrt.f64 re))
(/.f64 im (/.f64 (sqrt.f64 re) 1/2))
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
(log1p.f64 (expm1.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2)))
(/.f64 (*.f64 im 1/2) (sqrt.f64 re))
(/.f64 im (/.f64 (sqrt.f64 re) 1/2))
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))

localize8.0ms (0.1%)

Local error

Found 3 expressions with local error:

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

Compiled 27 to 8 computations (70.4% saved)

series2.0ms (0%)

Counts
3 → 48
Calls

18 calls:

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

rewrite131.0ms (1.4%)

Algorithm
batch-egg-rewrite
Rules
1986×add-sqr-sqrt
1968×*-un-lft-identity
1828×add-cube-cbrt
1804×add-cbrt-cube
198×pow1
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01053
120341
2249641
Stop Event
node limit
Counts
3 → 62
Calls
Call 1
Inputs
(sqrt.f64 (*.f64 im (/.f64 im re)))
(*.f64 im (/.f64 im re))
(*.f64 1/2 (sqrt.f64 (*.f64 im (/.f64 im re))))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 im (sqrt.f64 re)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 im (sqrt.f64 re)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 im (sqrt.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) (sqrt.f64 (/.f64 im (sqrt.f64 re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 im re)) (sqrt.f64 im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 im) (sqrt.f64 (/.f64 im re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (cbrt.f64 (*.f64 im (/.f64 im re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (cbrt.f64 (/.f64 im (sqrt.f64 re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2)) (sqrt.f64 (cbrt.f64 (*.f64 im (/.f64 im re)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 1/2) (/.f64 im (sqrt.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2) 1/2) (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 im (sqrt.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 im (/.f64 im re)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 im (sqrt.f64 re)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (/.f64 im (sqrt.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 im (sqrt.f64 re))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 im (sqrt.f64 re)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 im (sqrt.f64 re))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 im (sqrt.f64 re))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 im (/.f64 im re))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 im (sqrt.f64 re))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 im (sqrt.f64 re))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 im (/.f64 im re)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 im (/.f64 re im))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 re (*.f64 im im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 im im) re)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 im (neg.f64 im)) (neg.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 im) im) (neg.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 im im) 1) re)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 im im) (sqrt.f64 re)) (sqrt.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 im im) (pow.f64 (cbrt.f64 re) 2)) (cbrt.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 im im)) (neg.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 im (/.f64 im re)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 im (sqrt.f64 re)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 im (/.f64 im re)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 im (/.f64 im re)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 im (/.f64 im re)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 im) (/.f64 im re)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 im (/.f64 im re)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 im (/.f64 im re)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 im (/.f64 im re))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 im (/.f64 im re))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 im (/.f64 im re))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 im (/.f64 im re))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 (*.f64 im (/.f64 im re)) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 1/2) (/.f64 im (sqrt.f64 re))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2)))))))

simplify75.0ms (0.8%)

Algorithm
egg-herbie
Rules
1214×unswap-sqr
1022×associate-*r/
794×associate-*l/
546×associate-+r-
526×*-commutative
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01421776
13121764
213861754
375581754
Stop Event
node limit
Counts
110 → 81
Calls
Call 1
Inputs
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(-.f64 (exp.f64 (log1p.f64 (/.f64 im (sqrt.f64 re)))) 1)
(*.f64 (/.f64 im (sqrt.f64 re)) 1)
(*.f64 1 (/.f64 im (sqrt.f64 re)))
(*.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) (sqrt.f64 (/.f64 im (sqrt.f64 re))))
(*.f64 (sqrt.f64 (/.f64 im re)) (sqrt.f64 im))
(*.f64 (sqrt.f64 im) (sqrt.f64 (/.f64 im re)))
(*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (cbrt.f64 (*.f64 im (/.f64 im re))))
(*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (cbrt.f64 (/.f64 im (sqrt.f64 re))))
(*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2)) (sqrt.f64 (cbrt.f64 (*.f64 im (/.f64 im re)))))
(*.f64 (pow.f64 1 1/2) (/.f64 im (sqrt.f64 re)))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2) 1/2) (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 1/2))
(/.f64 im (sqrt.f64 re))
(pow.f64 (*.f64 im (/.f64 im re)) 1/2)
(pow.f64 (/.f64 im (sqrt.f64 re)) 1)
(pow.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) 2)
(pow.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) 3)
(pow.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 3) 1/3)
(fabs.f64 (/.f64 im (sqrt.f64 re)))
(log.f64 (exp.f64 (/.f64 im (sqrt.f64 re))))
(log.f64 (+.f64 1 (expm1.f64 (/.f64 im (sqrt.f64 re)))))
(cbrt.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 3))
(expm1.f64 (log1p.f64 (/.f64 im (sqrt.f64 re))))
(exp.f64 (log.f64 (/.f64 im (sqrt.f64 re))))
(exp.f64 (*.f64 (log.f64 (*.f64 im (/.f64 im re))) 1/2))
(exp.f64 (*.f64 (log.f64 (/.f64 im (sqrt.f64 re))) 1))
(log1p.f64 (expm1.f64 (/.f64 im (sqrt.f64 re))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 im (/.f64 im re)))) 1)
(/.f64 im (/.f64 re im))
(/.f64 1 (/.f64 re (*.f64 im im)))
(/.f64 (*.f64 im im) re)
(/.f64 (*.f64 im (neg.f64 im)) (neg.f64 re))
(/.f64 (*.f64 (neg.f64 im) im) (neg.f64 re))
(/.f64 (/.f64 (*.f64 im im) 1) re)
(/.f64 (/.f64 (*.f64 im im) (sqrt.f64 re)) (sqrt.f64 re))
(/.f64 (/.f64 (*.f64 im im) (pow.f64 (cbrt.f64 re) 2)) (cbrt.f64 re))
(/.f64 (neg.f64 (*.f64 im im)) (neg.f64 re))
(pow.f64 (*.f64 im (/.f64 im re)) 1)
(pow.f64 (/.f64 im (sqrt.f64 re)) 2)
(pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 3)
(pow.f64 (pow.f64 (*.f64 im (/.f64 im re)) 2) 1/2)
(pow.f64 (pow.f64 (*.f64 im (/.f64 im re)) 3) 1/3)
(sqrt.f64 (pow.f64 (*.f64 im (/.f64 im re)) 2))
(log.f64 (pow.f64 (exp.f64 im) (/.f64 im re)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 im (/.f64 im re)))))
(cbrt.f64 (pow.f64 (*.f64 im (/.f64 im re)) 3))
(expm1.f64 (log1p.f64 (*.f64 im (/.f64 im re))))
(exp.f64 (log.f64 (*.f64 im (/.f64 im re))))
(exp.f64 (*.f64 (log.f64 (*.f64 im (/.f64 im re))) 1))
(log1p.f64 (expm1.f64 (*.f64 im (/.f64 im re))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2))) 1)
(pow.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2) 1)
(pow.f64 (sqrt.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2)) 2)
(pow.f64 (cbrt.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2)) 3)
(pow.f64 (pow.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2) 3) 1/3)
(sqrt.f64 (*.f64 (*.f64 im (/.f64 im re)) 1/4))
(log.f64 (pow.f64 (exp.f64 1/2) (/.f64 im (sqrt.f64 re))))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2))))
(cbrt.f64 (pow.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2) 3))
(expm1.f64 (log1p.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2)))
(exp.f64 (log.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2)))
(exp.f64 (*.f64 (log.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2)) 1))
(log1p.f64 (expm1.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2)))
Outputs
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(neg.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (sqrt.f64 (/.f64 1 re)) (neg.f64 im))
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(neg.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (sqrt.f64 (/.f64 1 re)) (neg.f64 im))
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(neg.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (sqrt.f64 (/.f64 1 re)) (neg.f64 im))
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(neg.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (sqrt.f64 (/.f64 1 re)) (neg.f64 im))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 1/2)
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im 1/2))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 1/2)
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im 1/2))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 1/2)
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im 1/2))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 1/2)
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im 1/2))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 1/2)
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im 1/2))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 1/2)
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im 1/2))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 1/2)
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im 1/2))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 1/2)
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im 1/2))
(*.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) -1/2)
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im -1/2))
(*.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) -1/2)
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im -1/2))
(*.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) -1/2)
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im -1/2))
(*.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) -1/2)
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im -1/2))
(-.f64 (exp.f64 (log1p.f64 (/.f64 im (sqrt.f64 re)))) 1)
(/.f64 im (sqrt.f64 re))
(*.f64 (/.f64 im (sqrt.f64 re)) 1)
(/.f64 im (sqrt.f64 re))
(*.f64 1 (/.f64 im (sqrt.f64 re)))
(/.f64 im (sqrt.f64 re))
(*.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) (sqrt.f64 (/.f64 im (sqrt.f64 re))))
(/.f64 im (sqrt.f64 re))
(*.f64 (sqrt.f64 (/.f64 im re)) (sqrt.f64 im))
(*.f64 (sqrt.f64 im) (sqrt.f64 (/.f64 im re)))
(*.f64 (sqrt.f64 (/.f64 im re)) (sqrt.f64 im))
(*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (cbrt.f64 (*.f64 im (/.f64 im re))))
(*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (cbrt.f64 (/.f64 im (/.f64 re im))))
(*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (cbrt.f64 (/.f64 im (sqrt.f64 re))))
(*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (cbrt.f64 (*.f64 im (/.f64 im re))))
(*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (cbrt.f64 (/.f64 im (/.f64 re im))))
(*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2)) (sqrt.f64 (cbrt.f64 (*.f64 im (/.f64 im re)))))
(*.f64 (fabs.f64 (cbrt.f64 (/.f64 im (/.f64 re im)))) (sqrt.f64 (cbrt.f64 (/.f64 im (/.f64 re im)))))
(*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (sqrt.f64 (cbrt.f64 (*.f64 im (/.f64 im re)))))
(*.f64 (pow.f64 1 1/2) (/.f64 im (sqrt.f64 re)))
(/.f64 im (sqrt.f64 re))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2) 1/2) (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 1/2))
(*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2)) (sqrt.f64 (cbrt.f64 (*.f64 im (/.f64 im re)))))
(*.f64 (fabs.f64 (cbrt.f64 (/.f64 im (/.f64 re im)))) (sqrt.f64 (cbrt.f64 (/.f64 im (/.f64 re im)))))
(*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (sqrt.f64 (cbrt.f64 (*.f64 im (/.f64 im re)))))
(/.f64 im (sqrt.f64 re))
(pow.f64 (*.f64 im (/.f64 im re)) 1/2)
(/.f64 im (sqrt.f64 re))
(pow.f64 (/.f64 im (sqrt.f64 re)) 1)
(/.f64 im (sqrt.f64 re))
(pow.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) 2)
(/.f64 im (sqrt.f64 re))
(pow.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) 3)
(/.f64 im (sqrt.f64 re))
(pow.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 3) 1/3)
(/.f64 im (sqrt.f64 re))
(fabs.f64 (/.f64 im (sqrt.f64 re)))
(/.f64 im (sqrt.f64 re))
(log.f64 (exp.f64 (/.f64 im (sqrt.f64 re))))
(/.f64 im (sqrt.f64 re))
(log.f64 (+.f64 1 (expm1.f64 (/.f64 im (sqrt.f64 re)))))
(/.f64 im (sqrt.f64 re))
(cbrt.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 3))
(/.f64 im (sqrt.f64 re))
(expm1.f64 (log1p.f64 (/.f64 im (sqrt.f64 re))))
(/.f64 im (sqrt.f64 re))
(exp.f64 (log.f64 (/.f64 im (sqrt.f64 re))))
(/.f64 im (sqrt.f64 re))
(exp.f64 (*.f64 (log.f64 (*.f64 im (/.f64 im re))) 1/2))
(/.f64 im (sqrt.f64 re))
(exp.f64 (*.f64 (log.f64 (/.f64 im (sqrt.f64 re))) 1))
(/.f64 im (sqrt.f64 re))
(log1p.f64 (expm1.f64 (/.f64 im (sqrt.f64 re))))
(/.f64 im (sqrt.f64 re))
(-.f64 (exp.f64 (log1p.f64 (*.f64 im (/.f64 im re)))) 1)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(/.f64 1 (/.f64 re (*.f64 im im)))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (*.f64 im im) re)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (*.f64 im (neg.f64 im)) (neg.f64 re))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (*.f64 (neg.f64 im) im) (neg.f64 re))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (/.f64 (*.f64 im im) 1) re)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (/.f64 (*.f64 im im) (sqrt.f64 re)) (sqrt.f64 re))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (/.f64 (*.f64 im im) (pow.f64 (cbrt.f64 re) 2)) (cbrt.f64 re))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (neg.f64 (*.f64 im im)) (neg.f64 re))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(pow.f64 (*.f64 im (/.f64 im re)) 1)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(pow.f64 (/.f64 im (sqrt.f64 re)) 2)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 3)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(pow.f64 (pow.f64 (*.f64 im (/.f64 im re)) 2) 1/2)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(pow.f64 (pow.f64 (*.f64 im (/.f64 im re)) 3) 1/3)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(sqrt.f64 (pow.f64 (*.f64 im (/.f64 im re)) 2))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(log.f64 (pow.f64 (exp.f64 im) (/.f64 im re)))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 im (/.f64 im re)))))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(cbrt.f64 (pow.f64 (*.f64 im (/.f64 im re)) 3))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(expm1.f64 (log1p.f64 (*.f64 im (/.f64 im re))))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(exp.f64 (log.f64 (*.f64 im (/.f64 im re))))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(exp.f64 (*.f64 (log.f64 (*.f64 im (/.f64 im re))) 1))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(log1p.f64 (expm1.f64 (*.f64 im (/.f64 im re))))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2))) 1)
(/.f64 (*.f64 im 1/2) (sqrt.f64 re))
(/.f64 im (*.f64 2 (sqrt.f64 re)))
(pow.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2) 1)
(/.f64 (*.f64 im 1/2) (sqrt.f64 re))
(/.f64 im (*.f64 2 (sqrt.f64 re)))
(pow.f64 (sqrt.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2)) 2)
(/.f64 (*.f64 im 1/2) (sqrt.f64 re))
(/.f64 im (*.f64 2 (sqrt.f64 re)))
(pow.f64 (cbrt.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2)) 3)
(/.f64 (*.f64 im 1/2) (sqrt.f64 re))
(/.f64 im (*.f64 2 (sqrt.f64 re)))
(pow.f64 (pow.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2) 3) 1/3)
(/.f64 (*.f64 im 1/2) (sqrt.f64 re))
(/.f64 im (*.f64 2 (sqrt.f64 re)))
(sqrt.f64 (*.f64 (*.f64 im (/.f64 im re)) 1/4))
(sqrt.f64 (*.f64 im (*.f64 (/.f64 im re) 1/4)))
(fabs.f64 (/.f64 im (*.f64 2 (sqrt.f64 re))))
(log.f64 (pow.f64 (exp.f64 1/2) (/.f64 im (sqrt.f64 re))))
(/.f64 (*.f64 im 1/2) (sqrt.f64 re))
(/.f64 im (*.f64 2 (sqrt.f64 re)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2))))
(/.f64 (*.f64 im 1/2) (sqrt.f64 re))
(/.f64 im (*.f64 2 (sqrt.f64 re)))
(cbrt.f64 (pow.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2) 3))
(/.f64 (*.f64 im 1/2) (sqrt.f64 re))
(/.f64 im (*.f64 2 (sqrt.f64 re)))
(expm1.f64 (log1p.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2)))
(/.f64 (*.f64 im 1/2) (sqrt.f64 re))
(/.f64 im (*.f64 2 (sqrt.f64 re)))
(exp.f64 (log.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2)))
(/.f64 (*.f64 im 1/2) (sqrt.f64 re))
(/.f64 im (*.f64 2 (sqrt.f64 re)))
(exp.f64 (*.f64 (log.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2)) 1))
(/.f64 (*.f64 im 1/2) (sqrt.f64 re))
(/.f64 im (*.f64 2 (sqrt.f64 re)))
(log1p.f64 (expm1.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2)))
(/.f64 (*.f64 im 1/2) (sqrt.f64 re))
(/.f64 im (*.f64 2 (sqrt.f64 re)))

localize17.0ms (0.2%)

Local error

Found 3 expressions with local error:

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

Compiled 27 to 19 computations (29.6% saved)

series2.0ms (0%)

Counts
3 → 0
Calls

15 calls:

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

rewrite80.0ms (0.9%)

Algorithm
batch-egg-rewrite
Rules
1912×add-sqr-sqrt
1890×*-un-lft-identity
1752×add-cube-cbrt
1732×add-cbrt-cube
202×pow1
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01151
121735
2246235
Stop Event
node limit
Counts
3 → 56
Calls
Call 1
Inputs
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(sqrt.f64 (/.f64 1 re))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 im (sqrt.f64 re)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 im (sqrt.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 im (sqrt.f64 re)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 im (sqrt.f64 re))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 im (sqrt.f64 re)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 im (sqrt.f64 re))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 im (sqrt.f64 re))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 im (sqrt.f64 re))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 im (sqrt.f64 re))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (pow.f64 re -1/2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (pow.f64 re -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 re -1/2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (pow.f64 re -1/2)) (sqrt.f64 (pow.f64 re -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 re -1/2)) (/.f64 1 (cbrt.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (cbrt.f64 re)) (cbrt.f64 (pow.f64 re -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (cbrt.f64 (pow.f64 re -2))) (sqrt.f64 (/.f64 1 (cbrt.f64 re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 1/2) (pow.f64 re -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (pow.f64 re -2)) 1/2) (pow.f64 (/.f64 1 (cbrt.f64 re)) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (sqrt.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (sqrt.f64 re) 1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 -1 (neg.f64 (sqrt.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 -1) (sqrt.f64 (neg.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 re -1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 re -1) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 re -1/2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 re) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (pow.f64 re -1/2)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (pow.f64 re -1/2)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 re -1/2) re) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (pow.f64 re -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (pow.f64 re -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (pow.f64 re -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 re -1/2) re))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (pow.f64 re -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (pow.f64 re -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (neg.f64 (log.f64 re)) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 re -1/2)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (pow.f64 re -1/2)))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 2) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (/.f64 im (sqrt.f64 re))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re)))))))))

simplify74.0ms (0.8%)

Algorithm
egg-herbie
Rules
1224×associate-*r/
1154×associate-/l*
998×associate-*l/
894×associate-+r+
892×associate-+l+
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0123732
1248720
2899720
33899716
Stop Event
node limit
Counts
56 → 60
Calls
Call 1
Inputs
(-.f64 (exp.f64 (log1p.f64 (/.f64 im (sqrt.f64 re)))) 1)
(/.f64 im (sqrt.f64 re))
(pow.f64 (/.f64 im (sqrt.f64 re)) 1)
(pow.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) 2)
(pow.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) 3)
(pow.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 3) 1/3)
(sqrt.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 2))
(log.f64 (exp.f64 (/.f64 im (sqrt.f64 re))))
(log.f64 (+.f64 1 (expm1.f64 (/.f64 im (sqrt.f64 re)))))
(cbrt.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 3))
(expm1.f64 (log1p.f64 (/.f64 im (sqrt.f64 re))))
(exp.f64 (log.f64 (/.f64 im (sqrt.f64 re))))
(exp.f64 (*.f64 (log.f64 (/.f64 im (sqrt.f64 re))) 1))
(log1p.f64 (expm1.f64 (/.f64 im (sqrt.f64 re))))
(-.f64 (exp.f64 (log1p.f64 (pow.f64 re -1/2))) 1)
(*.f64 1 (pow.f64 re -1/2))
(*.f64 (pow.f64 re -1/2) 1)
(*.f64 (sqrt.f64 (pow.f64 re -1/2)) (sqrt.f64 (pow.f64 re -1/2)))
(*.f64 (cbrt.f64 (pow.f64 re -1/2)) (/.f64 1 (cbrt.f64 re)))
(*.f64 (/.f64 1 (cbrt.f64 re)) (cbrt.f64 (pow.f64 re -1/2)))
(*.f64 (sqrt.f64 (cbrt.f64 (pow.f64 re -2))) (sqrt.f64 (/.f64 1 (cbrt.f64 re))))
(*.f64 (pow.f64 1 1/2) (pow.f64 re -1/2))
(*.f64 (pow.f64 (cbrt.f64 (pow.f64 re -2)) 1/2) (pow.f64 (/.f64 1 (cbrt.f64 re)) 1/2))
(/.f64 1 (sqrt.f64 re))
(/.f64 1 (/.f64 (sqrt.f64 re) 1))
(/.f64 -1 (neg.f64 (sqrt.f64 re)))
(/.f64 (sqrt.f64 -1) (sqrt.f64 (neg.f64 re)))
(pow.f64 re -1/2)
(pow.f64 (pow.f64 re -1) 1/2)
(pow.f64 (pow.f64 re -1/2) 1)
(pow.f64 (sqrt.f64 re) -1)
(pow.f64 (sqrt.f64 (pow.f64 re -1/2)) 2)
(pow.f64 (cbrt.f64 (pow.f64 re -1/2)) 3)
(pow.f64 (/.f64 (pow.f64 re -1/2) re) 1/3)
(fabs.f64 (pow.f64 re -1/2))
(log.f64 (exp.f64 (pow.f64 re -1/2)))
(log.f64 (+.f64 1 (expm1.f64 (pow.f64 re -1/2))))
(cbrt.f64 (/.f64 (pow.f64 re -1/2) re))
(expm1.f64 (log1p.f64 (pow.f64 re -1/2)))
(exp.f64 (log.f64 (pow.f64 re -1/2)))
(exp.f64 (*.f64 (neg.f64 (log.f64 re)) 1/2))
(exp.f64 (*.f64 (log.f64 (pow.f64 re -1/2)) 1))
(log1p.f64 (expm1.f64 (pow.f64 re -1/2)))
(-.f64 (exp.f64 (log1p.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re))))) 1)
(pow.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re))) 1)
(pow.f64 (sqrt.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re)))) 2)
(pow.f64 (cbrt.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re)))) 3)
(pow.f64 (pow.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re))) 3) 1/3)
(sqrt.f64 (*.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 2) 1/4))
(log.f64 (pow.f64 (exp.f64 (/.f64 im (sqrt.f64 re))) 1/2))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re))))))
(cbrt.f64 (pow.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re))) 3))
(expm1.f64 (log1p.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re)))))
(exp.f64 (log.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re)))))
(exp.f64 (*.f64 (log.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re)))) 1))
(log1p.f64 (expm1.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re)))))
Outputs
(-.f64 (exp.f64 (log1p.f64 (/.f64 im (sqrt.f64 re)))) 1)
(/.f64 im (sqrt.f64 re))
(/.f64 im (sqrt.f64 re))
(pow.f64 (/.f64 im (sqrt.f64 re)) 1)
(/.f64 im (sqrt.f64 re))
(pow.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) 2)
(/.f64 im (sqrt.f64 re))
(pow.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) 3)
(/.f64 im (sqrt.f64 re))
(pow.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 3) 1/3)
(/.f64 im (sqrt.f64 re))
(sqrt.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 2))
(/.f64 im (sqrt.f64 re))
(log.f64 (exp.f64 (/.f64 im (sqrt.f64 re))))
(/.f64 im (sqrt.f64 re))
(log.f64 (+.f64 1 (expm1.f64 (/.f64 im (sqrt.f64 re)))))
(/.f64 im (sqrt.f64 re))
(cbrt.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 3))
(/.f64 im (sqrt.f64 re))
(expm1.f64 (log1p.f64 (/.f64 im (sqrt.f64 re))))
(/.f64 im (sqrt.f64 re))
(exp.f64 (log.f64 (/.f64 im (sqrt.f64 re))))
(/.f64 im (sqrt.f64 re))
(exp.f64 (*.f64 (log.f64 (/.f64 im (sqrt.f64 re))) 1))
(/.f64 im (sqrt.f64 re))
(log1p.f64 (expm1.f64 (/.f64 im (sqrt.f64 re))))
(/.f64 im (sqrt.f64 re))
(-.f64 (exp.f64 (log1p.f64 (pow.f64 re -1/2))) 1)
(pow.f64 re -1/2)
(*.f64 1 (pow.f64 re -1/2))
(pow.f64 re -1/2)
(*.f64 (pow.f64 re -1/2) 1)
(pow.f64 re -1/2)
(*.f64 (sqrt.f64 (pow.f64 re -1/2)) (sqrt.f64 (pow.f64 re -1/2)))
(pow.f64 re -1/2)
(*.f64 (cbrt.f64 (pow.f64 re -1/2)) (/.f64 1 (cbrt.f64 re)))
(/.f64 (cbrt.f64 (pow.f64 re -1/2)) (cbrt.f64 re))
(*.f64 (/.f64 1 (cbrt.f64 re)) (cbrt.f64 (pow.f64 re -1/2)))
(*.f64 (cbrt.f64 (pow.f64 re -1/2)) (/.f64 1 (cbrt.f64 re)))
(/.f64 (cbrt.f64 (pow.f64 re -1/2)) (cbrt.f64 re))
(*.f64 (sqrt.f64 (cbrt.f64 (pow.f64 re -2))) (sqrt.f64 (/.f64 1 (cbrt.f64 re))))
(*.f64 (pow.f64 1 1/2) (pow.f64 re -1/2))
(pow.f64 re -1/2)
(*.f64 (pow.f64 (cbrt.f64 (pow.f64 re -2)) 1/2) (pow.f64 (/.f64 1 (cbrt.f64 re)) 1/2))
(*.f64 (sqrt.f64 (cbrt.f64 (pow.f64 re -2))) (sqrt.f64 (/.f64 1 (cbrt.f64 re))))
(/.f64 1 (sqrt.f64 re))
(/.f64 1 (/.f64 (sqrt.f64 re) 1))
(/.f64 1 (sqrt.f64 re))
(/.f64 -1 (neg.f64 (sqrt.f64 re)))
(/.f64 1 (sqrt.f64 re))
(/.f64 (sqrt.f64 -1) (sqrt.f64 (neg.f64 re)))
(pow.f64 re -1/2)
(pow.f64 (pow.f64 re -1) 1/2)
(pow.f64 re -1/2)
(pow.f64 (pow.f64 re -1/2) 1)
(pow.f64 re -1/2)
(pow.f64 (sqrt.f64 re) -1)
(/.f64 1 (sqrt.f64 re))
(pow.f64 (sqrt.f64 (pow.f64 re -1/2)) 2)
(pow.f64 re -1/2)
(pow.f64 (cbrt.f64 (pow.f64 re -1/2)) 3)
(pow.f64 re -1/2)
(pow.f64 (/.f64 (pow.f64 re -1/2) re) 1/3)
(cbrt.f64 (/.f64 (pow.f64 re -1/2) re))
(fabs.f64 (pow.f64 re -1/2))
(pow.f64 re -1/2)
(log.f64 (exp.f64 (pow.f64 re -1/2)))
(pow.f64 re -1/2)
(log.f64 (+.f64 1 (expm1.f64 (pow.f64 re -1/2))))
(pow.f64 re -1/2)
(cbrt.f64 (/.f64 (pow.f64 re -1/2) re))
(expm1.f64 (log1p.f64 (pow.f64 re -1/2)))
(pow.f64 re -1/2)
(exp.f64 (log.f64 (pow.f64 re -1/2)))
(pow.f64 re -1/2)
(exp.f64 (*.f64 (neg.f64 (log.f64 re)) 1/2))
(pow.f64 re -1/2)
(exp.f64 (*.f64 (log.f64 (pow.f64 re -1/2)) 1))
(pow.f64 re -1/2)
(log1p.f64 (expm1.f64 (pow.f64 re -1/2)))
(pow.f64 re -1/2)
(-.f64 (exp.f64 (log1p.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re))))) 1)
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(pow.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re))) 1)
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(pow.f64 (sqrt.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re)))) 2)
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(pow.f64 (cbrt.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re)))) 3)
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(pow.f64 (pow.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re))) 3) 1/3)
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(sqrt.f64 (*.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 2) 1/4))
(sqrt.f64 (pow.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re))) 2))
(sqrt.f64 (*.f64 (/.f64 im (/.f64 re im)) 1/4))
(log.f64 (pow.f64 (exp.f64 (/.f64 im (sqrt.f64 re))) 1/2))
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re))))))
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(cbrt.f64 (pow.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re))) 3))
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(expm1.f64 (log1p.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re)))))
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(exp.f64 (log.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re)))))
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(exp.f64 (*.f64 (log.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re)))) 1))
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(log1p.f64 (expm1.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re)))))
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))

localize10.0ms (0.1%)

Local error

Found 3 expressions with local error:

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

Compiled 26 to 12 computations (53.8% saved)

series6.0ms (0.1%)

Counts
3 → 36
Calls

18 calls:

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

rewrite115.0ms (1.3%)

Algorithm
batch-egg-rewrite
Rules
1270×associate-/r*
1160×associate-*r/
942×*-commutative
812×associate-*l/
710×associate-/l*
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01145
122439
2269039
Stop Event
node limit
Counts
3 → 201
Calls
Call 1
Inputs
(/.f64 1 (/.f64 (sqrt.f64 re) im))
(/.f64 (sqrt.f64 re) im)
(*.f64 1/2 (/.f64 1 (/.f64 (sqrt.f64 re) im)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 im (sqrt.f64 re)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 im (sqrt.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 im (pow.f64 re -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 im (sqrt.f64 re)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) (sqrt.f64 (/.f64 im (sqrt.f64 re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 im) (/.f64 (sqrt.f64 im) (sqrt.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (cbrt.f64 (/.f64 im (/.f64 re im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (/.f64 (pow.f64 (cbrt.f64 im) 2) (cbrt.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 im (/.f64 re im))) (cbrt.f64 (/.f64 im (sqrt.f64 re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 im) (/.f64 (pow.f64 (cbrt.f64 im) 2) (sqrt.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 re -1/2) im)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 re -1/2) (pow.f64 (/.f64 1 im) -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (/.f64 (neg.f64 im) (sqrt.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 im) (/.f64 -1 (sqrt.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 im) (sqrt.f64 re)) (sqrt.f64 im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 im) (sqrt.f64 re)) (/.f64 (sqrt.f64 im) 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 im) 2) (sqrt.f64 re)) (cbrt.f64 im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (neg.f64 im) (sqrt.f64 re)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (pow.f64 re 1/4)) (/.f64 im (pow.f64 re 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (cbrt.f64 re)) (/.f64 im (cbrt.f64 (sqrt.f64 re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 im (pow.f64 re 1/4)) (/.f64 1 (pow.f64 re 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 im (cbrt.f64 (sqrt.f64 re))) (/.f64 1 (cbrt.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 -1 (sqrt.f64 re)) (neg.f64 im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 im) 1) (/.f64 (sqrt.f64 im) (sqrt.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 im) (cbrt.f64 re)) (/.f64 (sqrt.f64 im) (cbrt.f64 (sqrt.f64 re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 im) (cbrt.f64 (sqrt.f64 re))) (/.f64 (sqrt.f64 im) (cbrt.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 im) 2) 1) (/.f64 (cbrt.f64 im) (sqrt.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 im) (sqrt.f64 re)) (/.f64 (pow.f64 (cbrt.f64 im) 2) 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 im) 2) (pow.f64 re 1/4)) (/.f64 (cbrt.f64 im) (pow.f64 re 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 im) (pow.f64 re 1/4)) (/.f64 (pow.f64 (cbrt.f64 im) 2) (pow.f64 re 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 im) 2) (cbrt.f64 re)) (cbrt.f64 (/.f64 im (sqrt.f64 re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (/.f64 1 im) -1) (pow.f64 re -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (/.f64 (sqrt.f64 re) im)) -1) (pow.f64 (sqrt.f64 (/.f64 (sqrt.f64 re) im)) -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 re (*.f64 im im))) -1) (pow.f64 (cbrt.f64 (/.f64 (sqrt.f64 re) im)) -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 (sqrt.f64 re) im)) -1) (pow.f64 (cbrt.f64 (/.f64 re (*.f64 im im))) -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) 1) (sqrt.f64 (/.f64 im (sqrt.f64 re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (/.f64 (sqrt.f64 re) (pow.f64 (cbrt.f64 im) 2))) (cbrt.f64 im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) (sqrt.f64 (neg.f64 (sqrt.f64 re)))) (sqrt.f64 (neg.f64 im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 re -1/2) -1) (neg.f64 im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 re -1/2) (/.f64 1 (sqrt.f64 im))) (sqrt.f64 im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 re -1/2) (/.f64 1 (pow.f64 (cbrt.f64 im) 2))) (cbrt.f64 im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (/.f64 im (/.f64 re im))) 1) (cbrt.f64 (/.f64 im (sqrt.f64 re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (/.f64 im (/.f64 re im))) (cbrt.f64 (sqrt.f64 re))) (cbrt.f64 im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (/.f64 im (/.f64 re im))) (cbrt.f64 (neg.f64 (sqrt.f64 re)))) (cbrt.f64 (neg.f64 im)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (sqrt.f64 re) im) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 im (sqrt.f64 re)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (neg.f64 im) (sqrt.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (/.f64 im (/.f64 re im)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 im (sqrt.f64 re))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 im (sqrt.f64 re)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 im (sqrt.f64 re))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 im (sqrt.f64 re))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (-.f64 (log.f64 im) (log.f64 (sqrt.f64 re))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 im (sqrt.f64 re))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 (sqrt.f64 re) im))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (sqrt.f64 re) im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 re) (/.f64 1 im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 re) (neg.f64 (/.f64 -1 im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 re) im) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 (sqrt.f64 re) im)) (sqrt.f64 (/.f64 (sqrt.f64 re) im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 (sqrt.f64 re) im)) (neg.f64 (neg.f64 (sqrt.f64 (/.f64 (sqrt.f64 re) im)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 re 1/4) (/.f64 (pow.f64 re 1/4) im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (sqrt.f64 re) im)) (cbrt.f64 (/.f64 re (*.f64 im im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (sqrt.f64 re) im)) (/.f64 (cbrt.f64 re) (pow.f64 (cbrt.f64 im) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 re (*.f64 im im))) (cbrt.f64 (/.f64 (sqrt.f64 re) im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 re (*.f64 im im))) (neg.f64 (neg.f64 (cbrt.f64 (/.f64 (sqrt.f64 re) im)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 re) (/.f64 (cbrt.f64 (sqrt.f64 re)) im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 im) (sqrt.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (/.f64 (sqrt.f64 re) (neg.f64 im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (sqrt.f64 re)) (/.f64 -1 im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 (sqrt.f64 re) (neg.f64 im))) (neg.f64 (sqrt.f64 (/.f64 (sqrt.f64 re) (neg.f64 im)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cbrt.f64 (/.f64 (sqrt.f64 re) (neg.f64 im))) (cbrt.f64 (/.f64 (sqrt.f64 re) (neg.f64 im)))) (neg.f64 (cbrt.f64 (/.f64 (sqrt.f64 re) (neg.f64 im)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 re 1/4) im) (pow.f64 re 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 re 1/4) im) (/.f64 (pow.f64 re 1/4) 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (sqrt.f64 re)) im) (cbrt.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (sqrt.f64 re)) im) (/.f64 (cbrt.f64 re) 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sqrt.f64 im)) (/.f64 (sqrt.f64 re) (sqrt.f64 im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (pow.f64 (cbrt.f64 im) 2)) (/.f64 (sqrt.f64 re) (cbrt.f64 im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 re) 1) (/.f64 1 im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 re) (sqrt.f64 im)) (/.f64 1 (sqrt.f64 im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 re) (cbrt.f64 im)) (/.f64 1 (pow.f64 (cbrt.f64 im) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (sqrt.f64 (/.f64 (sqrt.f64 re) im))) (neg.f64 (sqrt.f64 (/.f64 (sqrt.f64 re) im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (cbrt.f64 (/.f64 re (*.f64 im im)))) (neg.f64 (cbrt.f64 (/.f64 (sqrt.f64 re) im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 -1 im) (neg.f64 (sqrt.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 re 1/4) 1) (/.f64 (pow.f64 re 1/4) im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 re 1/4) (pow.f64 (cbrt.f64 im) 2)) (/.f64 (pow.f64 re 1/4) (cbrt.f64 im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 re 1/4) (cbrt.f64 im)) (/.f64 (pow.f64 re 1/4) (pow.f64 (cbrt.f64 im) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 re) 1) (/.f64 (cbrt.f64 (sqrt.f64 re)) im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 re) (sqrt.f64 im)) (/.f64 (cbrt.f64 (sqrt.f64 re)) (sqrt.f64 im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (sqrt.f64 re)) (sqrt.f64 im)) (/.f64 (cbrt.f64 re) (sqrt.f64 im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 re) (pow.f64 (cbrt.f64 im) 2)) (cbrt.f64 (/.f64 (sqrt.f64 re) im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (cbrt.f64 (/.f64 im (/.f64 re im)))) (cbrt.f64 (/.f64 (sqrt.f64 re) im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (/.f64 (sqrt.f64 re) im)) 1) (sqrt.f64 (/.f64 (sqrt.f64 re) im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (/.f64 re (*.f64 im im))) 1) (cbrt.f64 (/.f64 (sqrt.f64 re) im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 re) im) (cbrt.f64 (sqrt.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (/.f64 im (cbrt.f64 re))) (cbrt.f64 (sqrt.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (/.f64 (sqrt.f64 re) im)) (sqrt.f64 -1)) (sqrt.f64 (/.f64 (sqrt.f64 re) (neg.f64 im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (/.f64 re (*.f64 im im))) -1) (cbrt.f64 (/.f64 (sqrt.f64 re) (neg.f64 im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (sqrt.f64 (/.f64 (sqrt.f64 re) (neg.f64 im)))) (sqrt.f64 (/.f64 (sqrt.f64 re) (neg.f64 im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (*.f64 (cbrt.f64 (/.f64 (sqrt.f64 re) (neg.f64 im))) (cbrt.f64 (/.f64 (sqrt.f64 re) (neg.f64 im))))) (cbrt.f64 (/.f64 (sqrt.f64 re) (neg.f64 im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (neg.f64 (sqrt.f64 (/.f64 (sqrt.f64 re) im)))) (sqrt.f64 (/.f64 (sqrt.f64 re) im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (neg.f64 (cbrt.f64 (/.f64 re (*.f64 im im))))) (cbrt.f64 (/.f64 (sqrt.f64 re) im)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (sqrt.f64 re) im) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 im (sqrt.f64 re)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (sqrt.f64 re) im)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (sqrt.f64 re) im)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (sqrt.f64 re) im) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (sqrt.f64 re) (neg.f64 im)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (/.f64 re (*.f64 im im)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 (sqrt.f64 re) im)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 (sqrt.f64 re) im))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (sqrt.f64 re) im) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (sqrt.f64 re) im)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 (sqrt.f64 re) im)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (sqrt.f64 re) im)))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (sqrt.f64 re) (*.f64 im 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1/2 (/.f64 (sqrt.f64 re) im))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1/2 (cbrt.f64 (/.f64 im (/.f64 re im)))) (cbrt.f64 (/.f64 (sqrt.f64 re) im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1/2 (cbrt.f64 (/.f64 im (sqrt.f64 re)))) (cbrt.f64 (/.f64 re (*.f64 im im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 im 1/2) (sqrt.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 -1/2 (/.f64 (sqrt.f64 re) (neg.f64 im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 1/2 (sqrt.f64 re)) (/.f64 1 im))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 1/2 (sqrt.f64 (/.f64 (sqrt.f64 re) im))) (sqrt.f64 (/.f64 (sqrt.f64 re) im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 1/2 (cbrt.f64 (/.f64 re (*.f64 im im)))) (cbrt.f64 (/.f64 (sqrt.f64 re) im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 -1/2 (sqrt.f64 re)) (/.f64 -1 im))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1 (/.f64 1/2 (sqrt.f64 re))) (/.f64 1 im))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1 (/.f64 1/2 (sqrt.f64 (/.f64 (sqrt.f64 re) im)))) (sqrt.f64 (/.f64 (sqrt.f64 re) im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1 (/.f64 1/2 (cbrt.f64 (/.f64 re (*.f64 im im))))) (cbrt.f64 (/.f64 (sqrt.f64 re) im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1/2 (sqrt.f64 im)) (/.f64 (sqrt.f64 re) (sqrt.f64 im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1/2 (pow.f64 (cbrt.f64 im) 2)) (/.f64 (sqrt.f64 re) (cbrt.f64 im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1/2 (neg.f64 im)) (neg.f64 (sqrt.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1/2 (/.f64 im (pow.f64 re 1/4))) (pow.f64 re 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1/2 (/.f64 im (cbrt.f64 re))) (cbrt.f64 (sqrt.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re)))) (sqrt.f64 1/2)) (sqrt.f64 (/.f64 (sqrt.f64 re) im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cbrt.f64 (*.f64 (/.f64 im (/.f64 re im)) 1/4)) (cbrt.f64 1/2)) (cbrt.f64 (/.f64 (sqrt.f64 re) im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 1/2 (sqrt.f64 (/.f64 (sqrt.f64 re) im))) 1) (sqrt.f64 (/.f64 (sqrt.f64 re) im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 1/2 (sqrt.f64 (/.f64 (sqrt.f64 re) im))) (sqrt.f64 -1)) (sqrt.f64 (/.f64 (sqrt.f64 re) (neg.f64 im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 1/2 (cbrt.f64 (/.f64 im (/.f64 re im)))) 1) (cbrt.f64 (/.f64 (sqrt.f64 re) im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 1/2 (cbrt.f64 (/.f64 im (/.f64 re im)))) -1) (cbrt.f64 (/.f64 (sqrt.f64 re) (neg.f64 im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 im) 1/2) (/.f64 (sqrt.f64 re) (sqrt.f64 im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 (cbrt.f64 im) 2) 1/2) (/.f64 (sqrt.f64 re) (cbrt.f64 im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 im) 1/2) (neg.f64 (sqrt.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 im (pow.f64 re 1/4)) 1/2) (pow.f64 re 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 im (cbrt.f64 re)) 1/2) (cbrt.f64 (sqrt.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 1/2 (sqrt.f64 re)) 1) (/.f64 1 im))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 1/2 (cbrt.f64 (/.f64 re (*.f64 im im)))) 1) (cbrt.f64 (/.f64 (sqrt.f64 re) im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 1/2) (sqrt.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re))))) (sqrt.f64 (/.f64 (sqrt.f64 re) im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 -1) (/.f64 1/2 (sqrt.f64 (/.f64 (sqrt.f64 re) im)))) (sqrt.f64 (/.f64 (sqrt.f64 re) (neg.f64 im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cbrt.f64 1/2) (cbrt.f64 (*.f64 (/.f64 im (/.f64 re im)) 1/4))) (cbrt.f64 (/.f64 (sqrt.f64 re) im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1 (*.f64 im 1/2)) (sqrt.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1 (*.f64 im 1/2)) (/.f64 (sqrt.f64 re) 1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 -1 (*.f64 im 1/2)) (neg.f64 (sqrt.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 1 (pow.f64 re 1/4)) (*.f64 im 1/2)) (pow.f64 re 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 1 (cbrt.f64 re)) (*.f64 im 1/2)) (cbrt.f64 (sqrt.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 1/2 (pow.f64 re 1/4)) (/.f64 (pow.f64 re 1/4) im))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 1/2 (cbrt.f64 re)) (/.f64 (cbrt.f64 (sqrt.f64 re)) im))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 1/2 (/.f64 1 im)) (sqrt.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 1/2 (/.f64 1 (sqrt.f64 im))) (/.f64 (sqrt.f64 re) (sqrt.f64 im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 1/2 (/.f64 1 (pow.f64 (cbrt.f64 im) 2))) (/.f64 (sqrt.f64 re) (cbrt.f64 im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 1/2 (/.f64 (pow.f64 re 1/4) 1)) (/.f64 (pow.f64 re 1/4) im))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 1/2 (/.f64 (pow.f64 re 1/4) (pow.f64 (cbrt.f64 im) 2))) (/.f64 (pow.f64 re 1/4) (cbrt.f64 im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 1/2 (/.f64 (cbrt.f64 re) 1)) (/.f64 (cbrt.f64 (sqrt.f64 re)) im))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 1/2 (/.f64 (cbrt.f64 re) (sqrt.f64 im))) (/.f64 (cbrt.f64 (sqrt.f64 re)) (sqrt.f64 im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 1/2 (/.f64 (cbrt.f64 re) (pow.f64 (cbrt.f64 im) 2))) (cbrt.f64 (/.f64 (sqrt.f64 re) im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 -1/2 (sqrt.f64 (/.f64 (sqrt.f64 re) im))) (neg.f64 (sqrt.f64 (/.f64 (sqrt.f64 re) im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 -1/2 (cbrt.f64 (/.f64 re (*.f64 im im)))) (neg.f64 (cbrt.f64 (/.f64 (sqrt.f64 re) im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 -1/2 (sqrt.f64 (/.f64 (sqrt.f64 re) (neg.f64 im)))) (sqrt.f64 (/.f64 (sqrt.f64 re) (neg.f64 im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 -1/2 (*.f64 (cbrt.f64 (/.f64 (sqrt.f64 re) (neg.f64 im))) (cbrt.f64 (/.f64 (sqrt.f64 re) (neg.f64 im))))) (cbrt.f64 (/.f64 (sqrt.f64 re) (neg.f64 im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 -1/2 (neg.f64 (sqrt.f64 (/.f64 (sqrt.f64 re) im)))) (sqrt.f64 (/.f64 (sqrt.f64 re) im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 -1/2 (neg.f64 (cbrt.f64 (/.f64 re (*.f64 im im))))) (cbrt.f64 (/.f64 (sqrt.f64 re) im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (/.f64 1/2 (sqrt.f64 re)) (sqrt.f64 (/.f64 1 im))) (sqrt.f64 (/.f64 1 im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (/.f64 1/2 (sqrt.f64 re)) (*.f64 (cbrt.f64 (/.f64 1 im)) (cbrt.f64 (/.f64 1 im)))) (cbrt.f64 (/.f64 1 im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (/.f64 1/2 (sqrt.f64 (/.f64 (sqrt.f64 re) im))) 1) (sqrt.f64 (/.f64 (sqrt.f64 re) im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (/.f64 1/2 (sqrt.f64 (/.f64 (sqrt.f64 re) im))) (pow.f64 re 1/4)) (sqrt.f64 (/.f64 1 im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (/.f64 1/2 (sqrt.f64 (/.f64 (sqrt.f64 re) im))) (cbrt.f64 (/.f64 (sqrt.f64 re) im))) (cbrt.f64 (sqrt.f64 (/.f64 (sqrt.f64 re) im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (/.f64 1/2 (sqrt.f64 (/.f64 (sqrt.f64 re) im))) (sqrt.f64 (cbrt.f64 (/.f64 re (*.f64 im im))))) (sqrt.f64 (cbrt.f64 (/.f64 (sqrt.f64 re) im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (/.f64 1/2 (sqrt.f64 (/.f64 (sqrt.f64 re) im))) (sqrt.f64 (sqrt.f64 (/.f64 (sqrt.f64 re) im)))) (sqrt.f64 (sqrt.f64 (/.f64 (sqrt.f64 re) im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (/.f64 1/2 (cbrt.f64 (/.f64 re (*.f64 im im)))) 1) (cbrt.f64 (/.f64 (sqrt.f64 re) im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (/.f64 1/2 (cbrt.f64 (/.f64 re (*.f64 im im)))) (cbrt.f64 (sqrt.f64 re))) (cbrt.f64 (/.f64 1 im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (/.f64 1/2 (cbrt.f64 (/.f64 re (*.f64 im im)))) (sqrt.f64 (cbrt.f64 (/.f64 (sqrt.f64 re) im)))) (sqrt.f64 (cbrt.f64 (/.f64 (sqrt.f64 re) im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (/.f64 1/2 (cbrt.f64 (/.f64 re (*.f64 im im)))) (cbrt.f64 (cbrt.f64 (/.f64 re (*.f64 im im))))) (cbrt.f64 (cbrt.f64 (/.f64 (sqrt.f64 re) im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (/.f64 1/2 (cbrt.f64 (/.f64 re (*.f64 im im)))) (cbrt.f64 (sqrt.f64 (/.f64 (sqrt.f64 re) im)))) (cbrt.f64 (sqrt.f64 (/.f64 (sqrt.f64 re) im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (/.f64 1/2 (cbrt.f64 (/.f64 re (*.f64 im im)))) (*.f64 (cbrt.f64 (cbrt.f64 (/.f64 (sqrt.f64 re) im))) (cbrt.f64 (cbrt.f64 (/.f64 (sqrt.f64 re) im))))) (cbrt.f64 (cbrt.f64 (/.f64 (sqrt.f64 re) im))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (*.f64 (/.f64 -1/2 (sqrt.f64 re)) im))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 (/.f64 im (/.f64 re im)) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re)))))))))

simplify100.0ms (1.1%)

Algorithm
egg-herbie
Rules
872×distribute-rgt-in
860×distribute-lft-in
758×distribute-rgt-neg-out
736×distribute-lft-neg-out
576×associate-/l*
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
04205471
19925231
238255227
Stop Event
node limit
Counts
237 → 279
Calls
Call 1
Inputs
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 re) (/.f64 1 im))
(*.f64 (sqrt.f64 re) (/.f64 1 im))
(*.f64 (sqrt.f64 re) (/.f64 1 im))
(*.f64 (sqrt.f64 re) (/.f64 1 im))
(*.f64 (sqrt.f64 re) (/.f64 1 im))
(*.f64 (sqrt.f64 re) (/.f64 1 im))
(*.f64 (sqrt.f64 re) (/.f64 1 im))
(*.f64 (sqrt.f64 re) (/.f64 1 im))
(*.f64 (sqrt.f64 re) (/.f64 1 im))
(*.f64 (sqrt.f64 re) (/.f64 1 im))
(*.f64 (sqrt.f64 re) (/.f64 1 im))
(*.f64 (sqrt.f64 re) (/.f64 1 im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(-.f64 (exp.f64 (log1p.f64 (/.f64 im (sqrt.f64 re)))) 1)
(*.f64 1 (/.f64 im (sqrt.f64 re)))
(*.f64 im (pow.f64 re -1/2))
(*.f64 (/.f64 im (sqrt.f64 re)) 1)
(*.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) (sqrt.f64 (/.f64 im (sqrt.f64 re))))
(*.f64 (sqrt.f64 im) (/.f64 (sqrt.f64 im) (sqrt.f64 re)))
(*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (cbrt.f64 (/.f64 im (/.f64 re im))))
(*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (/.f64 (pow.f64 (cbrt.f64 im) 2) (cbrt.f64 re)))
(*.f64 (cbrt.f64 (/.f64 im (/.f64 re im))) (cbrt.f64 (/.f64 im (sqrt.f64 re))))
(*.f64 (cbrt.f64 im) (/.f64 (pow.f64 (cbrt.f64 im) 2) (sqrt.f64 re)))
(*.f64 (pow.f64 re -1/2) im)
(*.f64 (pow.f64 re -1/2) (pow.f64 (/.f64 1 im) -1))
(*.f64 -1 (/.f64 (neg.f64 im) (sqrt.f64 re)))
(*.f64 (neg.f64 im) (/.f64 -1 (sqrt.f64 re)))
(*.f64 (/.f64 (sqrt.f64 im) (sqrt.f64 re)) (sqrt.f64 im))
(*.f64 (/.f64 (sqrt.f64 im) (sqrt.f64 re)) (/.f64 (sqrt.f64 im) 1))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 im) 2) (sqrt.f64 re)) (cbrt.f64 im))
(*.f64 (/.f64 (neg.f64 im) (sqrt.f64 re)) -1)
(*.f64 (/.f64 1 (pow.f64 re 1/4)) (/.f64 im (pow.f64 re 1/4)))
(*.f64 (/.f64 1 (cbrt.f64 re)) (/.f64 im (cbrt.f64 (sqrt.f64 re))))
(*.f64 (/.f64 im (pow.f64 re 1/4)) (/.f64 1 (pow.f64 re 1/4)))
(*.f64 (/.f64 im (cbrt.f64 (sqrt.f64 re))) (/.f64 1 (cbrt.f64 re)))
(*.f64 (/.f64 -1 (sqrt.f64 re)) (neg.f64 im))
(*.f64 (/.f64 (sqrt.f64 im) 1) (/.f64 (sqrt.f64 im) (sqrt.f64 re)))
(*.f64 (/.f64 (sqrt.f64 im) (cbrt.f64 re)) (/.f64 (sqrt.f64 im) (cbrt.f64 (sqrt.f64 re))))
(*.f64 (/.f64 (sqrt.f64 im) (cbrt.f64 (sqrt.f64 re))) (/.f64 (sqrt.f64 im) (cbrt.f64 re)))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 im) 2) 1) (/.f64 (cbrt.f64 im) (sqrt.f64 re)))
(*.f64 (/.f64 (cbrt.f64 im) (sqrt.f64 re)) (/.f64 (pow.f64 (cbrt.f64 im) 2) 1))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 im) 2) (pow.f64 re 1/4)) (/.f64 (cbrt.f64 im) (pow.f64 re 1/4)))
(*.f64 (/.f64 (cbrt.f64 im) (pow.f64 re 1/4)) (/.f64 (pow.f64 (cbrt.f64 im) 2) (pow.f64 re 1/4)))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 im) 2) (cbrt.f64 re)) (cbrt.f64 (/.f64 im (sqrt.f64 re))))
(*.f64 (pow.f64 (/.f64 1 im) -1) (pow.f64 re -1/2))
(*.f64 (pow.f64 (sqrt.f64 (/.f64 (sqrt.f64 re) im)) -1) (pow.f64 (sqrt.f64 (/.f64 (sqrt.f64 re) im)) -1))
(*.f64 (pow.f64 (cbrt.f64 (/.f64 re (*.f64 im im))) -1) (pow.f64 (cbrt.f64 (/.f64 (sqrt.f64 re) im)) -1))
(*.f64 (pow.f64 (cbrt.f64 (/.f64 (sqrt.f64 re) im)) -1) (pow.f64 (cbrt.f64 (/.f64 re (*.f64 im im))) -1))
(*.f64 (/.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) 1) (sqrt.f64 (/.f64 im (sqrt.f64 re))))
(*.f64 (/.f64 1 (/.f64 (sqrt.f64 re) (pow.f64 (cbrt.f64 im) 2))) (cbrt.f64 im))
(*.f64 (/.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) (sqrt.f64 (neg.f64 (sqrt.f64 re)))) (sqrt.f64 (neg.f64 im)))
(*.f64 (/.f64 (pow.f64 re -1/2) -1) (neg.f64 im))
(*.f64 (/.f64 (pow.f64 re -1/2) (/.f64 1 (sqrt.f64 im))) (sqrt.f64 im))
(*.f64 (/.f64 (pow.f64 re -1/2) (/.f64 1 (pow.f64 (cbrt.f64 im) 2))) (cbrt.f64 im))
(*.f64 (/.f64 (cbrt.f64 (/.f64 im (/.f64 re im))) 1) (cbrt.f64 (/.f64 im (sqrt.f64 re))))
(*.f64 (/.f64 (cbrt.f64 (/.f64 im (/.f64 re im))) (cbrt.f64 (sqrt.f64 re))) (cbrt.f64 im))
(*.f64 (/.f64 (cbrt.f64 (/.f64 im (/.f64 re im))) (cbrt.f64 (neg.f64 (sqrt.f64 re)))) (cbrt.f64 (neg.f64 im)))
(pow.f64 (/.f64 (sqrt.f64 re) im) -1)
(pow.f64 (/.f64 im (sqrt.f64 re)) 1)
(pow.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) 2)
(pow.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) 3)
(pow.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 3) 1/3)
(neg.f64 (/.f64 (neg.f64 im) (sqrt.f64 re)))
(sqrt.f64 (/.f64 im (/.f64 re im)))
(log.f64 (exp.f64 (/.f64 im (sqrt.f64 re))))
(log.f64 (+.f64 1 (expm1.f64 (/.f64 im (sqrt.f64 re)))))
(cbrt.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 3))
(expm1.f64 (log1p.f64 (/.f64 im (sqrt.f64 re))))
(exp.f64 (log.f64 (/.f64 im (sqrt.f64 re))))
(exp.f64 (-.f64 (log.f64 im) (log.f64 (sqrt.f64 re))))
(log1p.f64 (expm1.f64 (/.f64 im (sqrt.f64 re))))
(-.f64 (exp.f64 (log1p.f64 (/.f64 (sqrt.f64 re) im))) 1)
(*.f64 1 (/.f64 (sqrt.f64 re) im))
(*.f64 (sqrt.f64 re) (/.f64 1 im))
(*.f64 (sqrt.f64 re) (neg.f64 (/.f64 -1 im)))
(*.f64 (/.f64 (sqrt.f64 re) im) 1)
(*.f64 (sqrt.f64 (/.f64 (sqrt.f64 re) im)) (sqrt.f64 (/.f64 (sqrt.f64 re) im)))
(*.f64 (sqrt.f64 (/.f64 (sqrt.f64 re) im)) (neg.f64 (neg.f64 (sqrt.f64 (/.f64 (sqrt.f64 re) im)))))
(*.f64 (pow.f64 re 1/4) (/.f64 (pow.f64 re 1/4) im))
(*.f64 (cbrt.f64 (/.f64 (sqrt.f64 re) im)) (cbrt.f64 (/.f64 re (*.f64 im im))))
(*.f64 (cbrt.f64 (/.f64 (sqrt.f64 re) im)) (/.f64 (cbrt.f64 re) (pow.f64 (cbrt.f64 im) 2)))
(*.f64 (cbrt.f64 (/.f64 re (*.f64 im im))) (cbrt.f64 (/.f64 (sqrt.f64 re) im)))
(*.f64 (cbrt.f64 (/.f64 re (*.f64 im im))) (neg.f64 (neg.f64 (cbrt.f64 (/.f64 (sqrt.f64 re) im)))))
(*.f64 (cbrt.f64 re) (/.f64 (cbrt.f64 (sqrt.f64 re)) im))
(*.f64 (/.f64 1 im) (sqrt.f64 re))
(*.f64 -1 (/.f64 (sqrt.f64 re) (neg.f64 im)))
(*.f64 (neg.f64 (sqrt.f64 re)) (/.f64 -1 im))
(*.f64 (sqrt.f64 (/.f64 (sqrt.f64 re) (neg.f64 im))) (neg.f64 (sqrt.f64 (/.f64 (sqrt.f64 re) (neg.f64 im)))))
(*.f64 (*.f64 (cbrt.f64 (/.f64 (sqrt.f64 re) (neg.f64 im))) (cbrt.f64 (/.f64 (sqrt.f64 re) (neg.f64 im)))) (neg.f64 (cbrt.f64 (/.f64 (sqrt.f64 re) (neg.f64 im)))))
(*.f64 (/.f64 (pow.f64 re 1/4) im) (pow.f64 re 1/4))
(*.f64 (/.f64 (pow.f64 re 1/4) im) (/.f64 (pow.f64 re 1/4) 1))
(*.f64 (/.f64 (cbrt.f64 (sqrt.f64 re)) im) (cbrt.f64 re))
(*.f64 (/.f64 (cbrt.f64 (sqrt.f64 re)) im) (/.f64 (cbrt.f64 re) 1))
(*.f64 (/.f64 1 (sqrt.f64 im)) (/.f64 (sqrt.f64 re) (sqrt.f64 im)))
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 im) 2)) (/.f64 (sqrt.f64 re) (cbrt.f64 im)))
(*.f64 (/.f64 (sqrt.f64 re) 1) (/.f64 1 im))
(*.f64 (/.f64 (sqrt.f64 re) (sqrt.f64 im)) (/.f64 1 (sqrt.f64 im)))
(*.f64 (/.f64 (sqrt.f64 re) (cbrt.f64 im)) (/.f64 1 (pow.f64 (cbrt.f64 im) 2)))
(*.f64 (neg.f64 (sqrt.f64 (/.f64 (sqrt.f64 re) im))) (neg.f64 (sqrt.f64 (/.f64 (sqrt.f64 re) im))))
(*.f64 (neg.f64 (cbrt.f64 (/.f64 re (*.f64 im im)))) (neg.f64 (cbrt.f64 (/.f64 (sqrt.f64 re) im))))
(*.f64 (/.f64 -1 im) (neg.f64 (sqrt.f64 re)))
(*.f64 (/.f64 (pow.f64 re 1/4) 1) (/.f64 (pow.f64 re 1/4) im))
(*.f64 (/.f64 (pow.f64 re 1/4) (pow.f64 (cbrt.f64 im) 2)) (/.f64 (pow.f64 re 1/4) (cbrt.f64 im)))
(*.f64 (/.f64 (pow.f64 re 1/4) (cbrt.f64 im)) (/.f64 (pow.f64 re 1/4) (pow.f64 (cbrt.f64 im) 2)))
(*.f64 (/.f64 (cbrt.f64 re) 1) (/.f64 (cbrt.f64 (sqrt.f64 re)) im))
(*.f64 (/.f64 (cbrt.f64 re) (sqrt.f64 im)) (/.f64 (cbrt.f64 (sqrt.f64 re)) (sqrt.f64 im)))
(*.f64 (/.f64 (cbrt.f64 (sqrt.f64 re)) (sqrt.f64 im)) (/.f64 (cbrt.f64 re) (sqrt.f64 im)))
(*.f64 (/.f64 (cbrt.f64 re) (pow.f64 (cbrt.f64 im) 2)) (cbrt.f64 (/.f64 (sqrt.f64 re) im)))
(*.f64 (/.f64 1 (cbrt.f64 (/.f64 im (/.f64 re im)))) (cbrt.f64 (/.f64 (sqrt.f64 re) im)))
(*.f64 (/.f64 (sqrt.f64 (/.f64 (sqrt.f64 re) im)) 1) (sqrt.f64 (/.f64 (sqrt.f64 re) im)))
(*.f64 (/.f64 (cbrt.f64 (/.f64 re (*.f64 im im))) 1) (cbrt.f64 (/.f64 (sqrt.f64 re) im)))
(*.f64 (/.f64 (cbrt.f64 re) im) (cbrt.f64 (sqrt.f64 re)))
(*.f64 (/.f64 1 (/.f64 im (cbrt.f64 re))) (cbrt.f64 (sqrt.f64 re)))
(*.f64 (/.f64 (sqrt.f64 (/.f64 (sqrt.f64 re) im)) (sqrt.f64 -1)) (sqrt.f64 (/.f64 (sqrt.f64 re) (neg.f64 im))))
(*.f64 (/.f64 (cbrt.f64 (/.f64 re (*.f64 im im))) -1) (cbrt.f64 (/.f64 (sqrt.f64 re) (neg.f64 im))))
(*.f64 (neg.f64 (sqrt.f64 (/.f64 (sqrt.f64 re) (neg.f64 im)))) (sqrt.f64 (/.f64 (sqrt.f64 re) (neg.f64 im))))
(*.f64 (neg.f64 (*.f64 (cbrt.f64 (/.f64 (sqrt.f64 re) (neg.f64 im))) (cbrt.f64 (/.f64 (sqrt.f64 re) (neg.f64 im))))) (cbrt.f64 (/.f64 (sqrt.f64 re) (neg.f64 im))))
(*.f64 (neg.f64 (neg.f64 (sqrt.f64 (/.f64 (sqrt.f64 re) im)))) (sqrt.f64 (/.f64 (sqrt.f64 re) im)))
(*.f64 (neg.f64 (neg.f64 (cbrt.f64 (/.f64 re (*.f64 im im))))) (cbrt.f64 (/.f64 (sqrt.f64 re) im)))
(pow.f64 (/.f64 (sqrt.f64 re) im) 1)
(pow.f64 (/.f64 im (sqrt.f64 re)) -1)
(pow.f64 (sqrt.f64 (/.f64 (sqrt.f64 re) im)) 2)
(pow.f64 (cbrt.f64 (/.f64 (sqrt.f64 re) im)) 3)
(pow.f64 (pow.f64 (/.f64 (sqrt.f64 re) im) 3) 1/3)
(neg.f64 (/.f64 (sqrt.f64 re) (neg.f64 im)))
(sqrt.f64 (/.f64 re (*.f64 im im)))
(log.f64 (exp.f64 (/.f64 (sqrt.f64 re) im)))
(log.f64 (+.f64 1 (expm1.f64 (/.f64 (sqrt.f64 re) im))))
(cbrt.f64 (pow.f64 (/.f64 (sqrt.f64 re) im) 3))
(expm1.f64 (log1p.f64 (/.f64 (sqrt.f64 re) im)))
(exp.f64 (log.f64 (/.f64 (sqrt.f64 re) im)))
(log1p.f64 (expm1.f64 (/.f64 (sqrt.f64 re) im)))
(-.f64 (exp.f64 (log1p.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re))))) 1)
(/.f64 1 (/.f64 (sqrt.f64 re) (*.f64 im 1/2)))
(/.f64 1/2 (/.f64 (sqrt.f64 re) im))
(/.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re))) 1)
(/.f64 (*.f64 1/2 (cbrt.f64 (/.f64 im (/.f64 re im)))) (cbrt.f64 (/.f64 (sqrt.f64 re) im)))
(/.f64 (*.f64 1/2 (cbrt.f64 (/.f64 im (sqrt.f64 re)))) (cbrt.f64 (/.f64 re (*.f64 im im))))
(/.f64 (*.f64 im 1/2) (sqrt.f64 re))
(/.f64 -1/2 (/.f64 (sqrt.f64 re) (neg.f64 im)))
(/.f64 (/.f64 1/2 (sqrt.f64 re)) (/.f64 1 im))
(/.f64 (/.f64 1/2 (sqrt.f64 (/.f64 (sqrt.f64 re) im))) (sqrt.f64 (/.f64 (sqrt.f64 re) im)))
(/.f64 (/.f64 1/2 (cbrt.f64 (/.f64 re (*.f64 im im)))) (cbrt.f64 (/.f64 (sqrt.f64 re) im)))
(/.f64 (/.f64 -1/2 (sqrt.f64 re)) (/.f64 -1 im))
(/.f64 (*.f64 1 (/.f64 1/2 (sqrt.f64 re))) (/.f64 1 im))
(/.f64 (*.f64 1 (/.f64 1/2 (sqrt.f64 (/.f64 (sqrt.f64 re) im)))) (sqrt.f64 (/.f64 (sqrt.f64 re) im)))
(/.f64 (*.f64 1 (/.f64 1/2 (cbrt.f64 (/.f64 re (*.f64 im im))))) (cbrt.f64 (/.f64 (sqrt.f64 re) im)))
(/.f64 (*.f64 1/2 (sqrt.f64 im)) (/.f64 (sqrt.f64 re) (sqrt.f64 im)))
(/.f64 (*.f64 1/2 (pow.f64 (cbrt.f64 im) 2)) (/.f64 (sqrt.f64 re) (cbrt.f64 im)))
(/.f64 (*.f64 1/2 (neg.f64 im)) (neg.f64 (sqrt.f64 re)))
(/.f64 (*.f64 1/2 (/.f64 im (pow.f64 re 1/4))) (pow.f64 re 1/4))
(/.f64 (*.f64 1/2 (/.f64 im (cbrt.f64 re))) (cbrt.f64 (sqrt.f64 re)))
(/.f64 (*.f64 (sqrt.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re)))) (sqrt.f64 1/2)) (sqrt.f64 (/.f64 (sqrt.f64 re) im)))
(/.f64 (*.f64 (cbrt.f64 (*.f64 (/.f64 im (/.f64 re im)) 1/4)) (cbrt.f64 1/2)) (cbrt.f64 (/.f64 (sqrt.f64 re) im)))
(/.f64 (*.f64 (/.f64 1/2 (sqrt.f64 (/.f64 (sqrt.f64 re) im))) 1) (sqrt.f64 (/.f64 (sqrt.f64 re) im)))
(/.f64 (*.f64 (/.f64 1/2 (sqrt.f64 (/.f64 (sqrt.f64 re) im))) (sqrt.f64 -1)) (sqrt.f64 (/.f64 (sqrt.f64 re) (neg.f64 im))))
(/.f64 (*.f64 (*.f64 1/2 (cbrt.f64 (/.f64 im (/.f64 re im)))) 1) (cbrt.f64 (/.f64 (sqrt.f64 re) im)))
(/.f64 (*.f64 (*.f64 1/2 (cbrt.f64 (/.f64 im (/.f64 re im)))) -1) (cbrt.f64 (/.f64 (sqrt.f64 re) (neg.f64 im))))
(/.f64 (*.f64 (sqrt.f64 im) 1/2) (/.f64 (sqrt.f64 re) (sqrt.f64 im)))
(/.f64 (*.f64 (pow.f64 (cbrt.f64 im) 2) 1/2) (/.f64 (sqrt.f64 re) (cbrt.f64 im)))
(/.f64 (*.f64 (neg.f64 im) 1/2) (neg.f64 (sqrt.f64 re)))
(/.f64 (*.f64 (/.f64 im (pow.f64 re 1/4)) 1/2) (pow.f64 re 1/4))
(/.f64 (*.f64 (/.f64 im (cbrt.f64 re)) 1/2) (cbrt.f64 (sqrt.f64 re)))
(/.f64 (*.f64 (/.f64 1/2 (sqrt.f64 re)) 1) (/.f64 1 im))
(/.f64 (*.f64 (/.f64 1/2 (cbrt.f64 (/.f64 re (*.f64 im im)))) 1) (cbrt.f64 (/.f64 (sqrt.f64 re) im)))
(/.f64 (*.f64 (sqrt.f64 1/2) (sqrt.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re))))) (sqrt.f64 (/.f64 (sqrt.f64 re) im)))
(/.f64 (*.f64 (sqrt.f64 -1) (/.f64 1/2 (sqrt.f64 (/.f64 (sqrt.f64 re) im)))) (sqrt.f64 (/.f64 (sqrt.f64 re) (neg.f64 im))))
(/.f64 (*.f64 (cbrt.f64 1/2) (cbrt.f64 (*.f64 (/.f64 im (/.f64 re im)) 1/4))) (cbrt.f64 (/.f64 (sqrt.f64 re) im)))
(/.f64 (*.f64 1 (*.f64 im 1/2)) (sqrt.f64 re))
(/.f64 (*.f64 1 (*.f64 im 1/2)) (/.f64 (sqrt.f64 re) 1))
(/.f64 (*.f64 -1 (*.f64 im 1/2)) (neg.f64 (sqrt.f64 re)))
(/.f64 (*.f64 (/.f64 1 (pow.f64 re 1/4)) (*.f64 im 1/2)) (pow.f64 re 1/4))
(/.f64 (*.f64 (/.f64 1 (cbrt.f64 re)) (*.f64 im 1/2)) (cbrt.f64 (sqrt.f64 re)))
(/.f64 (/.f64 1/2 (pow.f64 re 1/4)) (/.f64 (pow.f64 re 1/4) im))
(/.f64 (/.f64 1/2 (cbrt.f64 re)) (/.f64 (cbrt.f64 (sqrt.f64 re)) im))
(/.f64 (/.f64 1/2 (/.f64 1 im)) (sqrt.f64 re))
(/.f64 (/.f64 1/2 (/.f64 1 (sqrt.f64 im))) (/.f64 (sqrt.f64 re) (sqrt.f64 im)))
(/.f64 (/.f64 1/2 (/.f64 1 (pow.f64 (cbrt.f64 im) 2))) (/.f64 (sqrt.f64 re) (cbrt.f64 im)))
(/.f64 (/.f64 1/2 (/.f64 (pow.f64 re 1/4) 1)) (/.f64 (pow.f64 re 1/4) im))
(/.f64 (/.f64 1/2 (/.f64 (pow.f64 re 1/4) (pow.f64 (cbrt.f64 im) 2))) (/.f64 (pow.f64 re 1/4) (cbrt.f64 im)))
(/.f64 (/.f64 1/2 (/.f64 (cbrt.f64 re) 1)) (/.f64 (cbrt.f64 (sqrt.f64 re)) im))
(/.f64 (/.f64 1/2 (/.f64 (cbrt.f64 re) (sqrt.f64 im))) (/.f64 (cbrt.f64 (sqrt.f64 re)) (sqrt.f64 im)))
(/.f64 (/.f64 1/2 (/.f64 (cbrt.f64 re) (pow.f64 (cbrt.f64 im) 2))) (cbrt.f64 (/.f64 (sqrt.f64 re) im)))
(/.f64 (/.f64 -1/2 (sqrt.f64 (/.f64 (sqrt.f64 re) im))) (neg.f64 (sqrt.f64 (/.f64 (sqrt.f64 re) im))))
(/.f64 (/.f64 -1/2 (cbrt.f64 (/.f64 re (*.f64 im im)))) (neg.f64 (cbrt.f64 (/.f64 (sqrt.f64 re) im))))
(/.f64 (/.f64 -1/2 (sqrt.f64 (/.f64 (sqrt.f64 re) (neg.f64 im)))) (sqrt.f64 (/.f64 (sqrt.f64 re) (neg.f64 im))))
(/.f64 (/.f64 -1/2 (*.f64 (cbrt.f64 (/.f64 (sqrt.f64 re) (neg.f64 im))) (cbrt.f64 (/.f64 (sqrt.f64 re) (neg.f64 im))))) (cbrt.f64 (/.f64 (sqrt.f64 re) (neg.f64 im))))
(/.f64 (/.f64 -1/2 (neg.f64 (sqrt.f64 (/.f64 (sqrt.f64 re) im)))) (sqrt.f64 (/.f64 (sqrt.f64 re) im)))
(/.f64 (/.f64 -1/2 (neg.f64 (cbrt.f64 (/.f64 re (*.f64 im im))))) (cbrt.f64 (/.f64 (sqrt.f64 re) im)))
(/.f64 (/.f64 (/.f64 1/2 (sqrt.f64 re)) (sqrt.f64 (/.f64 1 im))) (sqrt.f64 (/.f64 1 im)))
(/.f64 (/.f64 (/.f64 1/2 (sqrt.f64 re)) (*.f64 (cbrt.f64 (/.f64 1 im)) (cbrt.f64 (/.f64 1 im)))) (cbrt.f64 (/.f64 1 im)))
(/.f64 (/.f64 (/.f64 1/2 (sqrt.f64 (/.f64 (sqrt.f64 re) im))) 1) (sqrt.f64 (/.f64 (sqrt.f64 re) im)))
(/.f64 (/.f64 (/.f64 1/2 (sqrt.f64 (/.f64 (sqrt.f64 re) im))) (pow.f64 re 1/4)) (sqrt.f64 (/.f64 1 im)))
(/.f64 (/.f64 (/.f64 1/2 (sqrt.f64 (/.f64 (sqrt.f64 re) im))) (cbrt.f64 (/.f64 (sqrt.f64 re) im))) (cbrt.f64 (sqrt.f64 (/.f64 (sqrt.f64 re) im))))
(/.f64 (/.f64 (/.f64 1/2 (sqrt.f64 (/.f64 (sqrt.f64 re) im))) (sqrt.f64 (cbrt.f64 (/.f64 re (*.f64 im im))))) (sqrt.f64 (cbrt.f64 (/.f64 (sqrt.f64 re) im))))
(/.f64 (/.f64 (/.f64 1/2 (sqrt.f64 (/.f64 (sqrt.f64 re) im))) (sqrt.f64 (sqrt.f64 (/.f64 (sqrt.f64 re) im)))) (sqrt.f64 (sqrt.f64 (/.f64 (sqrt.f64 re) im))))
(/.f64 (/.f64 (/.f64 1/2 (cbrt.f64 (/.f64 re (*.f64 im im)))) 1) (cbrt.f64 (/.f64 (sqrt.f64 re) im)))
(/.f64 (/.f64 (/.f64 1/2 (cbrt.f64 (/.f64 re (*.f64 im im)))) (cbrt.f64 (sqrt.f64 re))) (cbrt.f64 (/.f64 1 im)))
(/.f64 (/.f64 (/.f64 1/2 (cbrt.f64 (/.f64 re (*.f64 im im)))) (sqrt.f64 (cbrt.f64 (/.f64 (sqrt.f64 re) im)))) (sqrt.f64 (cbrt.f64 (/.f64 (sqrt.f64 re) im))))
(/.f64 (/.f64 (/.f64 1/2 (cbrt.f64 (/.f64 re (*.f64 im im)))) (cbrt.f64 (cbrt.f64 (/.f64 re (*.f64 im im))))) (cbrt.f64 (cbrt.f64 (/.f64 (sqrt.f64 re) im))))
(/.f64 (/.f64 (/.f64 1/2 (cbrt.f64 (/.f64 re (*.f64 im im)))) (cbrt.f64 (sqrt.f64 (/.f64 (sqrt.f64 re) im)))) (cbrt.f64 (sqrt.f64 (/.f64 (sqrt.f64 re) im))))
(/.f64 (/.f64 (/.f64 1/2 (cbrt.f64 (/.f64 re (*.f64 im im)))) (*.f64 (cbrt.f64 (cbrt.f64 (/.f64 (sqrt.f64 re) im))) (cbrt.f64 (cbrt.f64 (/.f64 (sqrt.f64 re) im))))) (cbrt.f64 (cbrt.f64 (/.f64 (sqrt.f64 re) im))))
(pow.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re))) 1)
(pow.f64 (sqrt.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re)))) 2)
(pow.f64 (cbrt.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re)))) 3)
(pow.f64 (pow.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re))) 3) 1/3)
(neg.f64 (*.f64 (/.f64 -1/2 (sqrt.f64 re)) im))
(sqrt.f64 (*.f64 (/.f64 im (/.f64 re im)) 1/4))
(log.f64 (exp.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re)))))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re))))))
(cbrt.f64 (pow.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re))) 3))
(expm1.f64 (log1p.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re)))))
(exp.f64 (log.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re)))))
(log1p.f64 (expm1.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re)))))
Outputs
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 re) (/.f64 1 im))
(/.f64 (sqrt.f64 re) im)
(*.f64 (sqrt.f64 re) (/.f64 1 im))
(/.f64 (sqrt.f64 re) im)
(*.f64 (sqrt.f64 re) (/.f64 1 im))
(/.f64 (sqrt.f64 re) im)
(*.f64 (sqrt.f64 re) (/.f64 1 im))
(/.f64 (sqrt.f64 re) im)
(*.f64 (sqrt.f64 re) (/.f64 1 im))
(/.f64 (sqrt.f64 re) im)
(*.f64 (sqrt.f64 re) (/.f64 1 im))
(/.f64 (sqrt.f64 re) im)
(*.f64 (sqrt.f64 re) (/.f64 1 im))
(/.f64 (sqrt.f64 re) im)
(*.f64 (sqrt.f64 re) (/.f64 1 im))
(/.f64 (sqrt.f64 re) im)
(*.f64 (sqrt.f64 re) (/.f64 1 im))
(/.f64 (sqrt.f64 re) im)
(*.f64 (sqrt.f64 re) (/.f64 1 im))
(/.f64 (sqrt.f64 re) im)
(*.f64 (sqrt.f64 re) (/.f64 1 im))
(/.f64 (sqrt.f64 re) im)
(*.f64 (sqrt.f64 re) (/.f64 1 im))
(/.f64 (sqrt.f64 re) im)
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 1/2)
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im 1/2))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 1/2)
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im 1/2))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 1/2)
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im 1/2))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 1/2)
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im 1/2))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 1/2)
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im 1/2))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 1/2)
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im 1/2))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 1/2)
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im 1/2))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 1/2)
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im 1/2))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 1/2)
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im 1/2))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 1/2)
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im 1/2))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 1/2)
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im 1/2))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 1/2)
(*.f64 (sqrt.f64 (/.f64 1 re)) (*.f64 im 1/2))
(-.f64 (exp.f64 (log1p.f64 (/.f64 im (sqrt.f64 re)))) 1)
(/.f64 im (sqrt.f64 re))
(*.f64 1 (/.f64 im (sqrt.f64 re)))
(/.f64 im (sqrt.f64 re))
(*.f64 im (pow.f64 re -1/2))
(*.f64 (/.f64 im (sqrt.f64 re)) 1)
(/.f64 im (sqrt.f64 re))
(*.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) (sqrt.f64 (/.f64 im (sqrt.f64 re))))
(/.f64 im (sqrt.f64 re))
(*.f64 (sqrt.f64 im) (/.f64 (sqrt.f64 im) (sqrt.f64 re)))
(/.f64 im (sqrt.f64 re))
(*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (cbrt.f64 (/.f64 im (/.f64 re im))))
(*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (cbrt.f64 (*.f64 (/.f64 im re) im)))
(*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (cbrt.f64 (*.f64 im (/.f64 im re))))
(*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (/.f64 (pow.f64 (cbrt.f64 im) 2) (cbrt.f64 re)))
(*.f64 (cbrt.f64 (/.f64 im (/.f64 re im))) (cbrt.f64 (/.f64 im (sqrt.f64 re))))
(*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (cbrt.f64 (*.f64 (/.f64 im re) im)))
(*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (cbrt.f64 (*.f64 im (/.f64 im re))))
(*.f64 (cbrt.f64 im) (/.f64 (pow.f64 (cbrt.f64 im) 2) (sqrt.f64 re)))
(/.f64 im (sqrt.f64 re))
(*.f64 (pow.f64 re -1/2) im)
(*.f64 im (pow.f64 re -1/2))
(*.f64 (pow.f64 re -1/2) (pow.f64 (/.f64 1 im) -1))
(*.f64 im (pow.f64 re -1/2))
(*.f64 -1 (/.f64 (neg.f64 im) (sqrt.f64 re)))
(/.f64 im (sqrt.f64 re))
(*.f64 (neg.f64 im) (/.f64 -1 (sqrt.f64 re)))
(/.f64 im (sqrt.f64 re))
(*.f64 (/.f64 (sqrt.f64 im) (sqrt.f64 re)) (sqrt.f64 im))
(/.f64 im (sqrt.f64 re))
(*.f64 (/.f64 (sqrt.f64 im) (sqrt.f64 re)) (/.f64 (sqrt.f64 im) 1))
(/.f64 im (sqrt.f64 re))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 im) 2) (sqrt.f64 re)) (cbrt.f64 im))
(/.f64 im (sqrt.f64 re))
(*.f64 (/.f64 (neg.f64 im) (sqrt.f64 re)) -1)
(/.f64 im (sqrt.f64 re))
(*.f64 (/.f64 1 (pow.f64 re 1/4)) (/.f64 im (pow.f64 re 1/4)))
(/.f64 1 (/.f64 (pow.f64 re 1/2) im))
(*.f64 (/.f64 1 (cbrt.f64 re)) (/.f64 im (cbrt.f64 (sqrt.f64 re))))
(/.f64 (/.f64 im (cbrt.f64 (sqrt.f64 re))) (cbrt.f64 re))
(/.f64 (/.f64 im (cbrt.f64 re)) (cbrt.f64 (sqrt.f64 re)))
(*.f64 (/.f64 im (pow.f64 re 1/4)) (/.f64 1 (pow.f64 re 1/4)))
(*.f64 (/.f64 1 (pow.f64 re 1/4)) (/.f64 im (pow.f64 re 1/4)))
(/.f64 1 (/.f64 (pow.f64 re 1/2) im))
(*.f64 (/.f64 im (cbrt.f64 (sqrt.f64 re))) (/.f64 1 (cbrt.f64 re)))
(*.f64 (/.f64 1 (cbrt.f64 re)) (/.f64 im (cbrt.f64 (sqrt.f64 re))))
(/.f64 (/.f64 im (cbrt.f64 (sqrt.f64 re))) (cbrt.f64 re))
(/.f64 (/.f64 im (cbrt.f64 re)) (cbrt.f64 (sqrt.f64 re)))
(*.f64 (/.f64 -1 (sqrt.f64 re)) (neg.f64 im))
(/.f64 im (sqrt.f64 re))
(*.f64 (/.f64 (sqrt.f64 im) 1) (/.f64 (sqrt.f64 im) (sqrt.f64 re)))
(/.f64 im (sqrt.f64 re))
(*.f64 (/.f64 (sqrt.f64 im) (cbrt.f64 re)) (/.f64 (sqrt.f64 im) (cbrt.f64 (sqrt.f64 re))))
(*.f64 (/.f64 1 (cbrt.f64 re)) (/.f64 im (cbrt.f64 (sqrt.f64 re))))
(/.f64 (/.f64 im (cbrt.f64 (sqrt.f64 re))) (cbrt.f64 re))
(/.f64 (/.f64 im (cbrt.f64 re)) (cbrt.f64 (sqrt.f64 re)))
(*.f64 (/.f64 (sqrt.f64 im) (cbrt.f64 (sqrt.f64 re))) (/.f64 (sqrt.f64 im) (cbrt.f64 re)))
(*.f64 (/.f64 1 (cbrt.f64 re)) (/.f64 im (cbrt.f64 (sqrt.f64 re))))
(/.f64 (/.f64 im (cbrt.f64 (sqrt.f64 re))) (cbrt.f64 re))
(/.f64 (/.f64 im (cbrt.f64 re)) (cbrt.f64 (sqrt.f64 re)))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 im) 2) 1) (/.f64 (cbrt.f64 im) (sqrt.f64 re)))
(/.f64 im (sqrt.f64 re))
(*.f64 (/.f64 (cbrt.f64 im) (sqrt.f64 re)) (/.f64 (pow.f64 (cbrt.f64 im) 2) 1))
(/.f64 im (sqrt.f64 re))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 im) 2) (pow.f64 re 1/4)) (/.f64 (cbrt.f64 im) (pow.f64 re 1/4)))
(*.f64 (/.f64 1 (pow.f64 re 1/4)) (/.f64 im (pow.f64 re 1/4)))
(/.f64 1 (/.f64 (pow.f64 re 1/2) im))
(*.f64 (/.f64 (cbrt.f64 im) (pow.f64 re 1/4)) (/.f64 (pow.f64 (cbrt.f64 im) 2) (pow.f64 re 1/4)))
(*.f64 (/.f64 1 (pow.f64 re 1/4)) (/.f64 im (pow.f64 re 1/4)))
(/.f64 1 (/.f64 (pow.f64 re 1/2) im))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 im) 2) (cbrt.f64 re)) (cbrt.f64 (/.f64 im (sqrt.f64 re))))
(*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (/.f64 (pow.f64 (cbrt.f64 im) 2) (cbrt.f64 re)))
(*.f64 (pow.f64 (/.f64 1 im) -1) (pow.f64 re -1/2))
(*.f64 im (pow.f64 re -1/2))
(*.f64 (pow.f64 (sqrt.f64 (/.f64 (sqrt.f64 re) im)) -1) (pow.f64 (sqrt.f64 (/.f64 (sqrt.f64 re) im)) -1))
(/.f64 im (sqrt.f64 re))
(*.f64 (pow.f64 (cbrt.f64 (/.f64 re (*.f64 im im))) -1) (pow.f64 (cbrt.f64 (/.f64 (sqrt.f64 re) im)) -1))
(*.f64 (/.f64 1 (cbrt.f64 (/.f64 (/.f64 re im) im))) (/.f64 1 (cbrt.f64 (/.f64 (sqrt.f64 re) im))))
(/.f64 (/.f64 1 (cbrt.f64 (/.f64 (/.f64 re im) im))) (cbrt.f64 (/.f64 (sqrt.f64 re) im)))
(*.f64 (pow.f64 (cbrt.f64 (/.f64 (sqrt.f64 re) im)) -1) (pow.f64 (cbrt.f64 (/.f64 re (*.f64 im im))) -1))
(*.f64 (/.f64 1 (cbrt.f64 (/.f64 (/.f64 re im) im))) (/.f64 1 (cbrt.f64 (/.f64 (sqrt.f64 re) im))))
(/.f64 (/.f64 1 (cbrt.f64 (/.f64 (/.f64 re im) im))) (cbrt.f64 (/.f64 (sqrt.f64 re) im)))
(*.f64 (/.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) 1) (sqrt.f64 (/.f64 im (sqrt.f64 re))))
(/.f64 im (sqrt.f64 re))
(*.f64 (/.f64 1 (/.f64 (sqrt.f64 re) (pow.f64 (cbrt.f64 im) 2))) (cbrt.f64 im))
(/.f64 im (sqrt.f64 re))
(*.f64 (/.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) (sqrt.f64 (neg.f64 (sqrt.f64 re)))) (sqrt.f64 (neg.f64 im)))
(/.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) (/.f64 (sqrt.f64 (neg.f64 (sqrt.f64 re))) (sqrt.f64 (neg.f64 im))))
(*.f64 (/.f64 (pow.f64 re -1/2) -1) (neg.f64 im))
(/.f64 (*.f64 (pow.f64 re -1/2) (neg.f64 im)) -1)
(*.f64 (neg.f64 im) (/.f64 (pow.f64 re -1/2) -1))
(/.f64 (pow.f64 re -1/2) (/.f64 1 im))
(*.f64 (/.f64 (pow.f64 re -1/2) (/.f64 1 (sqrt.f64 im))) (sqrt.f64 im))
(*.f64 im (pow.f64 re -1/2))
(*.f64 (/.f64 (pow.f64 re -1/2) (/.f64 1 (pow.f64 (cbrt.f64 im) 2))) (cbrt.f64 im))
(*.f64 im (pow.f64 re -1/2))
(*.f64 (/.f64 (cbrt.f64 (/.f64 im (/.f64 re im))) 1) (cbrt.f64 (/.f64 im (sqrt.f64 re))))
(*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (cbrt.f64 (*.f64 (/.f64 im re) im)))
(*.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) (cbrt.f64 (*.f64 im (/.f64 im re))))
(*.f64 (/.f64 (cbrt.f64 (/.f64 im (/.f64 re im))) (cbrt.f64 (sqrt.f64 re))) (cbrt.f64 im))
(*.f64 (cbrt.f64 im) (/.f64 (cbrt.f64 (*.f64 (/.f64 im re) im)) (cbrt.f64 (sqrt.f64 re))))
(*.f64 (cbrt.f64 im) (/.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (cbrt.f64 (sqrt.f64 re))))
(/.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (/.f64 (cbrt.f64 (sqrt.f64 re)) (cbrt.f64 im)))
(*.f64 (/.f64 (cbrt.f64 (/.f64 im (/.f64 re im))) (cbrt.f64 (neg.f64 (sqrt.f64 re)))) (cbrt.f64 (neg.f64 im)))
(*.f64 (/.f64 (cbrt.f64 (*.f64 (/.f64 im re) im)) (cbrt.f64 (neg.f64 (sqrt.f64 re)))) (cbrt.f64 (neg.f64 im)))
(*.f64 (/.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (cbrt.f64 (neg.f64 (sqrt.f64 re)))) (cbrt.f64 (neg.f64 im)))
(pow.f64 (/.f64 (sqrt.f64 re) im) -1)
(/.f64 im (sqrt.f64 re))
(pow.f64 (/.f64 im (sqrt.f64 re)) 1)
(/.f64 im (sqrt.f64 re))
(pow.f64 (sqrt.f64 (/.f64 im (sqrt.f64 re))) 2)
(/.f64 im (sqrt.f64 re))
(pow.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) 3)
(/.f64 im (sqrt.f64 re))
(pow.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 3) 1/3)
(/.f64 im (sqrt.f64 re))
(neg.f64 (/.f64 (neg.f64 im) (sqrt.f64 re)))
(/.f64 im (sqrt.f64 re))
(sqrt.f64 (/.f64 im (/.f64 re im)))
(sqrt.f64 (*.f64 (/.f64 im re) im))
(sqrt.f64 (*.f64 im (/.f64 im re)))
(log.f64 (exp.f64 (/.f64 im (sqrt.f64 re))))
(/.f64 im (sqrt.f64 re))
(log.f64 (+.f64 1 (expm1.f64 (/.f64 im (sqrt.f64 re)))))
(/.f64 im (sqrt.f64 re))
(cbrt.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) 3))
(/.f64 im (sqrt.f64 re))
(expm1.f64 (log1p.f64 (/.f64 im (sqrt.f64 re))))
(/.f64 im (sqrt.f64 re))
(exp.f64 (log.f64 (/.f64 im (sqrt.f64 re))))
(/.f64 im (sqrt.f64 re))
(exp.f64 (-.f64 (log.f64 im) (log.f64 (sqrt.f64 re))))
(/.f64 im (sqrt.f64 re))
(log1p.f64 (expm1.f64 (/.f64 im (sqrt.f64 re))))
(/.f64 im (sqrt.f64 re))
(-.f64 (exp.f64 (log1p.f64 (/.f64 (sqrt.f64 re) im))) 1)
(/.f64 (sqrt.f64 re) im)
(*.f64 1 (/.f64 (sqrt.f64 re) im))
(/.f64 (sqrt.f64 re) im)
(*.f64 (sqrt.f64 re) (/.f64 1 im))
(/.f64 (sqrt.f64 re) im)
(*.f64 (sqrt.f64 re) (neg.f64 (/.f64 -1 im)))
(/.f64 (sqrt.f64 re) im)
(*.f64 (/.f64 (sqrt.f64 re) im) 1)
(/.f64 (sqrt.f64 re) im)
(*.f64 (sqrt.f64 (/.f64 (sqrt.f64 re) im)) (sqrt.f64 (/.f64 (sqrt.f64 re) im)))
(/.f64 (sqrt.f64 re) im)
(*.f64 (sqrt.f64 (/.f64 (sqrt.f64 re) im)) (neg.f64 (neg.f64 (sqrt.f64 (/.f64 (sqrt.f64 re) im)))))
(/.f64 (sqrt.f64 re) im)
(*.f64 (pow.f64 re 1/4) (/.f64 (pow.f64 re 1/4) im))
(/.f64 (pow.f64 re 1/2) im)
(*.f64 (cbrt.f64 (/.f64 (sqrt.f64 re) im)) (cbrt.f64 (/.f64 re (*.f64 im im))))
(*.f64 (cbrt.f64 (/.f64 (/.f64 re im) im)) (cbrt.f64 (/.f64 (sqrt.f64 re) im)))
(*.f64 (cbrt.f64 (/.f64 (sqrt.f64 re) im)) (/.f64 (cbrt.f64 re) (pow.f64 (cbrt.f64 im) 2)))
(*.f64 (cbrt.f64 (/.f64 re (*.f64 im im))) (cbrt.f64 (/.f64 (sqrt.f64 re) im)))
(*.f64 (cbrt.f64 (/.f64 (/.f64 re im) im)) (cbrt.f64 (/.f64 (sqrt.f64 re) im)))
(*.f64 (cbrt.f64 (/.f64 re (*.f64 im im))) (neg.f64 (neg.f64 (cbrt.f64 (/.f64 (sqrt.f64 re) im)))))
(*.f64 (cbrt.f64 (/.f64 (/.f64 re im) im)) (cbrt.f64 (/.f64 (sqrt.f64 re) im)))
(*.f64 (cbrt.f64 re) (/.f64 (cbrt.f64 (sqrt.f64 re)) im))
(/.f64 (cbrt.f64 (sqrt.f64 re)) (/.f64 im (cbrt.f64 re)))
(*.f64 (/.f64 1 im) (sqrt.f64 re))
(/.f64 (sqrt.f64 re) im)
(*.f64 -1 (/.f64 (sqrt.f64 re) (neg.f64 im)))
(/.f64 (sqrt.f64 re) im)
(*.f64 (neg.f64 (sqrt.f64 re)) (/.f64 -1 im))
(/.f64 (sqrt.f64 re) im)
(*.f64 (sqrt.f64 (/.f64 (sqrt.f64 re) (neg.f64 im))) (neg.f64 (sqrt.f64 (/.f64 (sqrt.f64 re) (neg.f64 im)))))
(/.f64 (sqrt.f64 re) im)
(*.f64 (*.f64 (cbrt.f64 (/.f64 (sqrt.f64 re) (neg.f64 im))) (cbrt.f64 (/.f64 (sqrt.f64 re) (neg.f64 im)))) (neg.f64 (cbrt.f64 (/.f64 (sqrt.f64 re) (neg.f64 im)))))
(/.f64 (sqrt.f64 re) im)
(*.f64 (/.f64 (pow.f64 re 1/4) im) (pow.f64 re 1/4))
(*.f64 (pow.f64 re 1/4) (/.f64 (pow.f64 re 1/4) im))
(/.f64 (pow.f64 re 1/2) im)
(*.f64 (/.f64 (pow.f64 re 1/4) im) (/.f64 (pow.f64 re 1/4) 1))
(*.f64 (pow.f64 re 1/4) (/.f64 (pow.f64 re 1/4) im))
(/.f64 (pow.f64 re 1/2) im)
(*.f64 (/.f64 (cbrt.f64 (sqrt.f64 re)) im) (cbrt.f64 re))
(*.f64 (cbrt.f64 re) (/.f64 (cbrt.f64 (sqrt.f64 re)) im))
(/.f64 (cbrt.f64 (sqrt.f64 re)) (/.f64 im (cbrt.f64 re)))
(*.f64 (/.f64 (cbrt.f64 (sqrt.f64 re)) im) (/.f64 (cbrt.f64 re) 1))
(*.f64 (cbrt.f64 re) (/.f64 (cbrt.f64 (sqrt.f64 re)) im))
(/.f64 (cbrt.f64 (sqrt.f64 re)) (/.f64 im (cbrt.f64 re)))
(*.f64 (/.f64 1 (sqrt.f64 im)) (/.f64 (sqrt.f64 re) (sqrt.f64 im)))
(/.f64 (sqrt.f64 re) im)
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 im) 2)) (/.f64 (sqrt.f64 re) (cbrt.f64 im)))
(/.f64 (sqrt.f64 re) im)
(*.f64 (/.f64 (sqrt.f64 re) 1) (/.f64 1 im))
(/.f64 (sqrt.f64 re) im)
(*.f64 (/.f64 (sqrt.f64 re) (sqrt.f64 im)) (/.f64 1 (sqrt.f64 im)))
(/.f64 (sqrt.f64 re) im)
(*.f64 (/.f64 (sqrt.f64 re) (cbrt.f64 im)) (/.f64 1 (pow.f64 (cbrt.f64 im) 2)))
(/.f64 (sqrt.f64 re) im)
(*.f64 (neg.f64 (sqrt.f64 (/.f64 (sqrt.f64 re) im))) (neg.f64 (sqrt.f64 (/.f64 (sqrt.f64 re) im))))
(/.f64 (sqrt.f64 re) im)
(*.f64 (neg.f64 (cbrt.f64 (/.f64 re (*.f64 im im)))) (neg.f64 (cbrt.f64 (/.f64 (sqrt.f64 re) im))))
(*.f64 (cbrt.f64 (/.f64 (/.f64 re im) im)) (cbrt.f64 (/.f64 (sqrt.f64 re) im)))
(*.f64 (/.f64 -1 im) (neg.f64 (sqrt.f64 re)))
(/.f64 (sqrt.f64 re) im)
(*.f64 (/.f64 (pow.f64 re 1/4) 1) (/.f64 (pow.f64 re 1/4) im))
(*.f64 (pow.f64 re 1/4) (/.f64 (pow.f64 re 1/4) im))
(/.f64 (pow.f64 re 1/2) im)
(*.f64 (/.f64 (pow.f64 re 1/4) (pow.f64 (cbrt.f64 im) 2)) (/.f64 (pow.f64 re 1/4) (cbrt.f64 im)))
(/.f64 (/.f64 (pow.f64 re 1/2) (pow.f64 (cbrt.f64 im) 2)) (cbrt.f64 im))
(*.f64 (/.f64 (pow.f64 re 1/4) (cbrt.f64 im)) (/.f64 (pow.f64 re 1/4) (pow.f64 (cbrt.f64 im) 2)))
(*.f64 (/.f64 (pow.f64 re 1/4) (pow.f64 (cbrt.f64 im) 2)) (/.f64 (pow.f64 re 1/4) (cbrt.f64 im)))
(/.f64 (/.f64 (pow.f64 re 1/2) (pow.f64 (cbrt.f64 im) 2)) (cbrt.f64 im))
(*.f64 (/.f64 (cbrt.f64 re) 1) (/.f64 (cbrt.f64 (sqrt.f64 re)) im))
(*.f64 (cbrt.f64 re) (/.f64 (cbrt.f64 (sqrt.f64 re)) im))
(/.f64 (cbrt.f64 (sqrt.f64 re)) (/.f64 im (cbrt.f64 re)))
(*.f64 (/.f64 (cbrt.f64 re) (sqrt.f64 im)) (/.f64 (cbrt.f64 (sqrt.f64 re)) (sqrt.f64 im)))
(*.f64 (/.f64 (cbrt.f64 (sqrt.f64 re)) (sqrt.f64 im)) (/.f64 (cbrt.f64 re) (sqrt.f64 im)))
(*.f64 (/.f64 (cbrt.f64 re) (sqrt.f64 im)) (/.f64 (cbrt.f64 (sqrt.f64 re)) (sqrt.f64 im)))
(*.f64 (/.f64 (cbrt.f64 re) (pow.f64 (cbrt.f64 im) 2)) (cbrt.f64 (/.f64 (sqrt.f64 re) im)))
(*.f64 (cbrt.f64 (/.f64 (sqrt.f64 re) im)) (/.f64 (cbrt.f64 re) (pow.f64 (cbrt.f64 im) 2)))
(*.f64 (/.f64 1 (cbrt.f64 (/.f64 im (/.f64 re im)))) (cbrt.f64 (/.f64 (sqrt.f64 re) im)))
(*.f64 (cbrt.f64 (/.f64 (sqrt.f64 re) im)) (/.f64 1 (cbrt.f64 (*.f64 (/.f64 im re) im))))
(/.f64 (cbrt.f64 (/.f64 (sqrt.f64 re) im)) (cbrt.f64 (*.f64 im (/.f64 im re))))
(*.f64 (/.f64 (sqrt.f64 (/.f64 (sqrt.f64 re) im)) 1) (sqrt.f64 (/.f64 (sqrt.f64 re) im)))
(/.f64 (sqrt.f64 re) im)
(*.f64 (/.f64 (cbrt.f64 (/.f64 re (*.f64 im im))) 1) (cbrt.f64 (/.f64 (sqrt.f64 re) im)))
(*.f64 (cbrt.f64 (/.f64 (/.f64 re im) im)) (cbrt.f64 (/.f64 (sqrt.f64 re) im)))
(*.f64 (/.f64 (cbrt.f64 re) im) (cbrt.f64 (sqrt.f64 re)))
(*.f64 (cbrt.f64 re) (/.f64 (cbrt.f64 (sqrt.f64 re)) im))
(/.f64 (cbrt.f64 (sqrt.f64 re)) (/.f64 im (cbrt.f64 re)))
(*.f64 (/.f64 1 (/.f64 im (cbrt.f64 re))) (cbrt.f64 (sqrt.f64 re)))
(*.f64 (cbrt.f64 re) (/.f64 (cbrt.f64 (sqrt.f64 re)) im))
(/.f64 (cbrt.f64 (sqrt.f64 re)) (/.f64 im (cbrt.f64 re)))
(*.f64 (/.f64 (sqrt.f64 (/.f64 (sqrt.f64 re) im)) (sqrt.f64 -1)) (sqrt.f64 (/.f64 (sqrt.f64 re) (neg.f64 im))))
(*.f64 (sqrt.f64 (/.f64 (sqrt.f64 re) (neg.f64 im))) (/.f64 (sqrt.f64 (/.f64 (sqrt.f64 re) im)) (sqrt.f64 -1)))
(*.f64 (/.f64 (cbrt.f64 (/.f64 re (*.f64 im im))) -1) (cbrt.f64 (/.f64 (sqrt.f64 re) (neg.f64 im))))
(*.f64 (cbrt.f64 (/.f64 (sqrt.f64 re) (neg.f64 im))) (/.f64 (cbrt.f64 (/.f64 (/.f64 re im) im)) -1))
(*.f64 (neg.f64 (sqrt.f64 (/.f64 (sqrt.f64 re) (neg.f64 im)))) (sqrt.f64 (/.f64 (sqrt.f64 re) (neg.f64 im))))
(/.f64 (sqrt.f64 re) im)
(*.f64 (neg.f64 (*.f64 (cbrt.f64 (/.f64 (sqrt.f64 re) (neg.f64 im))) (cbrt.f64 (/.f64 (sqrt.f64 re) (neg.f64 im))))) (cbrt.f64 (/.f64 (sqrt.f64 re) (neg.f64 im))))
(/.f64 (sqrt.f64 re) im)
(*.f64 (neg.f64 (neg.f64 (sqrt.f64 (/.f64 (sqrt.f64 re) im)))) (sqrt.f64 (/.f64 (sqrt.f64 re) im)))
(/.f64 (sqrt.f64 re) im)
(*.f64 (neg.f64 (neg.f64 (cbrt.f64 (/.f64 re (*.f64 im im))))) (cbrt.f64 (/.f64 (sqrt.f64 re) im)))
(*.f64 (cbrt.f64 (/.f64 (/.f64 re im) im)) (cbrt.f64 (/.f64 (sqrt.f64 re) im)))
(pow.f64 (/.f64 (sqrt.f64 re) im) 1)
(/.f64 (sqrt.f64 re) im)
(pow.f64 (/.f64 im (sqrt.f64 re)) -1)
(/.f64 (sqrt.f64 re) im)
(pow.f64 (sqrt.f64 (/.f64 (sqrt.f64 re) im)) 2)
(/.f64 (sqrt.f64 re) im)
(pow.f64 (cbrt.f64 (/.f64 (sqrt.f64 re) im)) 3)
(/.f64 (sqrt.f64 re) im)
(pow.f64 (pow.f64 (/.f64 (sqrt.f64 re) im) 3) 1/3)
(/.f64 (sqrt.f64 re) im)
(neg.f64 (/.f64 (sqrt.f64 re) (neg.f64 im)))
(/.f64 (sqrt.f64 re) im)
(sqrt.f64 (/.f64 re (*.f64 im im)))
(sqrt.f64 (/.f64 (/.f64 re im) im))
(log.f64 (exp.f64 (/.f64 (sqrt.f64 re) im)))
(/.f64 (sqrt.f64 re) im)
(log.f64 (+.f64 1 (expm1.f64 (/.f64 (sqrt.f64 re) im))))
(/.f64 (sqrt.f64 re) im)
(cbrt.f64 (pow.f64 (/.f64 (sqrt.f64 re) im) 3))
(/.f64 (sqrt.f64 re) im)
(expm1.f64 (log1p.f64 (/.f64 (sqrt.f64 re) im)))
(/.f64 (sqrt.f64 re) im)
(exp.f64 (log.f64 (/.f64 (sqrt.f64 re) im)))
(/.f64 (sqrt.f64 re) im)
(log1p.f64 (expm1.f64 (/.f64 (sqrt.f64 re) im)))
(/.f64 (sqrt.f64 re) im)
(-.f64 (exp.f64 (log1p.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re))))) 1)
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(/.f64 1 (/.f64 (sqrt.f64 re) (*.f64 im 1/2)))
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(/.f64 1/2 (/.f64 (sqrt.f64 re) im))
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(/.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re))) 1)
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(/.f64 (*.f64 1/2 (cbrt.f64 (/.f64 im (/.f64 re im)))) (cbrt.f64 (/.f64 (sqrt.f64 re) im)))
(/.f64 1/2 (/.f64 (cbrt.f64 (/.f64 (sqrt.f64 re) im)) (cbrt.f64 (*.f64 (/.f64 im re) im))))
(/.f64 1/2 (/.f64 (cbrt.f64 (/.f64 (sqrt.f64 re) im)) (cbrt.f64 (*.f64 im (/.f64 im re)))))
(/.f64 (*.f64 1/2 (cbrt.f64 (/.f64 im (sqrt.f64 re)))) (cbrt.f64 (/.f64 re (*.f64 im im))))
(/.f64 1/2 (/.f64 (cbrt.f64 (/.f64 (/.f64 re im) im)) (cbrt.f64 (/.f64 im (sqrt.f64 re)))))
(*.f64 (/.f64 1/2 (cbrt.f64 (/.f64 (/.f64 re im) im))) (cbrt.f64 (/.f64 im (sqrt.f64 re))))
(/.f64 (*.f64 im 1/2) (sqrt.f64 re))
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(/.f64 -1/2 (/.f64 (sqrt.f64 re) (neg.f64 im)))
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(/.f64 (/.f64 1/2 (sqrt.f64 re)) (/.f64 1 im))
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(/.f64 (/.f64 1/2 (sqrt.f64 (/.f64 (sqrt.f64 re) im))) (sqrt.f64 (/.f64 (sqrt.f64 re) im)))
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(/.f64 (/.f64 1/2 (cbrt.f64 (/.f64 re (*.f64 im im)))) (cbrt.f64 (/.f64 (sqrt.f64 re) im)))
(/.f64 1/2 (*.f64 (cbrt.f64 (/.f64 (/.f64 re im) im)) (cbrt.f64 (/.f64 (sqrt.f64 re) im))))
(/.f64 (/.f64 1/2 (cbrt.f64 (/.f64 (/.f64 re im) im))) (cbrt.f64 (/.f64 (sqrt.f64 re) im)))
(/.f64 (/.f64 -1/2 (sqrt.f64 re)) (/.f64 -1 im))
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(/.f64 (*.f64 1 (/.f64 1/2 (sqrt.f64 re))) (/.f64 1 im))
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(/.f64 (*.f64 1 (/.f64 1/2 (sqrt.f64 (/.f64 (sqrt.f64 re) im)))) (sqrt.f64 (/.f64 (sqrt.f64 re) im)))
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(/.f64 (*.f64 1 (/.f64 1/2 (cbrt.f64 (/.f64 re (*.f64 im im))))) (cbrt.f64 (/.f64 (sqrt.f64 re) im)))
(/.f64 1/2 (*.f64 (cbrt.f64 (/.f64 (/.f64 re im) im)) (cbrt.f64 (/.f64 (sqrt.f64 re) im))))
(/.f64 (/.f64 1/2 (cbrt.f64 (/.f64 (/.f64 re im) im))) (cbrt.f64 (/.f64 (sqrt.f64 re) im)))
(/.f64 (*.f64 1/2 (sqrt.f64 im)) (/.f64 (sqrt.f64 re) (sqrt.f64 im)))
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(/.f64 (*.f64 1/2 (pow.f64 (cbrt.f64 im) 2)) (/.f64 (sqrt.f64 re) (cbrt.f64 im)))
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(/.f64 (*.f64 1/2 (neg.f64 im)) (neg.f64 (sqrt.f64 re)))
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(/.f64 (*.f64 1/2 (/.f64 im (pow.f64 re 1/4))) (pow.f64 re 1/4))
(/.f64 1/2 (/.f64 (pow.f64 re 1/4) (/.f64 im (pow.f64 re 1/4))))
(*.f64 im (/.f64 1/2 (pow.f64 re 1/2)))
(/.f64 1/2 (/.f64 (pow.f64 re 1/2) im))
(/.f64 (*.f64 1/2 (/.f64 im (cbrt.f64 re))) (cbrt.f64 (sqrt.f64 re)))
(/.f64 1/2 (/.f64 (cbrt.f64 (sqrt.f64 re)) (/.f64 im (cbrt.f64 re))))
(*.f64 (/.f64 1/2 (cbrt.f64 (sqrt.f64 re))) (/.f64 im (cbrt.f64 re)))
(/.f64 (*.f64 (sqrt.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re)))) (sqrt.f64 1/2)) (sqrt.f64 (/.f64 (sqrt.f64 re) im)))
(/.f64 (sqrt.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re)))) (/.f64 (sqrt.f64 (/.f64 (sqrt.f64 re) im)) (sqrt.f64 1/2)))
(*.f64 (/.f64 (sqrt.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re)))) (sqrt.f64 (/.f64 (sqrt.f64 re) im))) (sqrt.f64 1/2))
(/.f64 (*.f64 (cbrt.f64 (*.f64 (/.f64 im (/.f64 re im)) 1/4)) (cbrt.f64 1/2)) (cbrt.f64 (/.f64 (sqrt.f64 re) im)))
(/.f64 (cbrt.f64 (*.f64 (*.f64 (/.f64 im re) im) 1/4)) (/.f64 (cbrt.f64 (/.f64 (sqrt.f64 re) im)) (cbrt.f64 1/2)))
(*.f64 (/.f64 (cbrt.f64 (*.f64 (*.f64 im (/.f64 im re)) 1/4)) (cbrt.f64 (/.f64 (sqrt.f64 re) im))) (cbrt.f64 1/2))
(/.f64 (*.f64 (/.f64 1/2 (sqrt.f64 (/.f64 (sqrt.f64 re) im))) 1) (sqrt.f64 (/.f64 (sqrt.f64 re) im)))
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(/.f64 (*.f64 (/.f64 1/2 (sqrt.f64 (/.f64 (sqrt.f64 re) im))) (sqrt.f64 -1)) (sqrt.f64 (/.f64 (sqrt.f64 re) (neg.f64 im))))
(/.f64 (/.f64 1/2 (sqrt.f64 (/.f64 (sqrt.f64 re) im))) (/.f64 (sqrt.f64 (/.f64 (sqrt.f64 re) (neg.f64 im))) (sqrt.f64 -1)))
(*.f64 (/.f64 (sqrt.f64 -1) (sqrt.f64 (/.f64 (sqrt.f64 re) (neg.f64 im)))) (/.f64 1/2 (sqrt.f64 (/.f64 (sqrt.f64 re) im))))
(/.f64 (/.f64 (*.f64 1/2 (sqrt.f64 -1)) (sqrt.f64 (/.f64 (sqrt.f64 re) im))) (sqrt.f64 (/.f64 (sqrt.f64 re) (neg.f64 im))))
(/.f64 (*.f64 (*.f64 1/2 (cbrt.f64 (/.f64 im (/.f64 re im)))) 1) (cbrt.f64 (/.f64 (sqrt.f64 re) im)))
(/.f64 1/2 (/.f64 (cbrt.f64 (/.f64 (sqrt.f64 re) im)) (cbrt.f64 (*.f64 (/.f64 im re) im))))
(/.f64 1/2 (/.f64 (cbrt.f64 (/.f64 (sqrt.f64 re) im)) (cbrt.f64 (*.f64 im (/.f64 im re)))))
(/.f64 (*.f64 (*.f64 1/2 (cbrt.f64 (/.f64 im (/.f64 re im)))) -1) (cbrt.f64 (/.f64 (sqrt.f64 re) (neg.f64 im))))
(/.f64 (*.f64 1/2 (cbrt.f64 (*.f64 (/.f64 im re) im))) (/.f64 (cbrt.f64 (/.f64 (sqrt.f64 re) (neg.f64 im))) -1))
(/.f64 (*.f64 -1/2 (cbrt.f64 (*.f64 im (/.f64 im re)))) (cbrt.f64 (/.f64 (sqrt.f64 re) (neg.f64 im))))
(/.f64 (*.f64 (sqrt.f64 im) 1/2) (/.f64 (sqrt.f64 re) (sqrt.f64 im)))
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(/.f64 (*.f64 (pow.f64 (cbrt.f64 im) 2) 1/2) (/.f64 (sqrt.f64 re) (cbrt.f64 im)))
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(/.f64 (*.f64 (neg.f64 im) 1/2) (neg.f64 (sqrt.f64 re)))
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(/.f64 (*.f64 (/.f64 im (pow.f64 re 1/4)) 1/2) (pow.f64 re 1/4))
(/.f64 1/2 (/.f64 (pow.f64 re 1/4) (/.f64 im (pow.f64 re 1/4))))
(*.f64 im (/.f64 1/2 (pow.f64 re 1/2)))
(/.f64 1/2 (/.f64 (pow.f64 re 1/2) im))
(/.f64 (*.f64 (/.f64 im (cbrt.f64 re)) 1/2) (cbrt.f64 (sqrt.f64 re)))
(/.f64 1/2 (/.f64 (cbrt.f64 (sqrt.f64 re)) (/.f64 im (cbrt.f64 re))))
(*.f64 (/.f64 1/2 (cbrt.f64 (sqrt.f64 re))) (/.f64 im (cbrt.f64 re)))
(/.f64 (*.f64 (/.f64 1/2 (sqrt.f64 re)) 1) (/.f64 1 im))
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(/.f64 (*.f64 (/.f64 1/2 (cbrt.f64 (/.f64 re (*.f64 im im)))) 1) (cbrt.f64 (/.f64 (sqrt.f64 re) im)))
(/.f64 1/2 (*.f64 (cbrt.f64 (/.f64 (/.f64 re im) im)) (cbrt.f64 (/.f64 (sqrt.f64 re) im))))
(/.f64 (/.f64 1/2 (cbrt.f64 (/.f64 (/.f64 re im) im))) (cbrt.f64 (/.f64 (sqrt.f64 re) im)))
(/.f64 (*.f64 (sqrt.f64 1/2) (sqrt.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re))))) (sqrt.f64 (/.f64 (sqrt.f64 re) im)))
(/.f64 (sqrt.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re)))) (/.f64 (sqrt.f64 (/.f64 (sqrt.f64 re) im)) (sqrt.f64 1/2)))
(*.f64 (/.f64 (sqrt.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re)))) (sqrt.f64 (/.f64 (sqrt.f64 re) im))) (sqrt.f64 1/2))
(/.f64 (*.f64 (sqrt.f64 -1) (/.f64 1/2 (sqrt.f64 (/.f64 (sqrt.f64 re) im)))) (sqrt.f64 (/.f64 (sqrt.f64 re) (neg.f64 im))))
(/.f64 (/.f64 1/2 (sqrt.f64 (/.f64 (sqrt.f64 re) im))) (/.f64 (sqrt.f64 (/.f64 (sqrt.f64 re) (neg.f64 im))) (sqrt.f64 -1)))
(*.f64 (/.f64 (sqrt.f64 -1) (sqrt.f64 (/.f64 (sqrt.f64 re) (neg.f64 im)))) (/.f64 1/2 (sqrt.f64 (/.f64 (sqrt.f64 re) im))))
(/.f64 (/.f64 (*.f64 1/2 (sqrt.f64 -1)) (sqrt.f64 (/.f64 (sqrt.f64 re) im))) (sqrt.f64 (/.f64 (sqrt.f64 re) (neg.f64 im))))
(/.f64 (*.f64 (cbrt.f64 1/2) (cbrt.f64 (*.f64 (/.f64 im (/.f64 re im)) 1/4))) (cbrt.f64 (/.f64 (sqrt.f64 re) im)))
(/.f64 (cbrt.f64 (*.f64 (*.f64 (/.f64 im re) im) 1/4)) (/.f64 (cbrt.f64 (/.f64 (sqrt.f64 re) im)) (cbrt.f64 1/2)))
(*.f64 (/.f64 (cbrt.f64 (*.f64 (*.f64 im (/.f64 im re)) 1/4)) (cbrt.f64 (/.f64 (sqrt.f64 re) im))) (cbrt.f64 1/2))
(/.f64 (*.f64 1 (*.f64 im 1/2)) (sqrt.f64 re))
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(/.f64 (*.f64 1 (*.f64 im 1/2)) (/.f64 (sqrt.f64 re) 1))
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(/.f64 (*.f64 -1 (*.f64 im 1/2)) (neg.f64 (sqrt.f64 re)))
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(/.f64 (*.f64 (/.f64 1 (pow.f64 re 1/4)) (*.f64 im 1/2)) (pow.f64 re 1/4))
(/.f64 1/2 (/.f64 (pow.f64 re 1/4) (/.f64 im (pow.f64 re 1/4))))
(*.f64 im (/.f64 1/2 (pow.f64 re 1/2)))
(/.f64 1/2 (/.f64 (pow.f64 re 1/2) im))
(/.f64 (*.f64 (/.f64 1 (cbrt.f64 re)) (*.f64 im 1/2)) (cbrt.f64 (sqrt.f64 re)))
(/.f64 1/2 (/.f64 (cbrt.f64 (sqrt.f64 re)) (/.f64 im (cbrt.f64 re))))
(*.f64 (/.f64 1/2 (cbrt.f64 (sqrt.f64 re))) (/.f64 im (cbrt.f64 re)))
(/.f64 (/.f64 1/2 (pow.f64 re 1/4)) (/.f64 (pow.f64 re 1/4) im))
(/.f64 1/2 (/.f64 (pow.f64 re 1/4) (/.f64 im (pow.f64 re 1/4))))
(*.f64 im (/.f64 1/2 (pow.f64 re 1/2)))
(/.f64 1/2 (/.f64 (pow.f64 re 1/2) im))
(/.f64 (/.f64 1/2 (cbrt.f64 re)) (/.f64 (cbrt.f64 (sqrt.f64 re)) im))
(/.f64 1/2 (/.f64 (cbrt.f64 (sqrt.f64 re)) (/.f64 im (cbrt.f64 re))))
(*.f64 (/.f64 1/2 (cbrt.f64 (sqrt.f64 re))) (/.f64 im (cbrt.f64 re)))
(/.f64 (/.f64 1/2 (/.f64 1 im)) (sqrt.f64 re))
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(/.f64 (/.f64 1/2 (/.f64 1 (sqrt.f64 im))) (/.f64 (sqrt.f64 re) (sqrt.f64 im)))
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(/.f64 (/.f64 1/2 (/.f64 1 (pow.f64 (cbrt.f64 im) 2))) (/.f64 (sqrt.f64 re) (cbrt.f64 im)))
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(/.f64 (/.f64 1/2 (/.f64 (pow.f64 re 1/4) 1)) (/.f64 (pow.f64 re 1/4) im))
(/.f64 1/2 (/.f64 (pow.f64 re 1/4) (/.f64 im (pow.f64 re 1/4))))
(*.f64 im (/.f64 1/2 (pow.f64 re 1/2)))
(/.f64 1/2 (/.f64 (pow.f64 re 1/2) im))
(/.f64 (/.f64 1/2 (/.f64 (pow.f64 re 1/4) (pow.f64 (cbrt.f64 im) 2))) (/.f64 (pow.f64 re 1/4) (cbrt.f64 im)))
(/.f64 1/2 (*.f64 (/.f64 (pow.f64 re 1/4) (pow.f64 (cbrt.f64 im) 2)) (/.f64 (pow.f64 re 1/4) (cbrt.f64 im))))
(*.f64 (cbrt.f64 im) (/.f64 1/2 (/.f64 (pow.f64 re 1/2) (pow.f64 (cbrt.f64 im) 2))))
(/.f64 (/.f64 1/2 (/.f64 (cbrt.f64 re) 1)) (/.f64 (cbrt.f64 (sqrt.f64 re)) im))
(/.f64 1/2 (/.f64 (cbrt.f64 (sqrt.f64 re)) (/.f64 im (cbrt.f64 re))))
(*.f64 (/.f64 1/2 (cbrt.f64 (sqrt.f64 re))) (/.f64 im (cbrt.f64 re)))
(/.f64 (/.f64 1/2 (/.f64 (cbrt.f64 re) (sqrt.f64 im))) (/.f64 (cbrt.f64 (sqrt.f64 re)) (sqrt.f64 im)))
(*.f64 (/.f64 (*.f64 (/.f64 1/2 (cbrt.f64 re)) (sqrt.f64 im)) (cbrt.f64 (sqrt.f64 re))) (sqrt.f64 im))
(/.f64 (/.f64 (*.f64 1/2 (sqrt.f64 im)) (cbrt.f64 re)) (/.f64 (cbrt.f64 (sqrt.f64 re)) (sqrt.f64 im)))
(/.f64 (*.f64 (sqrt.f64 im) (/.f64 1/2 (cbrt.f64 re))) (/.f64 (cbrt.f64 (sqrt.f64 re)) (sqrt.f64 im)))
(/.f64 (/.f64 1/2 (/.f64 (cbrt.f64 re) (pow.f64 (cbrt.f64 im) 2))) (cbrt.f64 (/.f64 (sqrt.f64 re) im)))
(/.f64 1/2 (*.f64 (cbrt.f64 (/.f64 (sqrt.f64 re) im)) (/.f64 (cbrt.f64 re) (pow.f64 (cbrt.f64 im) 2))))
(/.f64 (/.f64 1/2 (cbrt.f64 re)) (/.f64 (cbrt.f64 (/.f64 (sqrt.f64 re) im)) (pow.f64 (cbrt.f64 im) 2)))
(/.f64 (/.f64 -1/2 (sqrt.f64 (/.f64 (sqrt.f64 re) im))) (neg.f64 (sqrt.f64 (/.f64 (sqrt.f64 re) im))))
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(/.f64 (/.f64 -1/2 (cbrt.f64 (/.f64 re (*.f64 im im)))) (neg.f64 (cbrt.f64 (/.f64 (sqrt.f64 re) im))))
(/.f64 1/2 (*.f64 (cbrt.f64 (/.f64 (/.f64 re im) im)) (cbrt.f64 (/.f64 (sqrt.f64 re) im))))
(/.f64 (/.f64 1/2 (cbrt.f64 (/.f64 (/.f64 re im) im))) (cbrt.f64 (/.f64 (sqrt.f64 re) im)))
(/.f64 (/.f64 -1/2 (sqrt.f64 (/.f64 (sqrt.f64 re) (neg.f64 im)))) (sqrt.f64 (/.f64 (sqrt.f64 re) (neg.f64 im))))
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(/.f64 (/.f64 -1/2 (*.f64 (cbrt.f64 (/.f64 (sqrt.f64 re) (neg.f64 im))) (cbrt.f64 (/.f64 (sqrt.f64 re) (neg.f64 im))))) (cbrt.f64 (/.f64 (sqrt.f64 re) (neg.f64 im))))
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(/.f64 (/.f64 -1/2 (neg.f64 (sqrt.f64 (/.f64 (sqrt.f64 re) im)))) (sqrt.f64 (/.f64 (sqrt.f64 re) im)))
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(/.f64 (/.f64 -1/2 (neg.f64 (cbrt.f64 (/.f64 re (*.f64 im im))))) (cbrt.f64 (/.f64 (sqrt.f64 re) im)))
(/.f64 1/2 (*.f64 (cbrt.f64 (/.f64 (/.f64 re im) im)) (cbrt.f64 (/.f64 (sqrt.f64 re) im))))
(/.f64 (/.f64 1/2 (cbrt.f64 (/.f64 (/.f64 re im) im))) (cbrt.f64 (/.f64 (sqrt.f64 re) im)))
(/.f64 (/.f64 (/.f64 1/2 (sqrt.f64 re)) (sqrt.f64 (/.f64 1 im))) (sqrt.f64 (/.f64 1 im)))
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(/.f64 (/.f64 (/.f64 1/2 (sqrt.f64 re)) (*.f64 (cbrt.f64 (/.f64 1 im)) (cbrt.f64 (/.f64 1 im)))) (cbrt.f64 (/.f64 1 im)))
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(/.f64 (/.f64 (/.f64 1/2 (sqrt.f64 (/.f64 (sqrt.f64 re) im))) 1) (sqrt.f64 (/.f64 (sqrt.f64 re) im)))
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(/.f64 (/.f64 (/.f64 1/2 (sqrt.f64 (/.f64 (sqrt.f64 re) im))) (pow.f64 re 1/4)) (sqrt.f64 (/.f64 1 im)))
(/.f64 (/.f64 1/2 (sqrt.f64 (/.f64 (sqrt.f64 re) im))) (*.f64 (sqrt.f64 (/.f64 1 im)) (pow.f64 re 1/4)))
(/.f64 1/2 (*.f64 (*.f64 (pow.f64 re 1/4) (sqrt.f64 (/.f64 1 im))) (sqrt.f64 (/.f64 (sqrt.f64 re) im))))
(/.f64 (/.f64 (/.f64 1/2 (sqrt.f64 (/.f64 (sqrt.f64 re) im))) (cbrt.f64 (/.f64 (sqrt.f64 re) im))) (cbrt.f64 (sqrt.f64 (/.f64 (sqrt.f64 re) im))))
(/.f64 (/.f64 1/2 (sqrt.f64 (/.f64 (sqrt.f64 re) im))) (*.f64 (cbrt.f64 (sqrt.f64 (/.f64 (sqrt.f64 re) im))) (cbrt.f64 (/.f64 (sqrt.f64 re) im))))
(/.f64 1/2 (*.f64 (*.f64 (cbrt.f64 (/.f64 (sqrt.f64 re) im)) (cbrt.f64 (sqrt.f64 (/.f64 (sqrt.f64 re) im)))) (sqrt.f64 (/.f64 (sqrt.f64 re) im))))
(/.f64 (/.f64 1/2 (sqrt.f64 (/.f64 (sqrt.f64 re) im))) (*.f64 (cbrt.f64 (/.f64 (sqrt.f64 re) im)) (cbrt.f64 (sqrt.f64 (/.f64 (sqrt.f64 re) im)))))
(/.f64 (/.f64 (/.f64 1/2 (sqrt.f64 (/.f64 (sqrt.f64 re) im))) (sqrt.f64 (cbrt.f64 (/.f64 re (*.f64 im im))))) (sqrt.f64 (cbrt.f64 (/.f64 (sqrt.f64 re) im))))
(/.f64 (/.f64 1/2 (sqrt.f64 (/.f64 (sqrt.f64 re) im))) (*.f64 (sqrt.f64 (cbrt.f64 (/.f64 (sqrt.f64 re) im))) (sqrt.f64 (cbrt.f64 (/.f64 (/.f64 re im) im)))))
(/.f64 (/.f64 (/.f64 1/2 (sqrt.f64 (/.f64 (sqrt.f64 re) im))) (sqrt.f64 (cbrt.f64 (/.f64 (/.f64 re im) im)))) (sqrt.f64 (cbrt.f64 (/.f64 (sqrt.f64 re) im))))
(/.f64 (/.f64 (/.f64 1/2 (sqrt.f64 (/.f64 (sqrt.f64 re) im))) (sqrt.f64 (sqrt.f64 (/.f64 (sqrt.f64 re) im)))) (sqrt.f64 (sqrt.f64 (/.f64 (sqrt.f64 re) im))))
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(/.f64 (/.f64 (/.f64 1/2 (cbrt.f64 (/.f64 re (*.f64 im im)))) 1) (cbrt.f64 (/.f64 (sqrt.f64 re) im)))
(/.f64 1/2 (*.f64 (cbrt.f64 (/.f64 (/.f64 re im) im)) (cbrt.f64 (/.f64 (sqrt.f64 re) im))))
(/.f64 (/.f64 1/2 (cbrt.f64 (/.f64 (/.f64 re im) im))) (cbrt.f64 (/.f64 (sqrt.f64 re) im)))
(/.f64 (/.f64 (/.f64 1/2 (cbrt.f64 (/.f64 re (*.f64 im im)))) (cbrt.f64 (sqrt.f64 re))) (cbrt.f64 (/.f64 1 im)))
(/.f64 (/.f64 1/2 (cbrt.f64 (/.f64 (/.f64 re im) im))) (*.f64 (cbrt.f64 (/.f64 1 im)) (cbrt.f64 (sqrt.f64 re))))
(/.f64 1/2 (*.f64 (cbrt.f64 (/.f64 1 im)) (*.f64 (cbrt.f64 (sqrt.f64 re)) (cbrt.f64 (/.f64 (/.f64 re im) im)))))
(/.f64 (/.f64 (/.f64 1/2 (cbrt.f64 (/.f64 re (*.f64 im im)))) (sqrt.f64 (cbrt.f64 (/.f64 (sqrt.f64 re) im)))) (sqrt.f64 (cbrt.f64 (/.f64 (sqrt.f64 re) im))))
(/.f64 1/2 (*.f64 (cbrt.f64 (/.f64 (/.f64 re im) im)) (cbrt.f64 (/.f64 (sqrt.f64 re) im))))
(/.f64 (/.f64 1/2 (cbrt.f64 (/.f64 (/.f64 re im) im))) (cbrt.f64 (/.f64 (sqrt.f64 re) im)))
(/.f64 (/.f64 (/.f64 1/2 (cbrt.f64 (/.f64 re (*.f64 im im)))) (cbrt.f64 (cbrt.f64 (/.f64 re (*.f64 im im))))) (cbrt.f64 (cbrt.f64 (/.f64 (sqrt.f64 re) im))))
(/.f64 (/.f64 1/2 (*.f64 (cbrt.f64 (cbrt.f64 (/.f64 (/.f64 re im) im))) (cbrt.f64 (/.f64 (/.f64 re im) im)))) (cbrt.f64 (cbrt.f64 (/.f64 (sqrt.f64 re) im))))
(/.f64 (/.f64 (/.f64 1/2 (cbrt.f64 (/.f64 (/.f64 re im) im))) (cbrt.f64 (cbrt.f64 (/.f64 (/.f64 re im) im)))) (cbrt.f64 (cbrt.f64 (/.f64 (sqrt.f64 re) im))))
(/.f64 (/.f64 1/2 (*.f64 (cbrt.f64 (/.f64 (/.f64 re im) im)) (cbrt.f64 (cbrt.f64 (/.f64 (/.f64 re im) im))))) (cbrt.f64 (cbrt.f64 (/.f64 (sqrt.f64 re) im))))
(/.f64 (/.f64 (/.f64 1/2 (cbrt.f64 (/.f64 re (*.f64 im im)))) (cbrt.f64 (sqrt.f64 (/.f64 (sqrt.f64 re) im)))) (cbrt.f64 (sqrt.f64 (/.f64 (sqrt.f64 re) im))))
(/.f64 (/.f64 1/2 (cbrt.f64 (/.f64 (/.f64 re im) im))) (*.f64 (cbrt.f64 (sqrt.f64 (/.f64 (sqrt.f64 re) im))) (cbrt.f64 (sqrt.f64 (/.f64 (sqrt.f64 re) im)))))
(/.f64 (/.f64 (/.f64 1/2 (cbrt.f64 (/.f64 (/.f64 re im) im))) (cbrt.f64 (sqrt.f64 (/.f64 (sqrt.f64 re) im)))) (cbrt.f64 (sqrt.f64 (/.f64 (sqrt.f64 re) im))))
(/.f64 1/2 (*.f64 (cbrt.f64 (sqrt.f64 (/.f64 (sqrt.f64 re) im))) (*.f64 (cbrt.f64 (/.f64 (/.f64 re im) im)) (cbrt.f64 (sqrt.f64 (/.f64 (sqrt.f64 re) im))))))
(/.f64 (/.f64 (/.f64 1/2 (cbrt.f64 (/.f64 re (*.f64 im im)))) (*.f64 (cbrt.f64 (cbrt.f64 (/.f64 (sqrt.f64 re) im))) (cbrt.f64 (cbrt.f64 (/.f64 (sqrt.f64 re) im))))) (cbrt.f64 (cbrt.f64 (/.f64 (sqrt.f64 re) im))))
(/.f64 1/2 (*.f64 (cbrt.f64 (/.f64 (/.f64 re im) im)) (cbrt.f64 (/.f64 (sqrt.f64 re) im))))
(/.f64 (/.f64 1/2 (cbrt.f64 (/.f64 (/.f64 re im) im))) (cbrt.f64 (/.f64 (sqrt.f64 re) im)))
(pow.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re))) 1)
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(pow.f64 (sqrt.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re)))) 2)
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(pow.f64 (cbrt.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re)))) 3)
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(pow.f64 (pow.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re))) 3) 1/3)
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(neg.f64 (*.f64 (/.f64 -1/2 (sqrt.f64 re)) im))
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(sqrt.f64 (*.f64 (/.f64 im (/.f64 re im)) 1/4))
(sqrt.f64 (*.f64 (*.f64 (/.f64 im re) im) 1/4))
(sqrt.f64 (*.f64 (*.f64 im (/.f64 im re)) 1/4))
(log.f64 (exp.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re)))))
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re))))))
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(cbrt.f64 (pow.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re))) 3))
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(expm1.f64 (log1p.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re)))))
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(exp.f64 (log.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re)))))
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(log1p.f64 (expm1.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re)))))
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))

eval139.0ms (1.5%)

Compiler

Compiled 7776 to 4082 computations (47.5% saved)

prune88.0ms (1%)

Pruning

12 alts after pruning (5 fresh and 7 done)

PrunedKeptTotal
New5665571
Fresh202
Picked101
Done178
Total57012582
Error
0b
Counts
582 → 12
Alt Table
Click to see full alt table
StatusErrorProgram
47.0b
(/.f64 (/.f64 1/2 (sqrt.f64 re)) (/.f64 1 im))
47.1b
(/.f64 (*.f64 (/.f64 1 (pow.f64 re 1/4)) (*.f64 im 1/2)) (pow.f64 re 1/4))
47.1b
(/.f64 1/2 (/.f64 (sqrt.f64 re) im))
47.0b
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
47.0b
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
47.0b
(*.f64 1/2 (*.f64 (pow.f64 re -1/2) im))
47.0b
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
29.3b
(*.f64 1/2 (*.f64 (sqrt.f64 (-.f64 im re)) (sqrt.f64 2)))
13.2b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))))
29.2b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 im re))))
47.0b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 re -2))))
30.8b
(*.f64 1/2 (sqrt.f64 (*.f64 2 im)))
Compiler

Compiled 169 to 134 computations (20.7% saved)

localize13.0ms (0.1%)

Local error

Found 2 expressions with local error:

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

Compiled 21 to 14 computations (33.3% saved)

series3.0ms (0%)

Counts
2 → 24
Calls

12 calls:

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

rewrite57.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
1660×add-sqr-sqrt
1630×*-un-lft-identity
1520×add-cube-cbrt
1502×add-cbrt-cube
174×add-exp-log
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0932
118732
2214032
Stop Event
node limit
Counts
2 → 26
Calls
Call 1
Inputs
(*.f64 (pow.f64 re -1/2) im)
(*.f64 1/2 (*.f64 (pow.f64 re -1/2) im))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (pow.f64 re -1/2) im))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 re -1/2) im) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 re -1/4) (sqrt.f64 im)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (pow.f64 re -1/2) im)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (pow.f64 re -1/2) im) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 (pow.f64 re -1) (*.f64 im im)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (pow.f64 re -1/2)) im))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (pow.f64 re -1/2) im))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (pow.f64 re -1/2) im) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (pow.f64 re -1/2) im)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (pow.f64 re -1/2) im)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (pow.f64 re -1/2) im)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (pow.f64 re -1/2) im)))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (pow.f64 re -1/2) (*.f64 im 1/2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 re -1/2) (*.f64 im 1/2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (pow.f64 re -1/2) (*.f64 im 1/2))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (pow.f64 re -1/2) (*.f64 im 1/2))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (pow.f64 re -1/2) (*.f64 im 1/2)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 1/4 (*.f64 (pow.f64 re -1) (*.f64 im im))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (pow.f64 (exp.f64 (pow.f64 re -1/2)) im) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (pow.f64 re -1/2) (*.f64 im 1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (pow.f64 re -1/2) (*.f64 im 1/2)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (pow.f64 re -1/2) (*.f64 im 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (pow.f64 re -1/2) (*.f64 im 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (pow.f64 re -1/2) (*.f64 im 1/2))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (pow.f64 re -1/2) (*.f64 im 1/2))))))))

simplify70.0ms (0.8%)

Algorithm
egg-herbie
Rules
1432×associate-+r+
1234×fma-def
834×associate-*r/
760×*-commutative
616×log-prod
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
0751000
11681000
2613800
32439800
47116800
Stop Event
node limit
Counts
50 → 33
Calls
Call 1
Inputs
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (pow.f64 re -1/2) im))) 1)
(pow.f64 (*.f64 (pow.f64 re -1/2) im) 1)
(pow.f64 (*.f64 (pow.f64 re -1/4) (sqrt.f64 im)) 2)
(pow.f64 (cbrt.f64 (*.f64 (pow.f64 re -1/2) im)) 3)
(pow.f64 (pow.f64 (*.f64 (pow.f64 re -1/2) im) 3) 1/3)
(sqrt.f64 (*.f64 (pow.f64 re -1) (*.f64 im im)))
(log.f64 (pow.f64 (exp.f64 (pow.f64 re -1/2)) im))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (pow.f64 re -1/2) im))))
(cbrt.f64 (pow.f64 (*.f64 (pow.f64 re -1/2) im) 3))
(expm1.f64 (log1p.f64 (*.f64 (pow.f64 re -1/2) im)))
(exp.f64 (log.f64 (*.f64 (pow.f64 re -1/2) im)))
(exp.f64 (*.f64 (log.f64 (*.f64 (pow.f64 re -1/2) im)) 1))
(log1p.f64 (expm1.f64 (*.f64 (pow.f64 re -1/2) im)))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (pow.f64 re -1/2) (*.f64 im 1/2)))) 1)
(pow.f64 (*.f64 (pow.f64 re -1/2) (*.f64 im 1/2)) 1)
(pow.f64 (sqrt.f64 (*.f64 (pow.f64 re -1/2) (*.f64 im 1/2))) 2)
(pow.f64 (cbrt.f64 (*.f64 (pow.f64 re -1/2) (*.f64 im 1/2))) 3)
(pow.f64 (pow.f64 (*.f64 (pow.f64 re -1/2) (*.f64 im 1/2)) 3) 1/3)
(sqrt.f64 (*.f64 1/4 (*.f64 (pow.f64 re -1) (*.f64 im im))))
(log.f64 (pow.f64 (pow.f64 (exp.f64 (pow.f64 re -1/2)) im) 1/2))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (pow.f64 re -1/2) (*.f64 im 1/2)))))
(cbrt.f64 (pow.f64 (*.f64 (pow.f64 re -1/2) (*.f64 im 1/2)) 3))
(expm1.f64 (log1p.f64 (*.f64 (pow.f64 re -1/2) (*.f64 im 1/2))))
(exp.f64 (log.f64 (*.f64 (pow.f64 re -1/2) (*.f64 im 1/2))))
(exp.f64 (*.f64 (log.f64 (*.f64 (pow.f64 re -1/2) (*.f64 im 1/2))) 1))
(log1p.f64 (expm1.f64 (*.f64 (pow.f64 re -1/2) (*.f64 im 1/2))))
Outputs
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (fabs.f64 (pow.f64 re -1/2)) im)
(*.f64 im (pow.f64 re -1/2))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (fabs.f64 (pow.f64 re -1/2)) im)
(*.f64 im (pow.f64 re -1/2))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (fabs.f64 (pow.f64 re -1/2)) im)
(*.f64 im (pow.f64 re -1/2))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (fabs.f64 (pow.f64 re -1/2)) im)
(*.f64 im (pow.f64 re -1/2))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (fabs.f64 (pow.f64 re -1/2)) im)
(*.f64 im (pow.f64 re -1/2))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (fabs.f64 (pow.f64 re -1/2)) im)
(*.f64 im (pow.f64 re -1/2))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (fabs.f64 (pow.f64 re -1/2)) im)
(*.f64 im (pow.f64 re -1/2))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (fabs.f64 (pow.f64 re -1/2)) im)
(*.f64 im (pow.f64 re -1/2))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (fabs.f64 (pow.f64 re -1/2)) im)
(*.f64 im (pow.f64 re -1/2))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (fabs.f64 (pow.f64 re -1/2)) im)
(*.f64 im (pow.f64 re -1/2))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (fabs.f64 (pow.f64 re -1/2)) im)
(*.f64 im (pow.f64 re -1/2))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (fabs.f64 (pow.f64 re -1/2)) im)
(*.f64 im (pow.f64 re -1/2))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 1/2)
(*.f64 im (*.f64 (fabs.f64 (pow.f64 re -1/2)) 1/2))
(*.f64 im (*.f64 1/2 (pow.f64 re -1/2)))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 1/2)
(*.f64 im (*.f64 (fabs.f64 (pow.f64 re -1/2)) 1/2))
(*.f64 im (*.f64 1/2 (pow.f64 re -1/2)))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 1/2)
(*.f64 im (*.f64 (fabs.f64 (pow.f64 re -1/2)) 1/2))
(*.f64 im (*.f64 1/2 (pow.f64 re -1/2)))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 1/2)
(*.f64 im (*.f64 (fabs.f64 (pow.f64 re -1/2)) 1/2))
(*.f64 im (*.f64 1/2 (pow.f64 re -1/2)))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 1/2)
(*.f64 im (*.f64 (fabs.f64 (pow.f64 re -1/2)) 1/2))
(*.f64 im (*.f64 1/2 (pow.f64 re -1/2)))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 1/2)
(*.f64 im (*.f64 (fabs.f64 (pow.f64 re -1/2)) 1/2))
(*.f64 im (*.f64 1/2 (pow.f64 re -1/2)))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 1/2)
(*.f64 im (*.f64 (fabs.f64 (pow.f64 re -1/2)) 1/2))
(*.f64 im (*.f64 1/2 (pow.f64 re -1/2)))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 1/2)
(*.f64 im (*.f64 (fabs.f64 (pow.f64 re -1/2)) 1/2))
(*.f64 im (*.f64 1/2 (pow.f64 re -1/2)))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 1/2)
(*.f64 im (*.f64 (fabs.f64 (pow.f64 re -1/2)) 1/2))
(*.f64 im (*.f64 1/2 (pow.f64 re -1/2)))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 1/2)
(*.f64 im (*.f64 (fabs.f64 (pow.f64 re -1/2)) 1/2))
(*.f64 im (*.f64 1/2 (pow.f64 re -1/2)))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 1/2)
(*.f64 im (*.f64 (fabs.f64 (pow.f64 re -1/2)) 1/2))
(*.f64 im (*.f64 1/2 (pow.f64 re -1/2)))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 1/2)
(*.f64 im (*.f64 (fabs.f64 (pow.f64 re -1/2)) 1/2))
(*.f64 im (*.f64 1/2 (pow.f64 re -1/2)))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (pow.f64 re -1/2) im))) 1)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (fabs.f64 (pow.f64 re -1/2)) im)
(*.f64 im (pow.f64 re -1/2))
(pow.f64 (*.f64 (pow.f64 re -1/2) im) 1)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (fabs.f64 (pow.f64 re -1/2)) im)
(*.f64 im (pow.f64 re -1/2))
(pow.f64 (*.f64 (pow.f64 re -1/4) (sqrt.f64 im)) 2)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (fabs.f64 (pow.f64 re -1/2)) im)
(*.f64 im (pow.f64 re -1/2))
(pow.f64 (cbrt.f64 (*.f64 (pow.f64 re -1/2) im)) 3)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (fabs.f64 (pow.f64 re -1/2)) im)
(*.f64 im (pow.f64 re -1/2))
(pow.f64 (pow.f64 (*.f64 (pow.f64 re -1/2) im) 3) 1/3)
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (fabs.f64 (pow.f64 re -1/2)) im)
(*.f64 im (pow.f64 re -1/2))
(sqrt.f64 (*.f64 (pow.f64 re -1) (*.f64 im im)))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (fabs.f64 (pow.f64 re -1/2)) im)
(*.f64 im (pow.f64 re -1/2))
(log.f64 (pow.f64 (exp.f64 (pow.f64 re -1/2)) im))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (fabs.f64 (pow.f64 re -1/2)) im)
(*.f64 im (pow.f64 re -1/2))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (pow.f64 re -1/2) im))))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (fabs.f64 (pow.f64 re -1/2)) im)
(*.f64 im (pow.f64 re -1/2))
(cbrt.f64 (pow.f64 (*.f64 (pow.f64 re -1/2) im) 3))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (fabs.f64 (pow.f64 re -1/2)) im)
(*.f64 im (pow.f64 re -1/2))
(expm1.f64 (log1p.f64 (*.f64 (pow.f64 re -1/2) im)))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (fabs.f64 (pow.f64 re -1/2)) im)
(*.f64 im (pow.f64 re -1/2))
(exp.f64 (log.f64 (*.f64 (pow.f64 re -1/2) im)))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (fabs.f64 (pow.f64 re -1/2)) im)
(*.f64 im (pow.f64 re -1/2))
(exp.f64 (*.f64 (log.f64 (*.f64 (pow.f64 re -1/2) im)) 1))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (fabs.f64 (pow.f64 re -1/2)) im)
(*.f64 im (pow.f64 re -1/2))
(log1p.f64 (expm1.f64 (*.f64 (pow.f64 re -1/2) im)))
(*.f64 (sqrt.f64 (/.f64 1 re)) im)
(*.f64 (fabs.f64 (pow.f64 re -1/2)) im)
(*.f64 im (pow.f64 re -1/2))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (pow.f64 re -1/2) (*.f64 im 1/2)))) 1)
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 1/2)
(*.f64 im (*.f64 (fabs.f64 (pow.f64 re -1/2)) 1/2))
(*.f64 im (*.f64 1/2 (pow.f64 re -1/2)))
(pow.f64 (*.f64 (pow.f64 re -1/2) (*.f64 im 1/2)) 1)
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 1/2)
(*.f64 im (*.f64 (fabs.f64 (pow.f64 re -1/2)) 1/2))
(*.f64 im (*.f64 1/2 (pow.f64 re -1/2)))
(pow.f64 (sqrt.f64 (*.f64 (pow.f64 re -1/2) (*.f64 im 1/2))) 2)
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 1/2)
(*.f64 im (*.f64 (fabs.f64 (pow.f64 re -1/2)) 1/2))
(*.f64 im (*.f64 1/2 (pow.f64 re -1/2)))
(pow.f64 (cbrt.f64 (*.f64 (pow.f64 re -1/2) (*.f64 im 1/2))) 3)
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 1/2)
(*.f64 im (*.f64 (fabs.f64 (pow.f64 re -1/2)) 1/2))
(*.f64 im (*.f64 1/2 (pow.f64 re -1/2)))
(pow.f64 (pow.f64 (*.f64 (pow.f64 re -1/2) (*.f64 im 1/2)) 3) 1/3)
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 1/2)
(*.f64 im (*.f64 (fabs.f64 (pow.f64 re -1/2)) 1/2))
(*.f64 im (*.f64 1/2 (pow.f64 re -1/2)))
(sqrt.f64 (*.f64 1/4 (*.f64 (pow.f64 re -1) (*.f64 im im))))
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 1/2)
(*.f64 im (*.f64 (fabs.f64 (pow.f64 re -1/2)) 1/2))
(*.f64 im (*.f64 1/2 (pow.f64 re -1/2)))
(log.f64 (pow.f64 (pow.f64 (exp.f64 (pow.f64 re -1/2)) im) 1/2))
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 1/2)
(*.f64 im (*.f64 (fabs.f64 (pow.f64 re -1/2)) 1/2))
(*.f64 im (*.f64 1/2 (pow.f64 re -1/2)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (pow.f64 re -1/2) (*.f64 im 1/2)))))
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 1/2)
(*.f64 im (*.f64 (fabs.f64 (pow.f64 re -1/2)) 1/2))
(*.f64 im (*.f64 1/2 (pow.f64 re -1/2)))
(cbrt.f64 (pow.f64 (*.f64 (pow.f64 re -1/2) (*.f64 im 1/2)) 3))
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 1/2)
(*.f64 im (*.f64 (fabs.f64 (pow.f64 re -1/2)) 1/2))
(*.f64 im (*.f64 1/2 (pow.f64 re -1/2)))
(expm1.f64 (log1p.f64 (*.f64 (pow.f64 re -1/2) (*.f64 im 1/2))))
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 1/2)
(*.f64 im (*.f64 (fabs.f64 (pow.f64 re -1/2)) 1/2))
(*.f64 im (*.f64 1/2 (pow.f64 re -1/2)))
(exp.f64 (log.f64 (*.f64 (pow.f64 re -1/2) (*.f64 im 1/2))))
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 1/2)
(*.f64 im (*.f64 (fabs.f64 (pow.f64 re -1/2)) 1/2))
(*.f64 im (*.f64 1/2 (pow.f64 re -1/2)))
(exp.f64 (*.f64 (log.f64 (*.f64 (pow.f64 re -1/2) (*.f64 im 1/2))) 1))
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 1/2)
(*.f64 im (*.f64 (fabs.f64 (pow.f64 re -1/2)) 1/2))
(*.f64 im (*.f64 1/2 (pow.f64 re -1/2)))
(log1p.f64 (expm1.f64 (*.f64 (pow.f64 re -1/2) (*.f64 im 1/2))))
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 re)) im) 1/2)
(*.f64 im (*.f64 (fabs.f64 (pow.f64 re -1/2)) 1/2))
(*.f64 im (*.f64 1/2 (pow.f64 re -1/2)))

localize8.0ms (0.1%)

Local error

Found 2 expressions with local error:

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

Compiled 17 to 9 computations (47.1% saved)

series2.0ms (0%)

Counts
2 → 12
Calls

9 calls:

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

rewrite63.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
1736×add-sqr-sqrt
1712×*-un-lft-identity
1592×add-cube-cbrt
1574×add-cbrt-cube
178×pow1
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0928
118428
2219528
Stop Event
node limit
Counts
2 → 44
Calls
Call 1
Inputs
(/.f64 1/2 (sqrt.f64 re))
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 1/2 (sqrt.f64 re)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (pow.f64 re -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1/2 (sqrt.f64 re)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 1/2 (sqrt.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 1/2 (sqrt.f64 re))) (sqrt.f64 (/.f64 1/2 (sqrt.f64 re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 1/2 (sqrt.f64 re))) (cbrt.f64 (/.f64 1/4 re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 1/4 re)) (cbrt.f64 (/.f64 1/2 (sqrt.f64 re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 re -1/2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1/2 (/.f64 1 (neg.f64 (sqrt.f64 re))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 1/2 (sqrt.f64 re)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 1/2 (sqrt.f64 re))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 1/2 (sqrt.f64 re))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 re)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (sqrt.f64 re) 2) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (/.f64 1/4 re))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 1/2 (sqrt.f64 re))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 1/2 (sqrt.f64 re)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 re)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 1/2 (sqrt.f64 re))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 1/2 (sqrt.f64 re))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 1/2 (sqrt.f64 re))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 1/2 (sqrt.f64 re))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (/.f64 1/2 (sqrt.f64 re)) im))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 im (*.f64 (sqrt.f64 re) 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (sqrt.f64 re) (*.f64 1/2 im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1/2 im) (sqrt.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 im -1/2) (neg.f64 (sqrt.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 -1/2 im) (neg.f64 (sqrt.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 1/2 im) 1) (sqrt.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 1/2 im) (pow.f64 re 1/4)) (pow.f64 re 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 1/2 im) (cbrt.f64 re)) (cbrt.f64 (sqrt.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 1/2 im)) (neg.f64 (sqrt.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (/.f64 1/2 (sqrt.f64 re)) im) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (/.f64 1/2 (sqrt.f64 re)) im)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (/.f64 1/2 (sqrt.f64 re)) im)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (/.f64 1/2 (sqrt.f64 re)) im) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 (*.f64 im im) (/.f64 1/4 re)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 im) (/.f64 1/2 (sqrt.f64 re))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (/.f64 1/2 (sqrt.f64 re)) im))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (/.f64 1/2 (sqrt.f64 re)) im) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (/.f64 1/2 (sqrt.f64 re)) im)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (/.f64 1/2 (sqrt.f64 re)) im)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (/.f64 1/2 (sqrt.f64 re)) im)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (/.f64 1/2 (sqrt.f64 re)) im)))))))

simplify62.0ms (0.7%)

Algorithm
egg-herbie
Rules
728×associate-*r/
702×unswap-sqr
510×associate-*l/
476×associate-+l-
460×associate-+r-
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0104956
1229956
2979956
34854956
Stop Event
node limit
Counts
56 → 53
Calls
Call 1
Inputs
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(-.f64 (exp.f64 (log1p.f64 (/.f64 1/2 (sqrt.f64 re)))) 1)
(*.f64 1/2 (pow.f64 re -1/2))
(*.f64 (/.f64 1/2 (sqrt.f64 re)) 1)
(*.f64 1 (/.f64 1/2 (sqrt.f64 re)))
(*.f64 (sqrt.f64 (/.f64 1/2 (sqrt.f64 re))) (sqrt.f64 (/.f64 1/2 (sqrt.f64 re))))
(*.f64 (cbrt.f64 (/.f64 1/2 (sqrt.f64 re))) (cbrt.f64 (/.f64 1/4 re)))
(*.f64 (cbrt.f64 (/.f64 1/4 re)) (cbrt.f64 (/.f64 1/2 (sqrt.f64 re))))
(*.f64 (pow.f64 re -1/2) 1/2)
(*.f64 -1/2 (/.f64 1 (neg.f64 (sqrt.f64 re))))
(pow.f64 (/.f64 1/2 (sqrt.f64 re)) 1)
(pow.f64 (sqrt.f64 (/.f64 1/2 (sqrt.f64 re))) 2)
(pow.f64 (cbrt.f64 (/.f64 1/2 (sqrt.f64 re))) 3)
(pow.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 re)) 3) 1/3)
(pow.f64 (*.f64 (sqrt.f64 re) 2) -1)
(sqrt.f64 (/.f64 1/4 re))
(log.f64 (exp.f64 (/.f64 1/2 (sqrt.f64 re))))
(log.f64 (+.f64 1 (expm1.f64 (/.f64 1/2 (sqrt.f64 re)))))
(cbrt.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 re)) 3))
(expm1.f64 (log1p.f64 (/.f64 1/2 (sqrt.f64 re))))
(exp.f64 (log.f64 (/.f64 1/2 (sqrt.f64 re))))
(exp.f64 (*.f64 (log.f64 (/.f64 1/2 (sqrt.f64 re))) 1))
(log1p.f64 (expm1.f64 (/.f64 1/2 (sqrt.f64 re))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (/.f64 1/2 (sqrt.f64 re)) im))) 1)
(/.f64 im (*.f64 (sqrt.f64 re) 2))
(/.f64 1 (/.f64 (sqrt.f64 re) (*.f64 1/2 im)))
(/.f64 (*.f64 1/2 im) (sqrt.f64 re))
(/.f64 (*.f64 im -1/2) (neg.f64 (sqrt.f64 re)))
(/.f64 (*.f64 -1/2 im) (neg.f64 (sqrt.f64 re)))
(/.f64 (/.f64 (*.f64 1/2 im) 1) (sqrt.f64 re))
(/.f64 (/.f64 (*.f64 1/2 im) (pow.f64 re 1/4)) (pow.f64 re 1/4))
(/.f64 (/.f64 (*.f64 1/2 im) (cbrt.f64 re)) (cbrt.f64 (sqrt.f64 re)))
(/.f64 (neg.f64 (*.f64 1/2 im)) (neg.f64 (sqrt.f64 re)))
(pow.f64 (*.f64 (/.f64 1/2 (sqrt.f64 re)) im) 1)
(pow.f64 (sqrt.f64 (*.f64 (/.f64 1/2 (sqrt.f64 re)) im)) 2)
(pow.f64 (cbrt.f64 (*.f64 (/.f64 1/2 (sqrt.f64 re)) im)) 3)
(pow.f64 (pow.f64 (*.f64 (/.f64 1/2 (sqrt.f64 re)) im) 3) 1/3)
(sqrt.f64 (*.f64 (*.f64 im im) (/.f64 1/4 re)))
(log.f64 (pow.f64 (exp.f64 im) (/.f64 1/2 (sqrt.f64 re))))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (/.f64 1/2 (sqrt.f64 re)) im))))
(cbrt.f64 (pow.f64 (*.f64 (/.f64 1/2 (sqrt.f64 re)) im) 3))
(expm1.f64 (log1p.f64 (*.f64 (/.f64 1/2 (sqrt.f64 re)) im)))
(exp.f64 (log.f64 (*.f64 (/.f64 1/2 (sqrt.f64 re)) im)))
(exp.f64 (*.f64 (log.f64 (*.f64 (/.f64 1/2 (sqrt.f64 re)) im)) 1))
(log1p.f64 (expm1.f64 (*.f64 (/.f64 1/2 (sqrt.f64 re)) im)))
Outputs
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(-.f64 (exp.f64 (log1p.f64 (/.f64 1/2 (sqrt.f64 re)))) 1)
(/.f64 1/2 (sqrt.f64 re))
(*.f64 1/2 (pow.f64 re -1/2))
(*.f64 (/.f64 1/2 (sqrt.f64 re)) 1)
(/.f64 1/2 (sqrt.f64 re))
(*.f64 1 (/.f64 1/2 (sqrt.f64 re)))
(/.f64 1/2 (sqrt.f64 re))
(*.f64 (sqrt.f64 (/.f64 1/2 (sqrt.f64 re))) (sqrt.f64 (/.f64 1/2 (sqrt.f64 re))))
(/.f64 1/2 (sqrt.f64 re))
(*.f64 (cbrt.f64 (/.f64 1/2 (sqrt.f64 re))) (cbrt.f64 (/.f64 1/4 re)))
(*.f64 (cbrt.f64 (/.f64 1/4 re)) (cbrt.f64 (/.f64 1/2 (sqrt.f64 re))))
(*.f64 (cbrt.f64 (/.f64 1/2 (sqrt.f64 re))) (cbrt.f64 (/.f64 1/4 re)))
(*.f64 (pow.f64 re -1/2) 1/2)
(*.f64 1/2 (pow.f64 re -1/2))
(*.f64 -1/2 (/.f64 1 (neg.f64 (sqrt.f64 re))))
(/.f64 1/2 (sqrt.f64 re))
(pow.f64 (/.f64 1/2 (sqrt.f64 re)) 1)
(/.f64 1/2 (sqrt.f64 re))
(pow.f64 (sqrt.f64 (/.f64 1/2 (sqrt.f64 re))) 2)
(/.f64 1/2 (sqrt.f64 re))
(pow.f64 (cbrt.f64 (/.f64 1/2 (sqrt.f64 re))) 3)
(/.f64 1/2 (sqrt.f64 re))
(pow.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 re)) 3) 1/3)
(/.f64 1/2 (sqrt.f64 re))
(pow.f64 (*.f64 (sqrt.f64 re) 2) -1)
(/.f64 1/2 (sqrt.f64 re))
(sqrt.f64 (/.f64 1/4 re))
(log.f64 (exp.f64 (/.f64 1/2 (sqrt.f64 re))))
(/.f64 1/2 (sqrt.f64 re))
(log.f64 (+.f64 1 (expm1.f64 (/.f64 1/2 (sqrt.f64 re)))))
(/.f64 1/2 (sqrt.f64 re))
(cbrt.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 re)) 3))
(/.f64 1/2 (sqrt.f64 re))
(expm1.f64 (log1p.f64 (/.f64 1/2 (sqrt.f64 re))))
(/.f64 1/2 (sqrt.f64 re))
(exp.f64 (log.f64 (/.f64 1/2 (sqrt.f64 re))))
(/.f64 1/2 (sqrt.f64 re))
(exp.f64 (*.f64 (log.f64 (/.f64 1/2 (sqrt.f64 re))) 1))
(/.f64 1/2 (sqrt.f64 re))
(log1p.f64 (expm1.f64 (/.f64 1/2 (sqrt.f64 re))))
(/.f64 1/2 (sqrt.f64 re))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (/.f64 1/2 (sqrt.f64 re)) im))) 1)
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(/.f64 1/2 (/.f64 (sqrt.f64 re) im))
(/.f64 im (*.f64 (sqrt.f64 re) 2))
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(/.f64 1/2 (/.f64 (sqrt.f64 re) im))
(/.f64 1 (/.f64 (sqrt.f64 re) (*.f64 1/2 im)))
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(/.f64 1/2 (/.f64 (sqrt.f64 re) im))
(/.f64 (*.f64 1/2 im) (sqrt.f64 re))
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(/.f64 1/2 (/.f64 (sqrt.f64 re) im))
(/.f64 (*.f64 im -1/2) (neg.f64 (sqrt.f64 re)))
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(/.f64 1/2 (/.f64 (sqrt.f64 re) im))
(/.f64 (*.f64 -1/2 im) (neg.f64 (sqrt.f64 re)))
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(/.f64 1/2 (/.f64 (sqrt.f64 re) im))
(/.f64 (/.f64 (*.f64 1/2 im) 1) (sqrt.f64 re))
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(/.f64 1/2 (/.f64 (sqrt.f64 re) im))
(/.f64 (/.f64 (*.f64 1/2 im) (pow.f64 re 1/4)) (pow.f64 re 1/4))
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(/.f64 1/2 (/.f64 (sqrt.f64 re) im))
(/.f64 (/.f64 (*.f64 1/2 im) (cbrt.f64 re)) (cbrt.f64 (sqrt.f64 re)))
(/.f64 (*.f64 1/2 im) (*.f64 (cbrt.f64 (sqrt.f64 re)) (cbrt.f64 re)))
(*.f64 (/.f64 1/2 (cbrt.f64 (sqrt.f64 re))) (/.f64 im (cbrt.f64 re)))
(*.f64 (/.f64 1/2 (cbrt.f64 re)) (/.f64 im (cbrt.f64 (sqrt.f64 re))))
(/.f64 (neg.f64 (*.f64 1/2 im)) (neg.f64 (sqrt.f64 re)))
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(/.f64 1/2 (/.f64 (sqrt.f64 re) im))
(pow.f64 (*.f64 (/.f64 1/2 (sqrt.f64 re)) im) 1)
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(/.f64 1/2 (/.f64 (sqrt.f64 re) im))
(pow.f64 (sqrt.f64 (*.f64 (/.f64 1/2 (sqrt.f64 re)) im)) 2)
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(/.f64 1/2 (/.f64 (sqrt.f64 re) im))
(pow.f64 (cbrt.f64 (*.f64 (/.f64 1/2 (sqrt.f64 re)) im)) 3)
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(/.f64 1/2 (/.f64 (sqrt.f64 re) im))
(pow.f64 (pow.f64 (*.f64 (/.f64 1/2 (sqrt.f64 re)) im) 3) 1/3)
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(/.f64 1/2 (/.f64 (sqrt.f64 re) im))
(sqrt.f64 (*.f64 (*.f64 im im) (/.f64 1/4 re)))
(sqrt.f64 (*.f64 (/.f64 1/4 re) (*.f64 im im)))
(sqrt.f64 (*.f64 im (/.f64 (*.f64 im 1/4) re)))
(log.f64 (pow.f64 (exp.f64 im) (/.f64 1/2 (sqrt.f64 re))))
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(/.f64 1/2 (/.f64 (sqrt.f64 re) im))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (/.f64 1/2 (sqrt.f64 re)) im))))
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(/.f64 1/2 (/.f64 (sqrt.f64 re) im))
(cbrt.f64 (pow.f64 (*.f64 (/.f64 1/2 (sqrt.f64 re)) im) 3))
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(/.f64 1/2 (/.f64 (sqrt.f64 re) im))
(expm1.f64 (log1p.f64 (*.f64 (/.f64 1/2 (sqrt.f64 re)) im)))
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(/.f64 1/2 (/.f64 (sqrt.f64 re) im))
(exp.f64 (log.f64 (*.f64 (/.f64 1/2 (sqrt.f64 re)) im)))
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(/.f64 1/2 (/.f64 (sqrt.f64 re) im))
(exp.f64 (*.f64 (log.f64 (*.f64 (/.f64 1/2 (sqrt.f64 re)) im)) 1))
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(/.f64 1/2 (/.f64 (sqrt.f64 re) im))
(log1p.f64 (expm1.f64 (*.f64 (/.f64 1/2 (sqrt.f64 re)) im)))
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(/.f64 1/2 (/.f64 (sqrt.f64 re) im))

localize8.0ms (0.1%)

Local error

Found 2 expressions with local error:

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

Compiled 17 to 7 computations (58.8% saved)

series1.0ms (0%)

Counts
1 → 12
Calls

6 calls:

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

rewrite114.0ms (1.3%)

Algorithm
batch-egg-rewrite
Rules
1902×add-sqr-sqrt
1878×*-un-lft-identity
1752×add-cube-cbrt
1734×add-cbrt-cube
186×pow1
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0917
119017
2240617
Stop Event
node limit
Counts
1 → 28
Calls
Call 1
Inputs
(/.f64 1/2 (/.f64 (sqrt.f64 re) im))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (/.f64 im (sqrt.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 im (/.f64 1/2 (sqrt.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 1/2 (/.f64 im (sqrt.f64 re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re)))) (sqrt.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re)))) (cbrt.f64 (/.f64 1/4 (/.f64 re (*.f64 im im)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 1/4 (/.f64 re (*.f64 im im)))) (cbrt.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1/2 (sqrt.f64 re)) im)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 im (sqrt.f64 re)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1/2 (/.f64 1 (/.f64 (neg.f64 (sqrt.f64 re)) im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 1/2 (sqrt.f64 re)) 1) im)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 1/2 (sqrt.f64 re)) (sqrt.f64 im)) (sqrt.f64 im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 1/2 (sqrt.f64 re)) (pow.f64 (cbrt.f64 im) 2)) (cbrt.f64 im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1/2 (neg.f64 (sqrt.f64 re))) (neg.f64 im))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (sqrt.f64 re) (*.f64 1/2 im)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (/.f64 1/4 (/.f64 re (*.f64 im im))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 1/2) (/.f64 im (sqrt.f64 re))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re)))))))))

simplify46.0ms (0.5%)

Algorithm
egg-herbie
Rules
1376×associate-/l*
1140×distribute-lft-in
1066×distribute-rgt-in
978×associate-+r+
934×associate-+l+
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
076822
1171822
2666822
32498822
Stop Event
node limit
Counts
40 → 34
Calls
Call 1
Inputs
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(-.f64 (exp.f64 (log1p.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))))) 1)
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(*.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))) 1)
(*.f64 1 (*.f64 1/2 (/.f64 im (sqrt.f64 re))))
(*.f64 (sqrt.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re)))) (sqrt.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re)))))
(*.f64 (cbrt.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re)))) (cbrt.f64 (/.f64 1/4 (/.f64 re (*.f64 im im)))))
(*.f64 (cbrt.f64 (/.f64 1/4 (/.f64 re (*.f64 im im)))) (cbrt.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re)))))
(*.f64 (/.f64 1/2 (sqrt.f64 re)) im)
(*.f64 (/.f64 im (sqrt.f64 re)) 1/2)
(*.f64 -1/2 (/.f64 1 (/.f64 (neg.f64 (sqrt.f64 re)) im)))
(*.f64 (*.f64 (/.f64 1/2 (sqrt.f64 re)) 1) im)
(*.f64 (*.f64 (/.f64 1/2 (sqrt.f64 re)) (sqrt.f64 im)) (sqrt.f64 im))
(*.f64 (*.f64 (/.f64 1/2 (sqrt.f64 re)) (pow.f64 (cbrt.f64 im) 2)) (cbrt.f64 im))
(*.f64 (/.f64 1/2 (neg.f64 (sqrt.f64 re))) (neg.f64 im))
(pow.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))) 1)
(pow.f64 (sqrt.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re)))) 2)
(pow.f64 (cbrt.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re)))) 3)
(pow.f64 (pow.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))) 3) 1/3)
(pow.f64 (/.f64 (sqrt.f64 re) (*.f64 1/2 im)) -1)
(sqrt.f64 (/.f64 1/4 (/.f64 re (*.f64 im im))))
(log.f64 (pow.f64 (exp.f64 1/2) (/.f64 im (sqrt.f64 re))))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))))))
(cbrt.f64 (pow.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))) 3))
(expm1.f64 (log1p.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re)))))
(exp.f64 (log.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re)))))
(exp.f64 (*.f64 (log.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re)))) 1))
(log1p.f64 (expm1.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re)))))
Outputs
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(-.f64 (exp.f64 (log1p.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))))) 1)
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
(/.f64 1/2 (/.f64 (sqrt.f64 re) im))
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
(/.f64 1/2 (/.f64 (sqrt.f64 re) im))
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
(/.f64 1/2 (/.f64 (sqrt.f64 re) im))
(*.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))) 1)
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
(/.f64 1/2 (/.f64 (sqrt.f64 re) im))
(*.f64 1 (*.f64 1/2 (/.f64 im (sqrt.f64 re))))
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
(/.f64 1/2 (/.f64 (sqrt.f64 re) im))
(*.f64 (sqrt.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re)))) (sqrt.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re)))))
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
(/.f64 1/2 (/.f64 (sqrt.f64 re) im))
(*.f64 (cbrt.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re)))) (cbrt.f64 (/.f64 1/4 (/.f64 re (*.f64 im im)))))
(*.f64 (cbrt.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re)))) (cbrt.f64 (*.f64 (*.f64 im im) (/.f64 1/4 re))))
(*.f64 (cbrt.f64 (/.f64 1/2 (/.f64 (sqrt.f64 re) im))) (cbrt.f64 (*.f64 im (/.f64 1/4 (/.f64 re im)))))
(*.f64 (cbrt.f64 (/.f64 1/4 (/.f64 re (*.f64 im im)))) (cbrt.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re)))))
(*.f64 (cbrt.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re)))) (cbrt.f64 (/.f64 1/4 (/.f64 re (*.f64 im im)))))
(*.f64 (cbrt.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re)))) (cbrt.f64 (*.f64 (*.f64 im im) (/.f64 1/4 re))))
(*.f64 (cbrt.f64 (/.f64 1/2 (/.f64 (sqrt.f64 re) im))) (cbrt.f64 (*.f64 im (/.f64 1/4 (/.f64 re im)))))
(*.f64 (/.f64 1/2 (sqrt.f64 re)) im)
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
(/.f64 1/2 (/.f64 (sqrt.f64 re) im))
(*.f64 (/.f64 im (sqrt.f64 re)) 1/2)
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
(/.f64 1/2 (/.f64 (sqrt.f64 re) im))
(*.f64 -1/2 (/.f64 1 (/.f64 (neg.f64 (sqrt.f64 re)) im)))
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
(/.f64 1/2 (/.f64 (sqrt.f64 re) im))
(*.f64 (*.f64 (/.f64 1/2 (sqrt.f64 re)) 1) im)
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
(/.f64 1/2 (/.f64 (sqrt.f64 re) im))
(*.f64 (*.f64 (/.f64 1/2 (sqrt.f64 re)) (sqrt.f64 im)) (sqrt.f64 im))
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
(/.f64 1/2 (/.f64 (sqrt.f64 re) im))
(*.f64 (*.f64 (/.f64 1/2 (sqrt.f64 re)) (pow.f64 (cbrt.f64 im) 2)) (cbrt.f64 im))
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
(/.f64 1/2 (/.f64 (sqrt.f64 re) im))
(*.f64 (/.f64 1/2 (neg.f64 (sqrt.f64 re))) (neg.f64 im))
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
(/.f64 1/2 (/.f64 (sqrt.f64 re) im))
(pow.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))) 1)
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
(/.f64 1/2 (/.f64 (sqrt.f64 re) im))
(pow.f64 (sqrt.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re)))) 2)
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
(/.f64 1/2 (/.f64 (sqrt.f64 re) im))
(pow.f64 (cbrt.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re)))) 3)
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
(/.f64 1/2 (/.f64 (sqrt.f64 re) im))
(pow.f64 (pow.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))) 3) 1/3)
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
(/.f64 1/2 (/.f64 (sqrt.f64 re) im))
(pow.f64 (/.f64 (sqrt.f64 re) (*.f64 1/2 im)) -1)
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
(/.f64 1/2 (/.f64 (sqrt.f64 re) im))
(sqrt.f64 (/.f64 1/4 (/.f64 re (*.f64 im im))))
(sqrt.f64 (*.f64 (*.f64 im im) (/.f64 1/4 re)))
(sqrt.f64 (*.f64 im (/.f64 1/4 (/.f64 re im))))
(log.f64 (pow.f64 (exp.f64 1/2) (/.f64 im (sqrt.f64 re))))
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
(/.f64 1/2 (/.f64 (sqrt.f64 re) im))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))))))
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
(/.f64 1/2 (/.f64 (sqrt.f64 re) im))
(cbrt.f64 (pow.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))) 3))
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
(/.f64 1/2 (/.f64 (sqrt.f64 re) im))
(expm1.f64 (log1p.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re)))))
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
(/.f64 1/2 (/.f64 (sqrt.f64 re) im))
(exp.f64 (log.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re)))))
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
(/.f64 1/2 (/.f64 (sqrt.f64 re) im))
(exp.f64 (*.f64 (log.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re)))) 1))
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
(/.f64 1/2 (/.f64 (sqrt.f64 re) im))
(log1p.f64 (expm1.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re)))))
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
(/.f64 1/2 (/.f64 (sqrt.f64 re) im))

localize9.0ms (0.1%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.2b
(/.f64 1/2 (sqrt.f64 re))
0.2b
(/.f64 (/.f64 1/2 (sqrt.f64 re)) (/.f64 1 im))
Compiler

Compiled 23 to 14 computations (39.1% saved)

series1.0ms (0%)

Counts
1 → 12
Calls

6 calls:

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

rewrite68.0ms (0.8%)

Algorithm
batch-egg-rewrite
Rules
1448×associate-/r*
1056×associate-/l*
1010×*-commutative
736×unswap-sqr
594×swap-sqr
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01123
123117
2297617
Stop Event
node limit
Counts
1 → 68
Calls
Call 1
Inputs
(/.f64 (/.f64 1/2 (sqrt.f64 re)) (/.f64 1 im))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (/.f64 im (sqrt.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1/2 (sqrt.f64 re)) im)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (*.f64 1/2 im) (sqrt.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re))) (sqrt.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 im) (*.f64 (/.f64 1/2 (sqrt.f64 re)) (sqrt.f64 im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 1/2 (sqrt.f64 re))) (*.f64 (sqrt.f64 (/.f64 1/2 (sqrt.f64 re))) im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re))) (cbrt.f64 (*.f64 (*.f64 im im) (/.f64 1/4 re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re))) (/.f64 (cbrt.f64 (/.f64 1/4 re)) (cbrt.f64 (pow.f64 im -2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 (*.f64 im im) (/.f64 1/4 re))) (cbrt.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 im) (*.f64 (/.f64 1/2 (sqrt.f64 re)) (pow.f64 (cbrt.f64 im) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 1/4 re)) (*.f64 (cbrt.f64 (/.f64 1/2 (sqrt.f64 re))) im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 im (/.f64 1/2 (sqrt.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (*.f64 (/.f64 -1/2 (sqrt.f64 re)) im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 im) (/.f64 -1/2 (sqrt.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 -1/2 (sqrt.f64 re)) (neg.f64 im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 1/2 (sqrt.f64 re)) (pow.f64 (cbrt.f64 im) 2)) (cbrt.f64 im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cbrt.f64 (/.f64 1/2 (sqrt.f64 re))) im) (cbrt.f64 (/.f64 1/4 re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 1/2 im) (pow.f64 re -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 1/2 (sqrt.f64 re)) (sqrt.f64 im)) (sqrt.f64 im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (cbrt.f64 (pow.f64 im -2))) (*.f64 (/.f64 1/2 (sqrt.f64 re)) (cbrt.f64 im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 1/2 (sqrt.f64 re)) (cbrt.f64 im)) (/.f64 1 (cbrt.f64 (pow.f64 im -2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 im (sqrt.f64 re)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 1/2 (sqrt.f64 im)) (*.f64 (pow.f64 re -1/2) (sqrt.f64 im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 re -1/2) (sqrt.f64 im)) (*.f64 1/2 (sqrt.f64 im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1/2 (cbrt.f64 (pow.f64 im -2))) (*.f64 (pow.f64 re -1/2) (cbrt.f64 im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 re -1/2) (cbrt.f64 im)) (/.f64 1/2 (cbrt.f64 (pow.f64 im -2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (/.f64 1/2 (sqrt.f64 re))) im) (sqrt.f64 (/.f64 1/2 (sqrt.f64 re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (/.f64 1/2 (sqrt.f64 re))) (cbrt.f64 (pow.f64 im -2))) (*.f64 (sqrt.f64 (/.f64 1/2 (sqrt.f64 re))) (cbrt.f64 im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (/.f64 1/2 (sqrt.f64 re))) (cbrt.f64 im)) (/.f64 (sqrt.f64 (/.f64 1/2 (sqrt.f64 re))) (cbrt.f64 (pow.f64 im -2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (/.f64 1/4 re)) 1) (*.f64 (/.f64 (cbrt.f64 (/.f64 1/2 (sqrt.f64 re))) 1) im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 (cbrt.f64 (/.f64 1/2 (sqrt.f64 re))) 1) im) (/.f64 (cbrt.f64 (/.f64 1/4 re)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (/.f64 1/4 re)) (pow.f64 im -1/2)) (/.f64 (cbrt.f64 (/.f64 1/2 (sqrt.f64 re))) (pow.f64 im -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (/.f64 1/2 (sqrt.f64 re))) (pow.f64 im -1/2)) (/.f64 (cbrt.f64 (/.f64 1/4 re)) (pow.f64 im -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (/.f64 1/4 re)) (cbrt.f64 (pow.f64 im -2))) (cbrt.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (/.f64 1 (*.f64 1/2 im))) (pow.f64 re -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 (/.f64 1/2 (sqrt.f64 re)) (sqrt.f64 im)) 1) (sqrt.f64 im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 1/2 (*.f64 (cbrt.f64 (pow.f64 im -2)) (sqrt.f64 re))) 1) (cbrt.f64 im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (/.f64 1/4 re)) (/.f64 1 im)) (cbrt.f64 (/.f64 1/2 (sqrt.f64 re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 im (pow.f64 re 1/4)) (/.f64 1/2 (pow.f64 re 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 im (cbrt.f64 re)) (/.f64 1/2 (cbrt.f64 (sqrt.f64 re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 1/2 (sqrt.f64 re)) (/.f64 1 (pow.f64 (cbrt.f64 im) 2))) (cbrt.f64 im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (/.f64 1 (*.f64 (cbrt.f64 (/.f64 1/4 re)) im))) (cbrt.f64 (/.f64 1/2 (sqrt.f64 re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 im (neg.f64 (sqrt.f64 re))) -1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 (/.f64 1/2 (sqrt.f64 re)) (sqrt.f64 im)) (sqrt.f64 -1)) (sqrt.f64 (neg.f64 im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 1/2 (*.f64 (cbrt.f64 (pow.f64 im -2)) (sqrt.f64 re))) -1) (cbrt.f64 (neg.f64 im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (cbrt.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re)))) (cbrt.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re)))) (*.f64 (sqrt.f64 (cbrt.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re)))) (cbrt.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cbrt.f64 (sqrt.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re)))) (sqrt.f64 (cbrt.f64 (*.f64 (*.f64 im im) (/.f64 1/4 re))))) (*.f64 (cbrt.f64 (sqrt.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re)))) (sqrt.f64 (cbrt.f64 (*.f64 (*.f64 im im) (/.f64 1/4 re))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cbrt.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re))) (sqrt.f64 (cbrt.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re))))) (*.f64 (cbrt.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re))) (sqrt.f64 (cbrt.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (cbrt.f64 (*.f64 (*.f64 im im) (/.f64 1/4 re)))) (cbrt.f64 (sqrt.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re))))) (*.f64 (sqrt.f64 (cbrt.f64 (*.f64 (*.f64 im im) (/.f64 1/4 re)))) (cbrt.f64 (sqrt.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (/.f64 (sqrt.f64 re) im) 2) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (*.f64 (/.f64 -1/2 (sqrt.f64 re)) im))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (*.f64 1 (*.f64 (/.f64 -1/2 (sqrt.f64 re)) im)))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (*.f64 (*.f64 (/.f64 -1/2 (sqrt.f64 re)) im) 1))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (*.f64 (/.f64 -1/2 (sqrt.f64 re)) im) 1))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 (*.f64 im im) (/.f64 1/4 re)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 re)) 3) (pow.f64 im -2)) im))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re))))))))

simplify108.0ms (1.2%)

Algorithm
egg-herbie
Rules
1316×associate-*r/
962×associate-*l/
858×associate-/l*
786×associate-+r-
740×associate-+l-
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01772206
14462098
213952098
365812098
Stop Event
node limit
Counts
80 → 94
Calls
Call 1
Inputs
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(-.f64 (exp.f64 (log1p.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re)))) 1)
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
(*.f64 (/.f64 1/2 (sqrt.f64 re)) im)
(*.f64 1 (/.f64 (*.f64 1/2 im) (sqrt.f64 re)))
(*.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re)) 1)
(*.f64 (sqrt.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re))) (sqrt.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re))))
(*.f64 (sqrt.f64 im) (*.f64 (/.f64 1/2 (sqrt.f64 re)) (sqrt.f64 im)))
(*.f64 (sqrt.f64 (/.f64 1/2 (sqrt.f64 re))) (*.f64 (sqrt.f64 (/.f64 1/2 (sqrt.f64 re))) im))
(*.f64 (cbrt.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re))) (cbrt.f64 (*.f64 (*.f64 im im) (/.f64 1/4 re))))
(*.f64 (cbrt.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re))) (/.f64 (cbrt.f64 (/.f64 1/4 re)) (cbrt.f64 (pow.f64 im -2))))
(*.f64 (cbrt.f64 (*.f64 (*.f64 im im) (/.f64 1/4 re))) (cbrt.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re))))
(*.f64 (cbrt.f64 im) (*.f64 (/.f64 1/2 (sqrt.f64 re)) (pow.f64 (cbrt.f64 im) 2)))
(*.f64 (cbrt.f64 (/.f64 1/4 re)) (*.f64 (cbrt.f64 (/.f64 1/2 (sqrt.f64 re))) im))
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(*.f64 -1 (*.f64 (/.f64 -1/2 (sqrt.f64 re)) im))
(*.f64 (neg.f64 im) (/.f64 -1/2 (sqrt.f64 re)))
(*.f64 (/.f64 -1/2 (sqrt.f64 re)) (neg.f64 im))
(*.f64 (*.f64 (/.f64 1/2 (sqrt.f64 re)) (pow.f64 (cbrt.f64 im) 2)) (cbrt.f64 im))
(*.f64 (*.f64 (cbrt.f64 (/.f64 1/2 (sqrt.f64 re))) im) (cbrt.f64 (/.f64 1/4 re)))
(*.f64 (*.f64 1/2 im) (pow.f64 re -1/2))
(*.f64 (*.f64 (/.f64 1/2 (sqrt.f64 re)) (sqrt.f64 im)) (sqrt.f64 im))
(*.f64 (/.f64 1 (cbrt.f64 (pow.f64 im -2))) (*.f64 (/.f64 1/2 (sqrt.f64 re)) (cbrt.f64 im)))
(*.f64 (*.f64 (/.f64 1/2 (sqrt.f64 re)) (cbrt.f64 im)) (/.f64 1 (cbrt.f64 (pow.f64 im -2))))
(*.f64 (/.f64 im (sqrt.f64 re)) 1/2)
(*.f64 (*.f64 1/2 (sqrt.f64 im)) (*.f64 (pow.f64 re -1/2) (sqrt.f64 im)))
(*.f64 (*.f64 (pow.f64 re -1/2) (sqrt.f64 im)) (*.f64 1/2 (sqrt.f64 im)))
(*.f64 (/.f64 1/2 (cbrt.f64 (pow.f64 im -2))) (*.f64 (pow.f64 re -1/2) (cbrt.f64 im)))
(*.f64 (*.f64 (pow.f64 re -1/2) (cbrt.f64 im)) (/.f64 1/2 (cbrt.f64 (pow.f64 im -2))))
(*.f64 (*.f64 (sqrt.f64 (/.f64 1/2 (sqrt.f64 re))) im) (sqrt.f64 (/.f64 1/2 (sqrt.f64 re))))
(*.f64 (/.f64 (sqrt.f64 (/.f64 1/2 (sqrt.f64 re))) (cbrt.f64 (pow.f64 im -2))) (*.f64 (sqrt.f64 (/.f64 1/2 (sqrt.f64 re))) (cbrt.f64 im)))
(*.f64 (*.f64 (sqrt.f64 (/.f64 1/2 (sqrt.f64 re))) (cbrt.f64 im)) (/.f64 (sqrt.f64 (/.f64 1/2 (sqrt.f64 re))) (cbrt.f64 (pow.f64 im -2))))
(*.f64 (/.f64 (cbrt.f64 (/.f64 1/4 re)) 1) (*.f64 (/.f64 (cbrt.f64 (/.f64 1/2 (sqrt.f64 re))) 1) im))
(*.f64 (*.f64 (/.f64 (cbrt.f64 (/.f64 1/2 (sqrt.f64 re))) 1) im) (/.f64 (cbrt.f64 (/.f64 1/4 re)) 1))
(*.f64 (/.f64 (cbrt.f64 (/.f64 1/4 re)) (pow.f64 im -1/2)) (/.f64 (cbrt.f64 (/.f64 1/2 (sqrt.f64 re))) (pow.f64 im -1/2)))
(*.f64 (/.f64 (cbrt.f64 (/.f64 1/2 (sqrt.f64 re))) (pow.f64 im -1/2)) (/.f64 (cbrt.f64 (/.f64 1/4 re)) (pow.f64 im -1/2)))
(*.f64 (/.f64 (cbrt.f64 (/.f64 1/4 re)) (cbrt.f64 (pow.f64 im -2))) (cbrt.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re))))
(*.f64 (/.f64 1 (/.f64 1 (*.f64 1/2 im))) (pow.f64 re -1/2))
(*.f64 (/.f64 (*.f64 (/.f64 1/2 (sqrt.f64 re)) (sqrt.f64 im)) 1) (sqrt.f64 im))
(*.f64 (/.f64 (/.f64 1/2 (*.f64 (cbrt.f64 (pow.f64 im -2)) (sqrt.f64 re))) 1) (cbrt.f64 im))
(*.f64 (/.f64 (cbrt.f64 (/.f64 1/4 re)) (/.f64 1 im)) (cbrt.f64 (/.f64 1/2 (sqrt.f64 re))))
(*.f64 (/.f64 im (pow.f64 re 1/4)) (/.f64 1/2 (pow.f64 re 1/4)))
(*.f64 (/.f64 im (cbrt.f64 re)) (/.f64 1/2 (cbrt.f64 (sqrt.f64 re))))
(*.f64 (/.f64 (/.f64 1/2 (sqrt.f64 re)) (/.f64 1 (pow.f64 (cbrt.f64 im) 2))) (cbrt.f64 im))
(*.f64 (/.f64 1 (/.f64 1 (*.f64 (cbrt.f64 (/.f64 1/4 re)) im))) (cbrt.f64 (/.f64 1/2 (sqrt.f64 re))))
(*.f64 (/.f64 im (neg.f64 (sqrt.f64 re))) -1/2)
(*.f64 (/.f64 (*.f64 (/.f64 1/2 (sqrt.f64 re)) (sqrt.f64 im)) (sqrt.f64 -1)) (sqrt.f64 (neg.f64 im)))
(*.f64 (/.f64 (/.f64 1/2 (*.f64 (cbrt.f64 (pow.f64 im -2)) (sqrt.f64 re))) -1) (cbrt.f64 (neg.f64 im)))
(*.f64 (*.f64 (sqrt.f64 (cbrt.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re)))) (cbrt.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re)))) (*.f64 (sqrt.f64 (cbrt.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re)))) (cbrt.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re)))))
(*.f64 (*.f64 (cbrt.f64 (sqrt.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re)))) (sqrt.f64 (cbrt.f64 (*.f64 (*.f64 im im) (/.f64 1/4 re))))) (*.f64 (cbrt.f64 (sqrt.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re)))) (sqrt.f64 (cbrt.f64 (*.f64 (*.f64 im im) (/.f64 1/4 re))))))
(*.f64 (*.f64 (cbrt.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re))) (sqrt.f64 (cbrt.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re))))) (*.f64 (cbrt.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re))) (sqrt.f64 (cbrt.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re))))))
(*.f64 (*.f64 (sqrt.f64 (cbrt.f64 (*.f64 (*.f64 im im) (/.f64 1/4 re)))) (cbrt.f64 (sqrt.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re))))) (*.f64 (sqrt.f64 (cbrt.f64 (*.f64 (*.f64 im im) (/.f64 1/4 re)))) (cbrt.f64 (sqrt.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re))))))
(pow.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re)) 1)
(pow.f64 (sqrt.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re))) 2)
(pow.f64 (cbrt.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re))) 3)
(pow.f64 (pow.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re)) 3) 1/3)
(pow.f64 (*.f64 (/.f64 (sqrt.f64 re) im) 2) -1)
(neg.f64 (*.f64 (/.f64 -1/2 (sqrt.f64 re)) im))
(neg.f64 (*.f64 1 (*.f64 (/.f64 -1/2 (sqrt.f64 re)) im)))
(neg.f64 (*.f64 (*.f64 (/.f64 -1/2 (sqrt.f64 re)) im) 1))
(neg.f64 (/.f64 (*.f64 (/.f64 -1/2 (sqrt.f64 re)) im) 1))
(sqrt.f64 (*.f64 (*.f64 im im) (/.f64 1/4 re)))
(log.f64 (exp.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re))))
(log.f64 (+.f64 1 (expm1.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re)))))
(cbrt.f64 (pow.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re)) 3))
(cbrt.f64 (*.f64 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 re)) 3) (pow.f64 im -2)) im))
(expm1.f64 (log1p.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re))))
(exp.f64 (log.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re))))
(log1p.f64 (expm1.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re))))
Outputs
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(-.f64 (exp.f64 (log1p.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re)))) 1)
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(*.f64 (/.f64 1/2 (sqrt.f64 re)) im)
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
(*.f64 1 (/.f64 (*.f64 1/2 im) (sqrt.f64 re)))
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
(*.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re)) 1)
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
(*.f64 (sqrt.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re))) (sqrt.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re))))
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
(*.f64 (sqrt.f64 im) (*.f64 (/.f64 1/2 (sqrt.f64 re)) (sqrt.f64 im)))
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
(*.f64 (sqrt.f64 (/.f64 1/2 (sqrt.f64 re))) (*.f64 (sqrt.f64 (/.f64 1/2 (sqrt.f64 re))) im))
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
(*.f64 (cbrt.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re))) (cbrt.f64 (*.f64 (*.f64 im im) (/.f64 1/4 re))))
(*.f64 (cbrt.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re)))) (cbrt.f64 (*.f64 im (*.f64 im (/.f64 1/4 re)))))
(*.f64 (cbrt.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re)))) (cbrt.f64 (*.f64 im (*.f64 im (/.f64 1/4 re)))))
(*.f64 (cbrt.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re)))) (cbrt.f64 (*.f64 im (/.f64 im (/.f64 re 1/4)))))
(*.f64 (cbrt.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re))) (/.f64 (cbrt.f64 (/.f64 1/4 re)) (cbrt.f64 (pow.f64 im -2))))
(*.f64 (cbrt.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re)))) (/.f64 (cbrt.f64 (/.f64 1/4 re)) (cbrt.f64 (pow.f64 im -2))))
(*.f64 (cbrt.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re)))) (/.f64 (cbrt.f64 (/.f64 1/4 re)) (cbrt.f64 (pow.f64 im -2))))
(*.f64 (cbrt.f64 (*.f64 (*.f64 im im) (/.f64 1/4 re))) (cbrt.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re))))
(*.f64 (cbrt.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re)))) (cbrt.f64 (*.f64 im (*.f64 im (/.f64 1/4 re)))))
(*.f64 (cbrt.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re)))) (cbrt.f64 (*.f64 im (*.f64 im (/.f64 1/4 re)))))
(*.f64 (cbrt.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re)))) (cbrt.f64 (*.f64 im (/.f64 im (/.f64 re 1/4)))))
(*.f64 (cbrt.f64 im) (*.f64 (/.f64 1/2 (sqrt.f64 re)) (pow.f64 (cbrt.f64 im) 2)))
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
(*.f64 (cbrt.f64 (/.f64 1/4 re)) (*.f64 (cbrt.f64 (/.f64 1/2 (sqrt.f64 re))) im))
(*.f64 (cbrt.f64 (/.f64 1/2 (sqrt.f64 re))) (*.f64 im (cbrt.f64 (/.f64 1/4 re))))
(*.f64 im (*.f64 (cbrt.f64 (/.f64 1/4 re)) (cbrt.f64 (/.f64 1/2 (sqrt.f64 re)))))
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
(*.f64 -1 (*.f64 (/.f64 -1/2 (sqrt.f64 re)) im))
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
(*.f64 (neg.f64 im) (/.f64 -1/2 (sqrt.f64 re)))
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
(*.f64 (/.f64 -1/2 (sqrt.f64 re)) (neg.f64 im))
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
(*.f64 (*.f64 (/.f64 1/2 (sqrt.f64 re)) (pow.f64 (cbrt.f64 im) 2)) (cbrt.f64 im))
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
(*.f64 (*.f64 (cbrt.f64 (/.f64 1/2 (sqrt.f64 re))) im) (cbrt.f64 (/.f64 1/4 re)))
(*.f64 (cbrt.f64 (/.f64 1/2 (sqrt.f64 re))) (*.f64 im (cbrt.f64 (/.f64 1/4 re))))
(*.f64 im (*.f64 (cbrt.f64 (/.f64 1/4 re)) (cbrt.f64 (/.f64 1/2 (sqrt.f64 re)))))
(*.f64 (*.f64 1/2 im) (pow.f64 re -1/2))
(*.f64 1/2 (*.f64 im (pow.f64 re -1/2)))
(*.f64 (*.f64 (/.f64 1/2 (sqrt.f64 re)) (sqrt.f64 im)) (sqrt.f64 im))
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
(*.f64 (/.f64 1 (cbrt.f64 (pow.f64 im -2))) (*.f64 (/.f64 1/2 (sqrt.f64 re)) (cbrt.f64 im)))
(*.f64 (/.f64 1/2 (sqrt.f64 re)) (*.f64 (cbrt.f64 im) (/.f64 1 (cbrt.f64 (pow.f64 im -2)))))
(/.f64 (/.f64 1/2 (/.f64 (sqrt.f64 re) (cbrt.f64 im))) (cbrt.f64 (pow.f64 im -2)))
(*.f64 (*.f64 (/.f64 1/2 (sqrt.f64 re)) (cbrt.f64 im)) (/.f64 1 (cbrt.f64 (pow.f64 im -2))))
(*.f64 (/.f64 1/2 (sqrt.f64 re)) (*.f64 (cbrt.f64 im) (/.f64 1 (cbrt.f64 (pow.f64 im -2)))))
(/.f64 (/.f64 1/2 (/.f64 (sqrt.f64 re) (cbrt.f64 im))) (cbrt.f64 (pow.f64 im -2)))
(*.f64 (/.f64 im (sqrt.f64 re)) 1/2)
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
(*.f64 (*.f64 1/2 (sqrt.f64 im)) (*.f64 (pow.f64 re -1/2) (sqrt.f64 im)))
(*.f64 1/2 (*.f64 im (pow.f64 re -1/2)))
(*.f64 (*.f64 (pow.f64 re -1/2) (sqrt.f64 im)) (*.f64 1/2 (sqrt.f64 im)))
(*.f64 1/2 (*.f64 im (pow.f64 re -1/2)))
(*.f64 (/.f64 1/2 (cbrt.f64 (pow.f64 im -2))) (*.f64 (pow.f64 re -1/2) (cbrt.f64 im)))
(*.f64 (pow.f64 re -1/2) (*.f64 (cbrt.f64 im) (/.f64 1/2 (cbrt.f64 (pow.f64 im -2)))))
(*.f64 (cbrt.f64 im) (/.f64 (*.f64 1/2 (pow.f64 re -1/2)) (cbrt.f64 (pow.f64 im -2))))
(*.f64 (*.f64 (pow.f64 re -1/2) (cbrt.f64 im)) (/.f64 1/2 (cbrt.f64 (pow.f64 im -2))))
(*.f64 (pow.f64 re -1/2) (*.f64 (cbrt.f64 im) (/.f64 1/2 (cbrt.f64 (pow.f64 im -2)))))
(*.f64 (cbrt.f64 im) (/.f64 (*.f64 1/2 (pow.f64 re -1/2)) (cbrt.f64 (pow.f64 im -2))))
(*.f64 (*.f64 (sqrt.f64 (/.f64 1/2 (sqrt.f64 re))) im) (sqrt.f64 (/.f64 1/2 (sqrt.f64 re))))
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
(*.f64 (/.f64 (sqrt.f64 (/.f64 1/2 (sqrt.f64 re))) (cbrt.f64 (pow.f64 im -2))) (*.f64 (sqrt.f64 (/.f64 1/2 (sqrt.f64 re))) (cbrt.f64 im)))
(*.f64 (/.f64 1/2 (sqrt.f64 re)) (*.f64 (cbrt.f64 im) (/.f64 1 (cbrt.f64 (pow.f64 im -2)))))
(/.f64 (/.f64 1/2 (/.f64 (sqrt.f64 re) (cbrt.f64 im))) (cbrt.f64 (pow.f64 im -2)))
(*.f64 (*.f64 (sqrt.f64 (/.f64 1/2 (sqrt.f64 re))) (cbrt.f64 im)) (/.f64 (sqrt.f64 (/.f64 1/2 (sqrt.f64 re))) (cbrt.f64 (pow.f64 im -2))))
(*.f64 (/.f64 1/2 (sqrt.f64 re)) (*.f64 (cbrt.f64 im) (/.f64 1 (cbrt.f64 (pow.f64 im -2)))))
(/.f64 (/.f64 1/2 (/.f64 (sqrt.f64 re) (cbrt.f64 im))) (cbrt.f64 (pow.f64 im -2)))
(*.f64 (/.f64 (cbrt.f64 (/.f64 1/4 re)) 1) (*.f64 (/.f64 (cbrt.f64 (/.f64 1/2 (sqrt.f64 re))) 1) im))
(*.f64 (cbrt.f64 (/.f64 1/2 (sqrt.f64 re))) (*.f64 im (cbrt.f64 (/.f64 1/4 re))))
(*.f64 im (*.f64 (cbrt.f64 (/.f64 1/4 re)) (cbrt.f64 (/.f64 1/2 (sqrt.f64 re)))))
(*.f64 (*.f64 (/.f64 (cbrt.f64 (/.f64 1/2 (sqrt.f64 re))) 1) im) (/.f64 (cbrt.f64 (/.f64 1/4 re)) 1))
(*.f64 (cbrt.f64 (/.f64 1/2 (sqrt.f64 re))) (*.f64 im (cbrt.f64 (/.f64 1/4 re))))
(*.f64 im (*.f64 (cbrt.f64 (/.f64 1/4 re)) (cbrt.f64 (/.f64 1/2 (sqrt.f64 re)))))
(*.f64 (/.f64 (cbrt.f64 (/.f64 1/4 re)) (pow.f64 im -1/2)) (/.f64 (cbrt.f64 (/.f64 1/2 (sqrt.f64 re))) (pow.f64 im -1/2)))
(*.f64 (cbrt.f64 (/.f64 1/2 (sqrt.f64 re))) (*.f64 im (cbrt.f64 (/.f64 1/4 re))))
(*.f64 im (*.f64 (cbrt.f64 (/.f64 1/4 re)) (cbrt.f64 (/.f64 1/2 (sqrt.f64 re)))))
(*.f64 (/.f64 (cbrt.f64 (/.f64 1/2 (sqrt.f64 re))) (pow.f64 im -1/2)) (/.f64 (cbrt.f64 (/.f64 1/4 re)) (pow.f64 im -1/2)))
(*.f64 (cbrt.f64 (/.f64 1/2 (sqrt.f64 re))) (*.f64 im (cbrt.f64 (/.f64 1/4 re))))
(*.f64 im (*.f64 (cbrt.f64 (/.f64 1/4 re)) (cbrt.f64 (/.f64 1/2 (sqrt.f64 re)))))
(*.f64 (/.f64 (cbrt.f64 (/.f64 1/4 re)) (cbrt.f64 (pow.f64 im -2))) (cbrt.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re))))
(*.f64 (cbrt.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re)))) (/.f64 (cbrt.f64 (/.f64 1/4 re)) (cbrt.f64 (pow.f64 im -2))))
(*.f64 (cbrt.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re)))) (/.f64 (cbrt.f64 (/.f64 1/4 re)) (cbrt.f64 (pow.f64 im -2))))
(*.f64 (/.f64 1 (/.f64 1 (*.f64 1/2 im))) (pow.f64 re -1/2))
(*.f64 1/2 (*.f64 im (pow.f64 re -1/2)))
(*.f64 (/.f64 (*.f64 (/.f64 1/2 (sqrt.f64 re)) (sqrt.f64 im)) 1) (sqrt.f64 im))
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
(*.f64 (/.f64 (/.f64 1/2 (*.f64 (cbrt.f64 (pow.f64 im -2)) (sqrt.f64 re))) 1) (cbrt.f64 im))
(*.f64 (/.f64 1/2 (sqrt.f64 re)) (*.f64 (cbrt.f64 im) (/.f64 1 (cbrt.f64 (pow.f64 im -2)))))
(/.f64 (/.f64 1/2 (/.f64 (sqrt.f64 re) (cbrt.f64 im))) (cbrt.f64 (pow.f64 im -2)))
(*.f64 (/.f64 (cbrt.f64 (/.f64 1/4 re)) (/.f64 1 im)) (cbrt.f64 (/.f64 1/2 (sqrt.f64 re))))
(*.f64 (cbrt.f64 (/.f64 1/2 (sqrt.f64 re))) (*.f64 im (cbrt.f64 (/.f64 1/4 re))))
(*.f64 im (*.f64 (cbrt.f64 (/.f64 1/4 re)) (cbrt.f64 (/.f64 1/2 (sqrt.f64 re)))))
(*.f64 (/.f64 im (pow.f64 re 1/4)) (/.f64 1/2 (pow.f64 re 1/4)))
(*.f64 (/.f64 im (cbrt.f64 re)) (/.f64 1/2 (cbrt.f64 (sqrt.f64 re))))
(/.f64 (/.f64 (*.f64 1/2 im) (cbrt.f64 re)) (cbrt.f64 (sqrt.f64 re)))
(/.f64 1/2 (/.f64 (cbrt.f64 (sqrt.f64 re)) (/.f64 im (cbrt.f64 re))))
(*.f64 (/.f64 (/.f64 1/2 (sqrt.f64 re)) (/.f64 1 (pow.f64 (cbrt.f64 im) 2))) (cbrt.f64 im))
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
(*.f64 (/.f64 1 (/.f64 1 (*.f64 (cbrt.f64 (/.f64 1/4 re)) im))) (cbrt.f64 (/.f64 1/2 (sqrt.f64 re))))
(*.f64 (cbrt.f64 (/.f64 1/2 (sqrt.f64 re))) (*.f64 im (cbrt.f64 (/.f64 1/4 re))))
(*.f64 im (*.f64 (cbrt.f64 (/.f64 1/4 re)) (cbrt.f64 (/.f64 1/2 (sqrt.f64 re)))))
(*.f64 (/.f64 im (neg.f64 (sqrt.f64 re))) -1/2)
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
(*.f64 (/.f64 (*.f64 (/.f64 1/2 (sqrt.f64 re)) (sqrt.f64 im)) (sqrt.f64 -1)) (sqrt.f64 (neg.f64 im)))
(*.f64 (/.f64 (/.f64 1/2 (sqrt.f64 re)) (/.f64 (sqrt.f64 -1) (sqrt.f64 im))) (sqrt.f64 (neg.f64 im)))
(*.f64 (*.f64 (/.f64 (/.f64 1/2 (sqrt.f64 re)) (sqrt.f64 -1)) (sqrt.f64 im)) (sqrt.f64 (neg.f64 im)))
(*.f64 (*.f64 (/.f64 (sqrt.f64 im) (sqrt.f64 -1)) (/.f64 1/2 (sqrt.f64 re))) (sqrt.f64 (neg.f64 im)))
(*.f64 (/.f64 (/.f64 1/2 (*.f64 (cbrt.f64 (pow.f64 im -2)) (sqrt.f64 re))) -1) (cbrt.f64 (neg.f64 im)))
(*.f64 (/.f64 (/.f64 (/.f64 1/2 (cbrt.f64 (pow.f64 im -2))) (sqrt.f64 re)) -1) (cbrt.f64 (neg.f64 im)))
(*.f64 (/.f64 -1/2 (*.f64 (sqrt.f64 re) (cbrt.f64 (pow.f64 im -2)))) (cbrt.f64 (neg.f64 im)))
(*.f64 (/.f64 (/.f64 -1/2 (sqrt.f64 re)) (cbrt.f64 (pow.f64 im -2))) (cbrt.f64 (neg.f64 im)))
(*.f64 (*.f64 (sqrt.f64 (cbrt.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re)))) (cbrt.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re)))) (*.f64 (sqrt.f64 (cbrt.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re)))) (cbrt.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re)))))
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
(*.f64 (*.f64 (cbrt.f64 (sqrt.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re)))) (sqrt.f64 (cbrt.f64 (*.f64 (*.f64 im im) (/.f64 1/4 re))))) (*.f64 (cbrt.f64 (sqrt.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re)))) (sqrt.f64 (cbrt.f64 (*.f64 (*.f64 im im) (/.f64 1/4 re))))))
(*.f64 (*.f64 (cbrt.f64 (sqrt.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re))))) (sqrt.f64 (cbrt.f64 (*.f64 im (*.f64 im (/.f64 1/4 re)))))) (*.f64 (cbrt.f64 (sqrt.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re))))) (sqrt.f64 (cbrt.f64 (*.f64 im (*.f64 im (/.f64 1/4 re)))))))
(*.f64 (cbrt.f64 (sqrt.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))))) (*.f64 (cbrt.f64 (sqrt.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))))) (cbrt.f64 (*.f64 im (*.f64 im (/.f64 1/4 re))))))
(*.f64 (cbrt.f64 (sqrt.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))))) (*.f64 (cbrt.f64 (sqrt.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))))) (cbrt.f64 (*.f64 im (/.f64 im (/.f64 re 1/4))))))
(*.f64 (*.f64 (cbrt.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re))) (sqrt.f64 (cbrt.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re))))) (*.f64 (cbrt.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re))) (sqrt.f64 (cbrt.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re))))))
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
(*.f64 (*.f64 (sqrt.f64 (cbrt.f64 (*.f64 (*.f64 im im) (/.f64 1/4 re)))) (cbrt.f64 (sqrt.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re))))) (*.f64 (sqrt.f64 (cbrt.f64 (*.f64 (*.f64 im im) (/.f64 1/4 re)))) (cbrt.f64 (sqrt.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re))))))
(*.f64 (*.f64 (cbrt.f64 (sqrt.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re))))) (sqrt.f64 (cbrt.f64 (*.f64 im (*.f64 im (/.f64 1/4 re)))))) (*.f64 (cbrt.f64 (sqrt.f64 (*.f64 im (/.f64 1/2 (sqrt.f64 re))))) (sqrt.f64 (cbrt.f64 (*.f64 im (*.f64 im (/.f64 1/4 re)))))))
(*.f64 (cbrt.f64 (sqrt.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))))) (*.f64 (cbrt.f64 (sqrt.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))))) (cbrt.f64 (*.f64 im (*.f64 im (/.f64 1/4 re))))))
(*.f64 (cbrt.f64 (sqrt.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))))) (*.f64 (cbrt.f64 (sqrt.f64 (*.f64 1/2 (/.f64 im (sqrt.f64 re))))) (cbrt.f64 (*.f64 im (/.f64 im (/.f64 re 1/4))))))
(pow.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re)) 1)
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
(pow.f64 (sqrt.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re))) 2)
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
(pow.f64 (cbrt.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re))) 3)
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
(pow.f64 (pow.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re)) 3) 1/3)
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
(pow.f64 (*.f64 (/.f64 (sqrt.f64 re) im) 2) -1)
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
(neg.f64 (*.f64 (/.f64 -1/2 (sqrt.f64 re)) im))
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
(neg.f64 (*.f64 1 (*.f64 (/.f64 -1/2 (sqrt.f64 re)) im)))
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
(neg.f64 (*.f64 (*.f64 (/.f64 -1/2 (sqrt.f64 re)) im) 1))
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
(neg.f64 (/.f64 (*.f64 (/.f64 -1/2 (sqrt.f64 re)) im) 1))
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
(sqrt.f64 (*.f64 (*.f64 im im) (/.f64 1/4 re)))
(sqrt.f64 (*.f64 im (*.f64 im (/.f64 1/4 re))))
(sqrt.f64 (*.f64 im (/.f64 im (/.f64 re 1/4))))
(log.f64 (exp.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re))))
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
(log.f64 (+.f64 1 (expm1.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re)))))
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
(cbrt.f64 (pow.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re)) 3))
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
(cbrt.f64 (*.f64 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 re)) 3) (pow.f64 im -2)) im))
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
(expm1.f64 (log1p.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re))))
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
(exp.f64 (log.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re))))
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
(log1p.f64 (expm1.f64 (/.f64 (*.f64 1/2 im) (sqrt.f64 re))))
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))

localize21.0ms (0.2%)

Local error

Found 3 expressions with local error:

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

Compiled 40 to 30 computations (25% saved)

series426.0ms (4.7%)

Counts
3 → 48
Calls

15 calls:

TimeVariablePointExpression
349.0ms
im
@0
(*.f64 (/.f64 1 (pow.f64 re 1/4)) (*.f64 im 1/2))
32.0ms
re
@0
(/.f64 1 (pow.f64 re 1/4))
13.0ms
re
@-inf
(/.f64 1 (pow.f64 re 1/4))
8.0ms
re
@inf
(*.f64 (/.f64 1 (pow.f64 re 1/4)) (*.f64 im 1/2))
7.0ms
re
@-inf
(*.f64 (/.f64 1 (pow.f64 re 1/4)) (*.f64 im 1/2))

rewrite93.0ms (1%)

Algorithm
batch-egg-rewrite
Rules
1798×associate-*l/
1052×unswap-sqr
824×swap-sqr
504×associate-/r/
480×associate-/l/
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01257
125443
2327443
Stop Event
node limit
Counts
3 → 165
Calls
Call 1
Inputs
(/.f64 (*.f64 (/.f64 1 (pow.f64 re 1/4)) (*.f64 im 1/2)) (pow.f64 re 1/4))
(/.f64 1 (pow.f64 re 1/4))
(*.f64 (/.f64 1 (pow.f64 re 1/4)) (*.f64 im 1/2))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 (*.f64 im 1/2) (sqrt.f64 re)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (*.f64 im 1/2) (sqrt.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 re -1/4) (*.f64 im (/.f64 1/2 (pow.f64 re 1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 im 1/2) (pow.f64 re -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 im (/.f64 1/2 (pow.f64 re 1/4))) (pow.f64 re -1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 im 1/2) (sqrt.f64 re)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (*.f64 im 1/2)) (pow.f64 re -1/8)) (*.f64 (sqrt.f64 (/.f64 (*.f64 im 1/2) (sqrt.f64 re))) (pow.f64 re -1/8)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 (*.f64 im 1/2) (sqrt.f64 re))) (sqrt.f64 (/.f64 (*.f64 im 1/2) (sqrt.f64 re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 re -1/8) (*.f64 (*.f64 im (/.f64 1/2 (pow.f64 re 1/4))) (pow.f64 re -1/8)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (*.f64 1/4 (*.f64 im im)) (sqrt.f64 re))) (*.f64 (cbrt.f64 (*.f64 im (/.f64 1/2 (pow.f64 re 1/4)))) (pow.f64 re -1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (*.f64 im 1/2) (sqrt.f64 re))) (cbrt.f64 (/.f64 (*.f64 1/4 (*.f64 im im)) re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (*.f64 1/4 (*.f64 im im)) re)) (cbrt.f64 (/.f64 (*.f64 im 1/2) (sqrt.f64 re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 re -1/2) (*.f64 im 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 re -1/4) im) (/.f64 1/2 (pow.f64 re 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 re -1/4) (*.f64 im -1/2)) (neg.f64 (pow.f64 re -1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 im (/.f64 1/2 (pow.f64 re 1/4))) (cbrt.f64 (pow.f64 re -1/2))) (cbrt.f64 (pow.f64 re -1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (*.f64 im 1/2)) (pow.f64 re -1/4)) (*.f64 (sqrt.f64 (*.f64 im 1/2)) (pow.f64 re -1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (/.f64 (*.f64 im 1/2) (sqrt.f64 re))) (pow.f64 re -1/8)) (*.f64 (sqrt.f64 (*.f64 im 1/2)) (pow.f64 re -1/8)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 -1 (sqrt.f64 re)) (*.f64 im -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (pow.f64 re -1/4)) (*.f64 (pow.f64 re -1/4) (*.f64 im -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (cbrt.f64 (sqrt.f64 re))) (/.f64 (*.f64 im (/.f64 1/2 (pow.f64 re 1/4))) (cbrt.f64 (pow.f64 re 1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 im 1/2) 1) (pow.f64 re -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 re -1/8) (*.f64 im 1/2)) (/.f64 (pow.f64 re -1/8) (pow.f64 re 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 im 1/2) (cbrt.f64 (sqrt.f64 re))) (/.f64 (pow.f64 re -1/4) (cbrt.f64 (pow.f64 re 1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 im (/.f64 1/2 (pow.f64 re 1/4))) (pow.f64 re -1/8)) (pow.f64 re -1/8))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 im (*.f64 (cbrt.f64 (sqrt.f64 re)) (/.f64 (pow.f64 re 1/4) 1/2))) (cbrt.f64 (pow.f64 re -1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 im -1/2) (sqrt.f64 re)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 re -1/8) (pow.f64 re 1/4)) (*.f64 (pow.f64 re -1/8) (*.f64 im 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 re -1/4) (cbrt.f64 (sqrt.f64 re))) (/.f64 (*.f64 im 1/2) (cbrt.f64 (pow.f64 re 1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 (sqrt.f64 (*.f64 im 1/2)) (pow.f64 re -1/8)) (cbrt.f64 (sqrt.f64 re))) (/.f64 (*.f64 (sqrt.f64 (*.f64 im 1/2)) (pow.f64 re -1/8)) (cbrt.f64 (pow.f64 re 1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (/.f64 (*.f64 1/4 (*.f64 im im)) (sqrt.f64 re))) 1) (/.f64 (cbrt.f64 (*.f64 im (/.f64 1/2 (pow.f64 re 1/4)))) (pow.f64 re 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (/.f64 (*.f64 1/4 (*.f64 im im)) (sqrt.f64 re))) (pow.f64 re 1/8)) (/.f64 (cbrt.f64 (*.f64 im (/.f64 1/2 (pow.f64 re 1/4)))) (pow.f64 re 1/8)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (/.f64 (*.f64 1/4 (*.f64 im im)) (sqrt.f64 re))) (cbrt.f64 (sqrt.f64 re))) (cbrt.f64 (/.f64 (*.f64 im 1/2) (sqrt.f64 re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 im (*.f64 (pow.f64 re 1/8) (pow.f64 re 1/4))) (/.f64 1/2 (pow.f64 re 1/8)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 im (*.f64 (cbrt.f64 (sqrt.f64 re)) (pow.f64 re 1/4))) (/.f64 1/2 (cbrt.f64 (pow.f64 re 1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (/.f64 (pow.f64 re 1/8) (sqrt.f64 (/.f64 (*.f64 im 1/2) (sqrt.f64 re))))) (*.f64 (sqrt.f64 (*.f64 im 1/2)) (pow.f64 re -1/8)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (/.f64 (pow.f64 re 1/4) (cbrt.f64 (/.f64 (*.f64 1/4 (*.f64 im im)) (sqrt.f64 re))))) (cbrt.f64 (*.f64 im (/.f64 1/2 (pow.f64 re 1/4)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (*.f64 (/.f64 (pow.f64 re 1/4) im) (pow.f64 re 1/4))) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 re -1/4) (/.f64 (pow.f64 re 1/4) im)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 re -1/4) (/.f64 (pow.f64 re 1/4) 1/2)) im)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 re -1/4) (/.f64 (pow.f64 re 1/4) (sqrt.f64 (*.f64 im 1/2)))) (sqrt.f64 (*.f64 im 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 re -1/4) (/.f64 (pow.f64 re 1/4) (pow.f64 (cbrt.f64 (*.f64 im 1/2)) 2))) (cbrt.f64 (*.f64 im 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (/.f64 (*.f64 1/4 (*.f64 im im)) (sqrt.f64 re))) (pow.f64 re 1/4)) (cbrt.f64 (*.f64 im (/.f64 1/2 (pow.f64 re 1/4)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 (pow.f64 re -1/4) im) (pow.f64 re 1/4)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 re -1/8) (*.f64 (sqrt.f64 (*.f64 im 1/2)) (pow.f64 re -1/8))) (*.f64 (pow.f64 re -1/8) (*.f64 (sqrt.f64 (*.f64 im 1/2)) (pow.f64 re -1/8))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 (sqrt.f64 re) -1/4) (*.f64 (sqrt.f64 (*.f64 im 1/2)) (pow.f64 re -1/8))) (*.f64 (pow.f64 (sqrt.f64 re) -1/4) (*.f64 (sqrt.f64 (*.f64 im 1/2)) (pow.f64 re -1/8))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 (pow.f64 re 1/8) -1) (*.f64 (sqrt.f64 (*.f64 im 1/2)) (pow.f64 re -1/8))) (*.f64 (pow.f64 (pow.f64 re 1/8) -1) (*.f64 (sqrt.f64 (*.f64 im 1/2)) (pow.f64 re -1/8))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 (sqrt.f64 (*.f64 im 1/2)) (pow.f64 re -1/8)) (pow.f64 (sqrt.f64 re) -1/4)) (*.f64 (*.f64 (sqrt.f64 (*.f64 im 1/2)) (pow.f64 re -1/8)) (pow.f64 (sqrt.f64 re) -1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 (sqrt.f64 (*.f64 im 1/2)) (pow.f64 re -1/8)) (pow.f64 (pow.f64 re 1/8) -1)) (*.f64 (*.f64 (sqrt.f64 (*.f64 im 1/2)) (pow.f64 re -1/8)) (pow.f64 (pow.f64 re 1/8) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (cbrt.f64 (/.f64 (*.f64 im 1/2) (sqrt.f64 re)))) (cbrt.f64 (/.f64 (*.f64 im 1/2) (sqrt.f64 re)))) (*.f64 (sqrt.f64 (cbrt.f64 (/.f64 (*.f64 im 1/2) (sqrt.f64 re)))) (cbrt.f64 (/.f64 (*.f64 im 1/2) (sqrt.f64 re)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cbrt.f64 (sqrt.f64 (/.f64 (*.f64 im 1/2) (sqrt.f64 re)))) (cbrt.f64 (/.f64 (*.f64 im 1/2) (sqrt.f64 re)))) (*.f64 (cbrt.f64 (sqrt.f64 (/.f64 (*.f64 im 1/2) (sqrt.f64 re)))) (cbrt.f64 (/.f64 (*.f64 im 1/2) (sqrt.f64 re)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (cbrt.f64 (/.f64 (*.f64 im 1/2) (sqrt.f64 re)))) (sqrt.f64 (cbrt.f64 (/.f64 (*.f64 1/4 (*.f64 im im)) re)))) (*.f64 (sqrt.f64 (cbrt.f64 (/.f64 (*.f64 im 1/2) (sqrt.f64 re)))) (sqrt.f64 (cbrt.f64 (/.f64 (*.f64 1/4 (*.f64 im im)) re)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cbrt.f64 (sqrt.f64 (/.f64 (*.f64 im 1/2) (sqrt.f64 re)))) (sqrt.f64 (cbrt.f64 (/.f64 (*.f64 1/4 (*.f64 im im)) re)))) (*.f64 (cbrt.f64 (sqrt.f64 (/.f64 (*.f64 im 1/2) (sqrt.f64 re)))) (sqrt.f64 (cbrt.f64 (/.f64 (*.f64 1/4 (*.f64 im im)) re)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cbrt.f64 (/.f64 (*.f64 im 1/2) (sqrt.f64 re))) (sqrt.f64 (cbrt.f64 (/.f64 (*.f64 im 1/2) (sqrt.f64 re))))) (*.f64 (cbrt.f64 (/.f64 (*.f64 im 1/2) (sqrt.f64 re))) (sqrt.f64 (cbrt.f64 (/.f64 (*.f64 im 1/2) (sqrt.f64 re))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (cbrt.f64 (/.f64 (*.f64 1/4 (*.f64 im im)) re))) (cbrt.f64 (sqrt.f64 (/.f64 (*.f64 im 1/2) (sqrt.f64 re))))) (*.f64 (sqrt.f64 (cbrt.f64 (/.f64 (*.f64 1/4 (*.f64 im im)) re))) (cbrt.f64 (sqrt.f64 (/.f64 (*.f64 im 1/2) (sqrt.f64 re))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (*.f64 im 1/2) (sqrt.f64 re)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (*.f64 im 1/2) (sqrt.f64 re))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (*.f64 im 1/2) (sqrt.f64 re))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (*.f64 im 1/2) (sqrt.f64 re)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (sqrt.f64 re) (*.f64 im 1/2)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (*.f64 im -1/2) (sqrt.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (*.f64 (/.f64 (*.f64 im -1/2) (sqrt.f64 re)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (*.f64 (*.f64 im (/.f64 1/2 (pow.f64 re 1/4))) (neg.f64 (pow.f64 re -1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (*.f64 1 (/.f64 (*.f64 im -1/2) (sqrt.f64 re))))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (pow.f64 re -1/4) (*.f64 -2 (/.f64 (pow.f64 re 1/4) im))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (/.f64 (*.f64 1/4 (*.f64 im im)) re))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 (*.f64 im 1/2) (sqrt.f64 re))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 (*.f64 im 1/2) (sqrt.f64 re)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (*.f64 im 1/2) (sqrt.f64 re)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (*.f64 im (/.f64 1/2 (pow.f64 re 1/4))) 3) (pow.f64 (pow.f64 re -1/4) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (/.f64 (pow.f64 (*.f64 im 1/2) 3) (sqrt.f64 re)) re))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (*.f64 im 1/2) (sqrt.f64 re))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 (*.f64 im 1/2) (sqrt.f64 re))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 (*.f64 im 1/2) (sqrt.f64 re))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (*.f64 im 1/2) (sqrt.f64 re))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (pow.f64 re -1/4))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (pow.f64 re -1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 re -1/4) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 re -1/8) (pow.f64 re -1/8))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 re -1/4)) (cbrt.f64 (pow.f64 re -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 re -1/2)) (cbrt.f64 (pow.f64 re -1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (neg.f64 (pow.f64 re -1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (pow.f64 re -1/4)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (cbrt.f64 (sqrt.f64 re))) (cbrt.f64 (pow.f64 re -1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 -1/4) (pow.f64 re -1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 re) -1/4) (pow.f64 (sqrt.f64 re) -1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (cbrt.f64 re) 2) -1/4) (pow.f64 (cbrt.f64 re) -1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 re 1/8) -1) (pow.f64 (pow.f64 re 1/8) -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (sqrt.f64 re)) -1) (pow.f64 (cbrt.f64 (pow.f64 re 1/4)) -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (cbrt.f64 (pow.f64 re -1/4))) (cbrt.f64 (pow.f64 re -1/4))) (*.f64 (sqrt.f64 (cbrt.f64 (pow.f64 re -1/4))) (cbrt.f64 (pow.f64 re -1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cbrt.f64 (pow.f64 re -1/8)) (cbrt.f64 (pow.f64 re -1/4))) (*.f64 (cbrt.f64 (pow.f64 re -1/8)) (cbrt.f64 (pow.f64 re -1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (cbrt.f64 (pow.f64 re -1/4))) (sqrt.f64 (cbrt.f64 (pow.f64 re -1/2)))) (*.f64 (sqrt.f64 (cbrt.f64 (pow.f64 re -1/4))) (sqrt.f64 (cbrt.f64 (pow.f64 re -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cbrt.f64 (pow.f64 re -1/8)) (sqrt.f64 (cbrt.f64 (pow.f64 re -1/2)))) (*.f64 (cbrt.f64 (pow.f64 re -1/8)) (sqrt.f64 (cbrt.f64 (pow.f64 re -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cbrt.f64 (pow.f64 re -1/4)) (sqrt.f64 (cbrt.f64 (pow.f64 re -1/4)))) (*.f64 (cbrt.f64 (pow.f64 re -1/4)) (sqrt.f64 (cbrt.f64 (pow.f64 re -1/4)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (cbrt.f64 (pow.f64 re -1/2))) (cbrt.f64 (pow.f64 re -1/8))) (*.f64 (sqrt.f64 (cbrt.f64 (pow.f64 re -1/2))) (cbrt.f64 (pow.f64 re -1/8))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 re -1/4)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 re 1/4) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 re -1/4) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 re -1/8) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (pow.f64 re -1/4)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (pow.f64 re -1/4) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 re -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (pow.f64 re -1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (pow.f64 re -1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (pow.f64 re -1/4) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (pow.f64 re -1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 re) -1/4))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 1/4 (log.f64 re)) -1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 re) -1/4) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (pow.f64 re -1/4)))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 im (/.f64 1/2 (pow.f64 re 1/4))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (*.f64 2 (/.f64 (pow.f64 re 1/4) im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 im (/.f64 (pow.f64 re 1/4) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 im (*.f64 1 (/.f64 (pow.f64 re 1/4) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1/2 (/.f64 (pow.f64 re 1/4) im))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1/2 (*.f64 1 (/.f64 (pow.f64 re 1/4) im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 im 1/2) (pow.f64 re 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 im (/.f64 1/2 (pow.f64 re 1/4))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (*.f64 im 1/2)) (/.f64 (pow.f64 re 1/4) (sqrt.f64 (*.f64 im 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (*.f64 im 1/2)) (*.f64 1 (/.f64 (pow.f64 re 1/4) (sqrt.f64 (*.f64 im 1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (cbrt.f64 (*.f64 im 1/2)) 2) (/.f64 (pow.f64 re 1/4) (cbrt.f64 (*.f64 im 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (cbrt.f64 (*.f64 im 1/2)) 2) (*.f64 1 (/.f64 (pow.f64 re 1/4) (cbrt.f64 (*.f64 im 1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 im 1/2) 1) (pow.f64 re 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 re -1/8) (*.f64 im 1/2)) (pow.f64 re 1/8))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 im 1/2) (cbrt.f64 (sqrt.f64 re))) (cbrt.f64 (pow.f64 re 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 im -1/2) (neg.f64 (pow.f64 re 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 1 (cbrt.f64 (sqrt.f64 re))) (*.f64 im 1/2)) (cbrt.f64 (pow.f64 re 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 (*.f64 im 1/2)) 1) (/.f64 (pow.f64 re 1/4) (sqrt.f64 (*.f64 im 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 (cbrt.f64 (*.f64 im 1/2)) 2) 1) (/.f64 (pow.f64 re 1/4) (cbrt.f64 (*.f64 im 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 (*.f64 im 1/2) 1) 1) (pow.f64 re 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (pow.f64 re -1/8) (*.f64 im 1/2)) 1) (pow.f64 re 1/8))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 (*.f64 im 1/2) (cbrt.f64 (sqrt.f64 re))) 1) (cbrt.f64 (pow.f64 re 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 (*.f64 im 1/2)) (*.f64 (sqrt.f64 (*.f64 im 1/2)) (pow.f64 re -1/8))) (pow.f64 re 1/8))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1 (*.f64 (pow.f64 re -1/8) (*.f64 im 1/2))) (pow.f64 re 1/8))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 -1) (*.f64 (pow.f64 re -1/8) (*.f64 im 1/2))) (sqrt.f64 (neg.f64 (pow.f64 re 1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cbrt.f64 (*.f64 im 1/2)) (cbrt.f64 (/.f64 (*.f64 1/4 (*.f64 im im)) (sqrt.f64 re)))) (cbrt.f64 (pow.f64 re 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 -1 im) 1/2) (neg.f64 (pow.f64 re 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1 (/.f64 (*.f64 im 1/2) (cbrt.f64 (pow.f64 re 1/4)))) (cbrt.f64 (sqrt.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 im (/.f64 1/2 (pow.f64 re 1/8))) (pow.f64 re 1/8))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1/2 (*.f64 (pow.f64 re -1/8) im)) (pow.f64 re 1/8))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 im (/.f64 1/2 (cbrt.f64 (pow.f64 re 1/4)))) (cbrt.f64 (sqrt.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1/2 (/.f64 im (cbrt.f64 (pow.f64 re 1/4)))) (cbrt.f64 (sqrt.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 (*.f64 im 1/2)) (sqrt.f64 (/.f64 (*.f64 im 1/2) (sqrt.f64 re)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 (*.f64 im 1/2)) (/.f64 (sqrt.f64 (*.f64 im 1/2)) (cbrt.f64 (pow.f64 re 1/4)))) (cbrt.f64 (sqrt.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 (cbrt.f64 (*.f64 im 1/2)) 2) (/.f64 (cbrt.f64 (*.f64 im 1/2)) (pow.f64 re 1/4))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 (cbrt.f64 (*.f64 im 1/2)) 2) (/.f64 (cbrt.f64 (*.f64 im 1/2)) (pow.f64 re 1/8))) (pow.f64 re 1/8))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 (cbrt.f64 (*.f64 im 1/2)) 2) (cbrt.f64 (*.f64 im (/.f64 1/2 (pow.f64 re 1/4))))) (cbrt.f64 (sqrt.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 im -1/2)) (pow.f64 re 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 im (/.f64 1/2 (pow.f64 re 1/4))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (sqrt.f64 (*.f64 im 1/2)) (pow.f64 re -1/8)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 im (/.f64 1/2 (pow.f64 re 1/4)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 im (/.f64 1/2 (pow.f64 re 1/4))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (*.f64 (pow.f64 re -1/4) (*.f64 im -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (*.f64 im 1/2) (neg.f64 (pow.f64 re 1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (/.f64 (*.f64 1/4 (*.f64 im im)) (sqrt.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (*.f64 im 1/2)) (pow.f64 re -1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 im (/.f64 1/2 (pow.f64 re 1/4))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 im (/.f64 1/2 (pow.f64 re 1/4))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (pow.f64 re -1/4) 3) (pow.f64 (*.f64 im 1/2) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (*.f64 im 1/2) 3) (pow.f64 (pow.f64 re -1/4) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (*.f64 im 1/2) 3) (pow.f64 (pow.f64 re 1/4) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 im (/.f64 1/2 (pow.f64 re 1/4)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 im (/.f64 1/2 (pow.f64 re 1/4)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 im (/.f64 1/2 (pow.f64 re 1/4)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 im (/.f64 1/2 (pow.f64 re 1/4)))))))))

simplify128.0ms (1.4%)

Algorithm
egg-herbie
Rules
1696×distribute-lft-in
1100×associate-*r*
1038×associate-*l*
732×associate-/l*
572×*-commutative
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
03865963
110455457
256855457
Stop Event
node limit
Counts
213 → 232
Calls
Call 1
Inputs
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(pow.f64 (/.f64 1 re) 1/4)
(pow.f64 (/.f64 1 re) 1/4)
(pow.f64 (/.f64 1 re) 1/4)
(pow.f64 (/.f64 1 re) 1/4)
(pow.f64 (/.f64 1 re) 1/4)
(pow.f64 (/.f64 1 re) 1/4)
(pow.f64 (/.f64 1 re) 1/4)
(pow.f64 (/.f64 1 re) 1/4)
(exp.f64 (*.f64 1/4 (+.f64 (log.f64 -1) (log.f64 (/.f64 -1 re)))))
(exp.f64 (*.f64 1/4 (+.f64 (log.f64 -1) (log.f64 (/.f64 -1 re)))))
(exp.f64 (*.f64 1/4 (+.f64 (log.f64 -1) (log.f64 (/.f64 -1 re)))))
(exp.f64 (*.f64 1/4 (+.f64 (log.f64 -1) (log.f64 (/.f64 -1 re)))))
(*.f64 1/2 (*.f64 (pow.f64 (/.f64 1 re) 1/4) im))
(*.f64 1/2 (*.f64 (pow.f64 (/.f64 1 re) 1/4) im))
(*.f64 1/2 (*.f64 (pow.f64 (/.f64 1 re) 1/4) im))
(*.f64 1/2 (*.f64 (pow.f64 (/.f64 1 re) 1/4) im))
(*.f64 1/2 (*.f64 (pow.f64 (/.f64 1 re) 1/4) im))
(*.f64 1/2 (*.f64 (pow.f64 (/.f64 1 re) 1/4) im))
(*.f64 1/2 (*.f64 (pow.f64 (/.f64 1 re) 1/4) im))
(*.f64 1/2 (*.f64 (pow.f64 (/.f64 1 re) 1/4) im))
(*.f64 1/2 (*.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 -1) (log.f64 (/.f64 -1 re))))) im))
(*.f64 1/2 (*.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 -1) (log.f64 (/.f64 -1 re))))) im))
(*.f64 1/2 (*.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 -1) (log.f64 (/.f64 -1 re))))) im))
(*.f64 1/2 (*.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 -1) (log.f64 (/.f64 -1 re))))) im))
(*.f64 1/2 (*.f64 (pow.f64 (/.f64 1 re) 1/4) im))
(*.f64 1/2 (*.f64 (pow.f64 (/.f64 1 re) 1/4) im))
(*.f64 1/2 (*.f64 (pow.f64 (/.f64 1 re) 1/4) im))
(*.f64 1/2 (*.f64 (pow.f64 (/.f64 1 re) 1/4) im))
(*.f64 1/2 (*.f64 (pow.f64 (/.f64 1 re) 1/4) im))
(*.f64 1/2 (*.f64 (pow.f64 (/.f64 1 re) 1/4) im))
(*.f64 1/2 (*.f64 (pow.f64 (/.f64 1 re) 1/4) im))
(*.f64 1/2 (*.f64 (pow.f64 (/.f64 1 re) 1/4) im))
(*.f64 1/2 (*.f64 (pow.f64 (/.f64 1 re) 1/4) im))
(*.f64 1/2 (*.f64 (pow.f64 (/.f64 1 re) 1/4) im))
(*.f64 1/2 (*.f64 (pow.f64 (/.f64 1 re) 1/4) im))
(*.f64 1/2 (*.f64 (pow.f64 (/.f64 1 re) 1/4) im))
(-.f64 (exp.f64 (log1p.f64 (/.f64 (*.f64 im 1/2) (sqrt.f64 re)))) 1)
(*.f64 1 (/.f64 (*.f64 im 1/2) (sqrt.f64 re)))
(*.f64 (pow.f64 re -1/4) (*.f64 im (/.f64 1/2 (pow.f64 re 1/4))))
(*.f64 (*.f64 im 1/2) (pow.f64 re -1/2))
(*.f64 (*.f64 im (/.f64 1/2 (pow.f64 re 1/4))) (pow.f64 re -1/4))
(*.f64 (/.f64 (*.f64 im 1/2) (sqrt.f64 re)) 1)
(*.f64 (*.f64 (sqrt.f64 (*.f64 im 1/2)) (pow.f64 re -1/8)) (*.f64 (sqrt.f64 (/.f64 (*.f64 im 1/2) (sqrt.f64 re))) (pow.f64 re -1/8)))
(*.f64 (sqrt.f64 (/.f64 (*.f64 im 1/2) (sqrt.f64 re))) (sqrt.f64 (/.f64 (*.f64 im 1/2) (sqrt.f64 re))))
(*.f64 (pow.f64 re -1/8) (*.f64 (*.f64 im (/.f64 1/2 (pow.f64 re 1/4))) (pow.f64 re -1/8)))
(*.f64 (cbrt.f64 (/.f64 (*.f64 1/4 (*.f64 im im)) (sqrt.f64 re))) (*.f64 (cbrt.f64 (*.f64 im (/.f64 1/2 (pow.f64 re 1/4)))) (pow.f64 re -1/4)))
(*.f64 (cbrt.f64 (/.f64 (*.f64 im 1/2) (sqrt.f64 re))) (cbrt.f64 (/.f64 (*.f64 1/4 (*.f64 im im)) re)))
(*.f64 (cbrt.f64 (/.f64 (*.f64 1/4 (*.f64 im im)) re)) (cbrt.f64 (/.f64 (*.f64 im 1/2) (sqrt.f64 re))))
(*.f64 (pow.f64 re -1/2) (*.f64 im 1/2))
(*.f64 (*.f64 (pow.f64 re -1/4) im) (/.f64 1/2 (pow.f64 re 1/4)))
(*.f64 (*.f64 (pow.f64 re -1/4) (*.f64 im -1/2)) (neg.f64 (pow.f64 re -1/4)))
(*.f64 (*.f64 (*.f64 im (/.f64 1/2 (pow.f64 re 1/4))) (cbrt.f64 (pow.f64 re -1/2))) (cbrt.f64 (pow.f64 re -1/4)))
(*.f64 (*.f64 (sqrt.f64 (*.f64 im 1/2)) (pow.f64 re -1/4)) (*.f64 (sqrt.f64 (*.f64 im 1/2)) (pow.f64 re -1/4)))
(*.f64 (*.f64 (sqrt.f64 (/.f64 (*.f64 im 1/2) (sqrt.f64 re))) (pow.f64 re -1/8)) (*.f64 (sqrt.f64 (*.f64 im 1/2)) (pow.f64 re -1/8)))
(*.f64 (/.f64 -1 (sqrt.f64 re)) (*.f64 im -1/2))
(*.f64 (neg.f64 (pow.f64 re -1/4)) (*.f64 (pow.f64 re -1/4) (*.f64 im -1/2)))
(*.f64 (/.f64 1 (cbrt.f64 (sqrt.f64 re))) (/.f64 (*.f64 im (/.f64 1/2 (pow.f64 re 1/4))) (cbrt.f64 (pow.f64 re 1/4))))
(*.f64 (/.f64 (*.f64 im 1/2) 1) (pow.f64 re -1/2))
(*.f64 (*.f64 (pow.f64 re -1/8) (*.f64 im 1/2)) (/.f64 (pow.f64 re -1/8) (pow.f64 re 1/4)))
(*.f64 (/.f64 (*.f64 im 1/2) (cbrt.f64 (sqrt.f64 re))) (/.f64 (pow.f64 re -1/4) (cbrt.f64 (pow.f64 re 1/4))))
(*.f64 (*.f64 (*.f64 im (/.f64 1/2 (pow.f64 re 1/4))) (pow.f64 re -1/8)) (pow.f64 re -1/8))
(*.f64 (/.f64 im (*.f64 (cbrt.f64 (sqrt.f64 re)) (/.f64 (pow.f64 re 1/4) 1/2))) (cbrt.f64 (pow.f64 re -1/4)))
(*.f64 (/.f64 (*.f64 im -1/2) (sqrt.f64 re)) -1)
(*.f64 (/.f64 (pow.f64 re -1/8) (pow.f64 re 1/4)) (*.f64 (pow.f64 re -1/8) (*.f64 im 1/2)))
(*.f64 (/.f64 (pow.f64 re -1/4) (cbrt.f64 (sqrt.f64 re))) (/.f64 (*.f64 im 1/2) (cbrt.f64 (pow.f64 re 1/4))))
(*.f64 (/.f64 (*.f64 (sqrt.f64 (*.f64 im 1/2)) (pow.f64 re -1/8)) (cbrt.f64 (sqrt.f64 re))) (/.f64 (*.f64 (sqrt.f64 (*.f64 im 1/2)) (pow.f64 re -1/8)) (cbrt.f64 (pow.f64 re 1/4))))
(*.f64 (/.f64 (cbrt.f64 (/.f64 (*.f64 1/4 (*.f64 im im)) (sqrt.f64 re))) 1) (/.f64 (cbrt.f64 (*.f64 im (/.f64 1/2 (pow.f64 re 1/4)))) (pow.f64 re 1/4)))
(*.f64 (/.f64 (cbrt.f64 (/.f64 (*.f64 1/4 (*.f64 im im)) (sqrt.f64 re))) (pow.f64 re 1/8)) (/.f64 (cbrt.f64 (*.f64 im (/.f64 1/2 (pow.f64 re 1/4)))) (pow.f64 re 1/8)))
(*.f64 (/.f64 (cbrt.f64 (/.f64 (*.f64 1/4 (*.f64 im im)) (sqrt.f64 re))) (cbrt.f64 (sqrt.f64 re))) (cbrt.f64 (/.f64 (*.f64 im 1/2) (sqrt.f64 re))))
(*.f64 (/.f64 im (*.f64 (pow.f64 re 1/8) (pow.f64 re 1/4))) (/.f64 1/2 (pow.f64 re 1/8)))
(*.f64 (/.f64 im (*.f64 (cbrt.f64 (sqrt.f64 re)) (pow.f64 re 1/4))) (/.f64 1/2 (cbrt.f64 (pow.f64 re 1/4))))
(*.f64 (/.f64 1 (/.f64 (pow.f64 re 1/8) (sqrt.f64 (/.f64 (*.f64 im 1/2) (sqrt.f64 re))))) (*.f64 (sqrt.f64 (*.f64 im 1/2)) (pow.f64 re -1/8)))
(*.f64 (/.f64 1 (/.f64 (pow.f64 re 1/4) (cbrt.f64 (/.f64 (*.f64 1/4 (*.f64 im im)) (sqrt.f64 re))))) (cbrt.f64 (*.f64 im (/.f64 1/2 (pow.f64 re 1/4)))))
(*.f64 (/.f64 1 (*.f64 (/.f64 (pow.f64 re 1/4) im) (pow.f64 re 1/4))) 1/2)
(*.f64 (/.f64 (pow.f64 re -1/4) (/.f64 (pow.f64 re 1/4) im)) 1/2)
(*.f64 (/.f64 (pow.f64 re -1/4) (/.f64 (pow.f64 re 1/4) 1/2)) im)
(*.f64 (/.f64 (pow.f64 re -1/4) (/.f64 (pow.f64 re 1/4) (sqrt.f64 (*.f64 im 1/2)))) (sqrt.f64 (*.f64 im 1/2)))
(*.f64 (/.f64 (pow.f64 re -1/4) (/.f64 (pow.f64 re 1/4) (pow.f64 (cbrt.f64 (*.f64 im 1/2)) 2))) (cbrt.f64 (*.f64 im 1/2)))
(*.f64 (/.f64 (cbrt.f64 (/.f64 (*.f64 1/4 (*.f64 im im)) (sqrt.f64 re))) (pow.f64 re 1/4)) (cbrt.f64 (*.f64 im (/.f64 1/2 (pow.f64 re 1/4)))))
(*.f64 (/.f64 (*.f64 (pow.f64 re -1/4) im) (pow.f64 re 1/4)) 1/2)
(*.f64 (*.f64 (pow.f64 re -1/8) (*.f64 (sqrt.f64 (*.f64 im 1/2)) (pow.f64 re -1/8))) (*.f64 (pow.f64 re -1/8) (*.f64 (sqrt.f64 (*.f64 im 1/2)) (pow.f64 re -1/8))))
(*.f64 (*.f64 (pow.f64 (sqrt.f64 re) -1/4) (*.f64 (sqrt.f64 (*.f64 im 1/2)) (pow.f64 re -1/8))) (*.f64 (pow.f64 (sqrt.f64 re) -1/4) (*.f64 (sqrt.f64 (*.f64 im 1/2)) (pow.f64 re -1/8))))
(*.f64 (*.f64 (pow.f64 (pow.f64 re 1/8) -1) (*.f64 (sqrt.f64 (*.f64 im 1/2)) (pow.f64 re -1/8))) (*.f64 (pow.f64 (pow.f64 re 1/8) -1) (*.f64 (sqrt.f64 (*.f64 im 1/2)) (pow.f64 re -1/8))))
(*.f64 (*.f64 (*.f64 (sqrt.f64 (*.f64 im 1/2)) (pow.f64 re -1/8)) (pow.f64 (sqrt.f64 re) -1/4)) (*.f64 (*.f64 (sqrt.f64 (*.f64 im 1/2)) (pow.f64 re -1/8)) (pow.f64 (sqrt.f64 re) -1/4)))
(*.f64 (*.f64 (*.f64 (sqrt.f64 (*.f64 im 1/2)) (pow.f64 re -1/8)) (pow.f64 (pow.f64 re 1/8) -1)) (*.f64 (*.f64 (sqrt.f64 (*.f64 im 1/2)) (pow.f64 re -1/8)) (pow.f64 (pow.f64 re 1/8) -1)))
(*.f64 (*.f64 (sqrt.f64 (cbrt.f64 (/.f64 (*.f64 im 1/2) (sqrt.f64 re)))) (cbrt.f64 (/.f64 (*.f64 im 1/2) (sqrt.f64 re)))) (*.f64 (sqrt.f64 (cbrt.f64 (/.f64 (*.f64 im 1/2) (sqrt.f64 re)))) (cbrt.f64 (/.f64 (*.f64 im 1/2) (sqrt.f64 re)))))
(*.f64 (*.f64 (cbrt.f64 (sqrt.f64 (/.f64 (*.f64 im 1/2) (sqrt.f64 re)))) (cbrt.f64 (/.f64 (*.f64 im 1/2) (sqrt.f64 re)))) (*.f64 (cbrt.f64 (sqrt.f64 (/.f64 (*.f64 im 1/2) (sqrt.f64 re)))) (cbrt.f64 (/.f64 (*.f64 im 1/2) (sqrt.f64 re)))))
(*.f64 (*.f64 (sqrt.f64 (cbrt.f64 (/.f64 (*.f64 im 1/2) (sqrt.f64 re)))) (sqrt.f64 (cbrt.f64 (/.f64 (*.f64 1/4 (*.f64 im im)) re)))) (*.f64 (sqrt.f64 (cbrt.f64 (/.f64 (*.f64 im 1/2) (sqrt.f64 re)))) (sqrt.f64 (cbrt.f64 (/.f64 (*.f64 1/4 (*.f64 im im)) re)))))
(*.f64 (*.f64 (cbrt.f64 (sqrt.f64 (/.f64 (*.f64 im 1/2) (sqrt.f64 re)))) (sqrt.f64 (cbrt.f64 (/.f64 (*.f64 1/4 (*.f64 im im)) re)))) (*.f64 (cbrt.f64 (sqrt.f64 (/.f64 (*.f64 im 1/2) (sqrt.f64 re)))) (sqrt.f64 (cbrt.f64 (/.f64 (*.f64 1/4 (*.f64 im im)) re)))))
(*.f64 (*.f64 (cbrt.f64 (/.f64 (*.f64 im 1/2) (sqrt.f64 re))) (sqrt.f64 (cbrt.f64 (/.f64 (*.f64 im 1/2) (sqrt.f64 re))))) (*.f64 (cbrt.f64 (/.f64 (*.f64 im 1/2) (sqrt.f64 re))) (sqrt.f64 (cbrt.f64 (/.f64 (*.f64 im 1/2) (sqrt.f64 re))))))
(*.f64 (*.f64 (sqrt.f64 (cbrt.f64 (/.f64 (*.f64 1/4 (*.f64 im im)) re))) (cbrt.f64 (sqrt.f64 (/.f64 (*.f64 im 1/2) (sqrt.f64 re))))) (*.f64 (sqrt.f64 (cbrt.f64 (/.f64 (*.f64 1/4 (*.f64 im im)) re))) (cbrt.f64 (sqrt.f64 (/.f64 (*.f64 im 1/2) (sqrt.f64 re))))))
(pow.f64 (/.f64 (*.f64 im 1/2) (sqrt.f64 re)) 1)
(pow.f64 (sqrt.f64 (/.f64 (*.f64 im 1/2) (sqrt.f64 re))) 2)
(pow.f64 (cbrt.f64 (/.f64 (*.f64 im 1/2) (sqrt.f64 re))) 3)
(pow.f64 (pow.f64 (/.f64 (*.f64 im 1/2) (sqrt.f64 re)) 3) 1/3)
(pow.f64 (/.f64 (sqrt.f64 re) (*.f64 im 1/2)) -1)
(neg.f64 (/.f64 (*.f64 im -1/2) (sqrt.f64 re)))
(neg.f64 (*.f64 (/.f64 (*.f64 im -1/2) (sqrt.f64 re)) 1))
(neg.f64 (*.f64 (*.f64 im (/.f64 1/2 (pow.f64 re 1/4))) (neg.f64 (pow.f64 re -1/4))))
(neg.f64 (*.f64 1 (/.f64 (*.f64 im -1/2) (sqrt.f64 re))))
(neg.f64 (/.f64 (pow.f64 re -1/4) (*.f64 -2 (/.f64 (pow.f64 re 1/4) im))))
(sqrt.f64 (/.f64 (*.f64 1/4 (*.f64 im im)) re))
(log.f64 (exp.f64 (/.f64 (*.f64 im 1/2) (sqrt.f64 re))))
(log.f64 (+.f64 1 (expm1.f64 (/.f64 (*.f64 im 1/2) (sqrt.f64 re)))))
(cbrt.f64 (pow.f64 (/.f64 (*.f64 im 1/2) (sqrt.f64 re)) 3))
(cbrt.f64 (*.f64 (pow.f64 (*.f64 im (/.f64 1/2 (pow.f64 re 1/4))) 3) (pow.f64 (pow.f64 re -1/4) 3)))
(cbrt.f64 (/.f64 (/.f64 (pow.f64 (*.f64 im 1/2) 3) (sqrt.f64 re)) re))
(expm1.f64 (log1p.f64 (/.f64 (*.f64 im 1/2) (sqrt.f64 re))))
(exp.f64 (log.f64 (/.f64 (*.f64 im 1/2) (sqrt.f64 re))))
(exp.f64 (*.f64 (log.f64 (/.f64 (*.f64 im 1/2) (sqrt.f64 re))) 1))
(log1p.f64 (expm1.f64 (/.f64 (*.f64 im 1/2) (sqrt.f64 re))))
(-.f64 (exp.f64 (log1p.f64 (pow.f64 re -1/4))) 1)
(*.f64 1 (pow.f64 re -1/4))
(*.f64 (pow.f64 re -1/4) 1)
(*.f64 (pow.f64 re -1/8) (pow.f64 re -1/8))
(*.f64 (cbrt.f64 (pow.f64 re -1/4)) (cbrt.f64 (pow.f64 re -1/2)))
(*.f64 (cbrt.f64 (pow.f64 re -1/2)) (cbrt.f64 (pow.f64 re -1/4)))
(*.f64 -1 (neg.f64 (pow.f64 re -1/4)))
(*.f64 (neg.f64 (pow.f64 re -1/4)) -1)
(*.f64 (/.f64 1 (cbrt.f64 (sqrt.f64 re))) (cbrt.f64 (pow.f64 re -1/4)))
(*.f64 (pow.f64 1 -1/4) (pow.f64 re -1/4))
(*.f64 (pow.f64 (sqrt.f64 re) -1/4) (pow.f64 (sqrt.f64 re) -1/4))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 re) 2) -1/4) (pow.f64 (cbrt.f64 re) -1/4))
(*.f64 (pow.f64 (pow.f64 re 1/8) -1) (pow.f64 (pow.f64 re 1/8) -1))
(*.f64 (pow.f64 (cbrt.f64 (sqrt.f64 re)) -1) (pow.f64 (cbrt.f64 (pow.f64 re 1/4)) -1))
(*.f64 (*.f64 (sqrt.f64 (cbrt.f64 (pow.f64 re -1/4))) (cbrt.f64 (pow.f64 re -1/4))) (*.f64 (sqrt.f64 (cbrt.f64 (pow.f64 re -1/4))) (cbrt.f64 (pow.f64 re -1/4))))
(*.f64 (*.f64 (cbrt.f64 (pow.f64 re -1/8)) (cbrt.f64 (pow.f64 re -1/4))) (*.f64 (cbrt.f64 (pow.f64 re -1/8)) (cbrt.f64 (pow.f64 re -1/4))))
(*.f64 (*.f64 (sqrt.f64 (cbrt.f64 (pow.f64 re -1/4))) (sqrt.f64 (cbrt.f64 (pow.f64 re -1/2)))) (*.f64 (sqrt.f64 (cbrt.f64 (pow.f64 re -1/4))) (sqrt.f64 (cbrt.f64 (pow.f64 re -1/2)))))
(*.f64 (*.f64 (cbrt.f64 (pow.f64 re -1/8)) (sqrt.f64 (cbrt.f64 (pow.f64 re -1/2)))) (*.f64 (cbrt.f64 (pow.f64 re -1/8)) (sqrt.f64 (cbrt.f64 (pow.f64 re -1/2)))))
(*.f64 (*.f64 (cbrt.f64 (pow.f64 re -1/4)) (sqrt.f64 (cbrt.f64 (pow.f64 re -1/4)))) (*.f64 (cbrt.f64 (pow.f64 re -1/4)) (sqrt.f64 (cbrt.f64 (pow.f64 re -1/4)))))
(*.f64 (*.f64 (sqrt.f64 (cbrt.f64 (pow.f64 re -1/2))) (cbrt.f64 (pow.f64 re -1/8))) (*.f64 (sqrt.f64 (cbrt.f64 (pow.f64 re -1/2))) (cbrt.f64 (pow.f64 re -1/8))))
(pow.f64 re -1/4)
(pow.f64 (pow.f64 re 1/4) -1)
(pow.f64 (pow.f64 re -1/4) 1)
(pow.f64 (pow.f64 re -1/8) 2)
(pow.f64 (cbrt.f64 (pow.f64 re -1/4)) 3)
(pow.f64 (pow.f64 (pow.f64 re -1/4) 3) 1/3)
(sqrt.f64 (pow.f64 re -1/2))
(log.f64 (exp.f64 (pow.f64 re -1/4)))
(log.f64 (+.f64 1 (expm1.f64 (pow.f64 re -1/4))))
(cbrt.f64 (pow.f64 (pow.f64 re -1/4) 3))
(expm1.f64 (log1p.f64 (pow.f64 re -1/4)))
(exp.f64 (*.f64 (log.f64 re) -1/4))
(exp.f64 (*.f64 (*.f64 1/4 (log.f64 re)) -1))
(exp.f64 (*.f64 (*.f64 (log.f64 re) -1/4) 1))
(log1p.f64 (expm1.f64 (pow.f64 re -1/4)))
(-.f64 (exp.f64 (log1p.f64 (*.f64 im (/.f64 1/2 (pow.f64 re 1/4))))) 1)
(/.f64 1 (*.f64 2 (/.f64 (pow.f64 re 1/4) im)))
(/.f64 im (/.f64 (pow.f64 re 1/4) 1/2))
(/.f64 im (*.f64 1 (/.f64 (pow.f64 re 1/4) 1/2)))
(/.f64 1/2 (/.f64 (pow.f64 re 1/4) im))
(/.f64 1/2 (*.f64 1 (/.f64 (pow.f64 re 1/4) im)))
(/.f64 (*.f64 im 1/2) (pow.f64 re 1/4))
(/.f64 (*.f64 im (/.f64 1/2 (pow.f64 re 1/4))) 1)
(/.f64 (sqrt.f64 (*.f64 im 1/2)) (/.f64 (pow.f64 re 1/4) (sqrt.f64 (*.f64 im 1/2))))
(/.f64 (sqrt.f64 (*.f64 im 1/2)) (*.f64 1 (/.f64 (pow.f64 re 1/4) (sqrt.f64 (*.f64 im 1/2)))))
(/.f64 (pow.f64 (cbrt.f64 (*.f64 im 1/2)) 2) (/.f64 (pow.f64 re 1/4) (cbrt.f64 (*.f64 im 1/2))))
(/.f64 (pow.f64 (cbrt.f64 (*.f64 im 1/2)) 2) (*.f64 1 (/.f64 (pow.f64 re 1/4) (cbrt.f64 (*.f64 im 1/2)))))
(/.f64 (/.f64 (*.f64 im 1/2) 1) (pow.f64 re 1/4))
(/.f64 (*.f64 (pow.f64 re -1/8) (*.f64 im 1/2)) (pow.f64 re 1/8))
(/.f64 (/.f64 (*.f64 im 1/2) (cbrt.f64 (sqrt.f64 re))) (cbrt.f64 (pow.f64 re 1/4)))
(/.f64 (*.f64 im -1/2) (neg.f64 (pow.f64 re 1/4)))
(/.f64 (*.f64 (/.f64 1 (cbrt.f64 (sqrt.f64 re))) (*.f64 im 1/2)) (cbrt.f64 (pow.f64 re 1/4)))
(/.f64 (*.f64 (sqrt.f64 (*.f64 im 1/2)) 1) (/.f64 (pow.f64 re 1/4) (sqrt.f64 (*.f64 im 1/2))))
(/.f64 (*.f64 (pow.f64 (cbrt.f64 (*.f64 im 1/2)) 2) 1) (/.f64 (pow.f64 re 1/4) (cbrt.f64 (*.f64 im 1/2))))
(/.f64 (*.f64 (/.f64 (*.f64 im 1/2) 1) 1) (pow.f64 re 1/4))
(/.f64 (*.f64 (*.f64 (pow.f64 re -1/8) (*.f64 im 1/2)) 1) (pow.f64 re 1/8))
(/.f64 (*.f64 (/.f64 (*.f64 im 1/2) (cbrt.f64 (sqrt.f64 re))) 1) (cbrt.f64 (pow.f64 re 1/4)))
(/.f64 (*.f64 (sqrt.f64 (*.f64 im 1/2)) (*.f64 (sqrt.f64 (*.f64 im 1/2)) (pow.f64 re -1/8))) (pow.f64 re 1/8))
(/.f64 (*.f64 1 (*.f64 (pow.f64 re -1/8) (*.f64 im 1/2))) (pow.f64 re 1/8))
(/.f64 (*.f64 (sqrt.f64 -1) (*.f64 (pow.f64 re -1/8) (*.f64 im 1/2))) (sqrt.f64 (neg.f64 (pow.f64 re 1/4))))
(/.f64 (*.f64 (cbrt.f64 (*.f64 im 1/2)) (cbrt.f64 (/.f64 (*.f64 1/4 (*.f64 im im)) (sqrt.f64 re)))) (cbrt.f64 (pow.f64 re 1/4)))
(/.f64 (*.f64 (*.f64 -1 im) 1/2) (neg.f64 (pow.f64 re 1/4)))
(/.f64 (*.f64 1 (/.f64 (*.f64 im 1/2) (cbrt.f64 (pow.f64 re 1/4)))) (cbrt.f64 (sqrt.f64 re)))
(/.f64 (*.f64 im (/.f64 1/2 (pow.f64 re 1/8))) (pow.f64 re 1/8))
(/.f64 (*.f64 1/2 (*.f64 (pow.f64 re -1/8) im)) (pow.f64 re 1/8))
(/.f64 (*.f64 im (/.f64 1/2 (cbrt.f64 (pow.f64 re 1/4)))) (cbrt.f64 (sqrt.f64 re)))
(/.f64 (*.f64 1/2 (/.f64 im (cbrt.f64 (pow.f64 re 1/4)))) (cbrt.f64 (sqrt.f64 re)))
(/.f64 (*.f64 (sqrt.f64 (*.f64 im 1/2)) (sqrt.f64 (/.f64 (*.f64 im 1/2) (sqrt.f64 re)))) 1)
(/.f64 (*.f64 (sqrt.f64 (*.f64 im 1/2)) (/.f64 (sqrt.f64 (*.f64 im 1/2)) (cbrt.f64 (pow.f64 re 1/4)))) (cbrt.f64 (sqrt.f64 re)))
(/.f64 (*.f64 (pow.f64 (cbrt.f64 (*.f64 im 1/2)) 2) (/.f64 (cbrt.f64 (*.f64 im 1/2)) (pow.f64 re 1/4))) 1)
(/.f64 (*.f64 (pow.f64 (cbrt.f64 (*.f64 im 1/2)) 2) (/.f64 (cbrt.f64 (*.f64 im 1/2)) (pow.f64 re 1/8))) (pow.f64 re 1/8))
(/.f64 (*.f64 (pow.f64 (cbrt.f64 (*.f64 im 1/2)) 2) (cbrt.f64 (*.f64 im (/.f64 1/2 (pow.f64 re 1/4))))) (cbrt.f64 (sqrt.f64 re)))
(/.f64 (neg.f64 (*.f64 im -1/2)) (pow.f64 re 1/4))
(pow.f64 (*.f64 im (/.f64 1/2 (pow.f64 re 1/4))) 1)
(pow.f64 (*.f64 (sqrt.f64 (*.f64 im 1/2)) (pow.f64 re -1/8)) 2)
(pow.f64 (cbrt.f64 (*.f64 im (/.f64 1/2 (pow.f64 re 1/4)))) 3)
(pow.f64 (pow.f64 (*.f64 im (/.f64 1/2 (pow.f64 re 1/4))) 3) 1/3)
(neg.f64 (*.f64 (pow.f64 re -1/4) (*.f64 im -1/2)))
(neg.f64 (/.f64 (*.f64 im 1/2) (neg.f64 (pow.f64 re 1/4))))
(sqrt.f64 (/.f64 (*.f64 1/4 (*.f64 im im)) (sqrt.f64 re)))
(log.f64 (pow.f64 (exp.f64 (*.f64 im 1/2)) (pow.f64 re -1/4)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 im (/.f64 1/2 (pow.f64 re 1/4))))))
(cbrt.f64 (pow.f64 (*.f64 im (/.f64 1/2 (pow.f64 re 1/4))) 3))
(cbrt.f64 (*.f64 (pow.f64 (pow.f64 re -1/4) 3) (pow.f64 (*.f64 im 1/2) 3)))
(cbrt.f64 (*.f64 (pow.f64 (*.f64 im 1/2) 3) (pow.f64 (pow.f64 re -1/4) 3)))
(cbrt.f64 (/.f64 (pow.f64 (*.f64 im 1/2) 3) (pow.f64 (pow.f64 re 1/4) 3)))
(expm1.f64 (log1p.f64 (*.f64 im (/.f64 1/2 (pow.f64 re 1/4)))))
(exp.f64 (log.f64 (*.f64 im (/.f64 1/2 (pow.f64 re 1/4)))))
(exp.f64 (*.f64 (log.f64 (*.f64 im (/.f64 1/2 (pow.f64 re 1/4)))) 1))
(log1p.f64 (expm1.f64 (*.f64 im (/.f64 1/2 (pow.f64 re 1/4)))))
Outputs
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(pow.f64 (/.f64 1 re) 1/4)
(pow.f64 (/.f64 1 re) 1/4)
(pow.f64 (/.f64 1 re) 1/4)
(pow.f64 (/.f64 1 re) 1/4)
(pow.f64 (/.f64 1 re) 1/4)
(pow.f64 (/.f64 1 re) 1/4)
(pow.f64 (/.f64 1 re) 1/4)
(pow.f64 (/.f64 1 re) 1/4)
(exp.f64 (*.f64 1/4 (+.f64 (log.f64 -1) (log.f64 (/.f64 -1 re)))))
(pow.f64 (exp.f64 1/4) (+.f64 (log.f64 -1) (log.f64 (/.f64 -1 re))))
(exp.f64 (*.f64 1/4 (+.f64 (log.f64 -1) (log.f64 (/.f64 -1 re)))))
(pow.f64 (exp.f64 1/4) (+.f64 (log.f64 -1) (log.f64 (/.f64 -1 re))))
(exp.f64 (*.f64 1/4 (+.f64 (log.f64 -1) (log.f64 (/.f64 -1 re)))))
(pow.f64 (exp.f64 1/4) (+.f64 (log.f64 -1) (log.f64 (/.f64 -1 re))))
(exp.f64 (*.f64 1/4 (+.f64 (log.f64 -1) (log.f64 (/.f64 -1 re)))))
(pow.f64 (exp.f64 1/4) (+.f64 (log.f64 -1) (log.f64 (/.f64 -1 re))))
(*.f64 1/2 (*.f64 (pow.f64 (/.f64 1 re) 1/4) im))
(*.f64 1/2 (*.f64 im (pow.f64 (/.f64 1 re) 1/4)))
(*.f64 1/2 (*.f64 (pow.f64 (/.f64 1 re) 1/4) im))
(*.f64 1/2 (*.f64 im (pow.f64 (/.f64 1 re) 1/4)))
(*.f64 1/2 (*.f64 (pow.f64 (/.f64 1 re) 1/4) im))
(*.f64 1/2 (*.f64 im (pow.f64 (/.f64 1 re) 1/4)))
(*.f64 1/2 (*.f64 (pow.f64 (/.f64 1 re) 1/4) im))
(*.f64 1/2 (*.f64 im (pow.f64 (/.f64 1 re) 1/4)))
(*.f64 1/2 (*.f64 (pow.f64 (/.f64 1 re) 1/4) im))
(*.f64 1/2 (*.f64 im (pow.f64 (/.f64 1 re) 1/4)))
(*.f64 1/2 (*.f64 (pow.f64 (/.f64 1 re) 1/4) im))
(*.f64 1/2 (*.f64 im (pow.f64 (/.f64 1 re) 1/4)))
(*.f64 1/2 (*.f64 (pow.f64 (/.f64 1 re) 1/4) im))
(*.f64 1/2 (*.f64 im (pow.f64 (/.f64 1 re) 1/4)))
(*.f64 1/2 (*.f64 (pow.f64 (/.f64 1 re) 1/4) im))
(*.f64 1/2 (*.f64 im (pow.f64 (/.f64 1 re) 1/4)))
(*.f64 1/2 (*.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 -1) (log.f64 (/.f64 -1 re))))) im))
(*.f64 (*.f64 1/2 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 -1) (log.f64 (/.f64 -1 re))))) im)
(*.f64 im (*.f64 1/2 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 -1) (log.f64 (/.f64 -1 re))))))
(*.f64 1/2 (*.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 -1) (log.f64 (/.f64 -1 re))))) im))
(*.f64 (*.f64 1/2 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 -1) (log.f64 (/.f64 -1 re))))) im)
(*.f64 im (*.f64 1/2 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 -1) (log.f64 (/.f64 -1 re))))))
(*.f64 1/2 (*.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 -1) (log.f64 (/.f64 -1 re))))) im))
(*.f64 (*.f64 1/2 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 -1) (log.f64 (/.f64 -1 re))))) im)
(*.f64 im (*.f64 1/2 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 -1) (log.f64 (/.f64 -1 re))))))
(*.f64 1/2 (*.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 -1) (log.f64 (/.f64 -1 re))))) im))
(*.f64 (*.f64 1/2 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 -1) (log.f64 (/.f64 -1 re))))) im)
(*.f64 im (*.f64 1/2 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 -1) (log.f64 (/.f64 -1 re))))))
(*.f64 1/2 (*.f64 (pow.f64 (/.f64 1 re) 1/4) im))
(*.f64 1/2 (*.f64 im (pow.f64 (/.f64 1 re) 1/4)))
(*.f64 1/2 (*.f64 (pow.f64 (/.f64 1 re) 1/4) im))
(*.f64 1/2 (*.f64 im (pow.f64 (/.f64 1 re) 1/4)))
(*.f64 1/2 (*.f64 (pow.f64 (/.f64 1 re) 1/4) im))
(*.f64 1/2 (*.f64 im (pow.f64 (/.f64 1 re) 1/4)))
(*.f64 1/2 (*.f64 (pow.f64 (/.f64 1 re) 1/4) im))
(*.f64 1/2 (*.f64 im (pow.f64 (/.f64 1 re) 1/4)))
(*.f64 1/2 (*.f64 (pow.f64 (/.f64 1 re) 1/4) im))
(*.f64 1/2 (*.f64 im (pow.f64 (/.f64 1 re) 1/4)))
(*.f64 1/2 (*.f64 (pow.f64 (/.f64 1 re) 1/4) im))
(*.f64 1/2 (*.f64 im (pow.f64 (/.f64 1 re) 1/4)))
(*.f64 1/2 (*.f64 (pow.f64 (/.f64 1 re) 1/4) im))
(*.f64 1/2 (*.f64 im (pow.f64 (/.f64 1 re) 1/4)))
(*.f64 1/2 (*.f64 (pow.f64 (/.f64 1 re) 1/4) im))
(*.f64 1/2 (*.f64 im (pow.f64 (/.f64 1 re) 1/4)))
(*.f64 1/2 (*.f64 (pow.f64 (/.f64 1 re) 1/4) im))
(*.f64 1/2 (*.f64 im (pow.f64 (/.f64 1 re) 1/4)))
(*.f64 1/2 (*.f64 (pow.f64 (/.f64 1 re) 1/4) im))
(*.f64 1/2 (*.f64 im (pow.f64 (/.f64 1 re) 1/4)))
(*.f64 1/2 (*.f64 (pow.f64 (/.f64 1 re) 1/4) im))
(*.f64 1/2 (*.f64 im (pow.f64 (/.f64 1 re) 1/4)))
(*.f64 1/2 (*.f64 (pow.f64 (/.f64 1 re) 1/4) im))
(*.f64 1/2 (*.f64 im (pow.f64 (/.f64 1 re) 1/4)))
(-.f64 (exp.f64 (log1p.f64 (/.f64 (*.f64 im 1/2) (sqrt.f64 re)))) 1)
(/.f64 im (/.f64 (sqrt.f64 re) 1/2))
(*.f64 (/.f64 im (sqrt.f64 re)) 1/2)
(*.f64 1 (/.f64 (*.f64 im 1/2) (sqrt.f64 re)))
(/.f64 im (/.f64 (sqrt.f64 re) 1/2))
(*.f64 (/.f64 im (sqrt.f64 re)) 1/2)
(*.f64 (pow.f64 re -1/4) (*.f64 im (/.f64 1/2 (pow.f64 re 1/4))))
(*.f64 1/2 (*.f64 (/.f64 (pow.f64 re -1/4) (pow.f64 re 1/4)) im))
(*.f64 im (*.f64 1/2 (pow.f64 re -1/2)))
(*.f64 (*.f64 im 1/2) (pow.f64 re -1/2))
(*.f64 1/2 (*.f64 (/.f64 (pow.f64 re -1/4) (pow.f64 re 1/4)) im))
(*.f64 im (*.f64 1/2 (pow.f64 re -1/2)))
(*.f64 (*.f64 im (/.f64 1/2 (pow.f64 re 1/4))) (pow.f64 re -1/4))
(*.f64 1/2 (*.f64 (/.f64 (pow.f64 re -1/4) (pow.f64 re 1/4)) im))
(*.f64 im (*.f64 1/2 (pow.f64 re -1/2)))
(*.f64 (/.f64 (*.f64 im 1/2) (sqrt.f64 re)) 1)
(/.f64 im (/.f64 (sqrt.f64 re) 1/2))
(*.f64 (/.f64 im (sqrt.f64 re)) 1/2)
(*.f64 (*.f64 (sqrt.f64 (*.f64 im 1/2)) (pow.f64 re -1/8)) (*.f64 (sqrt.f64 (/.f64 (*.f64 im 1/2) (sqrt.f64 re))) (pow.f64 re -1/8)))
(*.f64 (*.f64 (sqrt.f64 (*.f64 1/2 im)) (pow.f64 re -1/8)) (*.f64 (pow.f64 re -1/8) (sqrt.f64 (/.f64 im (/.f64 (sqrt.f64 re) 1/2)))))
(*.f64 (sqrt.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2)) (*.f64 (pow.f64 re -1/4) (sqrt.f64 (*.f64 1/2 im))))
(*.f64 (sqrt.f64 (/.f64 (*.f64 im 1/2) (sqrt.f64 re))) (sqrt.f64 (/.f64 (*.f64 im 1/2) (sqrt.f64 re))))
(/.f64 im (/.f64 (sqrt.f64 re) 1/2))
(*.f64 (/.f64 im (sqrt.f64 re)) 1/2)
(*.f64 (pow.f64 re -1/8) (*.f64 (*.f64 im (/.f64 1/2 (pow.f64 re 1/4))) (pow.f64 re -1/8)))
(*.f64 1/2 (*.f64 (/.f64 (pow.f64 re -1/4) (pow.f64 re 1/4)) im))
(*.f64 im (*.f64 1/2 (pow.f64 re -1/2)))
(*.f64 (cbrt.f64 (/.f64 (*.f64 1/4 (*.f64 im im)) (sqrt.f64 re))) (*.f64 (cbrt.f64 (*.f64 im (/.f64 1/2 (pow.f64 re 1/4)))) (pow.f64 re -1/4)))
(*.f64 (cbrt.f64 (/.f64 1/4 (/.f64 (sqrt.f64 re) (*.f64 im im)))) (*.f64 (pow.f64 re -1/4) (cbrt.f64 (/.f64 im (/.f64 (pow.f64 re 1/4) 1/2)))))
(*.f64 (pow.f64 re -1/4) (*.f64 (cbrt.f64 (*.f64 (/.f64 1/4 (sqrt.f64 re)) (*.f64 im im))) (cbrt.f64 (/.f64 im (*.f64 (pow.f64 re 1/4) 2)))))
(*.f64 (cbrt.f64 (/.f64 (*.f64 im 1/2) (sqrt.f64 re))) (cbrt.f64 (/.f64 (*.f64 1/4 (*.f64 im im)) re)))
(*.f64 (cbrt.f64 (/.f64 im (/.f64 (sqrt.f64 re) 1/2))) (cbrt.f64 (/.f64 1/4 (/.f64 re (*.f64 im im)))))
(*.f64 (cbrt.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2)) (cbrt.f64 (*.f64 (/.f64 1/4 re) (*.f64 im im))))
(*.f64 (cbrt.f64 (/.f64 (*.f64 1/4 (*.f64 im im)) re)) (cbrt.f64 (/.f64 (*.f64 im 1/2) (sqrt.f64 re))))
(*.f64 (cbrt.f64 (/.f64 im (/.f64 (sqrt.f64 re) 1/2))) (cbrt.f64 (/.f64 1/4 (/.f64 re (*.f64 im im)))))
(*.f64 (cbrt.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2)) (cbrt.f64 (*.f64 (/.f64 1/4 re) (*.f64 im im))))
(*.f64 (pow.f64 re -1/2) (*.f64 im 1/2))
(*.f64 1/2 (*.f64 (/.f64 (pow.f64 re -1/4) (pow.f64 re 1/4)) im))
(*.f64 im (*.f64 1/2 (pow.f64 re -1/2)))
(*.f64 (*.f64 (pow.f64 re -1/4) im) (/.f64 1/2 (pow.f64 re 1/4)))
(*.f64 1/2 (*.f64 (/.f64 (pow.f64 re -1/4) (pow.f64 re 1/4)) im))
(*.f64 im (*.f64 1/2 (pow.f64 re -1/2)))
(*.f64 (*.f64 (pow.f64 re -1/4) (*.f64 im -1/2)) (neg.f64 (pow.f64 re -1/4)))
(*.f64 1/2 (*.f64 (/.f64 (pow.f64 re -1/4) (pow.f64 re 1/4)) im))
(*.f64 im (*.f64 1/2 (pow.f64 re -1/2)))
(*.f64 (*.f64 (*.f64 im (/.f64 1/2 (pow.f64 re 1/4))) (cbrt.f64 (pow.f64 re -1/2))) (cbrt.f64 (pow.f64 re -1/4)))
(*.f64 (/.f64 im (/.f64 (pow.f64 re 1/4) 1/2)) (*.f64 (cbrt.f64 (pow.f64 re -1/2)) (cbrt.f64 (pow.f64 re -1/4))))
(*.f64 im (*.f64 (*.f64 (/.f64 1/2 (pow.f64 re 1/4)) (cbrt.f64 (pow.f64 re -1/2))) (cbrt.f64 (pow.f64 re -1/4))))
(*.f64 (*.f64 (sqrt.f64 (*.f64 im 1/2)) (pow.f64 re -1/4)) (*.f64 (sqrt.f64 (*.f64 im 1/2)) (pow.f64 re -1/4)))
(*.f64 1/2 (*.f64 (/.f64 (pow.f64 re -1/4) (pow.f64 re 1/4)) im))
(*.f64 im (*.f64 1/2 (pow.f64 re -1/2)))
(*.f64 (*.f64 (sqrt.f64 (/.f64 (*.f64 im 1/2) (sqrt.f64 re))) (pow.f64 re -1/8)) (*.f64 (sqrt.f64 (*.f64 im 1/2)) (pow.f64 re -1/8)))
(*.f64 (*.f64 (sqrt.f64 (*.f64 1/2 im)) (pow.f64 re -1/8)) (*.f64 (pow.f64 re -1/8) (sqrt.f64 (/.f64 im (/.f64 (sqrt.f64 re) 1/2)))))
(*.f64 (sqrt.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2)) (*.f64 (pow.f64 re -1/4) (sqrt.f64 (*.f64 1/2 im))))
(*.f64 (/.f64 -1 (sqrt.f64 re)) (*.f64 im -1/2))
(/.f64 im (/.f64 (sqrt.f64 re) 1/2))
(*.f64 (/.f64 im (sqrt.f64 re)) 1/2)
(*.f64 (neg.f64 (pow.f64 re -1/4)) (*.f64 (pow.f64 re -1/4) (*.f64 im -1/2)))
(*.f64 1/2 (*.f64 (/.f64 (pow.f64 re -1/4) (pow.f64 re 1/4)) im))
(*.f64 im (*.f64 1/2 (pow.f64 re -1/2)))
(*.f64 (/.f64 1 (cbrt.f64 (sqrt.f64 re))) (/.f64 (*.f64 im (/.f64 1/2 (pow.f64 re 1/4))) (cbrt.f64 (pow.f64 re 1/4))))
(*.f64 (/.f64 1 (cbrt.f64 (sqrt.f64 re))) (/.f64 (/.f64 im (/.f64 (pow.f64 re 1/4) 1/2)) (cbrt.f64 (pow.f64 re 1/4))))
(*.f64 (pow.f64 re -1/4) (*.f64 (/.f64 1/2 (cbrt.f64 (pow.f64 re 1/4))) (/.f64 im (cbrt.f64 (sqrt.f64 re)))))
(*.f64 (/.f64 (*.f64 im 1/2) 1) (pow.f64 re -1/2))
(*.f64 1/2 (*.f64 (/.f64 (pow.f64 re -1/4) (pow.f64 re 1/4)) im))
(*.f64 im (*.f64 1/2 (pow.f64 re -1/2)))
(*.f64 (*.f64 (pow.f64 re -1/8) (*.f64 im 1/2)) (/.f64 (pow.f64 re -1/8) (pow.f64 re 1/4)))
(*.f64 1/2 (*.f64 (/.f64 (pow.f64 re -1/4) (pow.f64 re 1/4)) im))
(*.f64 im (*.f64 1/2 (pow.f64 re -1/2)))
(*.f64 (/.f64 (*.f64 im 1/2) (cbrt.f64 (sqrt.f64 re))) (/.f64 (pow.f64 re -1/4) (cbrt.f64 (pow.f64 re 1/4))))
(*.f64 (/.f64 1 (cbrt.f64 (sqrt.f64 re))) (/.f64 (/.f64 im (/.f64 (pow.f64 re 1/4) 1/2)) (cbrt.f64 (pow.f64 re 1/4))))
(*.f64 (pow.f64 re -1/4) (*.f64 (/.f64 1/2 (cbrt.f64 (pow.f64 re 1/4))) (/.f64 im (cbrt.f64 (sqrt.f64 re)))))
(*.f64 (*.f64 (*.f64 im (/.f64 1/2 (pow.f64 re 1/4))) (pow.f64 re -1/8)) (pow.f64 re -1/8))
(*.f64 1/2 (*.f64 (/.f64 (pow.f64 re -1/4) (pow.f64 re 1/4)) im))
(*.f64 im (*.f64 1/2 (pow.f64 re -1/2)))
(*.f64 (/.f64 im (*.f64 (cbrt.f64 (sqrt.f64 re)) (/.f64 (pow.f64 re 1/4) 1/2))) (cbrt.f64 (pow.f64 re -1/4)))
(/.f64 (*.f64 im (cbrt.f64 (pow.f64 re -1/4))) (*.f64 (cbrt.f64 (sqrt.f64 re)) (/.f64 (pow.f64 re 1/4) 1/2)))
(/.f64 (/.f64 (*.f64 im (cbrt.f64 (pow.f64 re -1/4))) (*.f64 (pow.f64 re 1/4) 2)) (cbrt.f64 (sqrt.f64 re)))
(*.f64 (/.f64 (*.f64 im -1/2) (sqrt.f64 re)) -1)
(/.f64 im (/.f64 (sqrt.f64 re) 1/2))
(*.f64 (/.f64 im (sqrt.f64 re)) 1/2)
(*.f64 (/.f64 (pow.f64 re -1/8) (pow.f64 re 1/4)) (*.f64 (pow.f64 re -1/8) (*.f64 im 1/2)))
(*.f64 1/2 (*.f64 (/.f64 (pow.f64 re -1/4) (pow.f64 re 1/4)) im))
(*.f64 im (*.f64 1/2 (pow.f64 re -1/2)))
(*.f64 (/.f64 (pow.f64 re -1/4) (cbrt.f64 (sqrt.f64 re))) (/.f64 (*.f64 im 1/2) (cbrt.f64 (pow.f64 re 1/4))))
(*.f64 (/.f64 1 (cbrt.f64 (sqrt.f64 re))) (/.f64 (/.f64 im (/.f64 (pow.f64 re 1/4) 1/2)) (cbrt.f64 (pow.f64 re 1/4))))
(*.f64 (pow.f64 re -1/4) (*.f64 (/.f64 1/2 (cbrt.f64 (pow.f64 re 1/4))) (/.f64 im (cbrt.f64 (sqrt.f64 re)))))
(*.f64 (/.f64 (*.f64 (sqrt.f64 (*.f64 im 1/2)) (pow.f64 re -1/8)) (cbrt.f64 (sqrt.f64 re))) (/.f64 (*.f64 (sqrt.f64 (*.f64 im 1/2)) (pow.f64 re -1/8)) (cbrt.f64 (pow.f64 re 1/4))))
(*.f64 (/.f64 1 (cbrt.f64 (sqrt.f64 re))) (/.f64 (/.f64 im (/.f64 (pow.f64 re 1/4) 1/2)) (cbrt.f64 (pow.f64 re 1/4))))
(*.f64 (pow.f64 re -1/4) (*.f64 (/.f64 1/2 (cbrt.f64 (pow.f64 re 1/4))) (/.f64 im (cbrt.f64 (sqrt.f64 re)))))
(*.f64 (/.f64 (cbrt.f64 (/.f64 (*.f64 1/4 (*.f64 im im)) (sqrt.f64 re))) 1) (/.f64 (cbrt.f64 (*.f64 im (/.f64 1/2 (pow.f64 re 1/4)))) (pow.f64 re 1/4)))
(*.f64 (cbrt.f64 (/.f64 1/4 (/.f64 (sqrt.f64 re) (*.f64 im im)))) (*.f64 (pow.f64 re -1/4) (cbrt.f64 (/.f64 im (/.f64 (pow.f64 re 1/4) 1/2)))))
(*.f64 (pow.f64 re -1/4) (*.f64 (cbrt.f64 (*.f64 (/.f64 1/4 (sqrt.f64 re)) (*.f64 im im))) (cbrt.f64 (/.f64 im (*.f64 (pow.f64 re 1/4) 2)))))
(*.f64 (/.f64 (cbrt.f64 (/.f64 (*.f64 1/4 (*.f64 im im)) (sqrt.f64 re))) (pow.f64 re 1/8)) (/.f64 (cbrt.f64 (*.f64 im (/.f64 1/2 (pow.f64 re 1/4)))) (pow.f64 re 1/8)))
(*.f64 (cbrt.f64 (/.f64 1/4 (/.f64 (sqrt.f64 re) (*.f64 im im)))) (*.f64 (pow.f64 re -1/4) (cbrt.f64 (/.f64 im (/.f64 (pow.f64 re 1/4) 1/2)))))
(*.f64 (pow.f64 re -1/4) (*.f64 (cbrt.f64 (*.f64 (/.f64 1/4 (sqrt.f64 re)) (*.f64 im im))) (cbrt.f64 (/.f64 im (*.f64 (pow.f64 re 1/4) 2)))))
(*.f64 (/.f64 (cbrt.f64 (/.f64 (*.f64 1/4 (*.f64 im im)) (sqrt.f64 re))) (cbrt.f64 (sqrt.f64 re))) (cbrt.f64 (/.f64 (*.f64 im 1/2) (sqrt.f64 re))))
(*.f64 (cbrt.f64 (/.f64 im (/.f64 (sqrt.f64 re) 1/2))) (/.f64 (cbrt.f64 (/.f64 1/4 (/.f64 (sqrt.f64 re) (*.f64 im im)))) (cbrt.f64 (sqrt.f64 re))))
(/.f64 (cbrt.f64 (*.f64 (/.f64 1/4 (sqrt.f64 re)) (*.f64 im im))) (/.f64 (cbrt.f64 (sqrt.f64 re)) (cbrt.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2))))
(*.f64 (/.f64 im (*.f64 (pow.f64 re 1/8) (pow.f64 re 1/4))) (/.f64 1/2 (pow.f64 re 1/8)))
(*.f64 1/2 (*.f64 (/.f64 (pow.f64 re -1/4) (pow.f64 re 1/4)) im))
(*.f64 im (*.f64 1/2 (pow.f64 re -1/2)))
(*.f64 (/.f64 im (*.f64 (cbrt.f64 (sqrt.f64 re)) (pow.f64 re 1/4))) (/.f64 1/2 (cbrt.f64 (pow.f64 re 1/4))))
(*.f64 (/.f64 1 (cbrt.f64 (sqrt.f64 re))) (/.f64 (/.f64 im (/.f64 (pow.f64 re 1/4) 1/2)) (cbrt.f64 (pow.f64 re 1/4))))
(*.f64 (pow.f64 re -1/4) (*.f64 (/.f64 1/2 (cbrt.f64 (pow.f64 re 1/4))) (/.f64 im (cbrt.f64 (sqrt.f64 re)))))
(*.f64 (/.f64 1 (/.f64 (pow.f64 re 1/8) (sqrt.f64 (/.f64 (*.f64 im 1/2) (sqrt.f64 re))))) (*.f64 (sqrt.f64 (*.f64 im 1/2)) (pow.f64 re -1/8)))
(*.f64 (*.f64 (sqrt.f64 (*.f64 1/2 im)) (pow.f64 re -1/8)) (*.f64 (/.f64 1 (pow.f64 re 1/8)) (sqrt.f64 (/.f64 im (/.f64 (sqrt.f64 re) 1/2)))))
(*.f64 (*.f64 (sqrt.f64 (*.f64 1/2 im)) (/.f64 (pow.f64 re -1/8) (pow.f64 re 1/8))) (sqrt.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2)))
(*.f64 (/.f64 1 (/.f64 (pow.f64 re 1/4) (cbrt.f64 (/.f64 (*.f64 1/4 (*.f64 im im)) (sqrt.f64 re))))) (cbrt.f64 (*.f64 im (/.f64 1/2 (pow.f64 re 1/4)))))
(*.f64 (cbrt.f64 (/.f64 1/4 (/.f64 (sqrt.f64 re) (*.f64 im im)))) (*.f64 (pow.f64 re -1/4) (cbrt.f64 (/.f64 im (/.f64 (pow.f64 re 1/4) 1/2)))))
(*.f64 (pow.f64 re -1/4) (*.f64 (cbrt.f64 (*.f64 (/.f64 1/4 (sqrt.f64 re)) (*.f64 im im))) (cbrt.f64 (/.f64 im (*.f64 (pow.f64 re 1/4) 2)))))
(*.f64 (/.f64 1 (*.f64 (/.f64 (pow.f64 re 1/4) im) (pow.f64 re 1/4))) 1/2)
(*.f64 1/2 (*.f64 (/.f64 (pow.f64 re -1/4) (pow.f64 re 1/4)) im))
(*.f64 im (*.f64 1/2 (pow.f64 re -1/2)))
(*.f64 (/.f64 (pow.f64 re -1/4) (/.f64 (pow.f64 re 1/4) im)) 1/2)
(*.f64 1/2 (*.f64 (/.f64 (pow.f64 re -1/4) (pow.f64 re 1/4)) im))
(*.f64 im (*.f64 1/2 (pow.f64 re -1/2)))
(*.f64 (/.f64 (pow.f64 re -1/4) (/.f64 (pow.f64 re 1/4) 1/2)) im)
(*.f64 1/2 (*.f64 (/.f64 (pow.f64 re -1/4) (pow.f64 re 1/4)) im))
(*.f64 im (*.f64 1/2 (pow.f64 re -1/2)))
(*.f64 (/.f64 (pow.f64 re -1/4) (/.f64 (pow.f64 re 1/4) (sqrt.f64 (*.f64 im 1/2)))) (sqrt.f64 (*.f64 im 1/2)))
(*.f64 1/2 (*.f64 (/.f64 (pow.f64 re -1/4) (pow.f64 re 1/4)) im))
(*.f64 im (*.f64 1/2 (pow.f64 re -1/2)))
(*.f64 (/.f64 (pow.f64 re -1/4) (/.f64 (pow.f64 re 1/4) (pow.f64 (cbrt.f64 (*.f64 im 1/2)) 2))) (cbrt.f64 (*.f64 im 1/2)))
(*.f64 1/2 (*.f64 (/.f64 (pow.f64 re -1/4) (pow.f64 re 1/4)) im))
(*.f64 im (*.f64 1/2 (pow.f64 re -1/2)))
(*.f64 (/.f64 (cbrt.f64 (/.f64 (*.f64 1/4 (*.f64 im im)) (sqrt.f64 re))) (pow.f64 re 1/4)) (cbrt.f64 (*.f64 im (/.f64 1/2 (pow.f64 re 1/4)))))
(*.f64 (cbrt.f64 (/.f64 1/4 (/.f64 (sqrt.f64 re) (*.f64 im im)))) (*.f64 (pow.f64 re -1/4) (cbrt.f64 (/.f64 im (/.f64 (pow.f64 re 1/4) 1/2)))))
(*.f64 (pow.f64 re -1/4) (*.f64 (cbrt.f64 (*.f64 (/.f64 1/4 (sqrt.f64 re)) (*.f64 im im))) (cbrt.f64 (/.f64 im (*.f64 (pow.f64 re 1/4) 2)))))
(*.f64 (/.f64 (*.f64 (pow.f64 re -1/4) im) (pow.f64 re 1/4)) 1/2)
(*.f64 1/2 (*.f64 (/.f64 (pow.f64 re -1/4) (pow.f64 re 1/4)) im))
(*.f64 im (*.f64 1/2 (pow.f64 re -1/2)))
(*.f64 (*.f64 (pow.f64 re -1/8) (*.f64 (sqrt.f64 (*.f64 im 1/2)) (pow.f64 re -1/8))) (*.f64 (pow.f64 re -1/8) (*.f64 (sqrt.f64 (*.f64 im 1/2)) (pow.f64 re -1/8))))
(*.f64 1/2 (*.f64 (/.f64 (pow.f64 re -1/4) (pow.f64 re 1/4)) im))
(*.f64 im (*.f64 1/2 (pow.f64 re -1/2)))
(*.f64 (*.f64 (pow.f64 (sqrt.f64 re) -1/4) (*.f64 (sqrt.f64 (*.f64 im 1/2)) (pow.f64 re -1/8))) (*.f64 (pow.f64 (sqrt.f64 re) -1/4) (*.f64 (sqrt.f64 (*.f64 im 1/2)) (pow.f64 re -1/8))))
(*.f64 (pow.f64 (sqrt.f64 re) -1/2) (pow.f64 (*.f64 (sqrt.f64 (*.f64 1/2 im)) (pow.f64 re -1/8)) 2))
(*.f64 (/.f64 im (*.f64 (pow.f64 re 1/4) 2)) (pow.f64 (sqrt.f64 re) -1/2))
(*.f64 (*.f64 (pow.f64 (pow.f64 re 1/8) -1) (*.f64 (sqrt.f64 (*.f64 im 1/2)) (pow.f64 re -1/8))) (*.f64 (pow.f64 (pow.f64 re 1/8) -1) (*.f64 (sqrt.f64 (*.f64 im 1/2)) (pow.f64 re -1/8))))
(*.f64 1/2 (*.f64 (/.f64 (pow.f64 re -1/4) (pow.f64 re 1/4)) im))
(*.f64 im (*.f64 1/2 (pow.f64 re -1/2)))
(*.f64 (*.f64 (*.f64 (sqrt.f64 (*.f64 im 1/2)) (pow.f64 re -1/8)) (pow.f64 (sqrt.f64 re) -1/4)) (*.f64 (*.f64 (sqrt.f64 (*.f64 im 1/2)) (pow.f64 re -1/8)) (pow.f64 (sqrt.f64 re) -1/4)))
(*.f64 (pow.f64 (sqrt.f64 re) -1/2) (pow.f64 (*.f64 (sqrt.f64 (*.f64 1/2 im)) (pow.f64 re -1/8)) 2))
(*.f64 (/.f64 im (*.f64 (pow.f64 re 1/4) 2)) (pow.f64 (sqrt.f64 re) -1/2))
(*.f64 (*.f64 (*.f64 (sqrt.f64 (*.f64 im 1/2)) (pow.f64 re -1/8)) (pow.f64 (pow.f64 re 1/8) -1)) (*.f64 (*.f64 (sqrt.f64 (*.f64 im 1/2)) (pow.f64 re -1/8)) (pow.f64 (pow.f64 re 1/8) -1)))
(*.f64 1/2 (*.f64 (/.f64 (pow.f64 re -1/4) (pow.f64 re 1/4)) im))
(*.f64 im (*.f64 1/2 (pow.f64 re -1/2)))
(*.f64 (*.f64 (sqrt.f64 (cbrt.f64 (/.f64 (*.f64 im 1/2) (sqrt.f64 re)))) (cbrt.f64 (/.f64 (*.f64 im 1/2) (sqrt.f64 re)))) (*.f64 (sqrt.f64 (cbrt.f64 (/.f64 (*.f64 im 1/2) (sqrt.f64 re)))) (cbrt.f64 (/.f64 (*.f64 im 1/2) (sqrt.f64 re)))))
(/.f64 im (/.f64 (sqrt.f64 re) 1/2))
(*.f64 (/.f64 im (sqrt.f64 re)) 1/2)
(*.f64 (*.f64 (cbrt.f64 (sqrt.f64 (/.f64 (*.f64 im 1/2) (sqrt.f64 re)))) (cbrt.f64 (/.f64 (*.f64 im 1/2) (sqrt.f64 re)))) (*.f64 (cbrt.f64 (sqrt.f64 (/.f64 (*.f64 im 1/2) (sqrt.f64 re)))) (cbrt.f64 (/.f64 (*.f64 im 1/2) (sqrt.f64 re)))))
(*.f64 (cbrt.f64 (sqrt.f64 (/.f64 im (/.f64 (sqrt.f64 re) 1/2)))) (*.f64 (cbrt.f64 (/.f64 im (/.f64 (sqrt.f64 re) 1/2))) (*.f64 (cbrt.f64 (/.f64 im (/.f64 (sqrt.f64 re) 1/2))) (cbrt.f64 (sqrt.f64 (/.f64 im (/.f64 (sqrt.f64 re) 1/2)))))))
(*.f64 (cbrt.f64 (sqrt.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2))) (*.f64 (*.f64 (cbrt.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2)) (cbrt.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2))) (cbrt.f64 (sqrt.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2)))))
(*.f64 (*.f64 (sqrt.f64 (cbrt.f64 (/.f64 (*.f64 im 1/2) (sqrt.f64 re)))) (sqrt.f64 (cbrt.f64 (/.f64 (*.f64 1/4 (*.f64 im im)) re)))) (*.f64 (sqrt.f64 (cbrt.f64 (/.f64 (*.f64 im 1/2) (sqrt.f64 re)))) (sqrt.f64 (cbrt.f64 (/.f64 (*.f64 1/4 (*.f64 im im)) re)))))
(*.f64 (cbrt.f64 (/.f64 im (/.f64 (sqrt.f64 re) 1/2))) (cbrt.f64 (/.f64 1/4 (/.f64 re (*.f64 im im)))))
(*.f64 (cbrt.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2)) (cbrt.f64 (*.f64 (/.f64 1/4 re) (*.f64 im im))))
(*.f64 (*.f64 (cbrt.f64 (sqrt.f64 (/.f64 (*.f64 im 1/2) (sqrt.f64 re)))) (sqrt.f64 (cbrt.f64 (/.f64 (*.f64 1/4 (*.f64 im im)) re)))) (*.f64 (cbrt.f64 (sqrt.f64 (/.f64 (*.f64 im 1/2) (sqrt.f64 re)))) (sqrt.f64 (cbrt.f64 (/.f64 (*.f64 1/4 (*.f64 im im)) re)))))
(*.f64 (sqrt.f64 (cbrt.f64 (/.f64 1/4 (/.f64 re (*.f64 im im))))) (*.f64 (cbrt.f64 (sqrt.f64 (/.f64 im (/.f64 (sqrt.f64 re) 1/2)))) (*.f64 (cbrt.f64 (sqrt.f64 (/.f64 im (/.f64 (sqrt.f64 re) 1/2)))) (sqrt.f64 (cbrt.f64 (/.f64 1/4 (/.f64 re (*.f64 im im))))))))
(*.f64 (cbrt.f64 (sqrt.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2))) (*.f64 (cbrt.f64 (sqrt.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2))) (cbrt.f64 (*.f64 (/.f64 1/4 re) (*.f64 im im)))))
(*.f64 (*.f64 (cbrt.f64 (/.f64 (*.f64 im 1/2) (sqrt.f64 re))) (sqrt.f64 (cbrt.f64 (/.f64 (*.f64 im 1/2) (sqrt.f64 re))))) (*.f64 (cbrt.f64 (/.f64 (*.f64 im 1/2) (sqrt.f64 re))) (sqrt.f64 (cbrt.f64 (/.f64 (*.f64 im 1/2) (sqrt.f64 re))))))
(/.f64 im (/.f64 (sqrt.f64 re) 1/2))
(*.f64 (/.f64 im (sqrt.f64 re)) 1/2)
(*.f64 (*.f64 (sqrt.f64 (cbrt.f64 (/.f64 (*.f64 1/4 (*.f64 im im)) re))) (cbrt.f64 (sqrt.f64 (/.f64 (*.f64 im 1/2) (sqrt.f64 re))))) (*.f64 (sqrt.f64 (cbrt.f64 (/.f64 (*.f64 1/4 (*.f64 im im)) re))) (cbrt.f64 (sqrt.f64 (/.f64 (*.f64 im 1/2) (sqrt.f64 re))))))
(*.f64 (sqrt.f64 (cbrt.f64 (/.f64 1/4 (/.f64 re (*.f64 im im))))) (*.f64 (cbrt.f64 (sqrt.f64 (/.f64 im (/.f64 (sqrt.f64 re) 1/2)))) (*.f64 (cbrt.f64 (sqrt.f64 (/.f64 im (/.f64 (sqrt.f64 re) 1/2)))) (sqrt.f64 (cbrt.f64 (/.f64 1/4 (/.f64 re (*.f64 im im))))))))
(*.f64 (cbrt.f64 (sqrt.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2))) (*.f64 (cbrt.f64 (sqrt.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2))) (cbrt.f64 (*.f64 (/.f64 1/4 re) (*.f64 im im)))))
(pow.f64 (/.f64 (*.f64 im 1/2) (sqrt.f64 re)) 1)
(/.f64 im (/.f64 (sqrt.f64 re) 1/2))
(*.f64 (/.f64 im (sqrt.f64 re)) 1/2)
(pow.f64 (sqrt.f64 (/.f64 (*.f64 im 1/2) (sqrt.f64 re))) 2)
(/.f64 im (/.f64 (sqrt.f64 re) 1/2))
(*.f64 (/.f64 im (sqrt.f64 re)) 1/2)
(pow.f64 (cbrt.f64 (/.f64 (*.f64 im 1/2) (sqrt.f64 re))) 3)
(/.f64 im (/.f64 (sqrt.f64 re) 1/2))
(*.f64 (/.f64 im (sqrt.f64 re)) 1/2)
(pow.f64 (pow.f64 (/.f64 (*.f64 im 1/2) (sqrt.f64 re)) 3) 1/3)
(/.f64 im (/.f64 (sqrt.f64 re) 1/2))
(*.f64 (/.f64 im (sqrt.f64 re)) 1/2)
(pow.f64 (/.f64 (sqrt.f64 re) (*.f64 im 1/2)) -1)
(/.f64 im (/.f64 (sqrt.f64 re) 1/2))
(*.f64 (/.f64 im (sqrt.f64 re)) 1/2)
(neg.f64 (/.f64 (*.f64 im -1/2) (sqrt.f64 re)))
(/.f64 im (/.f64 (sqrt.f64 re) 1/2))
(*.f64 (/.f64 im (sqrt.f64 re)) 1/2)
(neg.f64 (*.f64 (/.f64 (*.f64 im -1/2) (sqrt.f64 re)) 1))
(/.f64 im (/.f64 (sqrt.f64 re) 1/2))
(*.f64 (/.f64 im (sqrt.f64 re)) 1/2)
(neg.f64 (*.f64 (*.f64 im (/.f64 1/2 (pow.f64 re 1/4))) (neg.f64 (pow.f64 re -1/4))))
(*.f64 1/2 (*.f64 (/.f64 (pow.f64 re -1/4) (pow.f64 re 1/4)) im))
(*.f64 im (*.f64 1/2 (pow.f64 re -1/2)))
(neg.f64 (*.f64 1 (/.f64 (*.f64 im -1/2) (sqrt.f64 re))))
(/.f64 im (/.f64 (sqrt.f64 re) 1/2))
(*.f64 (/.f64 im (sqrt.f64 re)) 1/2)
(neg.f64 (/.f64 (pow.f64 re -1/4) (*.f64 -2 (/.f64 (pow.f64 re 1/4) im))))
(*.f64 1/2 (*.f64 (/.f64 (pow.f64 re -1/4) (pow.f64 re 1/4)) im))
(*.f64 im (*.f64 1/2 (pow.f64 re -1/2)))
(sqrt.f64 (/.f64 (*.f64 1/4 (*.f64 im im)) re))
(sqrt.f64 (/.f64 1/4 (/.f64 re (*.f64 im im))))
(sqrt.f64 (*.f64 (/.f64 1/4 re) (*.f64 im im)))
(log.f64 (exp.f64 (/.f64 (*.f64 im 1/2) (sqrt.f64 re))))
(/.f64 im (/.f64 (sqrt.f64 re) 1/2))
(*.f64 (/.f64 im (sqrt.f64 re)) 1/2)
(log.f64 (+.f64 1 (expm1.f64 (/.f64 (*.f64 im 1/2) (sqrt.f64 re)))))
(/.f64 im (/.f64 (sqrt.f64 re) 1/2))
(*.f64 (/.f64 im (sqrt.f64 re)) 1/2)
(cbrt.f64 (pow.f64 (/.f64 (*.f64 im 1/2) (sqrt.f64 re)) 3))
(/.f64 im (/.f64 (sqrt.f64 re) 1/2))
(*.f64 (/.f64 im (sqrt.f64 re)) 1/2)
(cbrt.f64 (*.f64 (pow.f64 (*.f64 im (/.f64 1/2 (pow.f64 re 1/4))) 3) (pow.f64 (pow.f64 re -1/4) 3)))
(cbrt.f64 (*.f64 (pow.f64 (/.f64 im (/.f64 (pow.f64 re 1/4) 1/2)) 3) (pow.f64 (pow.f64 re -1/4) 3)))
(cbrt.f64 (*.f64 (*.f64 (pow.f64 (/.f64 im (pow.f64 re 1/4)) 3) 1/8) (pow.f64 (pow.f64 re -1/4) 3)))
(cbrt.f64 (/.f64 (/.f64 (pow.f64 (*.f64 im 1/2) 3) (sqrt.f64 re)) re))
(cbrt.f64 (/.f64 (*.f64 (pow.f64 im 3) 1/8) (*.f64 re (sqrt.f64 re))))
(cbrt.f64 (*.f64 (/.f64 (pow.f64 im 3) re) (/.f64 1/8 (sqrt.f64 re))))
(expm1.f64 (log1p.f64 (/.f64 (*.f64 im 1/2) (sqrt.f64 re))))
(/.f64 im (/.f64 (sqrt.f64 re) 1/2))
(*.f64 (/.f64 im (sqrt.f64 re)) 1/2)
(exp.f64 (log.f64 (/.f64 (*.f64 im 1/2) (sqrt.f64 re))))
(/.f64 im (/.f64 (sqrt.f64 re) 1/2))
(*.f64 (/.f64 im (sqrt.f64 re)) 1/2)
(exp.f64 (*.f64 (log.f64 (/.f64 (*.f64 im 1/2) (sqrt.f64 re))) 1))
(/.f64 im (/.f64 (sqrt.f64 re) 1/2))
(*.f64 (/.f64 im (sqrt.f64 re)) 1/2)
(log1p.f64 (expm1.f64 (/.f64 (*.f64 im 1/2) (sqrt.f64 re))))
(/.f64 im (/.f64 (sqrt.f64 re) 1/2))
(*.f64 (/.f64 im (sqrt.f64 re)) 1/2)
(-.f64 (exp.f64 (log1p.f64 (pow.f64 re -1/4))) 1)
(pow.f64 re -1/4)
(*.f64 1 (pow.f64 re -1/4))
(pow.f64 re -1/4)
(*.f64 (pow.f64 re -1/4) 1)
(pow.f64 re -1/4)
(*.f64 (pow.f64 re -1/8) (pow.f64 re -1/8))
(pow.f64 re -1/4)
(*.f64 (cbrt.f64 (pow.f64 re -1/4)) (cbrt.f64 (pow.f64 re -1/2)))
(*.f64 (cbrt.f64 (pow.f64 re -1/2)) (cbrt.f64 (pow.f64 re -1/4)))
(*.f64 (cbrt.f64 (pow.f64 re -1/2)) (cbrt.f64 (pow.f64 re -1/4)))
(*.f64 -1 (neg.f64 (pow.f64 re -1/4)))
(pow.f64 re -1/4)
(*.f64 (neg.f64 (pow.f64 re -1/4)) -1)
(pow.f64 re -1/4)
(*.f64 (/.f64 1 (cbrt.f64 (sqrt.f64 re))) (cbrt.f64 (pow.f64 re -1/4)))
(*.f64 (cbrt.f64 (pow.f64 re -1/4)) (/.f64 1 (cbrt.f64 (sqrt.f64 re))))
(/.f64 (cbrt.f64 (pow.f64 re -1/4)) (cbrt.f64 (sqrt.f64 re)))
(*.f64 (pow.f64 1 -1/4) (pow.f64 re -1/4))
(pow.f64 re -1/4)
(*.f64 (pow.f64 (sqrt.f64 re) -1/4) (pow.f64 (sqrt.f64 re) -1/4))
(pow.f64 (sqrt.f64 re) -1/2)
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 re) 2) -1/4) (pow.f64 (cbrt.f64 re) -1/4))
(*.f64 (pow.f64 (pow.f64 re 1/8) -1) (pow.f64 (pow.f64 re 1/8) -1))
(pow.f64 (pow.f64 re 1/8) -2)
(*.f64 (pow.f64 (cbrt.f64 (sqrt.f64 re)) -1) (pow.f64 (cbrt.f64 (pow.f64 re 1/4)) -1))
(*.f64 (/.f64 1 (cbrt.f64 (sqrt.f64 re))) (/.f64 1 (cbrt.f64 (pow.f64 re 1/4))))
(*.f64 (*.f64 (sqrt.f64 (cbrt.f64 (pow.f64 re -1/4))) (cbrt.f64 (pow.f64 re -1/4))) (*.f64 (sqrt.f64 (cbrt.f64 (pow.f64 re -1/4))) (cbrt.f64 (pow.f64 re -1/4))))
(pow.f64 re -1/4)
(*.f64 (*.f64 (cbrt.f64 (pow.f64 re -1/8)) (cbrt.f64 (pow.f64 re -1/4))) (*.f64 (cbrt.f64 (pow.f64 re -1/8)) (cbrt.f64 (pow.f64 re -1/4))))
(*.f64 (*.f64 (cbrt.f64 (pow.f64 re -1/4)) (cbrt.f64 (pow.f64 re -1/8))) (*.f64 (cbrt.f64 (pow.f64 re -1/4)) (cbrt.f64 (pow.f64 re -1/8))))
(*.f64 (cbrt.f64 (pow.f64 re -1/4)) (*.f64 (cbrt.f64 (pow.f64 re -1/8)) (*.f64 (cbrt.f64 (pow.f64 re -1/4)) (cbrt.f64 (pow.f64 re -1/8)))))
(*.f64 (*.f64 (sqrt.f64 (cbrt.f64 (pow.f64 re -1/4))) (sqrt.f64 (cbrt.f64 (pow.f64 re -1/2)))) (*.f64 (sqrt.f64 (cbrt.f64 (pow.f64 re -1/4))) (sqrt.f64 (cbrt.f64 (pow.f64 re -1/2)))))
(*.f64 (cbrt.f64 (pow.f64 re -1/2)) (cbrt.f64 (pow.f64 re -1/4)))
(*.f64 (*.f64 (cbrt.f64 (pow.f64 re -1/8)) (sqrt.f64 (cbrt.f64 (pow.f64 re -1/2)))) (*.f64 (cbrt.f64 (pow.f64 re -1/8)) (sqrt.f64 (cbrt.f64 (pow.f64 re -1/2)))))
(*.f64 (*.f64 (sqrt.f64 (cbrt.f64 (pow.f64 re -1/2))) (sqrt.f64 (cbrt.f64 (pow.f64 re -1/2)))) (*.f64 (cbrt.f64 (pow.f64 re -1/8)) (cbrt.f64 (pow.f64 re -1/8))))
(*.f64 (cbrt.f64 (pow.f64 re -1/2)) (*.f64 (cbrt.f64 (pow.f64 re -1/8)) (cbrt.f64 (pow.f64 re -1/8))))
(*.f64 (*.f64 (cbrt.f64 (pow.f64 re -1/4)) (sqrt.f64 (cbrt.f64 (pow.f64 re -1/4)))) (*.f64 (cbrt.f64 (pow.f64 re -1/4)) (sqrt.f64 (cbrt.f64 (pow.f64 re -1/4)))))
(pow.f64 re -1/4)
(*.f64 (*.f64 (sqrt.f64 (cbrt.f64 (pow.f64 re -1/2))) (cbrt.f64 (pow.f64 re -1/8))) (*.f64 (sqrt.f64 (cbrt.f64 (pow.f64 re -1/2))) (cbrt.f64 (pow.f64 re -1/8))))
(*.f64 (*.f64 (sqrt.f64 (cbrt.f64 (pow.f64 re -1/2))) (sqrt.f64 (cbrt.f64 (pow.f64 re -1/2)))) (*.f64 (cbrt.f64 (pow.f64 re -1/8)) (cbrt.f64 (pow.f64 re -1/8))))
(*.f64 (cbrt.f64 (pow.f64 re -1/2)) (*.f64 (cbrt.f64 (pow.f64 re -1/8)) (cbrt.f64 (pow.f64 re -1/8))))
(pow.f64 re -1/4)
(pow.f64 (pow.f64 re 1/4) -1)
(pow.f64 re -1/4)
(pow.f64 (pow.f64 re -1/4) 1)
(pow.f64 re -1/4)
(pow.f64 (pow.f64 re -1/8) 2)
(pow.f64 re -1/4)
(pow.f64 (cbrt.f64 (pow.f64 re -1/4)) 3)
(pow.f64 re -1/4)
(pow.f64 (pow.f64 (pow.f64 re -1/4) 3) 1/3)
(pow.f64 re -1/4)
(sqrt.f64 (pow.f64 re -1/2))
(log.f64 (exp.f64 (pow.f64 re -1/4)))
(pow.f64 re -1/4)
(log.f64 (+.f64 1 (expm1.f64 (pow.f64 re -1/4))))
(pow.f64 re -1/4)
(cbrt.f64 (pow.f64 (pow.f64 re -1/4) 3))
(pow.f64 re -1/4)
(expm1.f64 (log1p.f64 (pow.f64 re -1/4)))
(pow.f64 re -1/4)
(exp.f64 (*.f64 (log.f64 re) -1/4))
(pow.f64 re -1/4)
(exp.f64 (*.f64 (*.f64 1/4 (log.f64 re)) -1))
(pow.f64 re -1/4)
(exp.f64 (*.f64 (*.f64 (log.f64 re) -1/4) 1))
(pow.f64 re -1/4)
(log1p.f64 (expm1.f64 (pow.f64 re -1/4)))
(pow.f64 re -1/4)
(-.f64 (exp.f64 (log1p.f64 (*.f64 im (/.f64 1/2 (pow.f64 re 1/4))))) 1)
(/.f64 im (/.f64 (pow.f64 re 1/4) 1/2))
(/.f64 im (*.f64 (pow.f64 re 1/4) 2))
(/.f64 1 (*.f64 2 (/.f64 (pow.f64 re 1/4) im)))
(/.f64 im (/.f64 (pow.f64 re 1/4) 1/2))
(/.f64 im (*.f64 (pow.f64 re 1/4) 2))
(/.f64 im (/.f64 (pow.f64 re 1/4) 1/2))
(/.f64 im (*.f64 (pow.f64 re 1/4) 2))
(/.f64 im (*.f64 1 (/.f64 (pow.f64 re 1/4) 1/2)))
(/.f64 im (/.f64 (pow.f64 re 1/4) 1/2))
(/.f64 im (*.f64 (pow.f64 re 1/4) 2))
(/.f64 1/2 (/.f64 (pow.f64 re 1/4) im))
(/.f64 im (/.f64 (pow.f64 re 1/4) 1/2))
(/.f64 im (*.f64 (pow.f64 re 1/4) 2))
(/.f64 1/2 (*.f64 1 (/.f64 (pow.f64 re 1/4) im)))
(/.f64 im (/.f64 (pow.f64 re 1/4) 1/2))
(/.f64 im (*.f64 (pow.f64 re 1/4) 2))
(/.f64 (*.f64 im 1/2) (pow.f64 re 1/4))
(/.f64 im (/.f64 (pow.f64 re 1/4) 1/2))
(/.f64 im (*.f64 (pow.f64 re 1/4) 2))
(/.f64 (*.f64 im (/.f64 1/2 (pow.f64 re 1/4))) 1)
(/.f64 im (/.f64 (pow.f64 re 1/4) 1/2))
(/.f64 im (*.f64 (pow.f64 re 1/4) 2))
(/.f64 (sqrt.f64 (*.f64 im 1/2)) (/.f64 (pow.f64 re 1/4) (sqrt.f64 (*.f64 im 1/2))))
(/.f64 im (/.f64 (pow.f64 re 1/4) 1/2))
(/.f64 im (*.f64 (pow.f64 re 1/4) 2))
(/.f64 (sqrt.f64 (*.f64 im 1/2)) (*.f64 1 (/.f64 (pow.f64 re 1/4) (sqrt.f64 (*.f64 im 1/2)))))
(/.f64 im (/.f64 (pow.f64 re 1/4) 1/2))
(/.f64 im (*.f64 (pow.f64 re 1/4) 2))
(/.f64 (pow.f64 (cbrt.f64 (*.f64 im 1/2)) 2) (/.f64 (pow.f64 re 1/4) (cbrt.f64 (*.f64 im 1/2))))
(/.f64 im (/.f64 (pow.f64 re 1/4) 1/2))
(/.f64 im (*.f64 (pow.f64 re 1/4) 2))
(/.f64 (pow.f64 (cbrt.f64 (*.f64 im 1/2)) 2) (*.f64 1 (/.f64 (pow.f64 re 1/4) (cbrt.f64 (*.f64 im 1/2)))))
(/.f64 im (/.f64 (pow.f64 re 1/4) 1/2))
(/.f64 im (*.f64 (pow.f64 re 1/4) 2))
(/.f64 (/.f64 (*.f64 im 1/2) 1) (pow.f64 re 1/4))
(/.f64 im (/.f64 (pow.f64 re 1/4) 1/2))
(/.f64 im (*.f64 (pow.f64 re 1/4) 2))
(/.f64 (*.f64 (pow.f64 re -1/8) (*.f64 im 1/2)) (pow.f64 re 1/8))
(/.f64 (*.f64 (*.f64 1/2 im) (pow.f64 re -1/8)) (pow.f64 re 1/8))
(*.f64 (/.f64 1/2 (pow.f64 re 1/8)) (*.f64 im (pow.f64 re -1/8)))
(/.f64 (/.f64 (*.f64 im 1/2) (cbrt.f64 (sqrt.f64 re))) (cbrt.f64 (pow.f64 re 1/4)))
(/.f64 (*.f64 1/2 im) (*.f64 (cbrt.f64 (pow.f64 re 1/4)) (cbrt.f64 (sqrt.f64 re))))
(*.f64 (/.f64 1/2 (cbrt.f64 (pow.f64 re 1/4))) (/.f64 im (cbrt.f64 (sqrt.f64 re))))
(/.f64 (*.f64 im -1/2) (neg.f64 (pow.f64 re 1/4)))
(/.f64 im (/.f64 (pow.f64 re 1/4) 1/2))
(/.f64 im (*.f64 (pow.f64 re 1/4) 2))
(/.f64 (*.f64 (/.f64 1 (cbrt.f64 (sqrt.f64 re))) (*.f64 im 1/2)) (cbrt.f64 (pow.f64 re 1/4)))
(/.f64 (*.f64 1/2 im) (*.f64 (cbrt.f64 (pow.f64 re 1/4)) (cbrt.f64 (sqrt.f64 re))))
(*.f64 (/.f64 1/2 (cbrt.f64 (pow.f64 re 1/4))) (/.f64 im (cbrt.f64 (sqrt.f64 re))))
(/.f64 (*.f64 (sqrt.f64 (*.f64 im 1/2)) 1) (/.f64 (pow.f64 re 1/4) (sqrt.f64 (*.f64 im 1/2))))
(/.f64 im (/.f64 (pow.f64 re 1/4) 1/2))
(/.f64 im (*.f64 (pow.f64 re 1/4) 2))
(/.f64 (*.f64 (pow.f64 (cbrt.f64 (*.f64 im 1/2)) 2) 1) (/.f64 (pow.f64 re 1/4) (cbrt.f64 (*.f64 im 1/2))))
(/.f64 im (/.f64 (pow.f64 re 1/4) 1/2))
(/.f64 im (*.f64 (pow.f64 re 1/4) 2))
(/.f64 (*.f64 (/.f64 (*.f64 im 1/2) 1) 1) (pow.f64 re 1/4))
(/.f64 im (/.f64 (pow.f64 re 1/4) 1/2))
(/.f64 im (*.f64 (pow.f64 re 1/4) 2))
(/.f64 (*.f64 (*.f64 (pow.f64 re -1/8) (*.f64 im 1/2)) 1) (pow.f64 re 1/8))
(/.f64 (*.f64 (*.f64 1/2 im) (pow.f64 re -1/8)) (pow.f64 re 1/8))
(*.f64 (/.f64 1/2 (pow.f64 re 1/8)) (*.f64 im (pow.f64 re -1/8)))
(/.f64 (*.f64 (/.f64 (*.f64 im 1/2) (cbrt.f64 (sqrt.f64 re))) 1) (cbrt.f64 (pow.f64 re 1/4)))
(/.f64 (*.f64 1/2 im) (*.f64 (cbrt.f64 (pow.f64 re 1/4)) (cbrt.f64 (sqrt.f64 re))))
(*.f64 (/.f64 1/2 (cbrt.f64 (pow.f64 re 1/4))) (/.f64 im (cbrt.f64 (sqrt.f64 re))))
(/.f64 (*.f64 (sqrt.f64 (*.f64 im 1/2)) (*.f64 (sqrt.f64 (*.f64 im 1/2)) (pow.f64 re -1/8))) (pow.f64 re 1/8))
(/.f64 (*.f64 (*.f64 1/2 im) (pow.f64 re -1/8)) (pow.f64 re 1/8))
(*.f64 (/.f64 1/2 (pow.f64 re 1/8)) (*.f64 im (pow.f64 re -1/8)))
(/.f64 (*.f64 1 (*.f64 (pow.f64 re -1/8) (*.f64 im 1/2))) (pow.f64 re 1/8))
(/.f64 (*.f64 (*.f64 1/2 im) (pow.f64 re -1/8)) (pow.f64 re 1/8))
(*.f64 (/.f64 1/2 (pow.f64 re 1/8)) (*.f64 im (pow.f64 re -1/8)))
(/.f64 (*.f64 (sqrt.f64 -1) (*.f64 (pow.f64 re -1/8) (*.f64 im 1/2))) (sqrt.f64 (neg.f64 (pow.f64 re 1/4))))
(/.f64 (*.f64 (*.f64 (*.f64 1/2 im) (pow.f64 re -1/8)) (sqrt.f64 -1)) (sqrt.f64 (neg.f64 (pow.f64 re 1/4))))
(*.f64 (/.f64 (sqrt.f64 -1) (sqrt.f64 (neg.f64 (pow.f64 re 1/4)))) (*.f64 (*.f64 1/2 im) (pow.f64 re -1/8)))
(/.f64 (*.f64 (cbrt.f64 (*.f64 im 1/2)) (cbrt.f64 (/.f64 (*.f64 1/4 (*.f64 im im)) (sqrt.f64 re)))) (cbrt.f64 (pow.f64 re 1/4)))
(/.f64 (cbrt.f64 (*.f64 1/2 im)) (/.f64 (cbrt.f64 (pow.f64 re 1/4)) (cbrt.f64 (/.f64 1/4 (/.f64 (sqrt.f64 re) (*.f64 im im))))))
(*.f64 (/.f64 (cbrt.f64 (*.f64 1/2 im)) (cbrt.f64 (pow.f64 re 1/4))) (cbrt.f64 (*.f64 (/.f64 1/4 (sqrt.f64 re)) (*.f64 im im))))
(/.f64 (*.f64 (*.f64 -1 im) 1/2) (neg.f64 (pow.f64 re 1/4)))
(/.f64 im (/.f64 (pow.f64 re 1/4) 1/2))
(/.f64 im (*.f64 (pow.f64 re 1/4) 2))
(/.f64 (*.f64 1 (/.f64 (*.f64 im 1/2) (cbrt.f64 (pow.f64 re 1/4)))) (cbrt.f64 (sqrt.f64 re)))
(/.f64 (*.f64 1/2 im) (*.f64 (cbrt.f64 (pow.f64 re 1/4)) (cbrt.f64 (sqrt.f64 re))))
(*.f64 (/.f64 1/2 (cbrt.f64 (pow.f64 re 1/4))) (/.f64 im (cbrt.f64 (sqrt.f64 re))))
(/.f64 (*.f64 im (/.f64 1/2 (pow.f64 re 1/8))) (pow.f64 re 1/8))
(/.f64 im (/.f64 (pow.f64 re 1/4) 1/2))
(/.f64 im (*.f64 (pow.f64 re 1/4) 2))
(/.f64 (*.f64 1/2 (*.f64 (pow.f64 re -1/8) im)) (pow.f64 re 1/8))
(/.f64 (*.f64 (*.f64 1/2 im) (pow.f64 re -1/8)) (pow.f64 re 1/8))
(*.f64 (/.f64 1/2 (pow.f64 re 1/8)) (*.f64 im (pow.f64 re -1/8)))
(/.f64 (*.f64 im (/.f64 1/2 (cbrt.f64 (pow.f64 re 1/4)))) (cbrt.f64 (sqrt.f64 re)))
(/.f64 (*.f64 1/2 im) (*.f64 (cbrt.f64 (pow.f64 re 1/4)) (cbrt.f64 (sqrt.f64 re))))
(*.f64 (/.f64 1/2 (cbrt.f64 (pow.f64 re 1/4))) (/.f64 im (cbrt.f64 (sqrt.f64 re))))
(/.f64 (*.f64 1/2 (/.f64 im (cbrt.f64 (pow.f64 re 1/4)))) (cbrt.f64 (sqrt.f64 re)))
(/.f64 (*.f64 1/2 im) (*.f64 (cbrt.f64 (pow.f64 re 1/4)) (cbrt.f64 (sqrt.f64 re))))
(*.f64 (/.f64 1/2 (cbrt.f64 (pow.f64 re 1/4))) (/.f64 im (cbrt.f64 (sqrt.f64 re))))
(/.f64 (*.f64 (sqrt.f64 (*.f64 im 1/2)) (sqrt.f64 (/.f64 (*.f64 im 1/2) (sqrt.f64 re)))) 1)
(*.f64 (sqrt.f64 (*.f64 1/2 im)) (sqrt.f64 (/.f64 im (/.f64 (sqrt.f64 re) 1/2))))
(*.f64 (sqrt.f64 (*.f64 1/2 im)) (sqrt.f64 (*.f64 (/.f64 im (sqrt.f64 re)) 1/2)))
(/.f64 (*.f64 (sqrt.f64 (*.f64 im 1/2)) (/.f64 (sqrt.f64 (*.f64 im 1/2)) (cbrt.f64 (pow.f64 re 1/4)))) (cbrt.f64 (sqrt.f64 re)))
(/.f64 (*.f64 1/2 im) (*.f64 (cbrt.f64 (pow.f64 re 1/4)) (cbrt.f64 (sqrt.f64 re))))
(*.f64 (/.f64 1/2 (cbrt.f64 (pow.f64 re 1/4))) (/.f64 im (cbrt.f64 (sqrt.f64 re))))
(/.f64 (*.f64 (pow.f64 (cbrt.f64 (*.f64 im 1/2)) 2) (/.f64 (cbrt.f64 (*.f64 im 1/2)) (pow.f64 re 1/4))) 1)
(/.f64 im (/.f64 (pow.f64 re 1/4) 1/2))
(/.f64 im (*.f64 (pow.f64 re 1/4) 2))
(/.f64 (*.f64 (pow.f64 (cbrt.f64 (*.f64 im 1/2)) 2) (/.f64 (cbrt.f64 (*.f64 im 1/2)) (pow.f64 re 1/8))) (pow.f64 re 1/8))
(/.f64 im (/.f64 (pow.f64 re 1/4) 1/2))
(/.f64 im (*.f64 (pow.f64 re 1/4) 2))
(/.f64 (*.f64 (pow.f64 (cbrt.f64 (*.f64 im 1/2)) 2) (cbrt.f64 (*.f64 im (/.f64 1/2 (pow.f64 re 1/4))))) (cbrt.f64 (sqrt.f64 re)))
(/.f64 (pow.f64 (cbrt.f64 (*.f64 1/2 im)) 2) (/.f64 (cbrt.f64 (sqrt.f64 re)) (cbrt.f64 (/.f64 im (/.f64 (pow.f64 re 1/4) 1/2)))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 1/2 im)) 2) (cbrt.f64 (sqrt.f64 re))) (cbrt.f64 (/.f64 im (*.f64 (pow.f64 re 1/4) 2))))
(/.f64 (neg.f64 (*.f64 im -1/2)) (pow.f64 re 1/4))
(/.f64 im (/.f64 (pow.f64 re 1/4) 1/2))
(/.f64 im (*.f64 (pow.f64 re 1/4) 2))
(pow.f64 (*.f64 im (/.f64 1/2 (pow.f64 re 1/4))) 1)
(/.f64 im (/.f64 (pow.f64 re 1/4) 1/2))
(/.f64 im (*.f64 (pow.f64 re 1/4) 2))
(pow.f64 (*.f64 (sqrt.f64 (*.f64 im 1/2)) (pow.f64 re -1/8)) 2)
(/.f64 im (/.f64 (pow.f64 re 1/4) 1/2))
(/.f64 im (*.f64 (pow.f64 re 1/4) 2))
(pow.f64 (cbrt.f64 (*.f64 im (/.f64 1/2 (pow.f64 re 1/4)))) 3)
(/.f64 im (/.f64 (pow.f64 re 1/4) 1/2))
(/.f64 im (*.f64 (pow.f64 re 1/4) 2))
(pow.f64 (pow.f64 (*.f64 im (/.f64 1/2 (pow.f64 re 1/4))) 3) 1/3)
(/.f64 im (/.f64 (pow.f64 re 1/4) 1/2))
(/.f64 im (*.f64 (pow.f64 re 1/4) 2))
(neg.f64 (*.f64 (pow.f64 re -1/4) (*.f64 im -1/2)))
(/.f64 im (/.f64 (pow.f64 re 1/4) 1/2))
(/.f64 im (*.f64 (pow.f64 re 1/4) 2))
(neg.f64 (/.f64 (*.f64 im 1/2) (neg.f64 (pow.f64 re 1/4))))
(/.f64 im (/.f64 (pow.f64 re 1/4) 1/2))
(/.f64 im (*.f64 (pow.f64 re 1/4) 2))
(sqrt.f64 (/.f64 (*.f64 1/4 (*.f64 im im)) (sqrt.f64 re)))
(sqrt.f64 (/.f64 1/4 (/.f64 (sqrt.f64 re) (*.f64 im im))))
(sqrt.f64 (*.f64 (/.f64 1/4 (sqrt.f64 re)) (*.f64 im im)))
(log.f64 (pow.f64 (exp.f64 (*.f64 im 1/2)) (pow.f64 re -1/4)))
(/.f64 im (/.f64 (pow.f64 re 1/4) 1/2))
(/.f64 im (*.f64 (pow.f64 re 1/4) 2))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 im (/.f64 1/2 (pow.f64 re 1/4))))))
(/.f64 im (/.f64 (pow.f64 re 1/4) 1/2))
(/.f64 im (*.f64 (pow.f64 re 1/4) 2))
(cbrt.f64 (pow.f64 (*.f64 im (/.f64 1/2 (pow.f64 re 1/4))) 3))
(/.f64 im (/.f64 (pow.f64 re 1/4) 1/2))
(/.f64 im (*.f64 (pow.f64 re 1/4) 2))
(cbrt.f64 (*.f64 (pow.f64 (pow.f64 re -1/4) 3) (pow.f64 (*.f64 im 1/2) 3)))
(cbrt.f64 (*.f64 (pow.f64 (pow.f64 re -1/4) 3) (*.f64 (pow.f64 im 3) 1/8)))
(cbrt.f64 (*.f64 (pow.f64 (pow.f64 re -1/4) 3) (pow.f64 (*.f64 1/2 im) 3)))
(cbrt.f64 (*.f64 (pow.f64 (*.f64 im 1/2) 3) (pow.f64 (pow.f64 re -1/4) 3)))
(cbrt.f64 (*.f64 (pow.f64 (pow.f64 re -1/4) 3) (*.f64 (pow.f64 im 3) 1/8)))
(cbrt.f64 (*.f64 (pow.f64 (pow.f64 re -1/4) 3) (pow.f64 (*.f64 1/2 im) 3)))
(cbrt.f64 (/.f64 (pow.f64 (*.f64 im 1/2) 3) (pow.f64 (pow.f64 re 1/4) 3)))
(/.f64 im (/.f64 (pow.f64 re 1/4) 1/2))
(/.f64 im (*.f64 (pow.f64 re 1/4) 2))
(expm1.f64 (log1p.f64 (*.f64 im (/.f64 1/2 (pow.f64 re 1/4)))))
(/.f64 im (/.f64 (pow.f64 re 1/4) 1/2))
(/.f64 im (*.f64 (pow.f64 re 1/4) 2))
(exp.f64 (log.f64 (*.f64 im (/.f64 1/2 (pow.f64 re 1/4)))))
(/.f64 im (/.f64 (pow.f64 re 1/4) 1/2))
(/.f64 im (*.f64 (pow.f64 re 1/4) 2))
(exp.f64 (*.f64 (log.f64 (*.f64 im (/.f64 1/2 (pow.f64 re 1/4)))) 1))
(/.f64 im (/.f64 (pow.f64 re 1/4) 1/2))
(/.f64 im (*.f64 (pow.f64 re 1/4) 2))
(log1p.f64 (expm1.f64 (*.f64 im (/.f64 1/2 (pow.f64 re 1/4)))))
(/.f64 im (/.f64 (pow.f64 re 1/4) 1/2))
(/.f64 im (*.f64 (pow.f64 re 1/4) 2))

eval183.0ms (2%)

Compiler

Compiled 7302 to 4725 computations (35.3% saved)

prune193.0ms (2.1%)

Pruning

11 alts after pruning (2 fresh and 9 done)

PrunedKeptTotal
New5382540
Fresh000
Picked101
Done2911
Total54111552
Error
0b
Counts
552 → 11
Alt Table
Click to see full alt table
StatusErrorProgram
47.0b
(/.f64 (/.f64 1/2 (sqrt.f64 re)) (/.f64 1 im))
47.0b
(/.f64 (*.f64 (pow.f64 re -1/4) (*.f64 im 1/2)) (pow.f64 re 1/4))
47.1b
(/.f64 1/2 (/.f64 (sqrt.f64 re) im))
47.0b
(*.f64 im (sqrt.f64 (/.f64 1/4 re)))
47.0b
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
47.0b
(*.f64 1/2 (*.f64 (pow.f64 re -1/2) im))
29.3b
(*.f64 1/2 (*.f64 (sqrt.f64 (-.f64 im re)) (sqrt.f64 2)))
13.2b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))))
29.2b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 im re))))
47.0b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 re -2))))
30.8b
(*.f64 1/2 (sqrt.f64 (*.f64 2 im)))
Compiler

Compiled 107 to 85 computations (20.6% saved)

regimes225.0ms (2.5%)

Counts
21 → 4
Calls
Call 1
Inputs
(*.f64 1/2 (sqrt.f64 (*.f64 2 im)))
(*.f64 1/2 (/.f64 im (sqrt.f64 re)))
(*.f64 im (sqrt.f64 (/.f64 1/4 re)))
(*.f64 im (/.f64 1/2 (sqrt.f64 re)))
(/.f64 1/2 (/.f64 (sqrt.f64 re) im))
(*.f64 1/2 (*.f64 (pow.f64 re -1/2) im))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 re -2))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 im re))))
(*.f64 1/2 (sqrt.f64 (*.f64 im (/.f64 im re))))
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 re)) im))
(*.f64 1/2 (/.f64 1 (/.f64 (sqrt.f64 re) im)))
(/.f64 (/.f64 1/2 (sqrt.f64 re)) (/.f64 1 im))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 1/2 (/.f64 im (/.f64 re im))))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 1/2 (/.f64 (*.f64 im im) re)))))
(*.f64 1/2 (*.f64 (sqrt.f64 (-.f64 im re)) (sqrt.f64 2)))
(*.f64 1/2 (/.f64 (sqrt.f64 im) (sqrt.f64 (/.f64 re im))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))))
(/.f64 (*.f64 (pow.f64 re -1/4) (*.f64 im 1/2)) (pow.f64 re 1/4))
(/.f64 (*.f64 (/.f64 1 (pow.f64 re 1/4)) (*.f64 im 1/2)) (pow.f64 re 1/4))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
(*.f64 1/2 (pow.f64 (cbrt.f64 (/.f64 im (sqrt.f64 re))) 3))
Outputs
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))))
(*.f64 1/2 (/.f64 (sqrt.f64 im) (sqrt.f64 (/.f64 re im))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re))))
(*.f64 1/2 (*.f64 (pow.f64 re -1/2) im))
Calls

7 calls:

63.0ms
(sqrt.f64 (*.f64 2 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))
56.0ms
im
50.0ms
re
14.0ms
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
14.0ms
(*.f64 2 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
Results
ErrorSegmentsBranch
5.4b4re
11.8b3im
6.1b2(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
6.1b2(sqrt.f64 (*.f64 2 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))
6.1b2(*.f64 2 (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
6.1b2(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
13.2b1(*.f64 im im)
Compiler

Compiled 256 to 172 computations (32.8% saved)

bsearch129.0ms (1.4%)

Algorithm
binary-search
Steps
TimeLeftRight
69.0ms
3.395593812471763e+23
2.904155280595194e+29
37.0ms
1.2041562518312572e-33
4.1789131725257646e-33
23.0ms
5.5002516703345e-116
3.634548858478974e-113
Results
53.0ms209×body256valid
46.0ms58×body2048valid
17.0ms57×body1024valid
5.0ms22×body512valid
3.0msbody4096valid
Compiler

Compiled 554 to 425 computations (23.3% saved)

regimes125.0ms (1.4%)

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

3 calls:

69.0ms
re
35.0ms
(*.f64 im im)
17.0ms
im
Results
ErrorSegmentsBranch
12.9b5re
23.4b2im
23.4b2(*.f64 im im)
Compiler

Compiled 140 to 95 computations (32.1% saved)

bsearch148.0ms (1.6%)

Algorithm
binary-search
Steps
TimeLeftRight
42.0ms
3.395593812471763e+23
2.904155280595194e+29
19.0ms
1.2041562518312572e-33
4.1789131725257646e-33
71.0ms
5.5002516703345e-116
3.634548858478974e-113
15.0ms
-2.194691822956651e+48
-4.8115161226029845e+47
Results
87.0ms301×body256valid
29.0ms67×body2048valid
16.0ms52×body1024valid
4.0ms21×body512valid
3.0msbody4096valid
Compiler

Compiled 642 to 517 computations (19.5% saved)

regimes92.0ms (1%)

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

3 calls:

58.0ms
re
17.0ms
im
10.0ms
(*.f64 im im)
Results
ErrorSegmentsBranch
12.9b5re
23.4b2im
23.4b2(*.f64 im im)
Compiler

Compiled 131 to 90 computations (31.3% saved)

bsearch119.0ms (1.3%)

Algorithm
binary-search
Steps
TimeLeftRight
54.0ms
3.395593812471763e+23
2.904155280595194e+29
23.0ms
1.2041562518312572e-33
4.1789131725257646e-33
27.0ms
5.5002516703345e-116
3.634548858478974e-113
14.0ms
-2.194691822956651e+48
-4.8115161226029845e+47
Results
41.0ms282×body256valid
39.0ms80×body2048valid
21.0ms56×body1024valid
5.0ms25×body512valid
3.0msbody4096valid
Compiler

Compiled 603 to 491 computations (18.6% saved)

regimes80.0ms (0.9%)

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

2 calls:

42.0ms
im
34.0ms
re
Results
ErrorSegmentsBranch
13.4b5re
24.4b2im
Compiler

Compiled 53 to 37 computations (30.2% saved)

bsearch100.0ms (1.1%)

Algorithm
binary-search
Steps
TimeLeftRight
37.0ms
3.395593812471763e+23
2.904155280595194e+29
21.0ms
1.2041562518312572e-33
4.1789131725257646e-33
19.0ms
2.9724543501365344e-102
2.2069650642450284e-101
23.0ms
-5.424986156637109e-102
-7.199778170906316e-105
Results
44.0ms315×body256valid
27.0ms61×body2048valid
13.0ms44×body1024valid
4.0msbody4096valid
4.0ms19×body512valid
Compiler

Compiled 551 to 469 computations (14.9% saved)

regimes33.0ms (0.4%)

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

2 calls:

18.0ms
re
13.0ms
im
Results
ErrorSegmentsBranch
21.0b4re
24.4b2im
Compiler

Compiled 45 to 30 computations (33.3% saved)

bsearch81.0ms (0.9%)

Algorithm
binary-search
Steps
TimeLeftRight
40.0ms
3.395593812471763e+23
2.904155280595194e+29
20.0ms
1.2041562518312572e-33
4.1789131725257646e-33
21.0ms
2.9724543501365344e-102
2.2069650642450284e-101
Results
31.0ms77×body2048valid
21.0ms176×body256valid
16.0ms42×body1024valid
5.0ms23×body512valid
1.0msbody4096valid
Compiler

Compiled 391 to 325 computations (16.9% saved)

regimes48.0ms (0.5%)

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

2 calls:

28.0ms
im
19.0ms
re
Results
ErrorSegmentsBranch
21.0b4re
24.4b2im
Compiler

Compiled 38 to 25 computations (34.2% saved)

bsearch81.0ms (0.9%)

Algorithm
binary-search
Steps
TimeLeftRight
38.0ms
3.395593812471763e+23
2.904155280595194e+29
20.0ms
1.2041562518312572e-33
4.1789131725257646e-33
22.0ms
2.9724543501365344e-102
2.2069650642450284e-101
Results
31.0ms75×body2048valid
19.0ms164×body256valid
18.0ms50×body1024valid
6.0ms28×body512valid
1.0msbody4096valid
Compiler

Compiled 382 to 316 computations (17.3% saved)

regimes18.0ms (0.2%)

Accuracy

Total -41.0b remaining (-195.3%)

Threshold costs -41.0b (-195.3%)

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

2 calls:

11.0ms
re
6.0ms
im
Results
ErrorSegmentsBranch
21.0b4re
24.4b2im
Compiler

Compiled 20 to 15 computations (25% saved)

bsearch78.0ms (0.9%)

Algorithm
binary-search
Steps
TimeLeftRight
39.0ms
3.395593812471763e+23
2.904155280595194e+29
18.0ms
1.2041562518312572e-33
4.1789131725257646e-33
20.0ms
2.9724543501365344e-102
2.2069650642450284e-101
Results
26.0ms69×body2048valid
22.0ms178×body256valid
15.0ms52×body1024valid
3.0msbody4096valid
3.0ms14×body512valid
Compiler

Compiled 382 to 316 computations (17.3% saved)

simplify24.0ms (0.3%)

Algorithm
egg-herbie
Rules
30×*-commutative
sub-neg
+-commutative
not-or
if-if-or-not
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0113846
1135836
2144836
3149832
4151832
5152832
Stop Event
fuel
saturated
Calls
Call 1
Inputs
(if (<=.f64 re 3549017208474643/2772669694120814859578414184143083703436437075375816575170479580614621307805625623039974406104139578097391210961403571828974157824) (*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))) (if (<=.f64 re 5699856385590521/2923003274661805836407369665432566039311865085952) (*.f64 1/2 (/.f64 (sqrt.f64 im) (sqrt.f64 (/.f64 re im)))) (if (<=.f64 re 41999999999999998221615104) (*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))) (*.f64 1/2 (*.f64 (pow.f64 re -1/2) im)))))
(if (<=.f64 re -490000000000000029597426933548004873349583863808) (*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 re -2)))) (if (<=.f64 re 6065214955889283/173291855882550928723650886508942731464777317210988535948154973788413831737851601439998400381508723631086950685087723239310884864) (*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 im re)))) (if (<=.f64 re 7599808514120695/5846006549323611672814739330865132078623730171904) (*.f64 1/2 (/.f64 (sqrt.f64 im) (sqrt.f64 (/.f64 re im)))) (if (<=.f64 re 449999999999999978491609088) (*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 im re)))) (*.f64 1/2 (*.f64 (pow.f64 re -1/2) im))))))
(if (<=.f64 re -579999999999999960526878234458849109056543522816) (*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 re -2)))) (if (<=.f64 re 2122825234561249/86645927941275464361825443254471365732388658605494267974077486894206915868925800719999200190754361815543475342543861619655442432) (*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 im re)))) (if (<=.f64 re 2996078356528351/730750818665451459101842416358141509827966271488) (*.f64 1/2 (/.f64 im (sqrt.f64 re))) (if (<=.f64 re 16500000000000000528482304) (*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 im re)))) (*.f64 1/2 (*.f64 (pow.f64 re -1/2) im))))))
(if (<=.f64 re -3933896298648025/20173827172553973356686868531273530268200826506478308693989526222973809547006571833044104322501076808092993531037089792) (*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 re -2)))) (if (<=.f64 re 1733688272641357/78804012392788958424558080200287227610159478540930893335896586808491443542994421222828532509769831281613255980613632) (*.f64 1/2 (sqrt.f64 (*.f64 2 im))) (if (<=.f64 re 1461501637330903/365375409332725729550921208179070754913983135744) (*.f64 1/2 (/.f64 im (sqrt.f64 re))) (if (<=.f64 re 61000000000000002734686208) (*.f64 1/2 (sqrt.f64 (*.f64 2 im))) (*.f64 1/2 (*.f64 (pow.f64 re -1/2) im))))))
(if (<=.f64 re 1733688272641357/78804012392788958424558080200287227610159478540930893335896586808491443542994421222828532509769831281613255980613632) (*.f64 1/2 (sqrt.f64 (*.f64 2 im))) (if (<=.f64 re 7453658350387605/2923003274661805836407369665432566039311865085952) (*.f64 1/2 (/.f64 im (sqrt.f64 re))) (if (<=.f64 re 360000000000000024024973312) (*.f64 1/2 (sqrt.f64 (*.f64 2 im))) (*.f64 1/2 (*.f64 (pow.f64 re -1/2) im)))))
(if (<=.f64 re 5673888892280805/630432099142311667396464641602297820881275828327447146687172694467931548343955369782628260078158650252906047844909056) (*.f64 1/2 (sqrt.f64 (*.f64 2 im))) (if (<=.f64 re 6722907531722153/2923003274661805836407369665432566039311865085952) (*.f64 1/2 (/.f64 im (sqrt.f64 re))) (if (<=.f64 re 480000000000000000000000) (*.f64 1/2 (sqrt.f64 (*.f64 2 im))) (*.f64 im (sqrt.f64 (/.f64 1/4 re))))))
(if (<=.f64 re 5989104941851961/315216049571155833698232320801148910440637914163723573343586347233965774171977684891314130039079325126453023922454528) (*.f64 1/2 (sqrt.f64 (*.f64 2 im))) (if (<=.f64 re 4676805239458889/2923003274661805836407369665432566039311865085952) (*.f64 1/2 (/.f64 im (sqrt.f64 re))) (if (<=.f64 re 1400000000000000083886080) (*.f64 1/2 (sqrt.f64 (*.f64 2 im))) (*.f64 1/2 (/.f64 im (sqrt.f64 re))))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 im)))
Outputs
(if (<=.f64 re 3549017208474643/2772669694120814859578414184143083703436437075375816575170479580614621307805625623039974406104139578097391210961403571828974157824) (*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))) (if (<=.f64 re 5699856385590521/2923003274661805836407369665432566039311865085952) (*.f64 1/2 (/.f64 (sqrt.f64 im) (sqrt.f64 (/.f64 re im)))) (if (<=.f64 re 41999999999999998221615104) (*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))) (*.f64 1/2 (*.f64 (pow.f64 re -1/2) im)))))
(if (<=.f64 re 3549017208474643/2772669694120814859578414184143083703436437075375816575170479580614621307805625623039974406104139578097391210961403571828974157824) (*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))) (if (<=.f64 re 5699856385590521/2923003274661805836407369665432566039311865085952) (*.f64 1/2 (/.f64 (sqrt.f64 im) (sqrt.f64 (/.f64 re im)))) (if (<=.f64 re 41999999999999998221615104) (*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (hypot.f64 re im) re)))) (*.f64 1/2 (*.f64 im (pow.f64 re -1/2))))))
(if (<=.f64 re -490000000000000029597426933548004873349583863808) (*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 re -2)))) (if (<=.f64 re 6065214955889283/173291855882550928723650886508942731464777317210988535948154973788413831737851601439998400381508723631086950685087723239310884864) (*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 im re)))) (if (<=.f64 re 7599808514120695/5846006549323611672814739330865132078623730171904) (*.f64 1/2 (/.f64 (sqrt.f64 im) (sqrt.f64 (/.f64 re im)))) (if (<=.f64 re 449999999999999978491609088) (*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 im re)))) (*.f64 1/2 (*.f64 (pow.f64 re -1/2) im))))))
(if (<=.f64 re -490000000000000029597426933548004873349583863808) (*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 re -2)))) (if (<=.f64 re 6065214955889283/173291855882550928723650886508942731464777317210988535948154973788413831737851601439998400381508723631086950685087723239310884864) (*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 im re)))) (if (<=.f64 re 7599808514120695/5846006549323611672814739330865132078623730171904) (*.f64 1/2 (/.f64 (sqrt.f64 im) (sqrt.f64 (/.f64 re im)))) (if (<=.f64 re 449999999999999978491609088) (*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 im re)))) (*.f64 1/2 (*.f64 im (pow.f64 re -1/2)))))))
(if (<=.f64 re -579999999999999960526878234458849109056543522816) (*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 re -2)))) (if (<=.f64 re 2122825234561249/86645927941275464361825443254471365732388658605494267974077486894206915868925800719999200190754361815543475342543861619655442432) (*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 im re)))) (if (<=.f64 re 2996078356528351/730750818665451459101842416358141509827966271488) (*.f64 1/2 (/.f64 im (sqrt.f64 re))) (if (<=.f64 re 16500000000000000528482304) (*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 im re)))) (*.f64 1/2 (*.f64 (pow.f64 re -1/2) im))))))
(if (<=.f64 re -579999999999999960526878234458849109056543522816) (*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 re -2)))) (if (<=.f64 re 2122825234561249/86645927941275464361825443254471365732388658605494267974077486894206915868925800719999200190754361815543475342543861619655442432) (*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 im re)))) (if (<=.f64 re 2996078356528351/730750818665451459101842416358141509827966271488) (*.f64 1/2 (/.f64 im (sqrt.f64 re))) (if (<=.f64 re 16500000000000000528482304) (*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 im re)))) (*.f64 1/2 (*.f64 im (pow.f64 re -1/2)))))))
(if (<=.f64 re -3933896298648025/20173827172553973356686868531273530268200826506478308693989526222973809547006571833044104322501076808092993531037089792) (*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 re -2)))) (if (<=.f64 re 1733688272641357/78804012392788958424558080200287227610159478540930893335896586808491443542994421222828532509769831281613255980613632) (*.f64 1/2 (sqrt.f64 (*.f64 2 im))) (if (<=.f64 re 1461501637330903/365375409332725729550921208179070754913983135744) (*.f64 1/2 (/.f64 im (sqrt.f64 re))) (if (<=.f64 re 61000000000000002734686208) (*.f64 1/2 (sqrt.f64 (*.f64 2 im))) (*.f64 1/2 (*.f64 (pow.f64 re -1/2) im))))))
(if (<=.f64 re -3933896298648025/20173827172553973356686868531273530268200826506478308693989526222973809547006571833044104322501076808092993531037089792) (*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 re -2)))) (if (<=.f64 re 1733688272641357/78804012392788958424558080200287227610159478540930893335896586808491443542994421222828532509769831281613255980613632) (*.f64 1/2 (sqrt.f64 (*.f64 2 im))) (if (<=.f64 re 1461501637330903/365375409332725729550921208179070754913983135744) (*.f64 1/2 (/.f64 im (sqrt.f64 re))) (if (<=.f64 re 61000000000000002734686208) (*.f64 1/2 (sqrt.f64 (*.f64 2 im))) (*.f64 1/2 (*.f64 im (pow.f64 re -1/2)))))))
(if (<=.f64 re 1733688272641357/78804012392788958424558080200287227610159478540930893335896586808491443542994421222828532509769831281613255980613632) (*.f64 1/2 (sqrt.f64 (*.f64 2 im))) (if (<=.f64 re 7453658350387605/2923003274661805836407369665432566039311865085952) (*.f64 1/2 (/.f64 im (sqrt.f64 re))) (if (<=.f64 re 360000000000000024024973312) (*.f64 1/2 (sqrt.f64 (*.f64 2 im))) (*.f64 1/2 (*.f64 (pow.f64 re -1/2) im)))))
(if (<=.f64 re 1733688272641357/78804012392788958424558080200287227610159478540930893335896586808491443542994421222828532509769831281613255980613632) (*.f64 1/2 (sqrt.f64 (*.f64 2 im))) (if (<=.f64 re 7453658350387605/2923003274661805836407369665432566039311865085952) (*.f64 1/2 (/.f64 im (sqrt.f64 re))) (if (<=.f64 re 360000000000000024024973312) (*.f64 1/2 (sqrt.f64 (*.f64 2 im))) (*.f64 1/2 (*.f64 im (pow.f64 re -1/2))))))
(if (<=.f64 re 5673888892280805/630432099142311667396464641602297820881275828327447146687172694467931548343955369782628260078158650252906047844909056) (*.f64 1/2 (sqrt.f64 (*.f64 2 im))) (if (<=.f64 re 6722907531722153/2923003274661805836407369665432566039311865085952) (*.f64 1/2 (/.f64 im (sqrt.f64 re))) (if (<=.f64 re 480000000000000000000000) (*.f64 1/2 (sqrt.f64 (*.f64 2 im))) (*.f64 im (sqrt.f64 (/.f64 1/4 re))))))
(if (<=.f64 re 5989104941851961/315216049571155833698232320801148910440637914163723573343586347233965774171977684891314130039079325126453023922454528) (*.f64 1/2 (sqrt.f64 (*.f64 2 im))) (if (<=.f64 re 4676805239458889/2923003274661805836407369665432566039311865085952) (*.f64 1/2 (/.f64 im (sqrt.f64 re))) (if (<=.f64 re 1400000000000000083886080) (*.f64 1/2 (sqrt.f64 (*.f64 2 im))) (*.f64 1/2 (/.f64 im (sqrt.f64 re))))))
(if (<=.f64 re 5989104941851961/315216049571155833698232320801148910440637914163723573343586347233965774171977684891314130039079325126453023922454528) (*.f64 1/2 (sqrt.f64 (*.f64 2 im))) (if (or (<=.f64 re 4676805239458889/2923003274661805836407369665432566039311865085952) (not (<=.f64 re 1400000000000000083886080))) (*.f64 1/2 (/.f64 im (sqrt.f64 re))) (*.f64 1/2 (sqrt.f64 (*.f64 2 im)))))
(if (or (<=.f64 re 5989104941851961/315216049571155833698232320801148910440637914163723573343586347233965774171977684891314130039079325126453023922454528) (not (or (<=.f64 re 4676805239458889/2923003274661805836407369665432566039311865085952) (not (<=.f64 re 1400000000000000083886080))))) (*.f64 1/2 (sqrt.f64 (*.f64 2 im))) (*.f64 1/2 (/.f64 im (sqrt.f64 re))))
(if (or (<=.f64 re 5989104941851961/315216049571155833698232320801148910440637914163723573343586347233965774171977684891314130039079325126453023922454528) (and (not (<=.f64 re 4676805239458889/2923003274661805836407369665432566039311865085952)) (<=.f64 re 1400000000000000083886080))) (*.f64 1/2 (sqrt.f64 (*.f64 2 im))) (*.f64 1/2 (/.f64 im (sqrt.f64 re))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 im)))
Compiler

Compiled 326 to 245 computations (24.8% saved)

soundness501.0ms (5.6%)

Algorithm
egg-herbie
Rules
1650×distribute-lft-in
1278×fma-def
1278×fma-def
1206×times-frac
1206×times-frac
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01529
12329
23629
35529
47729
510829
619429
730229
841329
950629
1060529
1167929
1271029
1376229
1481229
1587329
1693329
1794329
01529
12329
23629
35529
47729
510829
619429
730229
841329
950629
1060529
1167929
1271029
1376229
1481229
1587329
1693329
1794329
01751942
15081834
218791820
370201820
01529
12329
23629
35529
47729
510829
619429
730229
841329
950629
1060529
1167929
1271029
1376229
1481229
1587329
1693329
1794329
01751942
15081834
218791820
370201820
05237642
114697494
258527494
Stop Event
node limit
node limit
saturated
node limit
saturated
saturated
Compiler

Compiled 438 to 237 computations (45.9% saved)

end197.0ms (2.2%)

Compiler

Compiled 312 to 218 computations (30.1% saved)

Profiling

Loading profile data...