math.exp on complex, real part

Details

Time bar (total: 4.5s)

analyze0.0ms (0%)

Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%99.9%0.1%0%0%0%0
100%99.9%0%0.1%0%0%0%1
Compiler

Compiled 8 to 6 computations (25% saved)

sample1.4s (31.5%)

Results
555.0ms4580×body256valid
399.0ms1049×body1024valid
185.0ms559×body1024infinite
129.0ms1235×body256infinite
103.0ms562×body512valid
44.0ms269×body512infinite
1.0msbody2048valid
Bogosity

preprocess15.0ms (0.3%)

Algorithm
egg-herbie
Rules
*-commutative
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01130
11330
022
Stop Event
saturated
saturated
Calls
Call 1
Inputs
0
1
Outputs
0
1
Call 2
Inputs
(*.f64 (exp.f64 re) (cos.f64 im))
(*.f64 (exp.f64 im) (cos.f64 re))
Outputs
(*.f64 (exp.f64 re) (cos.f64 im))
(*.f64 (exp.f64 im) (cos.f64 re))
Compiler

Compiled 9 to 7 computations (22.2% saved)

simplify13.0ms (0.3%)

Algorithm
egg-herbie
Rules
*-commutative
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0815
1915
Stop Event
saturated
Counts
1 → 1
Calls
Call 1
Inputs
(*.f64 (exp.f64 re) (cos.f64 im))
Outputs
(*.f64 (exp.f64 re) (cos.f64 im))

eval0.0ms (0%)

Compiler

Compiled 7 to 5 computations (28.6% saved)

prune1.0ms (0%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New011
Fresh011
Picked000
Done000
Total022
Accurracy
100.0%
Counts
2 → 1
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(*.f64 (exp.f64 re) (cos.f64 im))
100.0%
(*.f64 (exp.f64 re) (cos.f64 im))
Compiler

Compiled 14 to 10 computations (28.6% saved)

localize686.0ms (15.2%)

Local Accuracy

Found 1 expressions with local accuracy:

NewAccuracyProgram
100.0%
(cos.f64 im)
Compiler

Compiled 14 to 6 computations (57.1% saved)

series0.0ms (0%)

Counts
1 → 4
Calls

3 calls:

TimeVariablePointExpression
0.0ms
im
@0
(cos.f64 im)
0.0ms
im
@inf
(cos.f64 im)
0.0ms
im
@-inf
(cos.f64 im)

rewrite48.0ms (1%)

Algorithm
batch-egg-rewrite
Rules
738×pow1
708×add-sqr-sqrt
698×*-un-lft-identity
674×add-exp-log
674×log1p-expm1-u
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
045
1785
29105
Stop Event
node limit
Counts
1 → 37
Calls
Call 1
Inputs
(cos.f64 im)
Outputs
(+.f64 0 (cos.f64 im))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (cos.f64 im))) 2)) (log.f64 (cbrt.f64 (exp.f64 (cos.f64 im)))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (cos.f64 im)))) (log.f64 (sqrt.f64 (exp.f64 (cos.f64 im)))))
(+.f64 (*.f64 (cos.f64 (+.f64 1 im)) (cos.f64 1)) (*.f64 (sin.f64 (+.f64 1 im)) (sin.f64 1)))
(-.f64 (+.f64 1 (cos.f64 im)) 1)
(*.f64 (cos.f64 im) 1)
(*.f64 1 (cos.f64 im))
(*.f64 (cbrt.f64 (cos.f64 im)) (pow.f64 (cbrt.f64 (cos.f64 im)) 2))
(*.f64 (cbrt.f64 (cos.f64 im)) (sqrt.f64 (pow.f64 (cbrt.f64 (cos.f64 im)) 4)))
(*.f64 (pow.f64 (cbrt.f64 (cos.f64 im)) 2) (cbrt.f64 (cos.f64 im)))
(*.f64 (sqrt.f64 (cos.f64 im)) (sqrt.f64 (cos.f64 im)))
(*.f64 (sqrt.f64 (sqrt.f64 (cos.f64 im))) (sqrt.f64 (pow.f64 (cos.f64 im) 3/2)))
(*.f64 (cbrt.f64 (pow.f64 (cos.f64 im) 5/2)) (sqrt.f64 (cbrt.f64 (cos.f64 im))))
(*.f64 (cbrt.f64 (pow.f64 (*.f64 (cos.f64 im) (cbrt.f64 (cos.f64 im))) 2)) (cbrt.f64 (cbrt.f64 (cos.f64 im))))
(*.f64 (sqrt.f64 (pow.f64 (cos.f64 im) 3/2)) (sqrt.f64 (sqrt.f64 (cos.f64 im))))
(*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (cos.f64 im)) 5)) (sqrt.f64 (cbrt.f64 (cos.f64 im))))
(*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (cos.f64 im)) 4)) (cbrt.f64 (cos.f64 im)))
(*.f64 (pow.f64 1 1/3) (cos.f64 im))
(*.f64 (pow.f64 (pow.f64 (*.f64 (cos.f64 im) (cbrt.f64 (cos.f64 im))) 2) 1/3) (cbrt.f64 (cbrt.f64 (cos.f64 im))))
(*.f64 (pow.f64 (pow.f64 (cos.f64 im) 5/2) 1/3) (sqrt.f64 (cbrt.f64 (cos.f64 im))))
(pow.f64 (cos.f64 im) 1)
(pow.f64 (cbrt.f64 (cos.f64 im)) 3)
(pow.f64 (pow.f64 (cos.f64 im) 2) 1/2)
(pow.f64 (pow.f64 (cos.f64 im) 3) 1/3)
(pow.f64 (sqrt.f64 (cos.f64 im)) 2)
(pow.f64 (E.f64) (log.f64 (cos.f64 im)))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (cos.f64 im)))) (sqrt.f64 (log.f64 (cos.f64 im))))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (cos.f64 im))) 2)) (cbrt.f64 (log.f64 (cos.f64 im))))
(sqrt.f64 (pow.f64 (cos.f64 im) 2))
(log.f64 (exp.f64 (cos.f64 im)))
(cbrt.f64 (pow.f64 (cos.f64 im) 3))
(expm1.f64 (log1p.f64 (cos.f64 im)))
(exp.f64 (log.f64 (cos.f64 im)))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (cos.f64 im))) 3))
(exp.f64 (*.f64 (*.f64 3 (log.f64 (cos.f64 im))) 1/3))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (cos.f64 im))) 2))
(log1p.f64 (expm1.f64 (cos.f64 im)))

simplify64.0ms (1.4%)

Algorithm
egg-herbie
Rules
954×log-prod
670×associate-*r*
622×associate-+r+
610×associate-+l+
594×*-commutative
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
0121569
1241535
2644519
33358519
47008519
Stop Event
node limit
Counts
41 → 55
Calls
Call 1
Inputs
1
(+.f64 1 (*.f64 -1/2 (pow.f64 im 2)))
(+.f64 1 (+.f64 (*.f64 -1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))))
(+.f64 1 (+.f64 (*.f64 -1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 -1/720 (pow.f64 im 6)))))
(+.f64 0 (cos.f64 im))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (cos.f64 im))) 2)) (log.f64 (cbrt.f64 (exp.f64 (cos.f64 im)))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (cos.f64 im)))) (log.f64 (sqrt.f64 (exp.f64 (cos.f64 im)))))
(+.f64 (*.f64 (cos.f64 (+.f64 1 im)) (cos.f64 1)) (*.f64 (sin.f64 (+.f64 1 im)) (sin.f64 1)))
(-.f64 (+.f64 1 (cos.f64 im)) 1)
(*.f64 (cos.f64 im) 1)
(*.f64 1 (cos.f64 im))
(*.f64 (cbrt.f64 (cos.f64 im)) (pow.f64 (cbrt.f64 (cos.f64 im)) 2))
(*.f64 (cbrt.f64 (cos.f64 im)) (sqrt.f64 (pow.f64 (cbrt.f64 (cos.f64 im)) 4)))
(*.f64 (pow.f64 (cbrt.f64 (cos.f64 im)) 2) (cbrt.f64 (cos.f64 im)))
(*.f64 (sqrt.f64 (cos.f64 im)) (sqrt.f64 (cos.f64 im)))
(*.f64 (sqrt.f64 (sqrt.f64 (cos.f64 im))) (sqrt.f64 (pow.f64 (cos.f64 im) 3/2)))
(*.f64 (cbrt.f64 (pow.f64 (cos.f64 im) 5/2)) (sqrt.f64 (cbrt.f64 (cos.f64 im))))
(*.f64 (cbrt.f64 (pow.f64 (*.f64 (cos.f64 im) (cbrt.f64 (cos.f64 im))) 2)) (cbrt.f64 (cbrt.f64 (cos.f64 im))))
(*.f64 (sqrt.f64 (pow.f64 (cos.f64 im) 3/2)) (sqrt.f64 (sqrt.f64 (cos.f64 im))))
(*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (cos.f64 im)) 5)) (sqrt.f64 (cbrt.f64 (cos.f64 im))))
(*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (cos.f64 im)) 4)) (cbrt.f64 (cos.f64 im)))
(*.f64 (pow.f64 1 1/3) (cos.f64 im))
(*.f64 (pow.f64 (pow.f64 (*.f64 (cos.f64 im) (cbrt.f64 (cos.f64 im))) 2) 1/3) (cbrt.f64 (cbrt.f64 (cos.f64 im))))
(*.f64 (pow.f64 (pow.f64 (cos.f64 im) 5/2) 1/3) (sqrt.f64 (cbrt.f64 (cos.f64 im))))
(pow.f64 (cos.f64 im) 1)
(pow.f64 (cbrt.f64 (cos.f64 im)) 3)
(pow.f64 (pow.f64 (cos.f64 im) 2) 1/2)
(pow.f64 (pow.f64 (cos.f64 im) 3) 1/3)
(pow.f64 (sqrt.f64 (cos.f64 im)) 2)
(pow.f64 (E.f64) (log.f64 (cos.f64 im)))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (cos.f64 im)))) (sqrt.f64 (log.f64 (cos.f64 im))))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (cos.f64 im))) 2)) (cbrt.f64 (log.f64 (cos.f64 im))))
(sqrt.f64 (pow.f64 (cos.f64 im) 2))
(log.f64 (exp.f64 (cos.f64 im)))
(cbrt.f64 (pow.f64 (cos.f64 im) 3))
(expm1.f64 (log1p.f64 (cos.f64 im)))
(exp.f64 (log.f64 (cos.f64 im)))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (cos.f64 im))) 3))
(exp.f64 (*.f64 (*.f64 3 (log.f64 (cos.f64 im))) 1/3))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (cos.f64 im))) 2))
(log1p.f64 (expm1.f64 (cos.f64 im)))
Outputs
1
(+.f64 1 (*.f64 -1/2 (pow.f64 im 2)))
(+.f64 1 (*.f64 -1/2 (*.f64 im im)))
(fma.f64 -1/2 (*.f64 im im) 1)
(+.f64 1 (+.f64 (*.f64 -1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))))
(+.f64 1 (fma.f64 -1/2 (*.f64 im im) (*.f64 1/24 (pow.f64 im 4))))
(fma.f64 -1/2 (*.f64 im im) (fma.f64 1/24 (pow.f64 im 4) 1))
(+.f64 1 (+.f64 (*.f64 -1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 -1/720 (pow.f64 im 6)))))
(+.f64 1 (fma.f64 -1/2 (*.f64 im im) (fma.f64 1/24 (pow.f64 im 4) (*.f64 -1/720 (pow.f64 im 6)))))
(+.f64 0 (cos.f64 im))
(cos.f64 im)
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (cos.f64 im))) 2)) (log.f64 (cbrt.f64 (exp.f64 (cos.f64 im)))))
(+.f64 (*.f64 2 (log.f64 (cbrt.f64 (exp.f64 (cos.f64 im))))) (log.f64 (cbrt.f64 (exp.f64 (cos.f64 im)))))
(*.f64 3 (log.f64 (cbrt.f64 (exp.f64 (cos.f64 im)))))
(*.f64 (log.f64 (cbrt.f64 (exp.f64 (cos.f64 im)))) 3)
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (cos.f64 im)))) (log.f64 (sqrt.f64 (exp.f64 (cos.f64 im)))))
(cos.f64 im)
(+.f64 (*.f64 (cos.f64 (+.f64 1 im)) (cos.f64 1)) (*.f64 (sin.f64 (+.f64 1 im)) (sin.f64 1)))
(fma.f64 (cos.f64 (+.f64 1 im)) (cos.f64 1) (*.f64 (sin.f64 (+.f64 1 im)) (sin.f64 1)))
(-.f64 (+.f64 1 (cos.f64 im)) 1)
(cos.f64 im)
(*.f64 (cos.f64 im) 1)
(cos.f64 im)
(*.f64 1 (cos.f64 im))
(cos.f64 im)
(*.f64 (cbrt.f64 (cos.f64 im)) (pow.f64 (cbrt.f64 (cos.f64 im)) 2))
(cos.f64 im)
(*.f64 (cbrt.f64 (cos.f64 im)) (sqrt.f64 (pow.f64 (cbrt.f64 (cos.f64 im)) 4)))
(cos.f64 im)
(*.f64 (pow.f64 (cbrt.f64 (cos.f64 im)) 2) (cbrt.f64 (cos.f64 im)))
(cos.f64 im)
(*.f64 (sqrt.f64 (cos.f64 im)) (sqrt.f64 (cos.f64 im)))
(cos.f64 im)
(*.f64 (sqrt.f64 (sqrt.f64 (cos.f64 im))) (sqrt.f64 (pow.f64 (cos.f64 im) 3/2)))
(cos.f64 im)
(*.f64 (cbrt.f64 (pow.f64 (cos.f64 im) 5/2)) (sqrt.f64 (cbrt.f64 (cos.f64 im))))
(*.f64 (sqrt.f64 (cbrt.f64 (cos.f64 im))) (cbrt.f64 (pow.f64 (cos.f64 im) 5/2)))
(*.f64 (cbrt.f64 (pow.f64 (*.f64 (cos.f64 im) (cbrt.f64 (cos.f64 im))) 2)) (cbrt.f64 (cbrt.f64 (cos.f64 im))))
(*.f64 (cbrt.f64 (cbrt.f64 (cos.f64 im))) (cbrt.f64 (pow.f64 (*.f64 (cos.f64 im) (cbrt.f64 (cos.f64 im))) 2)))
(*.f64 (cbrt.f64 (cbrt.f64 (cos.f64 im))) (cbrt.f64 (pow.f64 (pow.f64 (cbrt.f64 (cos.f64 im)) 4) 2)))
(*.f64 (cbrt.f64 (cbrt.f64 (cos.f64 im))) (cbrt.f64 (pow.f64 (cbrt.f64 (cos.f64 im)) 8)))
(*.f64 (sqrt.f64 (pow.f64 (cos.f64 im) 3/2)) (sqrt.f64 (sqrt.f64 (cos.f64 im))))
(cos.f64 im)
(*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (cos.f64 im)) 5)) (sqrt.f64 (cbrt.f64 (cos.f64 im))))
(cos.f64 im)
(*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (cos.f64 im)) 4)) (cbrt.f64 (cos.f64 im)))
(cos.f64 im)
(*.f64 (pow.f64 1 1/3) (cos.f64 im))
(cos.f64 im)
(*.f64 (pow.f64 (pow.f64 (*.f64 (cos.f64 im) (cbrt.f64 (cos.f64 im))) 2) 1/3) (cbrt.f64 (cbrt.f64 (cos.f64 im))))
(*.f64 (cbrt.f64 (cbrt.f64 (cos.f64 im))) (cbrt.f64 (pow.f64 (*.f64 (cos.f64 im) (cbrt.f64 (cos.f64 im))) 2)))
(*.f64 (cbrt.f64 (cbrt.f64 (cos.f64 im))) (cbrt.f64 (pow.f64 (pow.f64 (cbrt.f64 (cos.f64 im)) 4) 2)))
(*.f64 (cbrt.f64 (cbrt.f64 (cos.f64 im))) (cbrt.f64 (pow.f64 (cbrt.f64 (cos.f64 im)) 8)))
(*.f64 (pow.f64 (pow.f64 (cos.f64 im) 5/2) 1/3) (sqrt.f64 (cbrt.f64 (cos.f64 im))))
(*.f64 (sqrt.f64 (cbrt.f64 (cos.f64 im))) (cbrt.f64 (pow.f64 (cos.f64 im) 5/2)))
(pow.f64 (cos.f64 im) 1)
(cos.f64 im)
(pow.f64 (cbrt.f64 (cos.f64 im)) 3)
(cos.f64 im)
(pow.f64 (pow.f64 (cos.f64 im) 2) 1/2)
(cos.f64 im)
(pow.f64 (pow.f64 (cos.f64 im) 3) 1/3)
(cos.f64 im)
(pow.f64 (sqrt.f64 (cos.f64 im)) 2)
(cos.f64 im)
(pow.f64 (E.f64) (log.f64 (cos.f64 im)))
(cos.f64 im)
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (cos.f64 im)))) (sqrt.f64 (log.f64 (cos.f64 im))))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (cos.f64 im))) 2)) (cbrt.f64 (log.f64 (cos.f64 im))))
(sqrt.f64 (pow.f64 (cos.f64 im) 2))
(cos.f64 im)
(log.f64 (exp.f64 (cos.f64 im)))
(cos.f64 im)
(cbrt.f64 (pow.f64 (cos.f64 im) 3))
(cos.f64 im)
(expm1.f64 (log1p.f64 (cos.f64 im)))
(cos.f64 im)
(exp.f64 (log.f64 (cos.f64 im)))
(cos.f64 im)
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (cos.f64 im))) 3))
(cos.f64 im)
(exp.f64 (*.f64 (*.f64 3 (log.f64 (cos.f64 im))) 1/3))
(cos.f64 im)
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (cos.f64 im))) 2))
(cos.f64 im)
(log1p.f64 (expm1.f64 (cos.f64 im)))
(cos.f64 im)

eval11.0ms (0.3%)

Compiler

Compiled 641 to 303 computations (52.7% saved)

prune9.0ms (0.2%)

Pruning

4 alts after pruning (3 fresh and 1 done)

PrunedKeptTotal
New52355
Fresh000
Picked011
Done000
Total52456
Accurracy
100.0%
Counts
56 → 4
Alt Table
Click to see full alt table
StatusAccuracyProgram
62.6%
(*.f64 (exp.f64 re) (+.f64 1 (*.f64 -1/2 (*.f64 im im))))
75.0%
(*.f64 (exp.f64 re) (exp.f64 (log.f64 (cos.f64 im))))
100.0%
(*.f64 (exp.f64 re) (cos.f64 im))
72.1%
(*.f64 (exp.f64 re) 1)
62.6%
(*.f64 (exp.f64 re) (+.f64 1 (*.f64 -1/2 (*.f64 im im))))
75.0%
(*.f64 (exp.f64 re) (exp.f64 (log.f64 (cos.f64 im))))
100.0%
(*.f64 (exp.f64 re) (cos.f64 im))
72.1%
(*.f64 (exp.f64 re) 1)
Compiler

Compiled 68 to 52 computations (23.5% saved)

localize287.0ms (6.3%)

Local Accuracy

Found 5 expressions with local accuracy:

NewAccuracyProgram
100.0%
(*.f64 -1/2 (*.f64 im im))
96.9%
(*.f64 (exp.f64 re) (+.f64 1 (*.f64 -1/2 (*.f64 im im))))
100.0%
(cos.f64 im)
100.0%
(exp.f64 (log.f64 (cos.f64 im)))
74.4%
(log.f64 (cos.f64 im))
Compiler

Compiled 62 to 25 computations (59.7% saved)

series46.0ms (1%)

Counts
4 → 52
Calls

15 calls:

TimeVariablePointExpression
23.0ms
im
@inf
(log.f64 (cos.f64 im))
18.0ms
im
@-inf
(log.f64 (cos.f64 im))
1.0ms
im
@0
(log.f64 (cos.f64 im))
1.0ms
re
@inf
(*.f64 (exp.f64 re) (+.f64 1 (*.f64 -1/2 (*.f64 im im))))
1.0ms
im
@inf
(*.f64 (exp.f64 re) (+.f64 1 (*.f64 -1/2 (*.f64 im im))))

rewrite90.0ms (2%)

Algorithm
batch-egg-rewrite
Rules
1264×log-prod
1102×prod-diff
790×fma-def
638×pow-prod-up
564×pow-exp
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01556
128652
2344652
Stop Event
node limit
Counts
4 → 150
Calls
Call 1
Inputs
(log.f64 (cos.f64 im))
(exp.f64 (log.f64 (cos.f64 im)))
(*.f64 (exp.f64 re) (+.f64 1 (*.f64 -1/2 (*.f64 im im))))
(*.f64 -1/2 (*.f64 im im))
Outputs
(+.f64 (log.f64 (cos.f64 im)) 0)
(+.f64 0 (log.f64 (cos.f64 im)))
(+.f64 (log.f64 (cbrt.f64 (cos.f64 im))) (*.f64 2 (log.f64 (cbrt.f64 (cos.f64 im)))))
(+.f64 (*.f64 2 (log.f64 (cbrt.f64 (cos.f64 im)))) (log.f64 (cbrt.f64 (cos.f64 im))))
(+.f64 (log.f64 (sqrt.f64 (cos.f64 im))) (log.f64 (sqrt.f64 (cos.f64 im))))
(-.f64 (exp.f64 (log1p.f64 (log.f64 (cos.f64 im)))) 1)
(*.f64 (log.f64 (cos.f64 im)) 1)
(*.f64 1 (log.f64 (cos.f64 im)))
(*.f64 (cbrt.f64 (log.f64 (cos.f64 im))) (pow.f64 (cbrt.f64 (log.f64 (cos.f64 im))) 2))
(*.f64 (pow.f64 (cbrt.f64 (log.f64 (cos.f64 im))) 2) (cbrt.f64 (log.f64 (cos.f64 im))))
(*.f64 (sqrt.f64 (log.f64 (cos.f64 im))) (sqrt.f64 (log.f64 (cos.f64 im))))
(*.f64 2 (log.f64 (sqrt.f64 (cos.f64 im))))
(*.f64 3 (log.f64 (cbrt.f64 (cos.f64 im))))
(*.f64 1/3 (*.f64 3 (log.f64 (cos.f64 im))))
(pow.f64 (log.f64 (cos.f64 im)) 1)
(pow.f64 (cbrt.f64 (log.f64 (cos.f64 im))) 3)
(pow.f64 (pow.f64 (log.f64 (cos.f64 im)) 3) 1/3)
(pow.f64 (sqrt.f64 (log.f64 (cos.f64 im))) 2)
(sqrt.f64 (pow.f64 (log.f64 (cos.f64 im)) 2))
(cbrt.f64 (pow.f64 (log.f64 (cos.f64 im)) 3))
(expm1.f64 (log1p.f64 (log.f64 (cos.f64 im))))
(exp.f64 (log.f64 (log.f64 (cos.f64 im))))
(exp.f64 (*.f64 (log.f64 (log.f64 (cos.f64 im))) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (log.f64 (cos.f64 im))) 1) 1))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (log.f64 (cos.f64 im)))) 3))
(exp.f64 (*.f64 (log.f64 (pow.f64 (log.f64 (cos.f64 im)) 3)) 1/3))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (log.f64 (cos.f64 im)))) 2))
(log1p.f64 (-.f64 (cos.f64 im) 1))
(+.f64 0 (cos.f64 im))
(+.f64 (*.f64 (cos.f64 (exp.f64 (log1p.f64 im))) (cos.f64 1)) (*.f64 (sin.f64 (exp.f64 (log1p.f64 im))) (sin.f64 1)))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (cos.f64 im))) (cbrt.f64 (exp.f64 (cos.f64 im))))) (log.f64 (cbrt.f64 (exp.f64 (cos.f64 im)))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (cos.f64 im)))) (log.f64 (sqrt.f64 (exp.f64 (cos.f64 im)))))
(-.f64 (exp.f64 (log1p.f64 (cos.f64 im))) 1)
(*.f64 (cos.f64 im) 1)
(*.f64 1 (cos.f64 im))
(*.f64 (cbrt.f64 (cos.f64 im)) (pow.f64 (cbrt.f64 (cos.f64 im)) 2))
(*.f64 (pow.f64 (cbrt.f64 (cos.f64 im)) 2) (cbrt.f64 (cos.f64 im)))
(*.f64 (sqrt.f64 (cos.f64 im)) (sqrt.f64 (cos.f64 im)))
(pow.f64 (cos.f64 im) 1)
(pow.f64 (E.f64) (log.f64 (cos.f64 im)))
(pow.f64 (cbrt.f64 (cos.f64 im)) 3)
(pow.f64 (pow.f64 (cos.f64 im) 3) 1/3)
(pow.f64 (sqrt.f64 (cos.f64 im)) 2)
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (cos.f64 im))) 2)) (cbrt.f64 (log.f64 (cos.f64 im))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (cos.f64 im)))) (sqrt.f64 (log.f64 (cos.f64 im))))
(sqrt.f64 (pow.f64 (cos.f64 im) 2))
(log.f64 (exp.f64 (cos.f64 im)))
(log.f64 (+.f64 1 (expm1.f64 (cos.f64 im))))
(cbrt.f64 (pow.f64 (cos.f64 im) 3))
(cos.f64 im)
(expm1.f64 (log1p.f64 (cos.f64 im)))
(log1p.f64 (expm1.f64 (cos.f64 im)))
(+.f64 (exp.f64 re) (*.f64 (exp.f64 re) (*.f64 im (*.f64 im -1/2))))
(+.f64 (exp.f64 re) (*.f64 (*.f64 (exp.f64 re) (*.f64 im (*.f64 im -1/2))) 1))
(+.f64 0 (*.f64 (exp.f64 re) (fma.f64 im (*.f64 im -1/2) 1)))
(+.f64 (*.f64 (exp.f64 re) (*.f64 im (*.f64 im -1/2))) (exp.f64 re))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 (exp.f64 re)) (fma.f64 im (*.f64 im -1/2) 1))) (cbrt.f64 (pow.f64 (exp.f64 (exp.f64 re)) (fma.f64 im (*.f64 im -1/2) 1))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (exp.f64 re)) (fma.f64 im (*.f64 im -1/2) 1)))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (exp.f64 re)) (fma.f64 im (*.f64 im -1/2) 1)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (exp.f64 re)) (fma.f64 im (*.f64 im -1/2) 1)))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (exp.f64 re) (fma.f64 im (*.f64 im -1/2) 1)))) 1)
(/.f64 (+.f64 (pow.f64 (exp.f64 re) 3) (pow.f64 (*.f64 (exp.f64 re) (*.f64 im (*.f64 im -1/2))) 3)) (+.f64 (pow.f64 (exp.f64 re) 2) (-.f64 (pow.f64 (*.f64 (exp.f64 re) (*.f64 im (*.f64 im -1/2))) 2) (*.f64 (exp.f64 re) (*.f64 (exp.f64 re) (*.f64 im (*.f64 im -1/2)))))))
(/.f64 (-.f64 (pow.f64 (exp.f64 re) 2) (pow.f64 (*.f64 (exp.f64 re) (*.f64 im (*.f64 im -1/2))) 2)) (-.f64 (exp.f64 re) (*.f64 (exp.f64 re) (*.f64 im (*.f64 im -1/2)))))
(/.f64 (*.f64 (exp.f64 re) (fma.f64 (pow.f64 im 6) -1/8 1)) (+.f64 1 (fma.f64 (pow.f64 im 4) 1/4 (*.f64 1/2 (*.f64 im im)))))
(/.f64 (*.f64 (exp.f64 re) (-.f64 1 (*.f64 (pow.f64 im 4) 1/4))) (+.f64 1 (*.f64 1/2 (*.f64 im im))))
(/.f64 (*.f64 (fma.f64 (pow.f64 im 6) -1/8 1) (exp.f64 re)) (+.f64 1 (fma.f64 (pow.f64 im 4) 1/4 (*.f64 1/2 (*.f64 im im)))))
(/.f64 (*.f64 (-.f64 1 (*.f64 (pow.f64 im 4) 1/4)) (exp.f64 re)) (+.f64 1 (*.f64 1/2 (*.f64 im im))))
(pow.f64 (*.f64 (exp.f64 re) (fma.f64 im (*.f64 im -1/2) 1)) 1)
(pow.f64 (cbrt.f64 (*.f64 (exp.f64 re) (fma.f64 im (*.f64 im -1/2) 1))) 3)
(pow.f64 (pow.f64 (*.f64 (exp.f64 re) (fma.f64 im (*.f64 im -1/2) 1)) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 (exp.f64 re) (fma.f64 im (*.f64 im -1/2) 1))) 2)
(sqrt.f64 (pow.f64 (*.f64 (exp.f64 re) (fma.f64 im (*.f64 im -1/2) 1)) 2))
(log.f64 (pow.f64 (exp.f64 (exp.f64 re)) (fma.f64 im (*.f64 im -1/2) 1)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (exp.f64 re) (fma.f64 im (*.f64 im -1/2) 1)))))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (exp.f64 re))) (exp.f64 (*.f64 (exp.f64 re) (*.f64 im (*.f64 im -1/2))))))
(log.f64 (*.f64 (exp.f64 (*.f64 (exp.f64 re) (*.f64 im (*.f64 im -1/2)))) (exp.f64 (exp.f64 re))))
(log.f64 (*.f64 (exp.f64 (*.f64 (exp.f64 re) (*.f64 im (*.f64 im -1/2)))) (+.f64 1 (expm1.f64 (exp.f64 re)))))
(cbrt.f64 (pow.f64 (*.f64 (exp.f64 re) (fma.f64 im (*.f64 im -1/2) 1)) 3))
(cbrt.f64 (*.f64 (pow.f64 (exp.f64 re) 3) (pow.f64 (fma.f64 im (*.f64 im -1/2) 1) 3)))
(cbrt.f64 (*.f64 (pow.f64 (fma.f64 im (*.f64 im -1/2) 1) 3) (pow.f64 (exp.f64 re) 3)))
(expm1.f64 (log1p.f64 (*.f64 (exp.f64 re) (fma.f64 im (*.f64 im -1/2) 1))))
(exp.f64 (+.f64 re (log1p.f64 (*.f64 im (*.f64 im -1/2)))))
(exp.f64 (*.f64 (+.f64 re (log1p.f64 (*.f64 im (*.f64 im -1/2)))) 1))
(exp.f64 (*.f64 (*.f64 (+.f64 re (log1p.f64 (*.f64 im (*.f64 im -1/2)))) 1) 1))
(exp.f64 (*.f64 (*.f64 1/3 (+.f64 re (log1p.f64 (*.f64 im (*.f64 im -1/2))))) 3))
(exp.f64 (*.f64 (*.f64 3 (+.f64 re (log1p.f64 (*.f64 im (*.f64 im -1/2))))) 1/3))
(exp.f64 (*.f64 (*.f64 1/2 (+.f64 re (log1p.f64 (*.f64 im (*.f64 im -1/2))))) 2))
(log1p.f64 (expm1.f64 (*.f64 (exp.f64 re) (fma.f64 im (*.f64 im -1/2) 1))))
(fma.f64 (exp.f64 re) 1 (*.f64 (exp.f64 re) (*.f64 im (*.f64 im -1/2))))
(fma.f64 (exp.f64 re) 1 (*.f64 (*.f64 (exp.f64 re) (*.f64 im (*.f64 im -1/2))) 1))
(fma.f64 (exp.f64 re) (*.f64 im (*.f64 im -1/2)) (exp.f64 re))
(fma.f64 1 (exp.f64 re) (*.f64 (exp.f64 re) (*.f64 im (*.f64 im -1/2))))
(fma.f64 1 (exp.f64 re) (*.f64 (*.f64 (exp.f64 re) (*.f64 im (*.f64 im -1/2))) 1))
(fma.f64 1 (*.f64 (exp.f64 re) (*.f64 im (*.f64 im -1/2))) (exp.f64 re))
(fma.f64 -1/2 (*.f64 (*.f64 im im) (exp.f64 re)) (exp.f64 re))
(fma.f64 (*.f64 im im) (*.f64 -1/2 (exp.f64 re)) (exp.f64 re))
(fma.f64 (*.f64 im (*.f64 im -1/2)) (exp.f64 re) (exp.f64 re))
(fma.f64 (cbrt.f64 (exp.f64 re)) (pow.f64 (cbrt.f64 (exp.f64 re)) 2) (*.f64 (exp.f64 re) (*.f64 im (*.f64 im -1/2))))
(fma.f64 (cbrt.f64 (exp.f64 re)) (pow.f64 (cbrt.f64 (exp.f64 re)) 2) (*.f64 (*.f64 (exp.f64 re) (*.f64 im (*.f64 im -1/2))) 1))
(fma.f64 (pow.f64 (cbrt.f64 (exp.f64 re)) 2) (cbrt.f64 (exp.f64 re)) (*.f64 (exp.f64 re) (*.f64 im (*.f64 im -1/2))))
(fma.f64 (pow.f64 (cbrt.f64 (exp.f64 re)) 2) (cbrt.f64 (exp.f64 re)) (*.f64 (*.f64 (exp.f64 re) (*.f64 im (*.f64 im -1/2))) 1))
(fma.f64 (pow.f64 (cbrt.f64 (exp.f64 re)) 2) (*.f64 (cbrt.f64 (exp.f64 re)) (*.f64 im (*.f64 im -1/2))) (exp.f64 re))
(fma.f64 (pow.f64 (cbrt.f64 (exp.f64 re)) 2) (*.f64 (cbrt.f64 (exp.f64 re)) 1) (*.f64 (exp.f64 re) (*.f64 im (*.f64 im -1/2))))
(fma.f64 (pow.f64 (cbrt.f64 (exp.f64 re)) 2) (*.f64 (cbrt.f64 (exp.f64 re)) 1) (*.f64 (*.f64 (exp.f64 re) (*.f64 im (*.f64 im -1/2))) 1))
(fma.f64 (cbrt.f64 (*.f64 (pow.f64 im 4) 1/4)) (*.f64 (cbrt.f64 (*.f64 im (*.f64 im -1/2))) (exp.f64 re)) (exp.f64 re))
(fma.f64 (sqrt.f64 (exp.f64 re)) (sqrt.f64 (exp.f64 re)) (*.f64 (exp.f64 re) (*.f64 im (*.f64 im -1/2))))
(fma.f64 (sqrt.f64 (exp.f64 re)) (sqrt.f64 (exp.f64 re)) (*.f64 (*.f64 (exp.f64 re) (*.f64 im (*.f64 im -1/2))) 1))
(fma.f64 (sqrt.f64 (exp.f64 re)) (*.f64 (sqrt.f64 (exp.f64 re)) (*.f64 im (*.f64 im -1/2))) (exp.f64 re))
(fma.f64 (sqrt.f64 (exp.f64 re)) (*.f64 (sqrt.f64 (exp.f64 re)) 1) (*.f64 (exp.f64 re) (*.f64 im (*.f64 im -1/2))))
(fma.f64 (sqrt.f64 (exp.f64 re)) (*.f64 (sqrt.f64 (exp.f64 re)) 1) (*.f64 (*.f64 (exp.f64 re) (*.f64 im (*.f64 im -1/2))) 1))
(fma.f64 (*.f64 im (sqrt.f64 -1/2)) (*.f64 (*.f64 im (sqrt.f64 -1/2)) (exp.f64 re)) (exp.f64 re))
(fma.f64 (*.f64 im -1/2) (*.f64 im (exp.f64 re)) (exp.f64 re))
(fma.f64 (*.f64 (cbrt.f64 (*.f64 (exp.f64 re) (*.f64 im (*.f64 im -1/2)))) (cbrt.f64 (*.f64 (exp.f64 re) (*.f64 im (*.f64 im -1/2))))) (cbrt.f64 (*.f64 (exp.f64 re) (*.f64 im (*.f64 im -1/2)))) (exp.f64 re))
(fma.f64 (sqrt.f64 (*.f64 (exp.f64 re) (*.f64 im (*.f64 im -1/2)))) (sqrt.f64 (*.f64 (exp.f64 re) (*.f64 im (*.f64 im -1/2)))) (exp.f64 re))
(fma.f64 (*.f64 (sqrt.f64 (exp.f64 re)) (*.f64 im (sqrt.f64 -1/2))) (*.f64 (sqrt.f64 (exp.f64 re)) (*.f64 im (sqrt.f64 -1/2))) (exp.f64 re))
(fma.f64 (*.f64 (*.f64 im (sqrt.f64 -1/2)) (sqrt.f64 (exp.f64 re))) (*.f64 (*.f64 im (sqrt.f64 -1/2)) (sqrt.f64 (exp.f64 re))) (exp.f64 re))
(fma.f64 (*.f64 (exp.f64 re) -1/2) (*.f64 im im) (exp.f64 re))
(fma.f64 (*.f64 (exp.f64 re) (*.f64 im im)) -1/2 (exp.f64 re))
(fma.f64 (*.f64 (exp.f64 re) (cbrt.f64 (*.f64 (pow.f64 im 4) 1/4))) (cbrt.f64 (*.f64 im (*.f64 im -1/2))) (exp.f64 re))
(fma.f64 (*.f64 (exp.f64 re) (*.f64 im (sqrt.f64 -1/2))) (*.f64 im (sqrt.f64 -1/2)) (exp.f64 re))
(fma.f64 (*.f64 (exp.f64 re) (*.f64 im -1/2)) im (exp.f64 re))
(fma.f64 (*.f64 (*.f64 im (*.f64 im -1/2)) (pow.f64 (cbrt.f64 (exp.f64 re)) 2)) (cbrt.f64 (exp.f64 re)) (exp.f64 re))
(fma.f64 (*.f64 (*.f64 im (*.f64 im -1/2)) (sqrt.f64 (exp.f64 re))) (sqrt.f64 (exp.f64 re)) (exp.f64 re))
(+.f64 0 (*.f64 im (*.f64 im -1/2)))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 im) im) -1/2)) (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 im) im) -1/2)))) (log.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 im) im) -1/2))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (pow.f64 (exp.f64 im) im) -1/2))) (log.f64 (sqrt.f64 (pow.f64 (pow.f64 (exp.f64 im) im) -1/2))))
(-.f64 (fma.f64 im (*.f64 im -1/2) 1) 1)
(pow.f64 (*.f64 im (*.f64 im -1/2)) 1)
(pow.f64 (cbrt.f64 (*.f64 im (*.f64 im -1/2))) 3)
(pow.f64 (*.f64 (pow.f64 im 6) -1/8) 1/3)
(pow.f64 (*.f64 im (sqrt.f64 -1/2)) 2)
(sqrt.f64 (*.f64 (pow.f64 im 4) 1/4))
(log.f64 (pow.f64 (pow.f64 (exp.f64 im) im) -1/2))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 im (*.f64 im -1/2)))))
(cbrt.f64 (*.f64 (pow.f64 im 6) -1/8))
(expm1.f64 (log1p.f64 (*.f64 im (*.f64 im -1/2))))
(expm1.f64 (*.f64 (log1p.f64 (*.f64 im (*.f64 im -1/2))) 1))
(exp.f64 (log.f64 (*.f64 im (*.f64 im -1/2))))
(exp.f64 (*.f64 (log.f64 (*.f64 im (*.f64 im -1/2))) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 im (*.f64 im -1/2))) 1) 1))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 im (*.f64 im -1/2)))) 3))
(exp.f64 (*.f64 (log.f64 (*.f64 (pow.f64 im 6) -1/8)) 1/3))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 im (*.f64 im -1/2))) 3) 1/3))
(exp.f64 (*.f64 (log.f64 (*.f64 im (sqrt.f64 -1/2))) 2))
(log1p.f64 (expm1.f64 (*.f64 im (*.f64 im -1/2))))
(fma.f64 1 (fma.f64 im (*.f64 im -1/2) 1) -1)
(fma.f64 (fma.f64 im (*.f64 im -1/2) 1) 1 -1)
(fma.f64 (cbrt.f64 (fma.f64 im (*.f64 im -1/2) 1)) (pow.f64 (cbrt.f64 (fma.f64 im (*.f64 im -1/2) 1)) 2) -1)
(fma.f64 (pow.f64 (cbrt.f64 (fma.f64 im (*.f64 im -1/2) 1)) 2) (cbrt.f64 (fma.f64 im (*.f64 im -1/2) 1)) -1)
(fma.f64 (hypot.f64 1 (*.f64 im (sqrt.f64 -1/2))) (hypot.f64 1 (*.f64 im (sqrt.f64 -1/2))) -1)
(fma.f64 (fma.f64 (pow.f64 im 6) -1/8 1) (/.f64 1 (+.f64 1 (fma.f64 (pow.f64 im 4) 1/4 (*.f64 1/2 (*.f64 im im))))) -1)
(fma.f64 (-.f64 1 (*.f64 (pow.f64 im 4) 1/4)) (/.f64 1 (+.f64 1 (*.f64 1/2 (*.f64 im im)))) -1)

simplify113.0ms (2.5%)

Algorithm
egg-herbie
Rules
1146×log-prod
1138×unswap-sqr
570×associate-+r+
568×associate-+l+
428×associate-*r*
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
03814458
18894338
227874168
377774168
Stop Event
node limit
Counts
202 → 221
Calls
Call 1
Inputs
(*.f64 -1/2 (pow.f64 im 2))
(+.f64 (*.f64 -1/12 (pow.f64 im 4)) (*.f64 -1/2 (pow.f64 im 2)))
(+.f64 (*.f64 -1/12 (pow.f64 im 4)) (+.f64 (*.f64 -1/45 (pow.f64 im 6)) (*.f64 -1/2 (pow.f64 im 2))))
(+.f64 (*.f64 -17/2520 (pow.f64 im 8)) (+.f64 (*.f64 -1/12 (pow.f64 im 4)) (+.f64 (*.f64 -1/45 (pow.f64 im 6)) (*.f64 -1/2 (pow.f64 im 2)))))
1
(+.f64 1 (*.f64 -1/2 (pow.f64 im 2)))
(+.f64 1 (+.f64 (*.f64 -1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))))
(+.f64 1 (+.f64 (*.f64 -1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 -1/720 (pow.f64 im 6)))))
(cos.f64 im)
(cos.f64 im)
(cos.f64 im)
(cos.f64 im)
(cos.f64 im)
(cos.f64 im)
(cos.f64 im)
(cos.f64 im)
(+.f64 1 (*.f64 -1/2 (pow.f64 im 2)))
(+.f64 1 (+.f64 (*.f64 -1/2 (pow.f64 im 2)) (*.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 im 2))) re)))
(+.f64 (*.f64 1/2 (*.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 im 2))) (pow.f64 re 2))) (+.f64 1 (+.f64 (*.f64 -1/2 (pow.f64 im 2)) (*.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 im 2))) re))))
(+.f64 (*.f64 1/6 (*.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 im 2))) (pow.f64 re 3))) (+.f64 (*.f64 1/2 (*.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 im 2))) (pow.f64 re 2))) (+.f64 1 (+.f64 (*.f64 -1/2 (pow.f64 im 2)) (*.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 im 2))) re)))))
(*.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 im 2))) (exp.f64 re))
(*.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 im 2))) (exp.f64 re))
(*.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 im 2))) (exp.f64 re))
(*.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 im 2))) (exp.f64 re))
(*.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 im 2))) (exp.f64 re))
(*.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 im 2))) (exp.f64 re))
(*.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 im 2))) (exp.f64 re))
(*.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 im 2))) (exp.f64 re))
(exp.f64 re)
(+.f64 (*.f64 -1/2 (*.f64 (exp.f64 re) (pow.f64 im 2))) (exp.f64 re))
(+.f64 (*.f64 -1/2 (*.f64 (exp.f64 re) (pow.f64 im 2))) (exp.f64 re))
(+.f64 (*.f64 -1/2 (*.f64 (exp.f64 re) (pow.f64 im 2))) (exp.f64 re))
(*.f64 -1/2 (*.f64 (exp.f64 re) (pow.f64 im 2)))
(+.f64 (*.f64 -1/2 (*.f64 (exp.f64 re) (pow.f64 im 2))) (exp.f64 re))
(+.f64 (*.f64 -1/2 (*.f64 (exp.f64 re) (pow.f64 im 2))) (exp.f64 re))
(+.f64 (*.f64 -1/2 (*.f64 (exp.f64 re) (pow.f64 im 2))) (exp.f64 re))
(*.f64 -1/2 (*.f64 (exp.f64 re) (pow.f64 im 2)))
(+.f64 (*.f64 -1/2 (*.f64 (exp.f64 re) (pow.f64 im 2))) (exp.f64 re))
(+.f64 (*.f64 -1/2 (*.f64 (exp.f64 re) (pow.f64 im 2))) (exp.f64 re))
(+.f64 (*.f64 -1/2 (*.f64 (exp.f64 re) (pow.f64 im 2))) (exp.f64 re))
(*.f64 -1/2 (pow.f64 im 2))
(*.f64 -1/2 (pow.f64 im 2))
(*.f64 -1/2 (pow.f64 im 2))
(*.f64 -1/2 (pow.f64 im 2))
(*.f64 -1/2 (pow.f64 im 2))
(*.f64 -1/2 (pow.f64 im 2))
(*.f64 -1/2 (pow.f64 im 2))
(*.f64 -1/2 (pow.f64 im 2))
(*.f64 -1/2 (pow.f64 im 2))
(*.f64 -1/2 (pow.f64 im 2))
(*.f64 -1/2 (pow.f64 im 2))
(*.f64 -1/2 (pow.f64 im 2))
(+.f64 (log.f64 (cos.f64 im)) 0)
(+.f64 0 (log.f64 (cos.f64 im)))
(+.f64 (log.f64 (cbrt.f64 (cos.f64 im))) (*.f64 2 (log.f64 (cbrt.f64 (cos.f64 im)))))
(+.f64 (*.f64 2 (log.f64 (cbrt.f64 (cos.f64 im)))) (log.f64 (cbrt.f64 (cos.f64 im))))
(+.f64 (log.f64 (sqrt.f64 (cos.f64 im))) (log.f64 (sqrt.f64 (cos.f64 im))))
(-.f64 (exp.f64 (log1p.f64 (log.f64 (cos.f64 im)))) 1)
(*.f64 (log.f64 (cos.f64 im)) 1)
(*.f64 1 (log.f64 (cos.f64 im)))
(*.f64 (cbrt.f64 (log.f64 (cos.f64 im))) (pow.f64 (cbrt.f64 (log.f64 (cos.f64 im))) 2))
(*.f64 (pow.f64 (cbrt.f64 (log.f64 (cos.f64 im))) 2) (cbrt.f64 (log.f64 (cos.f64 im))))
(*.f64 (sqrt.f64 (log.f64 (cos.f64 im))) (sqrt.f64 (log.f64 (cos.f64 im))))
(*.f64 2 (log.f64 (sqrt.f64 (cos.f64 im))))
(*.f64 3 (log.f64 (cbrt.f64 (cos.f64 im))))
(*.f64 1/3 (*.f64 3 (log.f64 (cos.f64 im))))
(pow.f64 (log.f64 (cos.f64 im)) 1)
(pow.f64 (cbrt.f64 (log.f64 (cos.f64 im))) 3)
(pow.f64 (pow.f64 (log.f64 (cos.f64 im)) 3) 1/3)
(pow.f64 (sqrt.f64 (log.f64 (cos.f64 im))) 2)
(sqrt.f64 (pow.f64 (log.f64 (cos.f64 im)) 2))
(cbrt.f64 (pow.f64 (log.f64 (cos.f64 im)) 3))
(expm1.f64 (log1p.f64 (log.f64 (cos.f64 im))))
(exp.f64 (log.f64 (log.f64 (cos.f64 im))))
(exp.f64 (*.f64 (log.f64 (log.f64 (cos.f64 im))) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (log.f64 (cos.f64 im))) 1) 1))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (log.f64 (cos.f64 im)))) 3))
(exp.f64 (*.f64 (log.f64 (pow.f64 (log.f64 (cos.f64 im)) 3)) 1/3))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (log.f64 (cos.f64 im)))) 2))
(log1p.f64 (-.f64 (cos.f64 im) 1))
(+.f64 0 (cos.f64 im))
(+.f64 (*.f64 (cos.f64 (exp.f64 (log1p.f64 im))) (cos.f64 1)) (*.f64 (sin.f64 (exp.f64 (log1p.f64 im))) (sin.f64 1)))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (cos.f64 im))) (cbrt.f64 (exp.f64 (cos.f64 im))))) (log.f64 (cbrt.f64 (exp.f64 (cos.f64 im)))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (cos.f64 im)))) (log.f64 (sqrt.f64 (exp.f64 (cos.f64 im)))))
(-.f64 (exp.f64 (log1p.f64 (cos.f64 im))) 1)
(*.f64 (cos.f64 im) 1)
(*.f64 1 (cos.f64 im))
(*.f64 (cbrt.f64 (cos.f64 im)) (pow.f64 (cbrt.f64 (cos.f64 im)) 2))
(*.f64 (pow.f64 (cbrt.f64 (cos.f64 im)) 2) (cbrt.f64 (cos.f64 im)))
(*.f64 (sqrt.f64 (cos.f64 im)) (sqrt.f64 (cos.f64 im)))
(pow.f64 (cos.f64 im) 1)
(pow.f64 (E.f64) (log.f64 (cos.f64 im)))
(pow.f64 (cbrt.f64 (cos.f64 im)) 3)
(pow.f64 (pow.f64 (cos.f64 im) 3) 1/3)
(pow.f64 (sqrt.f64 (cos.f64 im)) 2)
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (cos.f64 im))) 2)) (cbrt.f64 (log.f64 (cos.f64 im))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (cos.f64 im)))) (sqrt.f64 (log.f64 (cos.f64 im))))
(sqrt.f64 (pow.f64 (cos.f64 im) 2))
(log.f64 (exp.f64 (cos.f64 im)))
(log.f64 (+.f64 1 (expm1.f64 (cos.f64 im))))
(cbrt.f64 (pow.f64 (cos.f64 im) 3))
(cos.f64 im)
(expm1.f64 (log1p.f64 (cos.f64 im)))
(log1p.f64 (expm1.f64 (cos.f64 im)))
(+.f64 (exp.f64 re) (*.f64 (exp.f64 re) (*.f64 im (*.f64 im -1/2))))
(+.f64 (exp.f64 re) (*.f64 (*.f64 (exp.f64 re) (*.f64 im (*.f64 im -1/2))) 1))
(+.f64 0 (*.f64 (exp.f64 re) (fma.f64 im (*.f64 im -1/2) 1)))
(+.f64 (*.f64 (exp.f64 re) (*.f64 im (*.f64 im -1/2))) (exp.f64 re))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 (exp.f64 re)) (fma.f64 im (*.f64 im -1/2) 1))) (cbrt.f64 (pow.f64 (exp.f64 (exp.f64 re)) (fma.f64 im (*.f64 im -1/2) 1))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (exp.f64 re)) (fma.f64 im (*.f64 im -1/2) 1)))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (exp.f64 re)) (fma.f64 im (*.f64 im -1/2) 1)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (exp.f64 re)) (fma.f64 im (*.f64 im -1/2) 1)))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (exp.f64 re) (fma.f64 im (*.f64 im -1/2) 1)))) 1)
(/.f64 (+.f64 (pow.f64 (exp.f64 re) 3) (pow.f64 (*.f64 (exp.f64 re) (*.f64 im (*.f64 im -1/2))) 3)) (+.f64 (pow.f64 (exp.f64 re) 2) (-.f64 (pow.f64 (*.f64 (exp.f64 re) (*.f64 im (*.f64 im -1/2))) 2) (*.f64 (exp.f64 re) (*.f64 (exp.f64 re) (*.f64 im (*.f64 im -1/2)))))))
(/.f64 (-.f64 (pow.f64 (exp.f64 re) 2) (pow.f64 (*.f64 (exp.f64 re) (*.f64 im (*.f64 im -1/2))) 2)) (-.f64 (exp.f64 re) (*.f64 (exp.f64 re) (*.f64 im (*.f64 im -1/2)))))
(/.f64 (*.f64 (exp.f64 re) (fma.f64 (pow.f64 im 6) -1/8 1)) (+.f64 1 (fma.f64 (pow.f64 im 4) 1/4 (*.f64 1/2 (*.f64 im im)))))
(/.f64 (*.f64 (exp.f64 re) (-.f64 1 (*.f64 (pow.f64 im 4) 1/4))) (+.f64 1 (*.f64 1/2 (*.f64 im im))))
(/.f64 (*.f64 (fma.f64 (pow.f64 im 6) -1/8 1) (exp.f64 re)) (+.f64 1 (fma.f64 (pow.f64 im 4) 1/4 (*.f64 1/2 (*.f64 im im)))))
(/.f64 (*.f64 (-.f64 1 (*.f64 (pow.f64 im 4) 1/4)) (exp.f64 re)) (+.f64 1 (*.f64 1/2 (*.f64 im im))))
(pow.f64 (*.f64 (exp.f64 re) (fma.f64 im (*.f64 im -1/2) 1)) 1)
(pow.f64 (cbrt.f64 (*.f64 (exp.f64 re) (fma.f64 im (*.f64 im -1/2) 1))) 3)
(pow.f64 (pow.f64 (*.f64 (exp.f64 re) (fma.f64 im (*.f64 im -1/2) 1)) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 (exp.f64 re) (fma.f64 im (*.f64 im -1/2) 1))) 2)
(sqrt.f64 (pow.f64 (*.f64 (exp.f64 re) (fma.f64 im (*.f64 im -1/2) 1)) 2))
(log.f64 (pow.f64 (exp.f64 (exp.f64 re)) (fma.f64 im (*.f64 im -1/2) 1)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (exp.f64 re) (fma.f64 im (*.f64 im -1/2) 1)))))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (exp.f64 re))) (exp.f64 (*.f64 (exp.f64 re) (*.f64 im (*.f64 im -1/2))))))
(log.f64 (*.f64 (exp.f64 (*.f64 (exp.f64 re) (*.f64 im (*.f64 im -1/2)))) (exp.f64 (exp.f64 re))))
(log.f64 (*.f64 (exp.f64 (*.f64 (exp.f64 re) (*.f64 im (*.f64 im -1/2)))) (+.f64 1 (expm1.f64 (exp.f64 re)))))
(cbrt.f64 (pow.f64 (*.f64 (exp.f64 re) (fma.f64 im (*.f64 im -1/2) 1)) 3))
(cbrt.f64 (*.f64 (pow.f64 (exp.f64 re) 3) (pow.f64 (fma.f64 im (*.f64 im -1/2) 1) 3)))
(cbrt.f64 (*.f64 (pow.f64 (fma.f64 im (*.f64 im -1/2) 1) 3) (pow.f64 (exp.f64 re) 3)))
(expm1.f64 (log1p.f64 (*.f64 (exp.f64 re) (fma.f64 im (*.f64 im -1/2) 1))))
(exp.f64 (+.f64 re (log1p.f64 (*.f64 im (*.f64 im -1/2)))))
(exp.f64 (*.f64 (+.f64 re (log1p.f64 (*.f64 im (*.f64 im -1/2)))) 1))
(exp.f64 (*.f64 (*.f64 (+.f64 re (log1p.f64 (*.f64 im (*.f64 im -1/2)))) 1) 1))
(exp.f64 (*.f64 (*.f64 1/3 (+.f64 re (log1p.f64 (*.f64 im (*.f64 im -1/2))))) 3))
(exp.f64 (*.f64 (*.f64 3 (+.f64 re (log1p.f64 (*.f64 im (*.f64 im -1/2))))) 1/3))
(exp.f64 (*.f64 (*.f64 1/2 (+.f64 re (log1p.f64 (*.f64 im (*.f64 im -1/2))))) 2))
(log1p.f64 (expm1.f64 (*.f64 (exp.f64 re) (fma.f64 im (*.f64 im -1/2) 1))))
(fma.f64 (exp.f64 re) 1 (*.f64 (exp.f64 re) (*.f64 im (*.f64 im -1/2))))
(fma.f64 (exp.f64 re) 1 (*.f64 (*.f64 (exp.f64 re) (*.f64 im (*.f64 im -1/2))) 1))
(fma.f64 (exp.f64 re) (*.f64 im (*.f64 im -1/2)) (exp.f64 re))
(fma.f64 1 (exp.f64 re) (*.f64 (exp.f64 re) (*.f64 im (*.f64 im -1/2))))
(fma.f64 1 (exp.f64 re) (*.f64 (*.f64 (exp.f64 re) (*.f64 im (*.f64 im -1/2))) 1))
(fma.f64 1 (*.f64 (exp.f64 re) (*.f64 im (*.f64 im -1/2))) (exp.f64 re))
(fma.f64 -1/2 (*.f64 (*.f64 im im) (exp.f64 re)) (exp.f64 re))
(fma.f64 (*.f64 im im) (*.f64 -1/2 (exp.f64 re)) (exp.f64 re))
(fma.f64 (*.f64 im (*.f64 im -1/2)) (exp.f64 re) (exp.f64 re))
(fma.f64 (cbrt.f64 (exp.f64 re)) (pow.f64 (cbrt.f64 (exp.f64 re)) 2) (*.f64 (exp.f64 re) (*.f64 im (*.f64 im -1/2))))
(fma.f64 (cbrt.f64 (exp.f64 re)) (pow.f64 (cbrt.f64 (exp.f64 re)) 2) (*.f64 (*.f64 (exp.f64 re) (*.f64 im (*.f64 im -1/2))) 1))
(fma.f64 (pow.f64 (cbrt.f64 (exp.f64 re)) 2) (cbrt.f64 (exp.f64 re)) (*.f64 (exp.f64 re) (*.f64 im (*.f64 im -1/2))))
(fma.f64 (pow.f64 (cbrt.f64 (exp.f64 re)) 2) (cbrt.f64 (exp.f64 re)) (*.f64 (*.f64 (exp.f64 re) (*.f64 im (*.f64 im -1/2))) 1))
(fma.f64 (pow.f64 (cbrt.f64 (exp.f64 re)) 2) (*.f64 (cbrt.f64 (exp.f64 re)) (*.f64 im (*.f64 im -1/2))) (exp.f64 re))
(fma.f64 (pow.f64 (cbrt.f64 (exp.f64 re)) 2) (*.f64 (cbrt.f64 (exp.f64 re)) 1) (*.f64 (exp.f64 re) (*.f64 im (*.f64 im -1/2))))
(fma.f64 (pow.f64 (cbrt.f64 (exp.f64 re)) 2) (*.f64 (cbrt.f64 (exp.f64 re)) 1) (*.f64 (*.f64 (exp.f64 re) (*.f64 im (*.f64 im -1/2))) 1))
(fma.f64 (cbrt.f64 (*.f64 (pow.f64 im 4) 1/4)) (*.f64 (cbrt.f64 (*.f64 im (*.f64 im -1/2))) (exp.f64 re)) (exp.f64 re))
(fma.f64 (sqrt.f64 (exp.f64 re)) (sqrt.f64 (exp.f64 re)) (*.f64 (exp.f64 re) (*.f64 im (*.f64 im -1/2))))
(fma.f64 (sqrt.f64 (exp.f64 re)) (sqrt.f64 (exp.f64 re)) (*.f64 (*.f64 (exp.f64 re) (*.f64 im (*.f64 im -1/2))) 1))
(fma.f64 (sqrt.f64 (exp.f64 re)) (*.f64 (sqrt.f64 (exp.f64 re)) (*.f64 im (*.f64 im -1/2))) (exp.f64 re))
(fma.f64 (sqrt.f64 (exp.f64 re)) (*.f64 (sqrt.f64 (exp.f64 re)) 1) (*.f64 (exp.f64 re) (*.f64 im (*.f64 im -1/2))))
(fma.f64 (sqrt.f64 (exp.f64 re)) (*.f64 (sqrt.f64 (exp.f64 re)) 1) (*.f64 (*.f64 (exp.f64 re) (*.f64 im (*.f64 im -1/2))) 1))
(fma.f64 (*.f64 im (sqrt.f64 -1/2)) (*.f64 (*.f64 im (sqrt.f64 -1/2)) (exp.f64 re)) (exp.f64 re))
(fma.f64 (*.f64 im -1/2) (*.f64 im (exp.f64 re)) (exp.f64 re))
(fma.f64 (*.f64 (cbrt.f64 (*.f64 (exp.f64 re) (*.f64 im (*.f64 im -1/2)))) (cbrt.f64 (*.f64 (exp.f64 re) (*.f64 im (*.f64 im -1/2))))) (cbrt.f64 (*.f64 (exp.f64 re) (*.f64 im (*.f64 im -1/2)))) (exp.f64 re))
(fma.f64 (sqrt.f64 (*.f64 (exp.f64 re) (*.f64 im (*.f64 im -1/2)))) (sqrt.f64 (*.f64 (exp.f64 re) (*.f64 im (*.f64 im -1/2)))) (exp.f64 re))
(fma.f64 (*.f64 (sqrt.f64 (exp.f64 re)) (*.f64 im (sqrt.f64 -1/2))) (*.f64 (sqrt.f64 (exp.f64 re)) (*.f64 im (sqrt.f64 -1/2))) (exp.f64 re))
(fma.f64 (*.f64 (*.f64 im (sqrt.f64 -1/2)) (sqrt.f64 (exp.f64 re))) (*.f64 (*.f64 im (sqrt.f64 -1/2)) (sqrt.f64 (exp.f64 re))) (exp.f64 re))
(fma.f64 (*.f64 (exp.f64 re) -1/2) (*.f64 im im) (exp.f64 re))
(fma.f64 (*.f64 (exp.f64 re) (*.f64 im im)) -1/2 (exp.f64 re))
(fma.f64 (*.f64 (exp.f64 re) (cbrt.f64 (*.f64 (pow.f64 im 4) 1/4))) (cbrt.f64 (*.f64 im (*.f64 im -1/2))) (exp.f64 re))
(fma.f64 (*.f64 (exp.f64 re) (*.f64 im (sqrt.f64 -1/2))) (*.f64 im (sqrt.f64 -1/2)) (exp.f64 re))
(fma.f64 (*.f64 (exp.f64 re) (*.f64 im -1/2)) im (exp.f64 re))
(fma.f64 (*.f64 (*.f64 im (*.f64 im -1/2)) (pow.f64 (cbrt.f64 (exp.f64 re)) 2)) (cbrt.f64 (exp.f64 re)) (exp.f64 re))
(fma.f64 (*.f64 (*.f64 im (*.f64 im -1/2)) (sqrt.f64 (exp.f64 re))) (sqrt.f64 (exp.f64 re)) (exp.f64 re))
(+.f64 0 (*.f64 im (*.f64 im -1/2)))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 im) im) -1/2)) (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 im) im) -1/2)))) (log.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 im) im) -1/2))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (pow.f64 (exp.f64 im) im) -1/2))) (log.f64 (sqrt.f64 (pow.f64 (pow.f64 (exp.f64 im) im) -1/2))))
(-.f64 (fma.f64 im (*.f64 im -1/2) 1) 1)
(pow.f64 (*.f64 im (*.f64 im -1/2)) 1)
(pow.f64 (cbrt.f64 (*.f64 im (*.f64 im -1/2))) 3)
(pow.f64 (*.f64 (pow.f64 im 6) -1/8) 1/3)
(pow.f64 (*.f64 im (sqrt.f64 -1/2)) 2)
(sqrt.f64 (*.f64 (pow.f64 im 4) 1/4))
(log.f64 (pow.f64 (pow.f64 (exp.f64 im) im) -1/2))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 im (*.f64 im -1/2)))))
(cbrt.f64 (*.f64 (pow.f64 im 6) -1/8))
(expm1.f64 (log1p.f64 (*.f64 im (*.f64 im -1/2))))
(expm1.f64 (*.f64 (log1p.f64 (*.f64 im (*.f64 im -1/2))) 1))
(exp.f64 (log.f64 (*.f64 im (*.f64 im -1/2))))
(exp.f64 (*.f64 (log.f64 (*.f64 im (*.f64 im -1/2))) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 im (*.f64 im -1/2))) 1) 1))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 im (*.f64 im -1/2)))) 3))
(exp.f64 (*.f64 (log.f64 (*.f64 (pow.f64 im 6) -1/8)) 1/3))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 im (*.f64 im -1/2))) 3) 1/3))
(exp.f64 (*.f64 (log.f64 (*.f64 im (sqrt.f64 -1/2))) 2))
(log1p.f64 (expm1.f64 (*.f64 im (*.f64 im -1/2))))
(fma.f64 1 (fma.f64 im (*.f64 im -1/2) 1) -1)
(fma.f64 (fma.f64 im (*.f64 im -1/2) 1) 1 -1)
(fma.f64 (cbrt.f64 (fma.f64 im (*.f64 im -1/2) 1)) (pow.f64 (cbrt.f64 (fma.f64 im (*.f64 im -1/2) 1)) 2) -1)
(fma.f64 (pow.f64 (cbrt.f64 (fma.f64 im (*.f64 im -1/2) 1)) 2) (cbrt.f64 (fma.f64 im (*.f64 im -1/2) 1)) -1)
(fma.f64 (hypot.f64 1 (*.f64 im (sqrt.f64 -1/2))) (hypot.f64 1 (*.f64 im (sqrt.f64 -1/2))) -1)
(fma.f64 (fma.f64 (pow.f64 im 6) -1/8 1) (/.f64 1 (+.f64 1 (fma.f64 (pow.f64 im 4) 1/4 (*.f64 1/2 (*.f64 im im))))) -1)
(fma.f64 (-.f64 1 (*.f64 (pow.f64 im 4) 1/4)) (/.f64 1 (+.f64 1 (*.f64 1/2 (*.f64 im im)))) -1)
Outputs
(*.f64 -1/2 (pow.f64 im 2))
(*.f64 -1/2 (*.f64 im im))
(+.f64 (*.f64 -1/12 (pow.f64 im 4)) (*.f64 -1/2 (pow.f64 im 2)))
(fma.f64 -1/12 (pow.f64 im 4) (*.f64 -1/2 (*.f64 im im)))
(fma.f64 -1/2 (*.f64 im im) (*.f64 -1/12 (pow.f64 im 4)))
(+.f64 (*.f64 -1/12 (pow.f64 im 4)) (+.f64 (*.f64 -1/45 (pow.f64 im 6)) (*.f64 -1/2 (pow.f64 im 2))))
(fma.f64 -1/12 (pow.f64 im 4) (fma.f64 -1/45 (pow.f64 im 6) (*.f64 -1/2 (*.f64 im im))))
(fma.f64 -1/12 (pow.f64 im 4) (fma.f64 -1/2 (*.f64 im im) (*.f64 -1/45 (pow.f64 im 6))))
(+.f64 (*.f64 -17/2520 (pow.f64 im 8)) (+.f64 (*.f64 -1/12 (pow.f64 im 4)) (+.f64 (*.f64 -1/45 (pow.f64 im 6)) (*.f64 -1/2 (pow.f64 im 2)))))
(fma.f64 -17/2520 (pow.f64 im 8) (fma.f64 -1/12 (pow.f64 im 4) (fma.f64 -1/45 (pow.f64 im 6) (*.f64 -1/2 (*.f64 im im)))))
(fma.f64 -17/2520 (pow.f64 im 8) (fma.f64 -1/12 (pow.f64 im 4) (fma.f64 -1/2 (*.f64 im im) (*.f64 -1/45 (pow.f64 im 6)))))
1
(+.f64 1 (*.f64 -1/2 (pow.f64 im 2)))
(fma.f64 im (*.f64 -1/2 im) 1)
(fma.f64 -1/2 (*.f64 im im) 1)
(+.f64 1 (+.f64 (*.f64 -1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))))
(+.f64 (fma.f64 im (*.f64 -1/2 im) 1) (*.f64 (pow.f64 im 4) 1/24))
(+.f64 1 (fma.f64 -1/2 (*.f64 im im) (*.f64 (pow.f64 im 4) 1/24)))
(+.f64 (*.f64 (pow.f64 im 4) 1/24) (fma.f64 -1/2 (*.f64 im im) 1))
(+.f64 1 (+.f64 (*.f64 -1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 -1/720 (pow.f64 im 6)))))
(+.f64 (fma.f64 im (*.f64 -1/2 im) 1) (fma.f64 1/24 (pow.f64 im 4) (*.f64 (pow.f64 im 6) -1/720)))
(+.f64 1 (fma.f64 -1/2 (*.f64 im im) (fma.f64 (pow.f64 im 4) 1/24 (*.f64 (pow.f64 im 6) -1/720))))
(+.f64 (fma.f64 (pow.f64 im 4) 1/24 (*.f64 (pow.f64 im 6) -1/720)) (fma.f64 -1/2 (*.f64 im im) 1))
(cos.f64 im)
(cos.f64 im)
(cos.f64 im)
(cos.f64 im)
(cos.f64 im)
(cos.f64 im)
(cos.f64 im)
(cos.f64 im)
(+.f64 1 (*.f64 -1/2 (pow.f64 im 2)))
(fma.f64 im (*.f64 -1/2 im) 1)
(fma.f64 -1/2 (*.f64 im im) 1)
(+.f64 1 (+.f64 (*.f64 -1/2 (pow.f64 im 2)) (*.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 im 2))) re)))
(+.f64 (fma.f64 im (*.f64 -1/2 im) 1) (*.f64 re (fma.f64 im (*.f64 -1/2 im) 1)))
(*.f64 (+.f64 re 1) (fma.f64 -1/2 (*.f64 im im) 1))
(*.f64 (fma.f64 -1/2 (*.f64 im im) 1) (+.f64 1 re))
(+.f64 (*.f64 1/2 (*.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 im 2))) (pow.f64 re 2))) (+.f64 1 (+.f64 (*.f64 -1/2 (pow.f64 im 2)) (*.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 im 2))) re))))
(fma.f64 1/2 (*.f64 (*.f64 re re) (fma.f64 im (*.f64 -1/2 im) 1)) (+.f64 (fma.f64 im (*.f64 -1/2 im) 1) (*.f64 re (fma.f64 im (*.f64 -1/2 im) 1))))
(fma.f64 (*.f64 1/2 (fma.f64 -1/2 (*.f64 im im) 1)) (*.f64 re re) (*.f64 (+.f64 re 1) (fma.f64 -1/2 (*.f64 im im) 1)))
(*.f64 (fma.f64 -1/2 (*.f64 im im) 1) (+.f64 (+.f64 1 re) (*.f64 1/2 (*.f64 re re))))
(+.f64 (*.f64 1/6 (*.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 im 2))) (pow.f64 re 3))) (+.f64 (*.f64 1/2 (*.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 im 2))) (pow.f64 re 2))) (+.f64 1 (+.f64 (*.f64 -1/2 (pow.f64 im 2)) (*.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 im 2))) re)))))
(fma.f64 1/6 (*.f64 (pow.f64 re 3) (fma.f64 im (*.f64 -1/2 im) 1)) (fma.f64 1/2 (*.f64 (*.f64 re re) (fma.f64 im (*.f64 -1/2 im) 1)) (+.f64 (fma.f64 im (*.f64 -1/2 im) 1) (*.f64 re (fma.f64 im (*.f64 -1/2 im) 1)))))
(fma.f64 1/6 (*.f64 (pow.f64 re 3) (fma.f64 -1/2 (*.f64 im im) 1)) (fma.f64 (*.f64 1/2 (fma.f64 -1/2 (*.f64 im im) 1)) (*.f64 re re) (*.f64 (+.f64 re 1) (fma.f64 -1/2 (*.f64 im im) 1))))
(fma.f64 1/6 (*.f64 (pow.f64 re 3) (fma.f64 -1/2 (*.f64 im im) 1)) (*.f64 (fma.f64 -1/2 (*.f64 im im) 1) (+.f64 (+.f64 1 re) (*.f64 1/2 (*.f64 re re)))))
(*.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 im 2))) (exp.f64 re))
(*.f64 (exp.f64 re) (fma.f64 im (*.f64 -1/2 im) 1))
(*.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 im im) 1))
(*.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 im 2))) (exp.f64 re))
(*.f64 (exp.f64 re) (fma.f64 im (*.f64 -1/2 im) 1))
(*.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 im im) 1))
(*.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 im 2))) (exp.f64 re))
(*.f64 (exp.f64 re) (fma.f64 im (*.f64 -1/2 im) 1))
(*.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 im im) 1))
(*.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 im 2))) (exp.f64 re))
(*.f64 (exp.f64 re) (fma.f64 im (*.f64 -1/2 im) 1))
(*.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 im im) 1))
(*.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 im 2))) (exp.f64 re))
(*.f64 (exp.f64 re) (fma.f64 im (*.f64 -1/2 im) 1))
(*.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 im im) 1))
(*.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 im 2))) (exp.f64 re))
(*.f64 (exp.f64 re) (fma.f64 im (*.f64 -1/2 im) 1))
(*.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 im im) 1))
(*.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 im 2))) (exp.f64 re))
(*.f64 (exp.f64 re) (fma.f64 im (*.f64 -1/2 im) 1))
(*.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 im im) 1))
(*.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 im 2))) (exp.f64 re))
(*.f64 (exp.f64 re) (fma.f64 im (*.f64 -1/2 im) 1))
(*.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 im im) 1))
(exp.f64 re)
(+.f64 (*.f64 -1/2 (*.f64 (exp.f64 re) (pow.f64 im 2))) (exp.f64 re))
(*.f64 (exp.f64 re) (fma.f64 im (*.f64 -1/2 im) 1))
(*.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 im im) 1))
(+.f64 (*.f64 -1/2 (*.f64 (exp.f64 re) (pow.f64 im 2))) (exp.f64 re))
(*.f64 (exp.f64 re) (fma.f64 im (*.f64 -1/2 im) 1))
(*.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 im im) 1))
(+.f64 (*.f64 -1/2 (*.f64 (exp.f64 re) (pow.f64 im 2))) (exp.f64 re))
(*.f64 (exp.f64 re) (fma.f64 im (*.f64 -1/2 im) 1))
(*.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 im im) 1))
(*.f64 -1/2 (*.f64 (exp.f64 re) (pow.f64 im 2)))
(*.f64 -1/2 (*.f64 (exp.f64 re) (*.f64 im im)))
(*.f64 (exp.f64 re) (*.f64 -1/2 (*.f64 im im)))
(+.f64 (*.f64 -1/2 (*.f64 (exp.f64 re) (pow.f64 im 2))) (exp.f64 re))
(*.f64 (exp.f64 re) (fma.f64 im (*.f64 -1/2 im) 1))
(*.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 im im) 1))
(+.f64 (*.f64 -1/2 (*.f64 (exp.f64 re) (pow.f64 im 2))) (exp.f64 re))
(*.f64 (exp.f64 re) (fma.f64 im (*.f64 -1/2 im) 1))
(*.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 im im) 1))
(+.f64 (*.f64 -1/2 (*.f64 (exp.f64 re) (pow.f64 im 2))) (exp.f64 re))
(*.f64 (exp.f64 re) (fma.f64 im (*.f64 -1/2 im) 1))
(*.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 im im) 1))
(*.f64 -1/2 (*.f64 (exp.f64 re) (pow.f64 im 2)))
(*.f64 -1/2 (*.f64 (exp.f64 re) (*.f64 im im)))
(*.f64 (exp.f64 re) (*.f64 -1/2 (*.f64 im im)))
(+.f64 (*.f64 -1/2 (*.f64 (exp.f64 re) (pow.f64 im 2))) (exp.f64 re))
(*.f64 (exp.f64 re) (fma.f64 im (*.f64 -1/2 im) 1))
(*.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 im im) 1))
(+.f64 (*.f64 -1/2 (*.f64 (exp.f64 re) (pow.f64 im 2))) (exp.f64 re))
(*.f64 (exp.f64 re) (fma.f64 im (*.f64 -1/2 im) 1))
(*.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 im im) 1))
(+.f64 (*.f64 -1/2 (*.f64 (exp.f64 re) (pow.f64 im 2))) (exp.f64 re))
(*.f64 (exp.f64 re) (fma.f64 im (*.f64 -1/2 im) 1))
(*.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 im im) 1))
(*.f64 -1/2 (pow.f64 im 2))
(*.f64 -1/2 (*.f64 im im))
(*.f64 -1/2 (pow.f64 im 2))
(*.f64 -1/2 (*.f64 im im))
(*.f64 -1/2 (pow.f64 im 2))
(*.f64 -1/2 (*.f64 im im))
(*.f64 -1/2 (pow.f64 im 2))
(*.f64 -1/2 (*.f64 im im))
(*.f64 -1/2 (pow.f64 im 2))
(*.f64 -1/2 (*.f64 im im))
(*.f64 -1/2 (pow.f64 im 2))
(*.f64 -1/2 (*.f64 im im))
(*.f64 -1/2 (pow.f64 im 2))
(*.f64 -1/2 (*.f64 im im))
(*.f64 -1/2 (pow.f64 im 2))
(*.f64 -1/2 (*.f64 im im))
(*.f64 -1/2 (pow.f64 im 2))
(*.f64 -1/2 (*.f64 im im))
(*.f64 -1/2 (pow.f64 im 2))
(*.f64 -1/2 (*.f64 im im))
(*.f64 -1/2 (pow.f64 im 2))
(*.f64 -1/2 (*.f64 im im))
(*.f64 -1/2 (pow.f64 im 2))
(*.f64 -1/2 (*.f64 im im))
(+.f64 (log.f64 (cos.f64 im)) 0)
(log.f64 (cos.f64 im))
(+.f64 0 (log.f64 (cos.f64 im)))
(log.f64 (cos.f64 im))
(+.f64 (log.f64 (cbrt.f64 (cos.f64 im))) (*.f64 2 (log.f64 (cbrt.f64 (cos.f64 im)))))
(log.f64 (cos.f64 im))
(+.f64 (*.f64 2 (log.f64 (cbrt.f64 (cos.f64 im)))) (log.f64 (cbrt.f64 (cos.f64 im))))
(log.f64 (cos.f64 im))
(+.f64 (log.f64 (sqrt.f64 (cos.f64 im))) (log.f64 (sqrt.f64 (cos.f64 im))))
(log.f64 (cos.f64 im))
(-.f64 (exp.f64 (log1p.f64 (log.f64 (cos.f64 im)))) 1)
(log.f64 (cos.f64 im))
(*.f64 (log.f64 (cos.f64 im)) 1)
(log.f64 (cos.f64 im))
(*.f64 1 (log.f64 (cos.f64 im)))
(log.f64 (cos.f64 im))
(*.f64 (cbrt.f64 (log.f64 (cos.f64 im))) (pow.f64 (cbrt.f64 (log.f64 (cos.f64 im))) 2))
(log.f64 (cos.f64 im))
(*.f64 (pow.f64 (cbrt.f64 (log.f64 (cos.f64 im))) 2) (cbrt.f64 (log.f64 (cos.f64 im))))
(log.f64 (cos.f64 im))
(*.f64 (sqrt.f64 (log.f64 (cos.f64 im))) (sqrt.f64 (log.f64 (cos.f64 im))))
(log.f64 (cos.f64 im))
(*.f64 2 (log.f64 (sqrt.f64 (cos.f64 im))))
(log.f64 (cos.f64 im))
(*.f64 3 (log.f64 (cbrt.f64 (cos.f64 im))))
(log.f64 (cos.f64 im))
(*.f64 1/3 (*.f64 3 (log.f64 (cos.f64 im))))
(log.f64 (cos.f64 im))
(pow.f64 (log.f64 (cos.f64 im)) 1)
(log.f64 (cos.f64 im))
(pow.f64 (cbrt.f64 (log.f64 (cos.f64 im))) 3)
(log.f64 (cos.f64 im))
(pow.f64 (pow.f64 (log.f64 (cos.f64 im)) 3) 1/3)
(log.f64 (cos.f64 im))
(pow.f64 (sqrt.f64 (log.f64 (cos.f64 im))) 2)
(log.f64 (cos.f64 im))
(sqrt.f64 (pow.f64 (log.f64 (cos.f64 im)) 2))
(log.f64 (cos.f64 im))
(cbrt.f64 (pow.f64 (log.f64 (cos.f64 im)) 3))
(log.f64 (cos.f64 im))
(expm1.f64 (log1p.f64 (log.f64 (cos.f64 im))))
(log.f64 (cos.f64 im))
(exp.f64 (log.f64 (log.f64 (cos.f64 im))))
(log.f64 (cos.f64 im))
(exp.f64 (*.f64 (log.f64 (log.f64 (cos.f64 im))) 1))
(log.f64 (cos.f64 im))
(exp.f64 (*.f64 (*.f64 (log.f64 (log.f64 (cos.f64 im))) 1) 1))
(log.f64 (cos.f64 im))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (log.f64 (cos.f64 im)))) 3))
(log.f64 (cos.f64 im))
(exp.f64 (*.f64 (log.f64 (pow.f64 (log.f64 (cos.f64 im)) 3)) 1/3))
(log.f64 (cos.f64 im))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (log.f64 (cos.f64 im)))) 2))
(log.f64 (cos.f64 im))
(log1p.f64 (-.f64 (cos.f64 im) 1))
(log1p.f64 (+.f64 (cos.f64 im) -1))
(+.f64 0 (cos.f64 im))
(cos.f64 im)
(+.f64 (*.f64 (cos.f64 (exp.f64 (log1p.f64 im))) (cos.f64 1)) (*.f64 (sin.f64 (exp.f64 (log1p.f64 im))) (sin.f64 1)))
(fma.f64 (cos.f64 (exp.f64 (log1p.f64 im))) (cos.f64 1) (*.f64 (sin.f64 (exp.f64 (log1p.f64 im))) (sin.f64 1)))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (cos.f64 im))) (cbrt.f64 (exp.f64 (cos.f64 im))))) (log.f64 (cbrt.f64 (exp.f64 (cos.f64 im)))))
(+.f64 (*.f64 2 (log.f64 (cbrt.f64 (exp.f64 (cos.f64 im))))) (log.f64 (cbrt.f64 (exp.f64 (cos.f64 im)))))
(*.f64 3 (log.f64 (cbrt.f64 (exp.f64 (cos.f64 im)))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (cos.f64 im)))) (log.f64 (sqrt.f64 (exp.f64 (cos.f64 im)))))
(*.f64 2 (log.f64 (sqrt.f64 (exp.f64 (cos.f64 im)))))
(-.f64 (exp.f64 (log1p.f64 (cos.f64 im))) 1)
(cos.f64 im)
(*.f64 (cos.f64 im) 1)
(cos.f64 im)
(*.f64 1 (cos.f64 im))
(cos.f64 im)
(*.f64 (cbrt.f64 (cos.f64 im)) (pow.f64 (cbrt.f64 (cos.f64 im)) 2))
(cos.f64 im)
(*.f64 (pow.f64 (cbrt.f64 (cos.f64 im)) 2) (cbrt.f64 (cos.f64 im)))
(cos.f64 im)
(*.f64 (sqrt.f64 (cos.f64 im)) (sqrt.f64 (cos.f64 im)))
(cos.f64 im)
(pow.f64 (cos.f64 im) 1)
(cos.f64 im)
(pow.f64 (E.f64) (log.f64 (cos.f64 im)))
(pow.f64 (cbrt.f64 (cos.f64 im)) 3)
(cos.f64 im)
(pow.f64 (pow.f64 (cos.f64 im) 3) 1/3)
(cos.f64 im)
(pow.f64 (sqrt.f64 (cos.f64 im)) 2)
(cos.f64 im)
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (cos.f64 im))) 2)) (cbrt.f64 (log.f64 (cos.f64 im))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (cos.f64 im)))) (sqrt.f64 (log.f64 (cos.f64 im))))
(sqrt.f64 (pow.f64 (cos.f64 im) 2))
(cos.f64 im)
(log.f64 (exp.f64 (cos.f64 im)))
(cos.f64 im)
(log.f64 (+.f64 1 (expm1.f64 (cos.f64 im))))
(cos.f64 im)
(cbrt.f64 (pow.f64 (cos.f64 im) 3))
(cos.f64 im)
(cos.f64 im)
(expm1.f64 (log1p.f64 (cos.f64 im)))
(cos.f64 im)
(log1p.f64 (expm1.f64 (cos.f64 im)))
(cos.f64 im)
(+.f64 (exp.f64 re) (*.f64 (exp.f64 re) (*.f64 im (*.f64 im -1/2))))
(*.f64 (exp.f64 re) (fma.f64 im (*.f64 -1/2 im) 1))
(*.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 im im) 1))
(+.f64 (exp.f64 re) (*.f64 (*.f64 (exp.f64 re) (*.f64 im (*.f64 im -1/2))) 1))
(*.f64 (exp.f64 re) (fma.f64 im (*.f64 -1/2 im) 1))
(*.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 im im) 1))
(+.f64 0 (*.f64 (exp.f64 re) (fma.f64 im (*.f64 im -1/2) 1)))
(*.f64 (exp.f64 re) (fma.f64 im (*.f64 -1/2 im) 1))
(*.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 im im) 1))
(+.f64 (*.f64 (exp.f64 re) (*.f64 im (*.f64 im -1/2))) (exp.f64 re))
(*.f64 (exp.f64 re) (fma.f64 im (*.f64 -1/2 im) 1))
(*.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 im im) 1))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 (exp.f64 re)) (fma.f64 im (*.f64 im -1/2) 1))) (cbrt.f64 (pow.f64 (exp.f64 (exp.f64 re)) (fma.f64 im (*.f64 im -1/2) 1))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (exp.f64 re)) (fma.f64 im (*.f64 im -1/2) 1)))))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 (exp.f64 re)) (fma.f64 im (*.f64 -1/2 im) 1))) (cbrt.f64 (pow.f64 (exp.f64 (exp.f64 re)) (fma.f64 im (*.f64 -1/2 im) 1))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (exp.f64 re)) (fma.f64 im (*.f64 -1/2 im) 1)))))
(+.f64 (*.f64 2 (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (exp.f64 re)) (fma.f64 -1/2 (*.f64 im im) 1))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (exp.f64 re)) (fma.f64 -1/2 (*.f64 im im) 1)))))
(*.f64 3 (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (fma.f64 -1/2 (*.f64 im im) 1)) (exp.f64 re)))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (exp.f64 re)) (fma.f64 im (*.f64 im -1/2) 1)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (exp.f64 re)) (fma.f64 im (*.f64 im -1/2) 1)))))
(*.f64 (exp.f64 re) (fma.f64 im (*.f64 -1/2 im) 1))
(*.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 im im) 1))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (exp.f64 re) (fma.f64 im (*.f64 im -1/2) 1)))) 1)
(*.f64 (exp.f64 re) (fma.f64 im (*.f64 -1/2 im) 1))
(*.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 im im) 1))
(/.f64 (+.f64 (pow.f64 (exp.f64 re) 3) (pow.f64 (*.f64 (exp.f64 re) (*.f64 im (*.f64 im -1/2))) 3)) (+.f64 (pow.f64 (exp.f64 re) 2) (-.f64 (pow.f64 (*.f64 (exp.f64 re) (*.f64 im (*.f64 im -1/2))) 2) (*.f64 (exp.f64 re) (*.f64 (exp.f64 re) (*.f64 im (*.f64 im -1/2)))))))
(/.f64 (+.f64 (pow.f64 (exp.f64 re) 3) (pow.f64 (*.f64 (exp.f64 re) (*.f64 -1/2 (*.f64 im im))) 3)) (+.f64 (pow.f64 (exp.f64 re) 2) (-.f64 (pow.f64 (*.f64 (exp.f64 re) (*.f64 -1/2 (*.f64 im im))) 2) (*.f64 (pow.f64 (exp.f64 re) 2) (*.f64 -1/2 (*.f64 im im))))))
(/.f64 (+.f64 (pow.f64 (exp.f64 re) 3) (pow.f64 (*.f64 (exp.f64 re) (*.f64 -1/2 (*.f64 im im))) 3)) (+.f64 (exp.f64 (+.f64 re re)) (*.f64 (*.f64 (exp.f64 re) (*.f64 -1/2 (*.f64 im im))) (-.f64 (*.f64 (exp.f64 re) (*.f64 -1/2 (*.f64 im im))) (exp.f64 re)))))
(/.f64 (*.f64 (fma.f64 (pow.f64 im 6) -1/8 1) (pow.f64 (exp.f64 3) re)) (+.f64 (exp.f64 (+.f64 re re)) (*.f64 (exp.f64 (+.f64 re re)) (fma.f64 (pow.f64 im 4) 1/4 (*.f64 im (*.f64 im 1/2))))))
(/.f64 (-.f64 (pow.f64 (exp.f64 re) 2) (pow.f64 (*.f64 (exp.f64 re) (*.f64 im (*.f64 im -1/2))) 2)) (-.f64 (exp.f64 re) (*.f64 (exp.f64 re) (*.f64 im (*.f64 im -1/2)))))
(/.f64 (-.f64 (pow.f64 (exp.f64 re) 2) (pow.f64 (*.f64 (exp.f64 re) (*.f64 -1/2 (*.f64 im im))) 2)) (-.f64 (exp.f64 re) (*.f64 (exp.f64 re) (*.f64 -1/2 (*.f64 im im)))))
(/.f64 (-.f64 (exp.f64 (+.f64 re re)) (pow.f64 (*.f64 (exp.f64 re) (*.f64 -1/2 (*.f64 im im))) 2)) (-.f64 (exp.f64 re) (*.f64 (exp.f64 re) (*.f64 -1/2 (*.f64 im im)))))
(/.f64 (+.f64 (exp.f64 (+.f64 re re)) (*.f64 (exp.f64 (+.f64 re re)) (*.f64 (pow.f64 im 4) -1/4))) (*.f64 (exp.f64 re) (fma.f64 1/2 (*.f64 im im) 1)))
(/.f64 (*.f64 (exp.f64 re) (fma.f64 (pow.f64 im 6) -1/8 1)) (+.f64 1 (fma.f64 (pow.f64 im 4) 1/4 (*.f64 1/2 (*.f64 im im)))))
(*.f64 (/.f64 (exp.f64 re) (+.f64 1 (fma.f64 (pow.f64 im 4) 1/4 (*.f64 1/2 (*.f64 im im))))) (fma.f64 (pow.f64 im 6) -1/8 1))
(/.f64 (fma.f64 (pow.f64 im 6) -1/8 1) (/.f64 (+.f64 (fma.f64 1/2 (*.f64 im im) 1) (*.f64 (pow.f64 im 4) 1/4)) (exp.f64 re)))
(/.f64 (*.f64 (exp.f64 re) (-.f64 1 (*.f64 (pow.f64 im 4) 1/4))) (+.f64 1 (*.f64 1/2 (*.f64 im im))))
(/.f64 (exp.f64 re) (/.f64 (+.f64 1 (*.f64 1/2 (*.f64 im im))) (-.f64 1 (*.f64 (pow.f64 im 4) 1/4))))
(*.f64 (/.f64 (exp.f64 re) (fma.f64 1/2 (*.f64 im im) 1)) (+.f64 1 (*.f64 (pow.f64 im 4) -1/4)))
(*.f64 (/.f64 (+.f64 1 (*.f64 (pow.f64 im 4) -1/4)) (fma.f64 1/2 (*.f64 im im) 1)) (exp.f64 re))
(/.f64 (*.f64 (fma.f64 (pow.f64 im 6) -1/8 1) (exp.f64 re)) (+.f64 1 (fma.f64 (pow.f64 im 4) 1/4 (*.f64 1/2 (*.f64 im im)))))
(/.f64 (*.f64 (exp.f64 re) (fma.f64 (pow.f64 im 6) -1/8 1)) (+.f64 1 (fma.f64 (pow.f64 im 4) 1/4 (*.f64 1/2 (*.f64 im im)))))
(*.f64 (/.f64 (exp.f64 re) (+.f64 1 (fma.f64 (pow.f64 im 4) 1/4 (*.f64 1/2 (*.f64 im im))))) (fma.f64 (pow.f64 im 6) -1/8 1))
(/.f64 (fma.f64 (pow.f64 im 6) -1/8 1) (/.f64 (+.f64 (fma.f64 1/2 (*.f64 im im) 1) (*.f64 (pow.f64 im 4) 1/4)) (exp.f64 re)))
(/.f64 (*.f64 (-.f64 1 (*.f64 (pow.f64 im 4) 1/4)) (exp.f64 re)) (+.f64 1 (*.f64 1/2 (*.f64 im im))))
(/.f64 (exp.f64 re) (/.f64 (+.f64 1 (*.f64 1/2 (*.f64 im im))) (-.f64 1 (*.f64 (pow.f64 im 4) 1/4))))
(*.f64 (/.f64 (exp.f64 re) (fma.f64 1/2 (*.f64 im im) 1)) (+.f64 1 (*.f64 (pow.f64 im 4) -1/4)))
(*.f64 (/.f64 (+.f64 1 (*.f64 (pow.f64 im 4) -1/4)) (fma.f64 1/2 (*.f64 im im) 1)) (exp.f64 re))
(pow.f64 (*.f64 (exp.f64 re) (fma.f64 im (*.f64 im -1/2) 1)) 1)
(*.f64 (exp.f64 re) (fma.f64 im (*.f64 -1/2 im) 1))
(*.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 im im) 1))
(pow.f64 (cbrt.f64 (*.f64 (exp.f64 re) (fma.f64 im (*.f64 im -1/2) 1))) 3)
(*.f64 (exp.f64 re) (fma.f64 im (*.f64 -1/2 im) 1))
(*.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 im im) 1))
(pow.f64 (pow.f64 (*.f64 (exp.f64 re) (fma.f64 im (*.f64 im -1/2) 1)) 3) 1/3)
(*.f64 (exp.f64 re) (fma.f64 im (*.f64 -1/2 im) 1))
(*.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 im im) 1))
(pow.f64 (sqrt.f64 (*.f64 (exp.f64 re) (fma.f64 im (*.f64 im -1/2) 1))) 2)
(*.f64 (exp.f64 re) (fma.f64 im (*.f64 -1/2 im) 1))
(*.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 im im) 1))
(sqrt.f64 (pow.f64 (*.f64 (exp.f64 re) (fma.f64 im (*.f64 im -1/2) 1)) 2))
(*.f64 (exp.f64 re) (fma.f64 im (*.f64 -1/2 im) 1))
(*.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 im im) 1))
(log.f64 (pow.f64 (exp.f64 (exp.f64 re)) (fma.f64 im (*.f64 im -1/2) 1)))
(*.f64 (exp.f64 re) (fma.f64 im (*.f64 -1/2 im) 1))
(*.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 im im) 1))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (exp.f64 re) (fma.f64 im (*.f64 im -1/2) 1)))))
(*.f64 (exp.f64 re) (fma.f64 im (*.f64 -1/2 im) 1))
(*.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 im im) 1))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (exp.f64 re))) (exp.f64 (*.f64 (exp.f64 re) (*.f64 im (*.f64 im -1/2))))))
(*.f64 (exp.f64 re) (fma.f64 im (*.f64 -1/2 im) 1))
(*.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 im im) 1))
(log.f64 (*.f64 (exp.f64 (*.f64 (exp.f64 re) (*.f64 im (*.f64 im -1/2)))) (exp.f64 (exp.f64 re))))
(*.f64 (exp.f64 re) (fma.f64 im (*.f64 -1/2 im) 1))
(*.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 im im) 1))
(log.f64 (*.f64 (exp.f64 (*.f64 (exp.f64 re) (*.f64 im (*.f64 im -1/2)))) (+.f64 1 (expm1.f64 (exp.f64 re)))))
(*.f64 (exp.f64 re) (fma.f64 im (*.f64 -1/2 im) 1))
(*.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 im im) 1))
(cbrt.f64 (pow.f64 (*.f64 (exp.f64 re) (fma.f64 im (*.f64 im -1/2) 1)) 3))
(*.f64 (exp.f64 re) (fma.f64 im (*.f64 -1/2 im) 1))
(*.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 im im) 1))
(cbrt.f64 (*.f64 (pow.f64 (exp.f64 re) 3) (pow.f64 (fma.f64 im (*.f64 im -1/2) 1) 3)))
(*.f64 (exp.f64 re) (fma.f64 im (*.f64 -1/2 im) 1))
(*.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 im im) 1))
(cbrt.f64 (*.f64 (pow.f64 (fma.f64 im (*.f64 im -1/2) 1) 3) (pow.f64 (exp.f64 re) 3)))
(*.f64 (exp.f64 re) (fma.f64 im (*.f64 -1/2 im) 1))
(*.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 im im) 1))
(expm1.f64 (log1p.f64 (*.f64 (exp.f64 re) (fma.f64 im (*.f64 im -1/2) 1))))
(*.f64 (exp.f64 re) (fma.f64 im (*.f64 -1/2 im) 1))
(*.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 im im) 1))
(exp.f64 (+.f64 re (log1p.f64 (*.f64 im (*.f64 im -1/2)))))
(exp.f64 (+.f64 re (log1p.f64 (*.f64 -1/2 (*.f64 im im)))))
(exp.f64 (*.f64 (+.f64 re (log1p.f64 (*.f64 im (*.f64 im -1/2)))) 1))
(exp.f64 (+.f64 re (log1p.f64 (*.f64 -1/2 (*.f64 im im)))))
(exp.f64 (*.f64 (*.f64 (+.f64 re (log1p.f64 (*.f64 im (*.f64 im -1/2)))) 1) 1))
(exp.f64 (+.f64 re (log1p.f64 (*.f64 -1/2 (*.f64 im im)))))
(exp.f64 (*.f64 (*.f64 1/3 (+.f64 re (log1p.f64 (*.f64 im (*.f64 im -1/2))))) 3))
(exp.f64 (+.f64 re (log1p.f64 (*.f64 -1/2 (*.f64 im im)))))
(exp.f64 (*.f64 (*.f64 3 (+.f64 re (log1p.f64 (*.f64 im (*.f64 im -1/2))))) 1/3))
(exp.f64 (+.f64 re (log1p.f64 (*.f64 -1/2 (*.f64 im im)))))
(exp.f64 (*.f64 (*.f64 1/2 (+.f64 re (log1p.f64 (*.f64 im (*.f64 im -1/2))))) 2))
(exp.f64 (+.f64 re (log1p.f64 (*.f64 -1/2 (*.f64 im im)))))
(log1p.f64 (expm1.f64 (*.f64 (exp.f64 re) (fma.f64 im (*.f64 im -1/2) 1))))
(*.f64 (exp.f64 re) (fma.f64 im (*.f64 -1/2 im) 1))
(*.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 im im) 1))
(fma.f64 (exp.f64 re) 1 (*.f64 (exp.f64 re) (*.f64 im (*.f64 im -1/2))))
(*.f64 (exp.f64 re) (fma.f64 im (*.f64 -1/2 im) 1))
(*.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 im im) 1))
(fma.f64 (exp.f64 re) 1 (*.f64 (*.f64 (exp.f64 re) (*.f64 im (*.f64 im -1/2))) 1))
(*.f64 (exp.f64 re) (fma.f64 im (*.f64 -1/2 im) 1))
(*.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 im im) 1))
(fma.f64 (exp.f64 re) (*.f64 im (*.f64 im -1/2)) (exp.f64 re))
(*.f64 (exp.f64 re) (fma.f64 im (*.f64 -1/2 im) 1))
(*.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 im im) 1))
(fma.f64 1 (exp.f64 re) (*.f64 (exp.f64 re) (*.f64 im (*.f64 im -1/2))))
(*.f64 (exp.f64 re) (fma.f64 im (*.f64 -1/2 im) 1))
(*.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 im im) 1))
(fma.f64 1 (exp.f64 re) (*.f64 (*.f64 (exp.f64 re) (*.f64 im (*.f64 im -1/2))) 1))
(*.f64 (exp.f64 re) (fma.f64 im (*.f64 -1/2 im) 1))
(*.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 im im) 1))
(fma.f64 1 (*.f64 (exp.f64 re) (*.f64 im (*.f64 im -1/2))) (exp.f64 re))
(*.f64 (exp.f64 re) (fma.f64 im (*.f64 -1/2 im) 1))
(*.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 im im) 1))
(fma.f64 -1/2 (*.f64 (*.f64 im im) (exp.f64 re)) (exp.f64 re))
(*.f64 (exp.f64 re) (fma.f64 im (*.f64 -1/2 im) 1))
(*.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 im im) 1))
(fma.f64 (*.f64 im im) (*.f64 -1/2 (exp.f64 re)) (exp.f64 re))
(*.f64 (exp.f64 re) (fma.f64 im (*.f64 -1/2 im) 1))
(*.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 im im) 1))
(fma.f64 (*.f64 im (*.f64 im -1/2)) (exp.f64 re) (exp.f64 re))
(*.f64 (exp.f64 re) (fma.f64 im (*.f64 -1/2 im) 1))
(*.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 im im) 1))
(fma.f64 (cbrt.f64 (exp.f64 re)) (pow.f64 (cbrt.f64 (exp.f64 re)) 2) (*.f64 (exp.f64 re) (*.f64 im (*.f64 im -1/2))))
(*.f64 (exp.f64 re) (fma.f64 im (*.f64 -1/2 im) 1))
(*.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 im im) 1))
(fma.f64 (cbrt.f64 (exp.f64 re)) (pow.f64 (cbrt.f64 (exp.f64 re)) 2) (*.f64 (*.f64 (exp.f64 re) (*.f64 im (*.f64 im -1/2))) 1))
(*.f64 (exp.f64 re) (fma.f64 im (*.f64 -1/2 im) 1))
(*.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 im im) 1))
(fma.f64 (pow.f64 (cbrt.f64 (exp.f64 re)) 2) (cbrt.f64 (exp.f64 re)) (*.f64 (exp.f64 re) (*.f64 im (*.f64 im -1/2))))
(*.f64 (exp.f64 re) (fma.f64 im (*.f64 -1/2 im) 1))
(*.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 im im) 1))
(fma.f64 (pow.f64 (cbrt.f64 (exp.f64 re)) 2) (cbrt.f64 (exp.f64 re)) (*.f64 (*.f64 (exp.f64 re) (*.f64 im (*.f64 im -1/2))) 1))
(*.f64 (exp.f64 re) (fma.f64 im (*.f64 -1/2 im) 1))
(*.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 im im) 1))
(fma.f64 (pow.f64 (cbrt.f64 (exp.f64 re)) 2) (*.f64 (cbrt.f64 (exp.f64 re)) (*.f64 im (*.f64 im -1/2))) (exp.f64 re))
(*.f64 (exp.f64 re) (fma.f64 im (*.f64 -1/2 im) 1))
(*.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 im im) 1))
(fma.f64 (pow.f64 (cbrt.f64 (exp.f64 re)) 2) (*.f64 (cbrt.f64 (exp.f64 re)) 1) (*.f64 (exp.f64 re) (*.f64 im (*.f64 im -1/2))))
(*.f64 (exp.f64 re) (fma.f64 im (*.f64 -1/2 im) 1))
(*.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 im im) 1))
(fma.f64 (pow.f64 (cbrt.f64 (exp.f64 re)) 2) (*.f64 (cbrt.f64 (exp.f64 re)) 1) (*.f64 (*.f64 (exp.f64 re) (*.f64 im (*.f64 im -1/2))) 1))
(*.f64 (exp.f64 re) (fma.f64 im (*.f64 -1/2 im) 1))
(*.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 im im) 1))
(fma.f64 (cbrt.f64 (*.f64 (pow.f64 im 4) 1/4)) (*.f64 (cbrt.f64 (*.f64 im (*.f64 im -1/2))) (exp.f64 re)) (exp.f64 re))
(fma.f64 (cbrt.f64 (*.f64 (pow.f64 im 4) 1/4)) (*.f64 (exp.f64 re) (cbrt.f64 (*.f64 -1/2 (*.f64 im im)))) (exp.f64 re))
(*.f64 (exp.f64 re) (+.f64 (*.f64 (cbrt.f64 (*.f64 (pow.f64 im 4) 1/4)) (cbrt.f64 (*.f64 -1/2 (*.f64 im im)))) 1))
(fma.f64 (sqrt.f64 (exp.f64 re)) (sqrt.f64 (exp.f64 re)) (*.f64 (exp.f64 re) (*.f64 im (*.f64 im -1/2))))
(*.f64 (exp.f64 re) (fma.f64 im (*.f64 -1/2 im) 1))
(*.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 im im) 1))
(fma.f64 (sqrt.f64 (exp.f64 re)) (sqrt.f64 (exp.f64 re)) (*.f64 (*.f64 (exp.f64 re) (*.f64 im (*.f64 im -1/2))) 1))
(*.f64 (exp.f64 re) (fma.f64 im (*.f64 -1/2 im) 1))
(*.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 im im) 1))
(fma.f64 (sqrt.f64 (exp.f64 re)) (*.f64 (sqrt.f64 (exp.f64 re)) (*.f64 im (*.f64 im -1/2))) (exp.f64 re))
(*.f64 (exp.f64 re) (fma.f64 im (*.f64 -1/2 im) 1))
(*.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 im im) 1))
(fma.f64 (sqrt.f64 (exp.f64 re)) (*.f64 (sqrt.f64 (exp.f64 re)) 1) (*.f64 (exp.f64 re) (*.f64 im (*.f64 im -1/2))))
(*.f64 (exp.f64 re) (fma.f64 im (*.f64 -1/2 im) 1))
(*.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 im im) 1))
(fma.f64 (sqrt.f64 (exp.f64 re)) (*.f64 (sqrt.f64 (exp.f64 re)) 1) (*.f64 (*.f64 (exp.f64 re) (*.f64 im (*.f64 im -1/2))) 1))
(*.f64 (exp.f64 re) (fma.f64 im (*.f64 -1/2 im) 1))
(*.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 im im) 1))
(fma.f64 (*.f64 im (sqrt.f64 -1/2)) (*.f64 (*.f64 im (sqrt.f64 -1/2)) (exp.f64 re)) (exp.f64 re))
(*.f64 (exp.f64 re) (fma.f64 im (*.f64 -1/2 im) 1))
(*.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 im im) 1))
(fma.f64 (*.f64 im -1/2) (*.f64 im (exp.f64 re)) (exp.f64 re))
(*.f64 (exp.f64 re) (fma.f64 im (*.f64 -1/2 im) 1))
(*.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 im im) 1))
(fma.f64 (*.f64 (cbrt.f64 (*.f64 (exp.f64 re) (*.f64 im (*.f64 im -1/2)))) (cbrt.f64 (*.f64 (exp.f64 re) (*.f64 im (*.f64 im -1/2))))) (cbrt.f64 (*.f64 (exp.f64 re) (*.f64 im (*.f64 im -1/2)))) (exp.f64 re))
(*.f64 (exp.f64 re) (fma.f64 im (*.f64 -1/2 im) 1))
(*.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 im im) 1))
(fma.f64 (sqrt.f64 (*.f64 (exp.f64 re) (*.f64 im (*.f64 im -1/2)))) (sqrt.f64 (*.f64 (exp.f64 re) (*.f64 im (*.f64 im -1/2)))) (exp.f64 re))
(*.f64 (exp.f64 re) (fma.f64 im (*.f64 -1/2 im) 1))
(*.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 im im) 1))
(fma.f64 (*.f64 (sqrt.f64 (exp.f64 re)) (*.f64 im (sqrt.f64 -1/2))) (*.f64 (sqrt.f64 (exp.f64 re)) (*.f64 im (sqrt.f64 -1/2))) (exp.f64 re))
(*.f64 (exp.f64 re) (fma.f64 im (*.f64 -1/2 im) 1))
(*.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 im im) 1))
(fma.f64 (*.f64 (*.f64 im (sqrt.f64 -1/2)) (sqrt.f64 (exp.f64 re))) (*.f64 (*.f64 im (sqrt.f64 -1/2)) (sqrt.f64 (exp.f64 re))) (exp.f64 re))
(*.f64 (exp.f64 re) (fma.f64 im (*.f64 -1/2 im) 1))
(*.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 im im) 1))
(fma.f64 (*.f64 (exp.f64 re) -1/2) (*.f64 im im) (exp.f64 re))
(*.f64 (exp.f64 re) (fma.f64 im (*.f64 -1/2 im) 1))
(*.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 im im) 1))
(fma.f64 (*.f64 (exp.f64 re) (*.f64 im im)) -1/2 (exp.f64 re))
(*.f64 (exp.f64 re) (fma.f64 im (*.f64 -1/2 im) 1))
(*.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 im im) 1))
(fma.f64 (*.f64 (exp.f64 re) (cbrt.f64 (*.f64 (pow.f64 im 4) 1/4))) (cbrt.f64 (*.f64 im (*.f64 im -1/2))) (exp.f64 re))
(fma.f64 (cbrt.f64 (*.f64 (pow.f64 im 4) 1/4)) (*.f64 (exp.f64 re) (cbrt.f64 (*.f64 -1/2 (*.f64 im im)))) (exp.f64 re))
(*.f64 (exp.f64 re) (+.f64 (*.f64 (cbrt.f64 (*.f64 (pow.f64 im 4) 1/4)) (cbrt.f64 (*.f64 -1/2 (*.f64 im im)))) 1))
(fma.f64 (*.f64 (exp.f64 re) (*.f64 im (sqrt.f64 -1/2))) (*.f64 im (sqrt.f64 -1/2)) (exp.f64 re))
(*.f64 (exp.f64 re) (fma.f64 im (*.f64 -1/2 im) 1))
(*.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 im im) 1))
(fma.f64 (*.f64 (exp.f64 re) (*.f64 im -1/2)) im (exp.f64 re))
(*.f64 (exp.f64 re) (fma.f64 im (*.f64 -1/2 im) 1))
(*.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 im im) 1))
(fma.f64 (*.f64 (*.f64 im (*.f64 im -1/2)) (pow.f64 (cbrt.f64 (exp.f64 re)) 2)) (cbrt.f64 (exp.f64 re)) (exp.f64 re))
(*.f64 (exp.f64 re) (fma.f64 im (*.f64 -1/2 im) 1))
(*.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 im im) 1))
(fma.f64 (*.f64 (*.f64 im (*.f64 im -1/2)) (sqrt.f64 (exp.f64 re))) (sqrt.f64 (exp.f64 re)) (exp.f64 re))
(*.f64 (exp.f64 re) (fma.f64 im (*.f64 -1/2 im) 1))
(*.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 im im) 1))
(+.f64 0 (*.f64 im (*.f64 im -1/2)))
(*.f64 -1/2 (*.f64 im im))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 im) im) -1/2)) (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 im) im) -1/2)))) (log.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 im) im) -1/2))))
(+.f64 (*.f64 2 (log.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 im) im) -1/2)))) (log.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 im) im) -1/2))))
(*.f64 3 (log.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 im) im) -1/2))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (pow.f64 (exp.f64 im) im) -1/2))) (log.f64 (sqrt.f64 (pow.f64 (pow.f64 (exp.f64 im) im) -1/2))))
(*.f64 -1/2 (*.f64 im im))
(-.f64 (fma.f64 im (*.f64 im -1/2) 1) 1)
(*.f64 -1/2 (*.f64 im im))
(pow.f64 (*.f64 im (*.f64 im -1/2)) 1)
(*.f64 -1/2 (*.f64 im im))
(pow.f64 (cbrt.f64 (*.f64 im (*.f64 im -1/2))) 3)
(*.f64 -1/2 (*.f64 im im))
(pow.f64 (*.f64 (pow.f64 im 6) -1/8) 1/3)
(*.f64 -1/2 (*.f64 im im))
(pow.f64 (*.f64 im (sqrt.f64 -1/2)) 2)
(*.f64 -1/2 (*.f64 im im))
(sqrt.f64 (*.f64 (pow.f64 im 4) 1/4))
(log.f64 (pow.f64 (pow.f64 (exp.f64 im) im) -1/2))
(*.f64 -1/2 (*.f64 im im))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 im (*.f64 im -1/2)))))
(*.f64 -1/2 (*.f64 im im))
(cbrt.f64 (*.f64 (pow.f64 im 6) -1/8))
(*.f64 -1/2 (*.f64 im im))
(expm1.f64 (log1p.f64 (*.f64 im (*.f64 im -1/2))))
(*.f64 -1/2 (*.f64 im im))
(expm1.f64 (*.f64 (log1p.f64 (*.f64 im (*.f64 im -1/2))) 1))
(*.f64 -1/2 (*.f64 im im))
(exp.f64 (log.f64 (*.f64 im (*.f64 im -1/2))))
(*.f64 -1/2 (*.f64 im im))
(exp.f64 (*.f64 (log.f64 (*.f64 im (*.f64 im -1/2))) 1))
(*.f64 -1/2 (*.f64 im im))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 im (*.f64 im -1/2))) 1) 1))
(*.f64 -1/2 (*.f64 im im))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 im (*.f64 im -1/2)))) 3))
(*.f64 -1/2 (*.f64 im im))
(exp.f64 (*.f64 (log.f64 (*.f64 (pow.f64 im 6) -1/8)) 1/3))
(*.f64 -1/2 (*.f64 im im))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 im (*.f64 im -1/2))) 3) 1/3))
(*.f64 -1/2 (*.f64 im im))
(exp.f64 (*.f64 (log.f64 (*.f64 im (sqrt.f64 -1/2))) 2))
(*.f64 -1/2 (*.f64 im im))
(log1p.f64 (expm1.f64 (*.f64 im (*.f64 im -1/2))))
(*.f64 -1/2 (*.f64 im im))
(fma.f64 1 (fma.f64 im (*.f64 im -1/2) 1) -1)
(*.f64 -1/2 (*.f64 im im))
(fma.f64 (fma.f64 im (*.f64 im -1/2) 1) 1 -1)
(*.f64 -1/2 (*.f64 im im))
(fma.f64 (cbrt.f64 (fma.f64 im (*.f64 im -1/2) 1)) (pow.f64 (cbrt.f64 (fma.f64 im (*.f64 im -1/2) 1)) 2) -1)
(*.f64 -1/2 (*.f64 im im))
(fma.f64 (pow.f64 (cbrt.f64 (fma.f64 im (*.f64 im -1/2) 1)) 2) (cbrt.f64 (fma.f64 im (*.f64 im -1/2) 1)) -1)
(*.f64 -1/2 (*.f64 im im))
(fma.f64 (hypot.f64 1 (*.f64 im (sqrt.f64 -1/2))) (hypot.f64 1 (*.f64 im (sqrt.f64 -1/2))) -1)
(fma.f64 (fma.f64 (pow.f64 im 6) -1/8 1) (/.f64 1 (+.f64 1 (fma.f64 (pow.f64 im 4) 1/4 (*.f64 1/2 (*.f64 im im))))) -1)
(+.f64 -1 (/.f64 (fma.f64 (pow.f64 im 6) -1/8 1) (+.f64 (fma.f64 1/2 (*.f64 im im) 1) (*.f64 (pow.f64 im 4) 1/4))))
(fma.f64 (-.f64 1 (*.f64 (pow.f64 im 4) 1/4)) (/.f64 1 (+.f64 1 (*.f64 1/2 (*.f64 im im)))) -1)
(fma.f64 (+.f64 1 (*.f64 (pow.f64 im 4) -1/4)) (/.f64 1 (fma.f64 1/2 (*.f64 im im) 1)) -1)
(+.f64 -1 (/.f64 (+.f64 1 (*.f64 (pow.f64 im 4) -1/4)) (fma.f64 1/2 (*.f64 im im) 1)))

eval85.0ms (1.9%)

Compiler

Compiled 4147 to 2342 computations (43.5% saved)

prune41.0ms (0.9%)

Pruning

5 alts after pruning (2 fresh and 3 done)

PrunedKeptTotal
New2742276
Fresh000
Picked123
Done011
Total2755280
Accurracy
100.0%
Counts
280 → 5
Alt Table
Click to see full alt table
StatusAccuracyProgram
62.6%
(*.f64 (exp.f64 re) (+.f64 1 (*.f64 -1/2 (*.f64 im im))))
27.8%
(*.f64 (exp.f64 re) (*.f64 -1/2 (*.f64 im im)))
75.0%
(*.f64 (exp.f64 re) (exp.f64 (log.f64 (cos.f64 im))))
100.0%
(*.f64 (exp.f64 re) (cos.f64 im))
72.1%
(exp.f64 re)
62.6%
(*.f64 (exp.f64 re) (+.f64 1 (*.f64 -1/2 (*.f64 im im))))
27.8%
(*.f64 (exp.f64 re) (*.f64 -1/2 (*.f64 im im)))
75.0%
(*.f64 (exp.f64 re) (exp.f64 (log.f64 (cos.f64 im))))
100.0%
(*.f64 (exp.f64 re) (cos.f64 im))
72.1%
(exp.f64 re)
Compiler

Compiled 84 to 62 computations (26.2% saved)

localize31.0ms (0.7%)

Local Accuracy

Found 2 expressions with local accuracy:

NewAccuracyProgram
100.0%
(*.f64 -1/2 (*.f64 im im))
89.6%
(*.f64 (exp.f64 re) (*.f64 -1/2 (*.f64 im im)))
Compiler

Compiled 27 to 11 computations (59.3% saved)

series2.0ms (0.1%)

Counts
1 → 24
Calls

6 calls:

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

rewrite57.0ms (1.3%)

Algorithm
batch-egg-rewrite
Rules
1772×pow1
1622×add-exp-log
1622×log1p-expm1-u
1622×expm1-log1p-u
1584×add-log-exp
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01023
119823
2228623
Stop Event
node limit
Counts
1 → 13
Calls
Call 1
Inputs
(*.f64 (exp.f64 re) (*.f64 -1/2 (*.f64 im im)))
Outputs
(-.f64 (+.f64 1 (*.f64 (exp.f64 re) (*.f64 -1/2 (*.f64 im im)))) 1)
(pow.f64 (*.f64 (exp.f64 re) (*.f64 -1/2 (*.f64 im im))) 1)
(pow.f64 (cbrt.f64 (*.f64 (exp.f64 re) (*.f64 -1/2 (*.f64 im im)))) 3)
(pow.f64 (pow.f64 (*.f64 (exp.f64 re) (*.f64 -1/2 (*.f64 im im))) 3) 1/3)
(pow.f64 (*.f64 (sqrt.f64 (*.f64 (exp.f64 re) -1/2)) im) 2)
(sqrt.f64 (pow.f64 (*.f64 (exp.f64 re) (*.f64 -1/2 (*.f64 im im))) 2))
(log.f64 (pow.f64 (exp.f64 (exp.f64 re)) (*.f64 -1/2 (*.f64 im im))))
(cbrt.f64 (pow.f64 (*.f64 (exp.f64 re) (*.f64 -1/2 (*.f64 im im))) 3))
(cbrt.f64 (*.f64 (pow.f64 (exp.f64 re) 3) (pow.f64 (*.f64 -1/2 (*.f64 im im)) 3)))
(cbrt.f64 (*.f64 (pow.f64 (*.f64 -1/2 (*.f64 im im)) 3) (pow.f64 (exp.f64 re) 3)))
(expm1.f64 (log1p.f64 (*.f64 (exp.f64 re) (*.f64 -1/2 (*.f64 im im)))))
(exp.f64 (+.f64 re (log.f64 (*.f64 -1/2 (*.f64 im im)))))
(log1p.f64 (expm1.f64 (*.f64 (exp.f64 re) (*.f64 -1/2 (*.f64 im im)))))

simplify65.0ms (1.4%)

Algorithm
egg-herbie
Rules
1264×unswap-sqr
1086×fma-def
1054×associate-*r/
1006×associate-*l/
958×distribute-lft-out
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
062947
1172921
2613885
31646877
44645877
Stop Event
node limit
Counts
37 → 36
Calls
Call 1
Inputs
(*.f64 -1/2 (pow.f64 im 2))
(+.f64 (*.f64 -1/2 (*.f64 re (pow.f64 im 2))) (*.f64 -1/2 (pow.f64 im 2)))
(+.f64 (*.f64 -1/2 (*.f64 re (pow.f64 im 2))) (+.f64 (*.f64 -1/2 (pow.f64 im 2)) (*.f64 -1/4 (*.f64 (pow.f64 re 2) (pow.f64 im 2)))))
(+.f64 (*.f64 -1/12 (*.f64 (pow.f64 re 3) (pow.f64 im 2))) (+.f64 (*.f64 -1/2 (*.f64 re (pow.f64 im 2))) (+.f64 (*.f64 -1/2 (pow.f64 im 2)) (*.f64 -1/4 (*.f64 (pow.f64 re 2) (pow.f64 im 2))))))
(*.f64 -1/2 (*.f64 (exp.f64 re) (pow.f64 im 2)))
(*.f64 -1/2 (*.f64 (exp.f64 re) (pow.f64 im 2)))
(*.f64 -1/2 (*.f64 (exp.f64 re) (pow.f64 im 2)))
(*.f64 -1/2 (*.f64 (exp.f64 re) (pow.f64 im 2)))
(*.f64 -1/2 (*.f64 (exp.f64 re) (pow.f64 im 2)))
(*.f64 -1/2 (*.f64 (exp.f64 re) (pow.f64 im 2)))
(*.f64 -1/2 (*.f64 (exp.f64 re) (pow.f64 im 2)))
(*.f64 -1/2 (*.f64 (exp.f64 re) (pow.f64 im 2)))
(*.f64 -1/2 (*.f64 (exp.f64 re) (pow.f64 im 2)))
(*.f64 -1/2 (*.f64 (exp.f64 re) (pow.f64 im 2)))
(*.f64 -1/2 (*.f64 (exp.f64 re) (pow.f64 im 2)))
(*.f64 -1/2 (*.f64 (exp.f64 re) (pow.f64 im 2)))
(*.f64 -1/2 (*.f64 (exp.f64 re) (pow.f64 im 2)))
(*.f64 -1/2 (*.f64 (exp.f64 re) (pow.f64 im 2)))
(*.f64 -1/2 (*.f64 (exp.f64 re) (pow.f64 im 2)))
(*.f64 -1/2 (*.f64 (exp.f64 re) (pow.f64 im 2)))
(*.f64 -1/2 (*.f64 (exp.f64 re) (pow.f64 im 2)))
(*.f64 -1/2 (*.f64 (exp.f64 re) (pow.f64 im 2)))
(*.f64 -1/2 (*.f64 (exp.f64 re) (pow.f64 im 2)))
(*.f64 -1/2 (*.f64 (exp.f64 re) (pow.f64 im 2)))
(-.f64 (+.f64 1 (*.f64 (exp.f64 re) (*.f64 -1/2 (*.f64 im im)))) 1)
(pow.f64 (*.f64 (exp.f64 re) (*.f64 -1/2 (*.f64 im im))) 1)
(pow.f64 (cbrt.f64 (*.f64 (exp.f64 re) (*.f64 -1/2 (*.f64 im im)))) 3)
(pow.f64 (pow.f64 (*.f64 (exp.f64 re) (*.f64 -1/2 (*.f64 im im))) 3) 1/3)
(pow.f64 (*.f64 (sqrt.f64 (*.f64 (exp.f64 re) -1/2)) im) 2)
(sqrt.f64 (pow.f64 (*.f64 (exp.f64 re) (*.f64 -1/2 (*.f64 im im))) 2))
(log.f64 (pow.f64 (exp.f64 (exp.f64 re)) (*.f64 -1/2 (*.f64 im im))))
(cbrt.f64 (pow.f64 (*.f64 (exp.f64 re) (*.f64 -1/2 (*.f64 im im))) 3))
(cbrt.f64 (*.f64 (pow.f64 (exp.f64 re) 3) (pow.f64 (*.f64 -1/2 (*.f64 im im)) 3)))
(cbrt.f64 (*.f64 (pow.f64 (*.f64 -1/2 (*.f64 im im)) 3) (pow.f64 (exp.f64 re) 3)))
(expm1.f64 (log1p.f64 (*.f64 (exp.f64 re) (*.f64 -1/2 (*.f64 im im)))))
(exp.f64 (+.f64 re (log.f64 (*.f64 -1/2 (*.f64 im im)))))
(log1p.f64 (expm1.f64 (*.f64 (exp.f64 re) (*.f64 -1/2 (*.f64 im im)))))
Outputs
(*.f64 -1/2 (pow.f64 im 2))
(*.f64 -1/2 (*.f64 im im))
(+.f64 (*.f64 -1/2 (*.f64 re (pow.f64 im 2))) (*.f64 -1/2 (pow.f64 im 2)))
(*.f64 -1/2 (+.f64 (*.f64 (*.f64 im im) re) (*.f64 im im)))
(*.f64 (*.f64 im im) (+.f64 (*.f64 -1/2 re) -1/2))
(*.f64 (*.f64 im im) (fma.f64 -1/2 re -1/2))
(*.f64 im (*.f64 im (fma.f64 -1/2 re -1/2)))
(+.f64 (*.f64 -1/2 (*.f64 re (pow.f64 im 2))) (+.f64 (*.f64 -1/2 (pow.f64 im 2)) (*.f64 -1/4 (*.f64 (pow.f64 re 2) (pow.f64 im 2)))))
(fma.f64 -1/2 (*.f64 (*.f64 im im) re) (fma.f64 -1/2 (*.f64 im im) (*.f64 -1/4 (*.f64 (*.f64 im im) (*.f64 re re)))))
(fma.f64 -1/2 (*.f64 im (*.f64 im re)) (*.f64 (*.f64 im im) (+.f64 (*.f64 -1/4 (*.f64 re re)) -1/2)))
(*.f64 (*.f64 im im) (+.f64 (*.f64 -1/2 re) (fma.f64 -1/4 (*.f64 re re) -1/2)))
(*.f64 (*.f64 im im) (fma.f64 -1/2 re (fma.f64 re (*.f64 re -1/4) -1/2)))
(*.f64 im (*.f64 im (fma.f64 -1/4 (*.f64 re re) (fma.f64 -1/2 re -1/2))))
(+.f64 (*.f64 -1/12 (*.f64 (pow.f64 re 3) (pow.f64 im 2))) (+.f64 (*.f64 -1/2 (*.f64 re (pow.f64 im 2))) (+.f64 (*.f64 -1/2 (pow.f64 im 2)) (*.f64 -1/4 (*.f64 (pow.f64 re 2) (pow.f64 im 2))))))
(fma.f64 -1/12 (*.f64 (*.f64 im im) (pow.f64 re 3)) (fma.f64 -1/2 (*.f64 (*.f64 im im) re) (fma.f64 -1/2 (*.f64 im im) (*.f64 -1/4 (*.f64 (*.f64 im im) (*.f64 re re))))))
(+.f64 (*.f64 (*.f64 im im) (+.f64 (*.f64 -1/4 (*.f64 re re)) -1/2)) (*.f64 (*.f64 im im) (+.f64 (*.f64 -1/12 (pow.f64 re 3)) (*.f64 -1/2 re))))
(*.f64 (*.f64 im im) (+.f64 (fma.f64 -1/4 (*.f64 re re) -1/2) (fma.f64 -1/12 (pow.f64 re 3) (*.f64 -1/2 re))))
(*.f64 (*.f64 im im) (fma.f64 re (fma.f64 (*.f64 re re) -1/12 -1/2) (fma.f64 re (*.f64 re -1/4) -1/2)))
(*.f64 (*.f64 im im) (fma.f64 re (fma.f64 (*.f64 re re) -1/12 -1/2) (fma.f64 -1/4 (*.f64 re re) -1/2)))
(*.f64 -1/2 (*.f64 (exp.f64 re) (pow.f64 im 2)))
(*.f64 -1/2 (*.f64 (*.f64 im im) (exp.f64 re)))
(*.f64 (*.f64 im im) (*.f64 -1/2 (exp.f64 re)))
(*.f64 -1/2 (*.f64 im (*.f64 im (exp.f64 re))))
(*.f64 -1/2 (*.f64 (exp.f64 re) (pow.f64 im 2)))
(*.f64 -1/2 (*.f64 (*.f64 im im) (exp.f64 re)))
(*.f64 (*.f64 im im) (*.f64 -1/2 (exp.f64 re)))
(*.f64 -1/2 (*.f64 im (*.f64 im (exp.f64 re))))
(*.f64 -1/2 (*.f64 (exp.f64 re) (pow.f64 im 2)))
(*.f64 -1/2 (*.f64 (*.f64 im im) (exp.f64 re)))
(*.f64 (*.f64 im im) (*.f64 -1/2 (exp.f64 re)))
(*.f64 -1/2 (*.f64 im (*.f64 im (exp.f64 re))))
(*.f64 -1/2 (*.f64 (exp.f64 re) (pow.f64 im 2)))
(*.f64 -1/2 (*.f64 (*.f64 im im) (exp.f64 re)))
(*.f64 (*.f64 im im) (*.f64 -1/2 (exp.f64 re)))
(*.f64 -1/2 (*.f64 im (*.f64 im (exp.f64 re))))
(*.f64 -1/2 (*.f64 (exp.f64 re) (pow.f64 im 2)))
(*.f64 -1/2 (*.f64 (*.f64 im im) (exp.f64 re)))
(*.f64 (*.f64 im im) (*.f64 -1/2 (exp.f64 re)))
(*.f64 -1/2 (*.f64 im (*.f64 im (exp.f64 re))))
(*.f64 -1/2 (*.f64 (exp.f64 re) (pow.f64 im 2)))
(*.f64 -1/2 (*.f64 (*.f64 im im) (exp.f64 re)))
(*.f64 (*.f64 im im) (*.f64 -1/2 (exp.f64 re)))
(*.f64 -1/2 (*.f64 im (*.f64 im (exp.f64 re))))
(*.f64 -1/2 (*.f64 (exp.f64 re) (pow.f64 im 2)))
(*.f64 -1/2 (*.f64 (*.f64 im im) (exp.f64 re)))
(*.f64 (*.f64 im im) (*.f64 -1/2 (exp.f64 re)))
(*.f64 -1/2 (*.f64 im (*.f64 im (exp.f64 re))))
(*.f64 -1/2 (*.f64 (exp.f64 re) (pow.f64 im 2)))
(*.f64 -1/2 (*.f64 (*.f64 im im) (exp.f64 re)))
(*.f64 (*.f64 im im) (*.f64 -1/2 (exp.f64 re)))
(*.f64 -1/2 (*.f64 im (*.f64 im (exp.f64 re))))
(*.f64 -1/2 (*.f64 (exp.f64 re) (pow.f64 im 2)))
(*.f64 -1/2 (*.f64 (*.f64 im im) (exp.f64 re)))
(*.f64 (*.f64 im im) (*.f64 -1/2 (exp.f64 re)))
(*.f64 -1/2 (*.f64 im (*.f64 im (exp.f64 re))))
(*.f64 -1/2 (*.f64 (exp.f64 re) (pow.f64 im 2)))
(*.f64 -1/2 (*.f64 (*.f64 im im) (exp.f64 re)))
(*.f64 (*.f64 im im) (*.f64 -1/2 (exp.f64 re)))
(*.f64 -1/2 (*.f64 im (*.f64 im (exp.f64 re))))
(*.f64 -1/2 (*.f64 (exp.f64 re) (pow.f64 im 2)))
(*.f64 -1/2 (*.f64 (*.f64 im im) (exp.f64 re)))
(*.f64 (*.f64 im im) (*.f64 -1/2 (exp.f64 re)))
(*.f64 -1/2 (*.f64 im (*.f64 im (exp.f64 re))))
(*.f64 -1/2 (*.f64 (exp.f64 re) (pow.f64 im 2)))
(*.f64 -1/2 (*.f64 (*.f64 im im) (exp.f64 re)))
(*.f64 (*.f64 im im) (*.f64 -1/2 (exp.f64 re)))
(*.f64 -1/2 (*.f64 im (*.f64 im (exp.f64 re))))
(*.f64 -1/2 (*.f64 (exp.f64 re) (pow.f64 im 2)))
(*.f64 -1/2 (*.f64 (*.f64 im im) (exp.f64 re)))
(*.f64 (*.f64 im im) (*.f64 -1/2 (exp.f64 re)))
(*.f64 -1/2 (*.f64 im (*.f64 im (exp.f64 re))))
(*.f64 -1/2 (*.f64 (exp.f64 re) (pow.f64 im 2)))
(*.f64 -1/2 (*.f64 (*.f64 im im) (exp.f64 re)))
(*.f64 (*.f64 im im) (*.f64 -1/2 (exp.f64 re)))
(*.f64 -1/2 (*.f64 im (*.f64 im (exp.f64 re))))
(*.f64 -1/2 (*.f64 (exp.f64 re) (pow.f64 im 2)))
(*.f64 -1/2 (*.f64 (*.f64 im im) (exp.f64 re)))
(*.f64 (*.f64 im im) (*.f64 -1/2 (exp.f64 re)))
(*.f64 -1/2 (*.f64 im (*.f64 im (exp.f64 re))))
(*.f64 -1/2 (*.f64 (exp.f64 re) (pow.f64 im 2)))
(*.f64 -1/2 (*.f64 (*.f64 im im) (exp.f64 re)))
(*.f64 (*.f64 im im) (*.f64 -1/2 (exp.f64 re)))
(*.f64 -1/2 (*.f64 im (*.f64 im (exp.f64 re))))
(*.f64 -1/2 (*.f64 (exp.f64 re) (pow.f64 im 2)))
(*.f64 -1/2 (*.f64 (*.f64 im im) (exp.f64 re)))
(*.f64 (*.f64 im im) (*.f64 -1/2 (exp.f64 re)))
(*.f64 -1/2 (*.f64 im (*.f64 im (exp.f64 re))))
(*.f64 -1/2 (*.f64 (exp.f64 re) (pow.f64 im 2)))
(*.f64 -1/2 (*.f64 (*.f64 im im) (exp.f64 re)))
(*.f64 (*.f64 im im) (*.f64 -1/2 (exp.f64 re)))
(*.f64 -1/2 (*.f64 im (*.f64 im (exp.f64 re))))
(*.f64 -1/2 (*.f64 (exp.f64 re) (pow.f64 im 2)))
(*.f64 -1/2 (*.f64 (*.f64 im im) (exp.f64 re)))
(*.f64 (*.f64 im im) (*.f64 -1/2 (exp.f64 re)))
(*.f64 -1/2 (*.f64 im (*.f64 im (exp.f64 re))))
(*.f64 -1/2 (*.f64 (exp.f64 re) (pow.f64 im 2)))
(*.f64 -1/2 (*.f64 (*.f64 im im) (exp.f64 re)))
(*.f64 (*.f64 im im) (*.f64 -1/2 (exp.f64 re)))
(*.f64 -1/2 (*.f64 im (*.f64 im (exp.f64 re))))
(-.f64 (+.f64 1 (*.f64 (exp.f64 re) (*.f64 -1/2 (*.f64 im im)))) 1)
(*.f64 -1/2 (*.f64 (*.f64 im im) (exp.f64 re)))
(*.f64 (*.f64 im im) (*.f64 -1/2 (exp.f64 re)))
(*.f64 -1/2 (*.f64 im (*.f64 im (exp.f64 re))))
(pow.f64 (*.f64 (exp.f64 re) (*.f64 -1/2 (*.f64 im im))) 1)
(*.f64 -1/2 (*.f64 (*.f64 im im) (exp.f64 re)))
(*.f64 (*.f64 im im) (*.f64 -1/2 (exp.f64 re)))
(*.f64 -1/2 (*.f64 im (*.f64 im (exp.f64 re))))
(pow.f64 (cbrt.f64 (*.f64 (exp.f64 re) (*.f64 -1/2 (*.f64 im im)))) 3)
(*.f64 -1/2 (*.f64 (*.f64 im im) (exp.f64 re)))
(*.f64 (*.f64 im im) (*.f64 -1/2 (exp.f64 re)))
(*.f64 -1/2 (*.f64 im (*.f64 im (exp.f64 re))))
(pow.f64 (pow.f64 (*.f64 (exp.f64 re) (*.f64 -1/2 (*.f64 im im))) 3) 1/3)
(*.f64 -1/2 (*.f64 (*.f64 im im) (exp.f64 re)))
(*.f64 (*.f64 im im) (*.f64 -1/2 (exp.f64 re)))
(*.f64 -1/2 (*.f64 im (*.f64 im (exp.f64 re))))
(pow.f64 (*.f64 (sqrt.f64 (*.f64 (exp.f64 re) -1/2)) im) 2)
(*.f64 -1/2 (*.f64 (*.f64 im im) (exp.f64 re)))
(*.f64 (*.f64 im im) (*.f64 -1/2 (exp.f64 re)))
(*.f64 -1/2 (*.f64 im (*.f64 im (exp.f64 re))))
(sqrt.f64 (pow.f64 (*.f64 (exp.f64 re) (*.f64 -1/2 (*.f64 im im))) 2))
(*.f64 -1/2 (*.f64 (*.f64 im im) (exp.f64 re)))
(*.f64 (*.f64 im im) (*.f64 -1/2 (exp.f64 re)))
(*.f64 -1/2 (*.f64 im (*.f64 im (exp.f64 re))))
(log.f64 (pow.f64 (exp.f64 (exp.f64 re)) (*.f64 -1/2 (*.f64 im im))))
(*.f64 -1/2 (*.f64 (*.f64 im im) (exp.f64 re)))
(*.f64 (*.f64 im im) (*.f64 -1/2 (exp.f64 re)))
(*.f64 -1/2 (*.f64 im (*.f64 im (exp.f64 re))))
(cbrt.f64 (pow.f64 (*.f64 (exp.f64 re) (*.f64 -1/2 (*.f64 im im))) 3))
(*.f64 -1/2 (*.f64 (*.f64 im im) (exp.f64 re)))
(*.f64 (*.f64 im im) (*.f64 -1/2 (exp.f64 re)))
(*.f64 -1/2 (*.f64 im (*.f64 im (exp.f64 re))))
(cbrt.f64 (*.f64 (pow.f64 (exp.f64 re) 3) (pow.f64 (*.f64 -1/2 (*.f64 im im)) 3)))
(*.f64 -1/2 (*.f64 (*.f64 im im) (exp.f64 re)))
(*.f64 (*.f64 im im) (*.f64 -1/2 (exp.f64 re)))
(*.f64 -1/2 (*.f64 im (*.f64 im (exp.f64 re))))
(cbrt.f64 (*.f64 (pow.f64 (*.f64 -1/2 (*.f64 im im)) 3) (pow.f64 (exp.f64 re) 3)))
(*.f64 -1/2 (*.f64 (*.f64 im im) (exp.f64 re)))
(*.f64 (*.f64 im im) (*.f64 -1/2 (exp.f64 re)))
(*.f64 -1/2 (*.f64 im (*.f64 im (exp.f64 re))))
(expm1.f64 (log1p.f64 (*.f64 (exp.f64 re) (*.f64 -1/2 (*.f64 im im)))))
(*.f64 -1/2 (*.f64 (*.f64 im im) (exp.f64 re)))
(*.f64 (*.f64 im im) (*.f64 -1/2 (exp.f64 re)))
(*.f64 -1/2 (*.f64 im (*.f64 im (exp.f64 re))))
(exp.f64 (+.f64 re (log.f64 (*.f64 -1/2 (*.f64 im im)))))
(*.f64 -1/2 (*.f64 (*.f64 im im) (exp.f64 re)))
(*.f64 (*.f64 im im) (*.f64 -1/2 (exp.f64 re)))
(*.f64 -1/2 (*.f64 im (*.f64 im (exp.f64 re))))
(log1p.f64 (expm1.f64 (*.f64 (exp.f64 re) (*.f64 -1/2 (*.f64 im im)))))
(*.f64 -1/2 (*.f64 (*.f64 im im) (exp.f64 re)))
(*.f64 (*.f64 im im) (*.f64 -1/2 (exp.f64 re)))
(*.f64 -1/2 (*.f64 im (*.f64 im (exp.f64 re))))

eval25.0ms (0.6%)

Compiler

Compiled 973 to 591 computations (39.3% saved)

prune15.0ms (0.3%)

Pruning

7 alts after pruning (2 fresh and 5 done)

PrunedKeptTotal
New68270
Fresh000
Picked022
Done033
Total68775
Accurracy
100.0%
Counts
75 → 7
Alt Table
Click to see full alt table
StatusAccuracyProgram
12.9%
(*.f64 (*.f64 im im) (+.f64 (*.f64 -1/2 re) -1/2))
62.6%
(*.f64 (exp.f64 re) (+.f64 1 (*.f64 -1/2 (*.f64 im im))))
27.8%
(*.f64 (exp.f64 re) (*.f64 -1/2 (*.f64 im im)))
75.0%
(*.f64 (exp.f64 re) (exp.f64 (log.f64 (cos.f64 im))))
100.0%
(*.f64 (exp.f64 re) (cos.f64 im))
10.8%
(*.f64 -1/2 (*.f64 im im))
72.1%
(exp.f64 re)
12.9%
(*.f64 (*.f64 im im) (+.f64 (*.f64 -1/2 re) -1/2))
62.6%
(*.f64 (exp.f64 re) (+.f64 1 (*.f64 -1/2 (*.f64 im im))))
27.8%
(*.f64 (exp.f64 re) (*.f64 -1/2 (*.f64 im im)))
75.0%
(*.f64 (exp.f64 re) (exp.f64 (log.f64 (cos.f64 im))))
100.0%
(*.f64 (exp.f64 re) (cos.f64 im))
10.8%
(*.f64 -1/2 (*.f64 im im))
72.1%
(exp.f64 re)
Compiler

Compiled 120 to 88 computations (26.7% saved)

localize41.0ms (0.9%)

Local Accuracy

Found 2 expressions with local accuracy:

NewAccuracyProgram
95.4%
(*.f64 (*.f64 im im) (+.f64 (*.f64 -1/2 re) -1/2))
100.0%
(*.f64 -1/2 (*.f64 im im))
Compiler

Compiled 36 to 19 computations (47.2% saved)

series2.0ms (0%)

Counts
1 → 24
Calls

6 calls:

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

rewrite129.0ms (2.8%)

Algorithm
batch-egg-rewrite
Rules
966×log-prod
862×prod-exp
706×pow-prod-down
636×prod-diff
454×pow-prod-up
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0921
120021
2263821
Stop Event
node limit
Counts
1 → 69
Calls
Call 1
Inputs
(*.f64 (*.f64 im im) (+.f64 (*.f64 -1/2 re) -1/2))
Outputs
(+.f64 (*.f64 im (*.f64 im -1/2)) (*.f64 im (*.f64 im (*.f64 -1/2 re))))
(+.f64 (*.f64 im (*.f64 im (*.f64 -1/2 re))) (*.f64 im (*.f64 im -1/2)))
(+.f64 0 (*.f64 im (*.f64 im (fma.f64 -1/2 re -1/2))))
(+.f64 (*.f64 (*.f64 im (*.f64 im (*.f64 -1/2 re))) 1) (*.f64 (*.f64 im (*.f64 im -1/2)) 1))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 im) (*.f64 im (fma.f64 -1/2 re -1/2)))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 im) (*.f64 im (fma.f64 -1/2 re -1/2))))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 im) (*.f64 im (fma.f64 -1/2 re -1/2))))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 im) (*.f64 im (fma.f64 -1/2 re -1/2))))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 im (*.f64 im (fma.f64 -1/2 re -1/2))))) 1)
(/.f64 (+.f64 (*.f64 (*.f64 -1/8 (pow.f64 re 3)) (pow.f64 im 6)) (pow.f64 (*.f64 im (*.f64 im -1/2)) 3)) (+.f64 (pow.f64 (*.f64 im (*.f64 im (*.f64 -1/2 re))) 2) (-.f64 (pow.f64 (*.f64 im (*.f64 im -1/2)) 2) (*.f64 (*.f64 im (*.f64 im (*.f64 -1/2 re))) (*.f64 im (*.f64 im -1/2))))))
(/.f64 (-.f64 (pow.f64 (*.f64 im (*.f64 im (*.f64 -1/2 re))) 2) (pow.f64 (*.f64 im (*.f64 im -1/2)) 2)) (-.f64 (*.f64 im (*.f64 im (*.f64 -1/2 re))) (*.f64 im (*.f64 im -1/2))))
(/.f64 (*.f64 (*.f64 im im) (fma.f64 -1/8 (pow.f64 re 3) -1/8)) (-.f64 (fma.f64 re (*.f64 re 1/4) 1/4) (*.f64 re 1/4)))
(/.f64 (*.f64 (*.f64 im im) (fma.f64 re (*.f64 re 1/4) -1/4)) (fma.f64 -1/2 re 1/2))
(/.f64 (*.f64 (fma.f64 -1/8 (pow.f64 re 3) -1/8) (*.f64 im im)) (-.f64 (fma.f64 re (*.f64 re 1/4) 1/4) (*.f64 re 1/4)))
(/.f64 (*.f64 (fma.f64 re (*.f64 re 1/4) -1/4) (*.f64 im im)) (fma.f64 -1/2 re 1/2))
(pow.f64 (*.f64 im (*.f64 im (fma.f64 -1/2 re -1/2))) 1)
(pow.f64 (cbrt.f64 (*.f64 im (*.f64 im (fma.f64 -1/2 re -1/2)))) 3)
(pow.f64 (pow.f64 (*.f64 im (sqrt.f64 (fma.f64 -1/2 re -1/2))) 4) 1/2)
(pow.f64 (pow.f64 (*.f64 im (sqrt.f64 (fma.f64 -1/2 re -1/2))) 6) 1/3)
(pow.f64 (*.f64 im (sqrt.f64 (fma.f64 -1/2 re -1/2))) 2)
(sqrt.f64 (pow.f64 (*.f64 im (sqrt.f64 (fma.f64 -1/2 re -1/2))) 4))
(log.f64 (pow.f64 (exp.f64 im) (*.f64 im (fma.f64 -1/2 re -1/2))))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 im (*.f64 im (fma.f64 -1/2 re -1/2))))))
(cbrt.f64 (pow.f64 (*.f64 im (sqrt.f64 (fma.f64 -1/2 re -1/2))) 6))
(expm1.f64 (log1p.f64 (*.f64 im (*.f64 im (fma.f64 -1/2 re -1/2)))))
(exp.f64 (log.f64 (*.f64 im (*.f64 im (fma.f64 -1/2 re -1/2)))))
(exp.f64 (*.f64 (log.f64 (*.f64 im (*.f64 im (fma.f64 -1/2 re -1/2)))) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 im (*.f64 im (fma.f64 -1/2 re -1/2)))) 1) 1))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 im (*.f64 im (fma.f64 -1/2 re -1/2))))) 3))
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 im (sqrt.f64 (fma.f64 -1/2 re -1/2))) 6)) 1/3))
(exp.f64 (*.f64 (log.f64 (*.f64 im (sqrt.f64 (fma.f64 -1/2 re -1/2)))) 2))
(exp.f64 (+.f64 (*.f64 (log.f64 im) 1) (log.f64 (*.f64 im (fma.f64 -1/2 re -1/2)))))
(exp.f64 (+.f64 (*.f64 2 (log.f64 im)) (*.f64 (log.f64 (fma.f64 -1/2 re -1/2)) 1)))
(exp.f64 (+.f64 (*.f64 (log.f64 im) 2) (log.f64 (fma.f64 -1/2 re -1/2))))
(exp.f64 (+.f64 (*.f64 (log.f64 im) 2) (*.f64 (log.f64 (fma.f64 -1/2 re -1/2)) 1)))
(exp.f64 (+.f64 (*.f64 (*.f64 2 (log.f64 im)) 1) (log.f64 (fma.f64 -1/2 re -1/2))))
(exp.f64 (+.f64 (*.f64 (*.f64 2 (log.f64 im)) 1) (*.f64 (log.f64 (fma.f64 -1/2 re -1/2)) 1)))
(exp.f64 (+.f64 (log.f64 (fma.f64 -1/2 re -1/2)) (*.f64 (log.f64 im) 2)))
(exp.f64 (+.f64 (log.f64 (fma.f64 -1/2 re -1/2)) (*.f64 (*.f64 2 (log.f64 im)) 1)))
(exp.f64 (+.f64 (*.f64 (log.f64 (fma.f64 -1/2 re -1/2)) 1) (*.f64 2 (log.f64 im))))
(exp.f64 (+.f64 (*.f64 (log.f64 (fma.f64 -1/2 re -1/2)) 1) (*.f64 (log.f64 im) 2)))
(exp.f64 (+.f64 (*.f64 (log.f64 (fma.f64 -1/2 re -1/2)) 1) (*.f64 (*.f64 2 (log.f64 im)) 1)))
(exp.f64 (+.f64 (log.f64 (*.f64 im (fma.f64 -1/2 re -1/2))) (*.f64 (log.f64 im) 1)))
(log1p.f64 (expm1.f64 (*.f64 im (*.f64 im (fma.f64 -1/2 re -1/2)))))
(fma.f64 im (*.f64 im -1/2) (*.f64 im (*.f64 im (*.f64 -1/2 re))))
(fma.f64 im (*.f64 im (*.f64 -1/2 re)) (*.f64 im (*.f64 im -1/2)))
(fma.f64 (*.f64 im im) -1/2 (*.f64 im (*.f64 im (*.f64 -1/2 re))))
(fma.f64 (*.f64 im im) (*.f64 -1/2 re) (*.f64 im (*.f64 im -1/2)))
(fma.f64 -1/2 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 -1/2 re))))
(fma.f64 -1/2 (*.f64 re (*.f64 im im)) (*.f64 im (*.f64 im -1/2)))
(fma.f64 re (*.f64 im (*.f64 im -1/2)) (*.f64 im (*.f64 im -1/2)))
(fma.f64 (*.f64 -1/2 re) (*.f64 im im) (*.f64 im (*.f64 im -1/2)))
(fma.f64 1 (*.f64 im (*.f64 im -1/2)) (*.f64 im (*.f64 im (*.f64 -1/2 re))))
(fma.f64 1 (*.f64 im (*.f64 im (*.f64 -1/2 re))) (*.f64 im (*.f64 im -1/2)))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 -1/2 re)) 2) (*.f64 (cbrt.f64 (*.f64 -1/2 re)) (*.f64 im im)) (*.f64 im (*.f64 im -1/2)))
(fma.f64 (cbrt.f64 (pow.f64 im 4)) (*.f64 (cbrt.f64 (*.f64 im im)) (*.f64 -1/2 re)) (*.f64 im (*.f64 im -1/2)))
(fma.f64 (cbrt.f64 (pow.f64 im 4)) (*.f64 (cbrt.f64 (*.f64 im im)) -1/2) (*.f64 im (*.f64 im (*.f64 -1/2 re))))
(fma.f64 (sqrt.f64 (*.f64 -1/2 re)) (*.f64 (sqrt.f64 (*.f64 -1/2 re)) (*.f64 im im)) (*.f64 im (*.f64 im -1/2)))
(fma.f64 (*.f64 im (*.f64 im -1/2)) re (*.f64 im (*.f64 im -1/2)))
(fma.f64 (*.f64 im (*.f64 im (*.f64 -1/2 re))) 1 (*.f64 (*.f64 im (*.f64 im -1/2)) 1))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 im (*.f64 im -1/2))) 2) (cbrt.f64 (*.f64 im (*.f64 im -1/2))) (*.f64 im (*.f64 im (*.f64 -1/2 re))))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 im (*.f64 im (*.f64 -1/2 re)))) 2) (cbrt.f64 (*.f64 im (*.f64 im (*.f64 -1/2 re)))) (*.f64 im (*.f64 im -1/2)))
(fma.f64 (sqrt.f64 (*.f64 im (*.f64 im -1/2))) (sqrt.f64 (*.f64 im (*.f64 im -1/2))) (*.f64 im (*.f64 im (*.f64 -1/2 re))))
(fma.f64 (*.f64 im (sqrt.f64 (*.f64 -1/2 re))) (*.f64 im (sqrt.f64 (*.f64 -1/2 re))) (*.f64 im (*.f64 im -1/2)))
(fma.f64 (*.f64 -1/2 im) im (*.f64 im (*.f64 im (*.f64 -1/2 re))))
(fma.f64 (*.f64 (*.f64 -1/2 re) im) im (*.f64 im (*.f64 im -1/2)))
(fma.f64 (*.f64 (*.f64 -1/2 re) (cbrt.f64 (pow.f64 im 4))) (cbrt.f64 (*.f64 im im)) (*.f64 im (*.f64 im -1/2)))
(fma.f64 (*.f64 (*.f64 im im) re) -1/2 (*.f64 im (*.f64 im -1/2)))
(fma.f64 (pow.f64 (*.f64 im (cbrt.f64 (*.f64 -1/2 re))) 2) (cbrt.f64 (*.f64 -1/2 re)) (*.f64 im (*.f64 im -1/2)))
(fma.f64 (*.f64 (*.f64 im im) (sqrt.f64 (*.f64 -1/2 re))) (sqrt.f64 (*.f64 -1/2 re)) (*.f64 im (*.f64 im -1/2)))
(fma.f64 (*.f64 -1/2 (cbrt.f64 (pow.f64 im 4))) (cbrt.f64 (*.f64 im im)) (*.f64 im (*.f64 im (*.f64 -1/2 re))))

simplify79.0ms (1.7%)

Algorithm
egg-herbie
Rules
950×cancel-sign-sub-inv
934×fma-def
764×times-frac
688×fma-neg
676×distribute-rgt-neg-in
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01992361
14972317
212102267
341412257
Stop Event
node limit
Counts
93 → 98
Calls
Call 1
Inputs
(*.f64 (-.f64 (*.f64 -1/2 re) 1/2) (pow.f64 im 2))
(*.f64 (-.f64 (*.f64 -1/2 re) 1/2) (pow.f64 im 2))
(*.f64 (-.f64 (*.f64 -1/2 re) 1/2) (pow.f64 im 2))
(*.f64 (-.f64 (*.f64 -1/2 re) 1/2) (pow.f64 im 2))
(*.f64 (-.f64 (*.f64 -1/2 re) 1/2) (pow.f64 im 2))
(*.f64 (-.f64 (*.f64 -1/2 re) 1/2) (pow.f64 im 2))
(*.f64 (-.f64 (*.f64 -1/2 re) 1/2) (pow.f64 im 2))
(*.f64 (-.f64 (*.f64 -1/2 re) 1/2) (pow.f64 im 2))
(*.f64 (-.f64 (*.f64 -1/2 re) 1/2) (pow.f64 im 2))
(*.f64 (-.f64 (*.f64 -1/2 re) 1/2) (pow.f64 im 2))
(*.f64 (-.f64 (*.f64 -1/2 re) 1/2) (pow.f64 im 2))
(*.f64 (-.f64 (*.f64 -1/2 re) 1/2) (pow.f64 im 2))
(*.f64 -1/2 (pow.f64 im 2))
(+.f64 (*.f64 -1/2 (*.f64 re (pow.f64 im 2))) (*.f64 -1/2 (pow.f64 im 2)))
(+.f64 (*.f64 -1/2 (*.f64 re (pow.f64 im 2))) (*.f64 -1/2 (pow.f64 im 2)))
(+.f64 (*.f64 -1/2 (*.f64 re (pow.f64 im 2))) (*.f64 -1/2 (pow.f64 im 2)))
(*.f64 -1/2 (*.f64 re (pow.f64 im 2)))
(+.f64 (*.f64 -1/2 (*.f64 re (pow.f64 im 2))) (*.f64 -1/2 (pow.f64 im 2)))
(+.f64 (*.f64 -1/2 (*.f64 re (pow.f64 im 2))) (*.f64 -1/2 (pow.f64 im 2)))
(+.f64 (*.f64 -1/2 (*.f64 re (pow.f64 im 2))) (*.f64 -1/2 (pow.f64 im 2)))
(*.f64 -1/2 (*.f64 re (pow.f64 im 2)))
(+.f64 (*.f64 -1/2 (*.f64 re (pow.f64 im 2))) (*.f64 -1/2 (pow.f64 im 2)))
(+.f64 (*.f64 -1/2 (*.f64 re (pow.f64 im 2))) (*.f64 -1/2 (pow.f64 im 2)))
(+.f64 (*.f64 -1/2 (*.f64 re (pow.f64 im 2))) (*.f64 -1/2 (pow.f64 im 2)))
(+.f64 (*.f64 im (*.f64 im -1/2)) (*.f64 im (*.f64 im (*.f64 -1/2 re))))
(+.f64 (*.f64 im (*.f64 im (*.f64 -1/2 re))) (*.f64 im (*.f64 im -1/2)))
(+.f64 0 (*.f64 im (*.f64 im (fma.f64 -1/2 re -1/2))))
(+.f64 (*.f64 (*.f64 im (*.f64 im (*.f64 -1/2 re))) 1) (*.f64 (*.f64 im (*.f64 im -1/2)) 1))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 im) (*.f64 im (fma.f64 -1/2 re -1/2)))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 im) (*.f64 im (fma.f64 -1/2 re -1/2))))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 im) (*.f64 im (fma.f64 -1/2 re -1/2))))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 im) (*.f64 im (fma.f64 -1/2 re -1/2))))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 im (*.f64 im (fma.f64 -1/2 re -1/2))))) 1)
(/.f64 (+.f64 (*.f64 (*.f64 -1/8 (pow.f64 re 3)) (pow.f64 im 6)) (pow.f64 (*.f64 im (*.f64 im -1/2)) 3)) (+.f64 (pow.f64 (*.f64 im (*.f64 im (*.f64 -1/2 re))) 2) (-.f64 (pow.f64 (*.f64 im (*.f64 im -1/2)) 2) (*.f64 (*.f64 im (*.f64 im (*.f64 -1/2 re))) (*.f64 im (*.f64 im -1/2))))))
(/.f64 (-.f64 (pow.f64 (*.f64 im (*.f64 im (*.f64 -1/2 re))) 2) (pow.f64 (*.f64 im (*.f64 im -1/2)) 2)) (-.f64 (*.f64 im (*.f64 im (*.f64 -1/2 re))) (*.f64 im (*.f64 im -1/2))))
(/.f64 (*.f64 (*.f64 im im) (fma.f64 -1/8 (pow.f64 re 3) -1/8)) (-.f64 (fma.f64 re (*.f64 re 1/4) 1/4) (*.f64 re 1/4)))
(/.f64 (*.f64 (*.f64 im im) (fma.f64 re (*.f64 re 1/4) -1/4)) (fma.f64 -1/2 re 1/2))
(/.f64 (*.f64 (fma.f64 -1/8 (pow.f64 re 3) -1/8) (*.f64 im im)) (-.f64 (fma.f64 re (*.f64 re 1/4) 1/4) (*.f64 re 1/4)))
(/.f64 (*.f64 (fma.f64 re (*.f64 re 1/4) -1/4) (*.f64 im im)) (fma.f64 -1/2 re 1/2))
(pow.f64 (*.f64 im (*.f64 im (fma.f64 -1/2 re -1/2))) 1)
(pow.f64 (cbrt.f64 (*.f64 im (*.f64 im (fma.f64 -1/2 re -1/2)))) 3)
(pow.f64 (pow.f64 (*.f64 im (sqrt.f64 (fma.f64 -1/2 re -1/2))) 4) 1/2)
(pow.f64 (pow.f64 (*.f64 im (sqrt.f64 (fma.f64 -1/2 re -1/2))) 6) 1/3)
(pow.f64 (*.f64 im (sqrt.f64 (fma.f64 -1/2 re -1/2))) 2)
(sqrt.f64 (pow.f64 (*.f64 im (sqrt.f64 (fma.f64 -1/2 re -1/2))) 4))
(log.f64 (pow.f64 (exp.f64 im) (*.f64 im (fma.f64 -1/2 re -1/2))))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 im (*.f64 im (fma.f64 -1/2 re -1/2))))))
(cbrt.f64 (pow.f64 (*.f64 im (sqrt.f64 (fma.f64 -1/2 re -1/2))) 6))
(expm1.f64 (log1p.f64 (*.f64 im (*.f64 im (fma.f64 -1/2 re -1/2)))))
(exp.f64 (log.f64 (*.f64 im (*.f64 im (fma.f64 -1/2 re -1/2)))))
(exp.f64 (*.f64 (log.f64 (*.f64 im (*.f64 im (fma.f64 -1/2 re -1/2)))) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 im (*.f64 im (fma.f64 -1/2 re -1/2)))) 1) 1))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 im (*.f64 im (fma.f64 -1/2 re -1/2))))) 3))
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 im (sqrt.f64 (fma.f64 -1/2 re -1/2))) 6)) 1/3))
(exp.f64 (*.f64 (log.f64 (*.f64 im (sqrt.f64 (fma.f64 -1/2 re -1/2)))) 2))
(exp.f64 (+.f64 (*.f64 (log.f64 im) 1) (log.f64 (*.f64 im (fma.f64 -1/2 re -1/2)))))
(exp.f64 (+.f64 (*.f64 2 (log.f64 im)) (*.f64 (log.f64 (fma.f64 -1/2 re -1/2)) 1)))
(exp.f64 (+.f64 (*.f64 (log.f64 im) 2) (log.f64 (fma.f64 -1/2 re -1/2))))
(exp.f64 (+.f64 (*.f64 (log.f64 im) 2) (*.f64 (log.f64 (fma.f64 -1/2 re -1/2)) 1)))
(exp.f64 (+.f64 (*.f64 (*.f64 2 (log.f64 im)) 1) (log.f64 (fma.f64 -1/2 re -1/2))))
(exp.f64 (+.f64 (*.f64 (*.f64 2 (log.f64 im)) 1) (*.f64 (log.f64 (fma.f64 -1/2 re -1/2)) 1)))
(exp.f64 (+.f64 (log.f64 (fma.f64 -1/2 re -1/2)) (*.f64 (log.f64 im) 2)))
(exp.f64 (+.f64 (log.f64 (fma.f64 -1/2 re -1/2)) (*.f64 (*.f64 2 (log.f64 im)) 1)))
(exp.f64 (+.f64 (*.f64 (log.f64 (fma.f64 -1/2 re -1/2)) 1) (*.f64 2 (log.f64 im))))
(exp.f64 (+.f64 (*.f64 (log.f64 (fma.f64 -1/2 re -1/2)) 1) (*.f64 (log.f64 im) 2)))
(exp.f64 (+.f64 (*.f64 (log.f64 (fma.f64 -1/2 re -1/2)) 1) (*.f64 (*.f64 2 (log.f64 im)) 1)))
(exp.f64 (+.f64 (log.f64 (*.f64 im (fma.f64 -1/2 re -1/2))) (*.f64 (log.f64 im) 1)))
(log1p.f64 (expm1.f64 (*.f64 im (*.f64 im (fma.f64 -1/2 re -1/2)))))
(fma.f64 im (*.f64 im -1/2) (*.f64 im (*.f64 im (*.f64 -1/2 re))))
(fma.f64 im (*.f64 im (*.f64 -1/2 re)) (*.f64 im (*.f64 im -1/2)))
(fma.f64 (*.f64 im im) -1/2 (*.f64 im (*.f64 im (*.f64 -1/2 re))))
(fma.f64 (*.f64 im im) (*.f64 -1/2 re) (*.f64 im (*.f64 im -1/2)))
(fma.f64 -1/2 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 -1/2 re))))
(fma.f64 -1/2 (*.f64 re (*.f64 im im)) (*.f64 im (*.f64 im -1/2)))
(fma.f64 re (*.f64 im (*.f64 im -1/2)) (*.f64 im (*.f64 im -1/2)))
(fma.f64 (*.f64 -1/2 re) (*.f64 im im) (*.f64 im (*.f64 im -1/2)))
(fma.f64 1 (*.f64 im (*.f64 im -1/2)) (*.f64 im (*.f64 im (*.f64 -1/2 re))))
(fma.f64 1 (*.f64 im (*.f64 im (*.f64 -1/2 re))) (*.f64 im (*.f64 im -1/2)))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 -1/2 re)) 2) (*.f64 (cbrt.f64 (*.f64 -1/2 re)) (*.f64 im im)) (*.f64 im (*.f64 im -1/2)))
(fma.f64 (cbrt.f64 (pow.f64 im 4)) (*.f64 (cbrt.f64 (*.f64 im im)) (*.f64 -1/2 re)) (*.f64 im (*.f64 im -1/2)))
(fma.f64 (cbrt.f64 (pow.f64 im 4)) (*.f64 (cbrt.f64 (*.f64 im im)) -1/2) (*.f64 im (*.f64 im (*.f64 -1/2 re))))
(fma.f64 (sqrt.f64 (*.f64 -1/2 re)) (*.f64 (sqrt.f64 (*.f64 -1/2 re)) (*.f64 im im)) (*.f64 im (*.f64 im -1/2)))
(fma.f64 (*.f64 im (*.f64 im -1/2)) re (*.f64 im (*.f64 im -1/2)))
(fma.f64 (*.f64 im (*.f64 im (*.f64 -1/2 re))) 1 (*.f64 (*.f64 im (*.f64 im -1/2)) 1))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 im (*.f64 im -1/2))) 2) (cbrt.f64 (*.f64 im (*.f64 im -1/2))) (*.f64 im (*.f64 im (*.f64 -1/2 re))))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 im (*.f64 im (*.f64 -1/2 re)))) 2) (cbrt.f64 (*.f64 im (*.f64 im (*.f64 -1/2 re)))) (*.f64 im (*.f64 im -1/2)))
(fma.f64 (sqrt.f64 (*.f64 im (*.f64 im -1/2))) (sqrt.f64 (*.f64 im (*.f64 im -1/2))) (*.f64 im (*.f64 im (*.f64 -1/2 re))))
(fma.f64 (*.f64 im (sqrt.f64 (*.f64 -1/2 re))) (*.f64 im (sqrt.f64 (*.f64 -1/2 re))) (*.f64 im (*.f64 im -1/2)))
(fma.f64 (*.f64 -1/2 im) im (*.f64 im (*.f64 im (*.f64 -1/2 re))))
(fma.f64 (*.f64 (*.f64 -1/2 re) im) im (*.f64 im (*.f64 im -1/2)))
(fma.f64 (*.f64 (*.f64 -1/2 re) (cbrt.f64 (pow.f64 im 4))) (cbrt.f64 (*.f64 im im)) (*.f64 im (*.f64 im -1/2)))
(fma.f64 (*.f64 (*.f64 im im) re) -1/2 (*.f64 im (*.f64 im -1/2)))
(fma.f64 (pow.f64 (*.f64 im (cbrt.f64 (*.f64 -1/2 re))) 2) (cbrt.f64 (*.f64 -1/2 re)) (*.f64 im (*.f64 im -1/2)))
(fma.f64 (*.f64 (*.f64 im im) (sqrt.f64 (*.f64 -1/2 re))) (sqrt.f64 (*.f64 -1/2 re)) (*.f64 im (*.f64 im -1/2)))
(fma.f64 (*.f64 -1/2 (cbrt.f64 (pow.f64 im 4))) (cbrt.f64 (*.f64 im im)) (*.f64 im (*.f64 im (*.f64 -1/2 re))))
Outputs
(*.f64 (-.f64 (*.f64 -1/2 re) 1/2) (pow.f64 im 2))
(*.f64 im (*.f64 im (fma.f64 -1/2 re -1/2)))
(*.f64 (*.f64 im im) (fma.f64 -1/2 re -1/2))
(*.f64 im (*.f64 -1/2 (fma.f64 re im im)))
(*.f64 (-.f64 (*.f64 -1/2 re) 1/2) (pow.f64 im 2))
(*.f64 im (*.f64 im (fma.f64 -1/2 re -1/2)))
(*.f64 (*.f64 im im) (fma.f64 -1/2 re -1/2))
(*.f64 im (*.f64 -1/2 (fma.f64 re im im)))
(*.f64 (-.f64 (*.f64 -1/2 re) 1/2) (pow.f64 im 2))
(*.f64 im (*.f64 im (fma.f64 -1/2 re -1/2)))
(*.f64 (*.f64 im im) (fma.f64 -1/2 re -1/2))
(*.f64 im (*.f64 -1/2 (fma.f64 re im im)))
(*.f64 (-.f64 (*.f64 -1/2 re) 1/2) (pow.f64 im 2))
(*.f64 im (*.f64 im (fma.f64 -1/2 re -1/2)))
(*.f64 (*.f64 im im) (fma.f64 -1/2 re -1/2))
(*.f64 im (*.f64 -1/2 (fma.f64 re im im)))
(*.f64 (-.f64 (*.f64 -1/2 re) 1/2) (pow.f64 im 2))
(*.f64 im (*.f64 im (fma.f64 -1/2 re -1/2)))
(*.f64 (*.f64 im im) (fma.f64 -1/2 re -1/2))
(*.f64 im (*.f64 -1/2 (fma.f64 re im im)))
(*.f64 (-.f64 (*.f64 -1/2 re) 1/2) (pow.f64 im 2))
(*.f64 im (*.f64 im (fma.f64 -1/2 re -1/2)))
(*.f64 (*.f64 im im) (fma.f64 -1/2 re -1/2))
(*.f64 im (*.f64 -1/2 (fma.f64 re im im)))
(*.f64 (-.f64 (*.f64 -1/2 re) 1/2) (pow.f64 im 2))
(*.f64 im (*.f64 im (fma.f64 -1/2 re -1/2)))
(*.f64 (*.f64 im im) (fma.f64 -1/2 re -1/2))
(*.f64 im (*.f64 -1/2 (fma.f64 re im im)))
(*.f64 (-.f64 (*.f64 -1/2 re) 1/2) (pow.f64 im 2))
(*.f64 im (*.f64 im (fma.f64 -1/2 re -1/2)))
(*.f64 (*.f64 im im) (fma.f64 -1/2 re -1/2))
(*.f64 im (*.f64 -1/2 (fma.f64 re im im)))
(*.f64 (-.f64 (*.f64 -1/2 re) 1/2) (pow.f64 im 2))
(*.f64 im (*.f64 im (fma.f64 -1/2 re -1/2)))
(*.f64 (*.f64 im im) (fma.f64 -1/2 re -1/2))
(*.f64 im (*.f64 -1/2 (fma.f64 re im im)))
(*.f64 (-.f64 (*.f64 -1/2 re) 1/2) (pow.f64 im 2))
(*.f64 im (*.f64 im (fma.f64 -1/2 re -1/2)))
(*.f64 (*.f64 im im) (fma.f64 -1/2 re -1/2))
(*.f64 im (*.f64 -1/2 (fma.f64 re im im)))
(*.f64 (-.f64 (*.f64 -1/2 re) 1/2) (pow.f64 im 2))
(*.f64 im (*.f64 im (fma.f64 -1/2 re -1/2)))
(*.f64 (*.f64 im im) (fma.f64 -1/2 re -1/2))
(*.f64 im (*.f64 -1/2 (fma.f64 re im im)))
(*.f64 (-.f64 (*.f64 -1/2 re) 1/2) (pow.f64 im 2))
(*.f64 im (*.f64 im (fma.f64 -1/2 re -1/2)))
(*.f64 (*.f64 im im) (fma.f64 -1/2 re -1/2))
(*.f64 im (*.f64 -1/2 (fma.f64 re im im)))
(*.f64 -1/2 (pow.f64 im 2))
(*.f64 -1/2 (*.f64 im im))
(+.f64 (*.f64 -1/2 (*.f64 re (pow.f64 im 2))) (*.f64 -1/2 (pow.f64 im 2)))
(*.f64 im (*.f64 im (fma.f64 -1/2 re -1/2)))
(*.f64 (*.f64 im im) (fma.f64 -1/2 re -1/2))
(*.f64 im (*.f64 -1/2 (fma.f64 re im im)))
(+.f64 (*.f64 -1/2 (*.f64 re (pow.f64 im 2))) (*.f64 -1/2 (pow.f64 im 2)))
(*.f64 im (*.f64 im (fma.f64 -1/2 re -1/2)))
(*.f64 (*.f64 im im) (fma.f64 -1/2 re -1/2))
(*.f64 im (*.f64 -1/2 (fma.f64 re im im)))
(+.f64 (*.f64 -1/2 (*.f64 re (pow.f64 im 2))) (*.f64 -1/2 (pow.f64 im 2)))
(*.f64 im (*.f64 im (fma.f64 -1/2 re -1/2)))
(*.f64 (*.f64 im im) (fma.f64 -1/2 re -1/2))
(*.f64 im (*.f64 -1/2 (fma.f64 re im im)))
(*.f64 -1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 -1/2 (*.f64 re (*.f64 im im)))
(+.f64 (*.f64 -1/2 (*.f64 re (pow.f64 im 2))) (*.f64 -1/2 (pow.f64 im 2)))
(*.f64 im (*.f64 im (fma.f64 -1/2 re -1/2)))
(*.f64 (*.f64 im im) (fma.f64 -1/2 re -1/2))
(*.f64 im (*.f64 -1/2 (fma.f64 re im im)))
(+.f64 (*.f64 -1/2 (*.f64 re (pow.f64 im 2))) (*.f64 -1/2 (pow.f64 im 2)))
(*.f64 im (*.f64 im (fma.f64 -1/2 re -1/2)))
(*.f64 (*.f64 im im) (fma.f64 -1/2 re -1/2))
(*.f64 im (*.f64 -1/2 (fma.f64 re im im)))
(+.f64 (*.f64 -1/2 (*.f64 re (pow.f64 im 2))) (*.f64 -1/2 (pow.f64 im 2)))
(*.f64 im (*.f64 im (fma.f64 -1/2 re -1/2)))
(*.f64 (*.f64 im im) (fma.f64 -1/2 re -1/2))
(*.f64 im (*.f64 -1/2 (fma.f64 re im im)))
(*.f64 -1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 -1/2 (*.f64 re (*.f64 im im)))
(+.f64 (*.f64 -1/2 (*.f64 re (pow.f64 im 2))) (*.f64 -1/2 (pow.f64 im 2)))
(*.f64 im (*.f64 im (fma.f64 -1/2 re -1/2)))
(*.f64 (*.f64 im im) (fma.f64 -1/2 re -1/2))
(*.f64 im (*.f64 -1/2 (fma.f64 re im im)))
(+.f64 (*.f64 -1/2 (*.f64 re (pow.f64 im 2))) (*.f64 -1/2 (pow.f64 im 2)))
(*.f64 im (*.f64 im (fma.f64 -1/2 re -1/2)))
(*.f64 (*.f64 im im) (fma.f64 -1/2 re -1/2))
(*.f64 im (*.f64 -1/2 (fma.f64 re im im)))
(+.f64 (*.f64 -1/2 (*.f64 re (pow.f64 im 2))) (*.f64 -1/2 (pow.f64 im 2)))
(*.f64 im (*.f64 im (fma.f64 -1/2 re -1/2)))
(*.f64 (*.f64 im im) (fma.f64 -1/2 re -1/2))
(*.f64 im (*.f64 -1/2 (fma.f64 re im im)))
(+.f64 (*.f64 im (*.f64 im -1/2)) (*.f64 im (*.f64 im (*.f64 -1/2 re))))
(*.f64 im (*.f64 im (fma.f64 -1/2 re -1/2)))
(*.f64 (*.f64 im im) (fma.f64 -1/2 re -1/2))
(*.f64 im (*.f64 -1/2 (fma.f64 re im im)))
(+.f64 (*.f64 im (*.f64 im (*.f64 -1/2 re))) (*.f64 im (*.f64 im -1/2)))
(*.f64 im (*.f64 im (fma.f64 -1/2 re -1/2)))
(*.f64 (*.f64 im im) (fma.f64 -1/2 re -1/2))
(*.f64 im (*.f64 -1/2 (fma.f64 re im im)))
(+.f64 0 (*.f64 im (*.f64 im (fma.f64 -1/2 re -1/2))))
(*.f64 im (*.f64 im (fma.f64 -1/2 re -1/2)))
(*.f64 (*.f64 im im) (fma.f64 -1/2 re -1/2))
(*.f64 im (*.f64 -1/2 (fma.f64 re im im)))
(+.f64 (*.f64 (*.f64 im (*.f64 im (*.f64 -1/2 re))) 1) (*.f64 (*.f64 im (*.f64 im -1/2)) 1))
(*.f64 im (*.f64 im (fma.f64 -1/2 re -1/2)))
(*.f64 (*.f64 im im) (fma.f64 -1/2 re -1/2))
(*.f64 im (*.f64 -1/2 (fma.f64 re im im)))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 im) (*.f64 im (fma.f64 -1/2 re -1/2)))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 im) (*.f64 im (fma.f64 -1/2 re -1/2))))))
(*.f64 3 (log.f64 (cbrt.f64 (pow.f64 (exp.f64 im) (*.f64 im (fma.f64 -1/2 re -1/2))))))
(*.f64 (log.f64 (cbrt.f64 (pow.f64 (exp.f64 im) (*.f64 -1/2 (fma.f64 re im im))))) 3)
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 im) (*.f64 im (fma.f64 -1/2 re -1/2))))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 im) (*.f64 im (fma.f64 -1/2 re -1/2))))))
(*.f64 im (*.f64 im (fma.f64 -1/2 re -1/2)))
(*.f64 (*.f64 im im) (fma.f64 -1/2 re -1/2))
(*.f64 im (*.f64 -1/2 (fma.f64 re im im)))
(-.f64 (exp.f64 (log1p.f64 (*.f64 im (*.f64 im (fma.f64 -1/2 re -1/2))))) 1)
(*.f64 im (*.f64 im (fma.f64 -1/2 re -1/2)))
(*.f64 (*.f64 im im) (fma.f64 -1/2 re -1/2))
(*.f64 im (*.f64 -1/2 (fma.f64 re im im)))
(/.f64 (+.f64 (*.f64 (*.f64 -1/8 (pow.f64 re 3)) (pow.f64 im 6)) (pow.f64 (*.f64 im (*.f64 im -1/2)) 3)) (+.f64 (pow.f64 (*.f64 im (*.f64 im (*.f64 -1/2 re))) 2) (-.f64 (pow.f64 (*.f64 im (*.f64 im -1/2)) 2) (*.f64 (*.f64 im (*.f64 im (*.f64 -1/2 re))) (*.f64 im (*.f64 im -1/2))))))
(/.f64 (fma.f64 (*.f64 -1/8 (pow.f64 re 3)) (pow.f64 im 6) (pow.f64 (*.f64 -1/2 (*.f64 im im)) 3)) (+.f64 (pow.f64 (*.f64 (*.f64 im im) (*.f64 -1/2 re)) 2) (-.f64 (pow.f64 (*.f64 -1/2 (*.f64 im im)) 2) (*.f64 (*.f64 -1/2 (*.f64 im im)) (*.f64 (*.f64 im im) (*.f64 -1/2 re))))))
(/.f64 (fma.f64 (*.f64 -1/8 (pow.f64 re 3)) (pow.f64 im 6) (*.f64 -1/8 (pow.f64 (*.f64 im im) 3))) (+.f64 (pow.f64 (*.f64 -1/2 (*.f64 re (*.f64 im im))) 2) (+.f64 (*.f64 1/4 (pow.f64 im 4)) (*.f64 (*.f64 -1/2 (*.f64 re (*.f64 im im))) (*.f64 1/2 (*.f64 im im))))))
(/.f64 (*.f64 -1/8 (+.f64 (*.f64 (pow.f64 re 3) (pow.f64 im 6)) (pow.f64 im 6))) (fma.f64 1/4 (pow.f64 im 4) (*.f64 (*.f64 -1/2 (*.f64 re (*.f64 im im))) (*.f64 im (*.f64 im (fma.f64 -1/2 re 1/2))))))
(/.f64 (*.f64 (pow.f64 im 6) (fma.f64 -1/8 (pow.f64 re 3) -1/8)) (fma.f64 1/4 (pow.f64 im 4) (*.f64 (*.f64 -1/2 (*.f64 re (*.f64 im im))) (*.f64 im (*.f64 im (fma.f64 -1/2 re 1/2))))))
(/.f64 (-.f64 (pow.f64 (*.f64 im (*.f64 im (*.f64 -1/2 re))) 2) (pow.f64 (*.f64 im (*.f64 im -1/2)) 2)) (-.f64 (*.f64 im (*.f64 im (*.f64 -1/2 re))) (*.f64 im (*.f64 im -1/2))))
(*.f64 im (*.f64 im (fma.f64 -1/2 re -1/2)))
(*.f64 (*.f64 im im) (fma.f64 -1/2 re -1/2))
(*.f64 im (*.f64 -1/2 (fma.f64 re im im)))
(/.f64 (*.f64 (*.f64 im im) (fma.f64 -1/8 (pow.f64 re 3) -1/8)) (-.f64 (fma.f64 re (*.f64 re 1/4) 1/4) (*.f64 re 1/4)))
(/.f64 (*.f64 im im) (/.f64 (-.f64 (fma.f64 re (*.f64 re 1/4) 1/4) (*.f64 re 1/4)) (fma.f64 -1/8 (pow.f64 re 3) -1/8)))
(*.f64 (/.f64 (*.f64 im im) (+.f64 (fma.f64 re (*.f64 re 1/4) 1/4) (*.f64 re -1/4))) (fma.f64 -1/8 (pow.f64 re 3) -1/8))
(*.f64 (/.f64 (*.f64 im (fma.f64 -1/8 (pow.f64 re 3) -1/8)) (fma.f64 re -1/4 (fma.f64 re (*.f64 re 1/4) 1/4))) im)
(*.f64 (*.f64 im im) (/.f64 (fma.f64 -1/8 (pow.f64 re 3) -1/8) (fma.f64 re -1/4 (fma.f64 re (*.f64 re 1/4) 1/4))))
(/.f64 (*.f64 (*.f64 im im) (fma.f64 re (*.f64 re 1/4) -1/4)) (fma.f64 -1/2 re 1/2))
(/.f64 (*.f64 im im) (/.f64 (fma.f64 -1/2 re 1/2) (fma.f64 re (*.f64 re 1/4) -1/4)))
(*.f64 (/.f64 (*.f64 im im) (fma.f64 -1/2 re 1/2)) (fma.f64 re (*.f64 re 1/4) -1/4))
(*.f64 (/.f64 im (/.f64 (fma.f64 -1/2 re 1/2) (fma.f64 (*.f64 re re) 1/4 -1/4))) im)
(*.f64 (*.f64 im im) (/.f64 (fma.f64 re (*.f64 re 1/4) -1/4) (fma.f64 -1/2 re 1/2)))
(/.f64 (*.f64 (fma.f64 -1/8 (pow.f64 re 3) -1/8) (*.f64 im im)) (-.f64 (fma.f64 re (*.f64 re 1/4) 1/4) (*.f64 re 1/4)))
(/.f64 (*.f64 im im) (/.f64 (-.f64 (fma.f64 re (*.f64 re 1/4) 1/4) (*.f64 re 1/4)) (fma.f64 -1/8 (pow.f64 re 3) -1/8)))
(*.f64 (/.f64 (*.f64 im im) (+.f64 (fma.f64 re (*.f64 re 1/4) 1/4) (*.f64 re -1/4))) (fma.f64 -1/8 (pow.f64 re 3) -1/8))
(*.f64 (/.f64 (*.f64 im (fma.f64 -1/8 (pow.f64 re 3) -1/8)) (fma.f64 re -1/4 (fma.f64 re (*.f64 re 1/4) 1/4))) im)
(*.f64 (*.f64 im im) (/.f64 (fma.f64 -1/8 (pow.f64 re 3) -1/8) (fma.f64 re -1/4 (fma.f64 re (*.f64 re 1/4) 1/4))))
(/.f64 (*.f64 (fma.f64 re (*.f64 re 1/4) -1/4) (*.f64 im im)) (fma.f64 -1/2 re 1/2))
(/.f64 (*.f64 im im) (/.f64 (fma.f64 -1/2 re 1/2) (fma.f64 re (*.f64 re 1/4) -1/4)))
(*.f64 (/.f64 (*.f64 im im) (fma.f64 -1/2 re 1/2)) (fma.f64 re (*.f64 re 1/4) -1/4))
(*.f64 (/.f64 im (/.f64 (fma.f64 -1/2 re 1/2) (fma.f64 (*.f64 re re) 1/4 -1/4))) im)
(*.f64 (*.f64 im im) (/.f64 (fma.f64 re (*.f64 re 1/4) -1/4) (fma.f64 -1/2 re 1/2)))
(pow.f64 (*.f64 im (*.f64 im (fma.f64 -1/2 re -1/2))) 1)
(*.f64 im (*.f64 im (fma.f64 -1/2 re -1/2)))
(*.f64 (*.f64 im im) (fma.f64 -1/2 re -1/2))
(*.f64 im (*.f64 -1/2 (fma.f64 re im im)))
(pow.f64 (cbrt.f64 (*.f64 im (*.f64 im (fma.f64 -1/2 re -1/2)))) 3)
(*.f64 im (*.f64 im (fma.f64 -1/2 re -1/2)))
(*.f64 (*.f64 im im) (fma.f64 -1/2 re -1/2))
(*.f64 im (*.f64 -1/2 (fma.f64 re im im)))
(pow.f64 (pow.f64 (*.f64 im (sqrt.f64 (fma.f64 -1/2 re -1/2))) 4) 1/2)
(*.f64 im (*.f64 im (fma.f64 -1/2 re -1/2)))
(*.f64 (*.f64 im im) (fma.f64 -1/2 re -1/2))
(*.f64 im (*.f64 -1/2 (fma.f64 re im im)))
(pow.f64 (pow.f64 (*.f64 im (sqrt.f64 (fma.f64 -1/2 re -1/2))) 6) 1/3)
(*.f64 im (*.f64 im (fma.f64 -1/2 re -1/2)))
(*.f64 (*.f64 im im) (fma.f64 -1/2 re -1/2))
(*.f64 im (*.f64 -1/2 (fma.f64 re im im)))
(pow.f64 (*.f64 im (sqrt.f64 (fma.f64 -1/2 re -1/2))) 2)
(*.f64 im (*.f64 im (fma.f64 -1/2 re -1/2)))
(*.f64 (*.f64 im im) (fma.f64 -1/2 re -1/2))
(*.f64 im (*.f64 -1/2 (fma.f64 re im im)))
(sqrt.f64 (pow.f64 (*.f64 im (sqrt.f64 (fma.f64 -1/2 re -1/2))) 4))
(*.f64 im (*.f64 im (fma.f64 -1/2 re -1/2)))
(*.f64 (*.f64 im im) (fma.f64 -1/2 re -1/2))
(*.f64 im (*.f64 -1/2 (fma.f64 re im im)))
(log.f64 (pow.f64 (exp.f64 im) (*.f64 im (fma.f64 -1/2 re -1/2))))
(*.f64 im (*.f64 im (fma.f64 -1/2 re -1/2)))
(*.f64 (*.f64 im im) (fma.f64 -1/2 re -1/2))
(*.f64 im (*.f64 -1/2 (fma.f64 re im im)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 im (*.f64 im (fma.f64 -1/2 re -1/2))))))
(*.f64 im (*.f64 im (fma.f64 -1/2 re -1/2)))
(*.f64 (*.f64 im im) (fma.f64 -1/2 re -1/2))
(*.f64 im (*.f64 -1/2 (fma.f64 re im im)))
(cbrt.f64 (pow.f64 (*.f64 im (sqrt.f64 (fma.f64 -1/2 re -1/2))) 6))
(*.f64 im (*.f64 im (fma.f64 -1/2 re -1/2)))
(*.f64 (*.f64 im im) (fma.f64 -1/2 re -1/2))
(*.f64 im (*.f64 -1/2 (fma.f64 re im im)))
(expm1.f64 (log1p.f64 (*.f64 im (*.f64 im (fma.f64 -1/2 re -1/2)))))
(*.f64 im (*.f64 im (fma.f64 -1/2 re -1/2)))
(*.f64 (*.f64 im im) (fma.f64 -1/2 re -1/2))
(*.f64 im (*.f64 -1/2 (fma.f64 re im im)))
(exp.f64 (log.f64 (*.f64 im (*.f64 im (fma.f64 -1/2 re -1/2)))))
(*.f64 im (*.f64 im (fma.f64 -1/2 re -1/2)))
(*.f64 (*.f64 im im) (fma.f64 -1/2 re -1/2))
(*.f64 im (*.f64 -1/2 (fma.f64 re im im)))
(exp.f64 (*.f64 (log.f64 (*.f64 im (*.f64 im (fma.f64 -1/2 re -1/2)))) 1))
(*.f64 im (*.f64 im (fma.f64 -1/2 re -1/2)))
(*.f64 (*.f64 im im) (fma.f64 -1/2 re -1/2))
(*.f64 im (*.f64 -1/2 (fma.f64 re im im)))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 im (*.f64 im (fma.f64 -1/2 re -1/2)))) 1) 1))
(*.f64 im (*.f64 im (fma.f64 -1/2 re -1/2)))
(*.f64 (*.f64 im im) (fma.f64 -1/2 re -1/2))
(*.f64 im (*.f64 -1/2 (fma.f64 re im im)))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 im (*.f64 im (fma.f64 -1/2 re -1/2))))) 3))
(*.f64 im (*.f64 im (fma.f64 -1/2 re -1/2)))
(*.f64 (*.f64 im im) (fma.f64 -1/2 re -1/2))
(*.f64 im (*.f64 -1/2 (fma.f64 re im im)))
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 im (sqrt.f64 (fma.f64 -1/2 re -1/2))) 6)) 1/3))
(*.f64 im (*.f64 im (fma.f64 -1/2 re -1/2)))
(*.f64 (*.f64 im im) (fma.f64 -1/2 re -1/2))
(*.f64 im (*.f64 -1/2 (fma.f64 re im im)))
(exp.f64 (*.f64 (log.f64 (*.f64 im (sqrt.f64 (fma.f64 -1/2 re -1/2)))) 2))
(*.f64 im (*.f64 im (fma.f64 -1/2 re -1/2)))
(*.f64 (*.f64 im im) (fma.f64 -1/2 re -1/2))
(*.f64 im (*.f64 -1/2 (fma.f64 re im im)))
(exp.f64 (+.f64 (*.f64 (log.f64 im) 1) (log.f64 (*.f64 im (fma.f64 -1/2 re -1/2)))))
(*.f64 im (*.f64 im (fma.f64 -1/2 re -1/2)))
(*.f64 (*.f64 im im) (fma.f64 -1/2 re -1/2))
(*.f64 im (*.f64 -1/2 (fma.f64 re im im)))
(exp.f64 (+.f64 (*.f64 2 (log.f64 im)) (*.f64 (log.f64 (fma.f64 -1/2 re -1/2)) 1)))
(*.f64 im (*.f64 im (fma.f64 -1/2 re -1/2)))
(*.f64 (*.f64 im im) (fma.f64 -1/2 re -1/2))
(*.f64 im (*.f64 -1/2 (fma.f64 re im im)))
(exp.f64 (+.f64 (*.f64 (log.f64 im) 2) (log.f64 (fma.f64 -1/2 re -1/2))))
(*.f64 im (*.f64 im (fma.f64 -1/2 re -1/2)))
(*.f64 (*.f64 im im) (fma.f64 -1/2 re -1/2))
(*.f64 im (*.f64 -1/2 (fma.f64 re im im)))
(exp.f64 (+.f64 (*.f64 (log.f64 im) 2) (*.f64 (log.f64 (fma.f64 -1/2 re -1/2)) 1)))
(*.f64 im (*.f64 im (fma.f64 -1/2 re -1/2)))
(*.f64 (*.f64 im im) (fma.f64 -1/2 re -1/2))
(*.f64 im (*.f64 -1/2 (fma.f64 re im im)))
(exp.f64 (+.f64 (*.f64 (*.f64 2 (log.f64 im)) 1) (log.f64 (fma.f64 -1/2 re -1/2))))
(*.f64 im (*.f64 im (fma.f64 -1/2 re -1/2)))
(*.f64 (*.f64 im im) (fma.f64 -1/2 re -1/2))
(*.f64 im (*.f64 -1/2 (fma.f64 re im im)))
(exp.f64 (+.f64 (*.f64 (*.f64 2 (log.f64 im)) 1) (*.f64 (log.f64 (fma.f64 -1/2 re -1/2)) 1)))
(*.f64 im (*.f64 im (fma.f64 -1/2 re -1/2)))
(*.f64 (*.f64 im im) (fma.f64 -1/2 re -1/2))
(*.f64 im (*.f64 -1/2 (fma.f64 re im im)))
(exp.f64 (+.f64 (log.f64 (fma.f64 -1/2 re -1/2)) (*.f64 (log.f64 im) 2)))
(*.f64 im (*.f64 im (fma.f64 -1/2 re -1/2)))
(*.f64 (*.f64 im im) (fma.f64 -1/2 re -1/2))
(*.f64 im (*.f64 -1/2 (fma.f64 re im im)))
(exp.f64 (+.f64 (log.f64 (fma.f64 -1/2 re -1/2)) (*.f64 (*.f64 2 (log.f64 im)) 1)))
(*.f64 im (*.f64 im (fma.f64 -1/2 re -1/2)))
(*.f64 (*.f64 im im) (fma.f64 -1/2 re -1/2))
(*.f64 im (*.f64 -1/2 (fma.f64 re im im)))
(exp.f64 (+.f64 (*.f64 (log.f64 (fma.f64 -1/2 re -1/2)) 1) (*.f64 2 (log.f64 im))))
(*.f64 im (*.f64 im (fma.f64 -1/2 re -1/2)))
(*.f64 (*.f64 im im) (fma.f64 -1/2 re -1/2))
(*.f64 im (*.f64 -1/2 (fma.f64 re im im)))
(exp.f64 (+.f64 (*.f64 (log.f64 (fma.f64 -1/2 re -1/2)) 1) (*.f64 (log.f64 im) 2)))
(*.f64 im (*.f64 im (fma.f64 -1/2 re -1/2)))
(*.f64 (*.f64 im im) (fma.f64 -1/2 re -1/2))
(*.f64 im (*.f64 -1/2 (fma.f64 re im im)))
(exp.f64 (+.f64 (*.f64 (log.f64 (fma.f64 -1/2 re -1/2)) 1) (*.f64 (*.f64 2 (log.f64 im)) 1)))
(*.f64 im (*.f64 im (fma.f64 -1/2 re -1/2)))
(*.f64 (*.f64 im im) (fma.f64 -1/2 re -1/2))
(*.f64 im (*.f64 -1/2 (fma.f64 re im im)))
(exp.f64 (+.f64 (log.f64 (*.f64 im (fma.f64 -1/2 re -1/2))) (*.f64 (log.f64 im) 1)))
(*.f64 im (*.f64 im (fma.f64 -1/2 re -1/2)))
(*.f64 (*.f64 im im) (fma.f64 -1/2 re -1/2))
(*.f64 im (*.f64 -1/2 (fma.f64 re im im)))
(log1p.f64 (expm1.f64 (*.f64 im (*.f64 im (fma.f64 -1/2 re -1/2)))))
(*.f64 im (*.f64 im (fma.f64 -1/2 re -1/2)))
(*.f64 (*.f64 im im) (fma.f64 -1/2 re -1/2))
(*.f64 im (*.f64 -1/2 (fma.f64 re im im)))
(fma.f64 im (*.f64 im -1/2) (*.f64 im (*.f64 im (*.f64 -1/2 re))))
(*.f64 im (*.f64 im (fma.f64 -1/2 re -1/2)))
(*.f64 (*.f64 im im) (fma.f64 -1/2 re -1/2))
(*.f64 im (*.f64 -1/2 (fma.f64 re im im)))
(fma.f64 im (*.f64 im (*.f64 -1/2 re)) (*.f64 im (*.f64 im -1/2)))
(*.f64 im (*.f64 im (fma.f64 -1/2 re -1/2)))
(*.f64 (*.f64 im im) (fma.f64 -1/2 re -1/2))
(*.f64 im (*.f64 -1/2 (fma.f64 re im im)))
(fma.f64 (*.f64 im im) -1/2 (*.f64 im (*.f64 im (*.f64 -1/2 re))))
(*.f64 im (*.f64 im (fma.f64 -1/2 re -1/2)))
(*.f64 (*.f64 im im) (fma.f64 -1/2 re -1/2))
(*.f64 im (*.f64 -1/2 (fma.f64 re im im)))
(fma.f64 (*.f64 im im) (*.f64 -1/2 re) (*.f64 im (*.f64 im -1/2)))
(*.f64 im (*.f64 im (fma.f64 -1/2 re -1/2)))
(*.f64 (*.f64 im im) (fma.f64 -1/2 re -1/2))
(*.f64 im (*.f64 -1/2 (fma.f64 re im im)))
(fma.f64 -1/2 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 -1/2 re))))
(*.f64 im (*.f64 im (fma.f64 -1/2 re -1/2)))
(*.f64 (*.f64 im im) (fma.f64 -1/2 re -1/2))
(*.f64 im (*.f64 -1/2 (fma.f64 re im im)))
(fma.f64 -1/2 (*.f64 re (*.f64 im im)) (*.f64 im (*.f64 im -1/2)))
(*.f64 im (*.f64 im (fma.f64 -1/2 re -1/2)))
(*.f64 (*.f64 im im) (fma.f64 -1/2 re -1/2))
(*.f64 im (*.f64 -1/2 (fma.f64 re im im)))
(fma.f64 re (*.f64 im (*.f64 im -1/2)) (*.f64 im (*.f64 im -1/2)))
(*.f64 im (*.f64 im (fma.f64 -1/2 re -1/2)))
(*.f64 (*.f64 im im) (fma.f64 -1/2 re -1/2))
(*.f64 im (*.f64 -1/2 (fma.f64 re im im)))
(fma.f64 (*.f64 -1/2 re) (*.f64 im im) (*.f64 im (*.f64 im -1/2)))
(*.f64 im (*.f64 im (fma.f64 -1/2 re -1/2)))
(*.f64 (*.f64 im im) (fma.f64 -1/2 re -1/2))
(*.f64 im (*.f64 -1/2 (fma.f64 re im im)))
(fma.f64 1 (*.f64 im (*.f64 im -1/2)) (*.f64 im (*.f64 im (*.f64 -1/2 re))))
(*.f64 im (*.f64 im (fma.f64 -1/2 re -1/2)))
(*.f64 (*.f64 im im) (fma.f64 -1/2 re -1/2))
(*.f64 im (*.f64 -1/2 (fma.f64 re im im)))
(fma.f64 1 (*.f64 im (*.f64 im (*.f64 -1/2 re))) (*.f64 im (*.f64 im -1/2)))
(*.f64 im (*.f64 im (fma.f64 -1/2 re -1/2)))
(*.f64 (*.f64 im im) (fma.f64 -1/2 re -1/2))
(*.f64 im (*.f64 -1/2 (fma.f64 re im im)))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 -1/2 re)) 2) (*.f64 (cbrt.f64 (*.f64 -1/2 re)) (*.f64 im im)) (*.f64 im (*.f64 im -1/2)))
(*.f64 im (*.f64 im (fma.f64 -1/2 re -1/2)))
(*.f64 (*.f64 im im) (fma.f64 -1/2 re -1/2))
(*.f64 im (*.f64 -1/2 (fma.f64 re im im)))
(fma.f64 (cbrt.f64 (pow.f64 im 4)) (*.f64 (cbrt.f64 (*.f64 im im)) (*.f64 -1/2 re)) (*.f64 im (*.f64 im -1/2)))
(fma.f64 (cbrt.f64 (pow.f64 im 4)) (*.f64 (*.f64 -1/2 re) (cbrt.f64 (*.f64 im im))) (*.f64 -1/2 (*.f64 im im)))
(fma.f64 (cbrt.f64 (pow.f64 im 4)) (*.f64 -1/2 (*.f64 (cbrt.f64 (*.f64 im im)) re)) (*.f64 -1/2 (*.f64 im im)))
(*.f64 -1/2 (+.f64 (*.f64 im im) (*.f64 (cbrt.f64 (*.f64 im im)) (*.f64 re (cbrt.f64 (pow.f64 im 4))))))
(fma.f64 (cbrt.f64 (pow.f64 im 4)) (*.f64 (cbrt.f64 (*.f64 im im)) -1/2) (*.f64 im (*.f64 im (*.f64 -1/2 re))))
(fma.f64 (cbrt.f64 (pow.f64 im 4)) (*.f64 -1/2 (cbrt.f64 (*.f64 im im))) (*.f64 (*.f64 im im) (*.f64 -1/2 re)))
(fma.f64 (cbrt.f64 (pow.f64 im 4)) (*.f64 -1/2 (cbrt.f64 (*.f64 im im))) (*.f64 -1/2 (*.f64 re (*.f64 im im))))
(*.f64 -1/2 (+.f64 (*.f64 re (*.f64 im im)) (*.f64 (cbrt.f64 (pow.f64 im 4)) (cbrt.f64 (*.f64 im im)))))
(fma.f64 (sqrt.f64 (*.f64 -1/2 re)) (*.f64 (sqrt.f64 (*.f64 -1/2 re)) (*.f64 im im)) (*.f64 im (*.f64 im -1/2)))
(*.f64 im (*.f64 im (fma.f64 -1/2 re -1/2)))
(*.f64 (*.f64 im im) (fma.f64 -1/2 re -1/2))
(*.f64 im (*.f64 -1/2 (fma.f64 re im im)))
(fma.f64 (*.f64 im (*.f64 im -1/2)) re (*.f64 im (*.f64 im -1/2)))
(*.f64 im (*.f64 im (fma.f64 -1/2 re -1/2)))
(*.f64 (*.f64 im im) (fma.f64 -1/2 re -1/2))
(*.f64 im (*.f64 -1/2 (fma.f64 re im im)))
(fma.f64 (*.f64 im (*.f64 im (*.f64 -1/2 re))) 1 (*.f64 (*.f64 im (*.f64 im -1/2)) 1))
(*.f64 im (*.f64 im (fma.f64 -1/2 re -1/2)))
(*.f64 (*.f64 im im) (fma.f64 -1/2 re -1/2))
(*.f64 im (*.f64 -1/2 (fma.f64 re im im)))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 im (*.f64 im -1/2))) 2) (cbrt.f64 (*.f64 im (*.f64 im -1/2))) (*.f64 im (*.f64 im (*.f64 -1/2 re))))
(*.f64 im (*.f64 im (fma.f64 -1/2 re -1/2)))
(*.f64 (*.f64 im im) (fma.f64 -1/2 re -1/2))
(*.f64 im (*.f64 -1/2 (fma.f64 re im im)))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 im (*.f64 im (*.f64 -1/2 re)))) 2) (cbrt.f64 (*.f64 im (*.f64 im (*.f64 -1/2 re)))) (*.f64 im (*.f64 im -1/2)))
(*.f64 im (*.f64 im (fma.f64 -1/2 re -1/2)))
(*.f64 (*.f64 im im) (fma.f64 -1/2 re -1/2))
(*.f64 im (*.f64 -1/2 (fma.f64 re im im)))
(fma.f64 (sqrt.f64 (*.f64 im (*.f64 im -1/2))) (sqrt.f64 (*.f64 im (*.f64 im -1/2))) (*.f64 im (*.f64 im (*.f64 -1/2 re))))
(*.f64 im (*.f64 im (fma.f64 -1/2 re -1/2)))
(*.f64 (*.f64 im im) (fma.f64 -1/2 re -1/2))
(*.f64 im (*.f64 -1/2 (fma.f64 re im im)))
(fma.f64 (*.f64 im (sqrt.f64 (*.f64 -1/2 re))) (*.f64 im (sqrt.f64 (*.f64 -1/2 re))) (*.f64 im (*.f64 im -1/2)))
(*.f64 im (*.f64 im (fma.f64 -1/2 re -1/2)))
(*.f64 (*.f64 im im) (fma.f64 -1/2 re -1/2))
(*.f64 im (*.f64 -1/2 (fma.f64 re im im)))
(fma.f64 (*.f64 -1/2 im) im (*.f64 im (*.f64 im (*.f64 -1/2 re))))
(*.f64 im (*.f64 im (fma.f64 -1/2 re -1/2)))
(*.f64 (*.f64 im im) (fma.f64 -1/2 re -1/2))
(*.f64 im (*.f64 -1/2 (fma.f64 re im im)))
(fma.f64 (*.f64 (*.f64 -1/2 re) im) im (*.f64 im (*.f64 im -1/2)))
(*.f64 im (*.f64 im (fma.f64 -1/2 re -1/2)))
(*.f64 (*.f64 im im) (fma.f64 -1/2 re -1/2))
(*.f64 im (*.f64 -1/2 (fma.f64 re im im)))
(fma.f64 (*.f64 (*.f64 -1/2 re) (cbrt.f64 (pow.f64 im 4))) (cbrt.f64 (*.f64 im im)) (*.f64 im (*.f64 im -1/2)))
(fma.f64 (cbrt.f64 (pow.f64 im 4)) (*.f64 (*.f64 -1/2 re) (cbrt.f64 (*.f64 im im))) (*.f64 -1/2 (*.f64 im im)))
(fma.f64 (cbrt.f64 (pow.f64 im 4)) (*.f64 -1/2 (*.f64 (cbrt.f64 (*.f64 im im)) re)) (*.f64 -1/2 (*.f64 im im)))
(*.f64 -1/2 (+.f64 (*.f64 im im) (*.f64 (cbrt.f64 (*.f64 im im)) (*.f64 re (cbrt.f64 (pow.f64 im 4))))))
(fma.f64 (*.f64 (*.f64 im im) re) -1/2 (*.f64 im (*.f64 im -1/2)))
(*.f64 im (*.f64 im (fma.f64 -1/2 re -1/2)))
(*.f64 (*.f64 im im) (fma.f64 -1/2 re -1/2))
(*.f64 im (*.f64 -1/2 (fma.f64 re im im)))
(fma.f64 (pow.f64 (*.f64 im (cbrt.f64 (*.f64 -1/2 re))) 2) (cbrt.f64 (*.f64 -1/2 re)) (*.f64 im (*.f64 im -1/2)))
(*.f64 im (*.f64 im (fma.f64 -1/2 re -1/2)))
(*.f64 (*.f64 im im) (fma.f64 -1/2 re -1/2))
(*.f64 im (*.f64 -1/2 (fma.f64 re im im)))
(fma.f64 (*.f64 (*.f64 im im) (sqrt.f64 (*.f64 -1/2 re))) (sqrt.f64 (*.f64 -1/2 re)) (*.f64 im (*.f64 im -1/2)))
(*.f64 im (*.f64 im (fma.f64 -1/2 re -1/2)))
(*.f64 (*.f64 im im) (fma.f64 -1/2 re -1/2))
(*.f64 im (*.f64 -1/2 (fma.f64 re im im)))
(fma.f64 (*.f64 -1/2 (cbrt.f64 (pow.f64 im 4))) (cbrt.f64 (*.f64 im im)) (*.f64 im (*.f64 im (*.f64 -1/2 re))))
(fma.f64 (cbrt.f64 (pow.f64 im 4)) (*.f64 -1/2 (cbrt.f64 (*.f64 im im))) (*.f64 (*.f64 im im) (*.f64 -1/2 re)))
(fma.f64 (cbrt.f64 (pow.f64 im 4)) (*.f64 -1/2 (cbrt.f64 (*.f64 im im))) (*.f64 -1/2 (*.f64 re (*.f64 im im))))
(*.f64 -1/2 (+.f64 (*.f64 re (*.f64 im im)) (*.f64 (cbrt.f64 (pow.f64 im 4)) (cbrt.f64 (*.f64 im im)))))

eval39.0ms (0.9%)

Compiler

Compiled 1925 to 1285 computations (33.2% saved)

prune106.0ms (2.3%)

Pruning

8 alts after pruning (1 fresh and 7 done)

PrunedKeptTotal
New1311132
Fresh000
Picked022
Done055
Total1318139
Accurracy
100.0%
Counts
139 → 8
Alt Table
Click to see full alt table
StatusAccuracyProgram
12.9%
(*.f64 (*.f64 im im) (+.f64 (*.f64 -1/2 re) -1/2))
62.6%
(*.f64 (exp.f64 re) (+.f64 1 (*.f64 -1/2 (*.f64 im im))))
27.8%
(*.f64 (exp.f64 re) (*.f64 -1/2 (*.f64 im im)))
75.0%
(*.f64 (exp.f64 re) (exp.f64 (log.f64 (cos.f64 im))))
100.0%
(*.f64 (exp.f64 re) (cos.f64 im))
13.1%
(*.f64 -1/2 (*.f64 re (*.f64 im im)))
10.8%
(*.f64 -1/2 (*.f64 im im))
72.1%
(exp.f64 re)
Compiler

Compiled 128 to 79 computations (38.3% saved)

regimes94.0ms (2.1%)

Counts
9 → 1
Calls
Call 1
Inputs
(*.f64 -1/2 (*.f64 im im))
(*.f64 -1/2 (*.f64 re (*.f64 im im)))
(*.f64 (*.f64 im im) (+.f64 (*.f64 -1/2 re) -1/2))
(exp.f64 re)
(*.f64 (exp.f64 re) 1)
(*.f64 (exp.f64 re) (*.f64 -1/2 (*.f64 im im)))
(*.f64 (exp.f64 re) (+.f64 1 (*.f64 -1/2 (*.f64 im im))))
(*.f64 (exp.f64 re) (cos.f64 im))
(*.f64 (exp.f64 re) (exp.f64 (log.f64 (cos.f64 im))))
Outputs
(*.f64 (exp.f64 re) (cos.f64 im))
Calls

5 calls:

76.0ms
re
5.0ms
im
5.0ms
(cos.f64 im)
3.0ms
(*.f64 (exp.f64 re) (cos.f64 im))
2.0ms
(exp.f64 re)
Results
AccuracySegmentsBranch
100.0%1re
100.0%1im
100.0%1(*.f64 (exp.f64 re) (cos.f64 im))
100.0%1(exp.f64 re)
100.0%1(cos.f64 im)
Compiler

Compiled 80 to 44 computations (45% saved)

regimes111.0ms (2.4%)

Counts
7 → 2
Calls
Call 1
Inputs
(*.f64 -1/2 (*.f64 im im))
(*.f64 -1/2 (*.f64 re (*.f64 im im)))
(*.f64 (*.f64 im im) (+.f64 (*.f64 -1/2 re) -1/2))
(exp.f64 re)
(*.f64 (exp.f64 re) 1)
(*.f64 (exp.f64 re) (*.f64 -1/2 (*.f64 im im)))
(*.f64 (exp.f64 re) (+.f64 1 (*.f64 -1/2 (*.f64 im im))))
Outputs
(exp.f64 re)
(*.f64 (exp.f64 re) (+.f64 1 (*.f64 -1/2 (*.f64 im im))))
Calls

3 calls:

95.0ms
re
11.0ms
im
3.0ms
(exp.f64 re)
Results
AccuracySegmentsBranch
74.4%2re
72.1%1im
72.1%1(exp.f64 re)
Compiler

Compiled 57 to 31 computations (45.6% saved)

regimes8.0ms (0.2%)

Counts
6 → 1
Calls
Call 1
Inputs
(*.f64 -1/2 (*.f64 im im))
(*.f64 -1/2 (*.f64 re (*.f64 im im)))
(*.f64 (*.f64 im im) (+.f64 (*.f64 -1/2 re) -1/2))
(exp.f64 re)
(*.f64 (exp.f64 re) 1)
(*.f64 (exp.f64 re) (*.f64 -1/2 (*.f64 im im)))
Outputs
(exp.f64 re)
Calls

2 calls:

5.0ms
re
2.0ms
(exp.f64 re)
Results
AccuracySegmentsBranch
72.1%1(exp.f64 re)
72.1%1re
Compiler

Compiled 44 to 24 computations (45.5% saved)

regimes50.0ms (1.1%)

Counts
3 → 1
Calls
Call 1
Inputs
(*.f64 -1/2 (*.f64 im im))
(*.f64 -1/2 (*.f64 re (*.f64 im im)))
(*.f64 (*.f64 im im) (+.f64 (*.f64 -1/2 re) -1/2))
Outputs
(*.f64 -1/2 (*.f64 re (*.f64 im im)))
Calls

2 calls:

46.0ms
re
3.0ms
im
Results
AccuracySegmentsBranch
13.1%1re
13.1%1im
Compiler

Compiled 29 to 17 computations (41.4% saved)

regimes6.0ms (0.1%)

Accuracy

Total 0.0b remaining (0%)

Threshold costs 0b (0%)

Counts
1 → 1
Calls
Call 1
Inputs
(*.f64 -1/2 (*.f64 im im))
Outputs
(*.f64 -1/2 (*.f64 im im))
Calls

2 calls:

2.0ms
im
2.0ms
re
Results
AccuracySegmentsBranch
10.8%1re
10.8%1im
Compiler

Compiled 13 to 9 computations (30.8% saved)

bsearch9.0ms (0.2%)

Algorithm
binary-search
Stop Event
predicate-same
Steps
TimeLeftRight
9.0ms
1.1694097276257203e+197
1.637984620735183e+198
Results
4.0ms10×body1024infinite
3.0ms30×body256infinite
1.0msbody512infinite
Compiler

Compiled 66 to 51 computations (22.7% saved)

simplify6.0ms (0.1%)

Algorithm
egg-herbie
Rules
10×*-commutative
1-exp
+-commutative
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02295
13095
Stop Event
fuel
saturated
Calls
Call 1
Inputs
(*.f64 (exp.f64 re) (cos.f64 im))
(if (<=.f64 re 399999999999999980457316985569405282135566418447448667978663355622940468949998367331135515566893609123835017950685530268277930130022099723705429437051058159750814661534937000031089461529163448975360) (exp.f64 re) (*.f64 (exp.f64 re) (+.f64 1 (*.f64 -1/2 (*.f64 im im)))))
(exp.f64 re)
(*.f64 -1/2 (*.f64 re (*.f64 im im)))
(*.f64 -1/2 (*.f64 im im))
Outputs
(*.f64 (exp.f64 re) (cos.f64 im))
(if (<=.f64 re 399999999999999980457316985569405282135566418447448667978663355622940468949998367331135515566893609123835017950685530268277930130022099723705429437051058159750814661534937000031089461529163448975360) (exp.f64 re) (*.f64 (exp.f64 re) (+.f64 1 (*.f64 -1/2 (*.f64 im im)))))
(exp.f64 re)
(*.f64 -1/2 (*.f64 re (*.f64 im im)))
(*.f64 -1/2 (*.f64 im im))
Compiler

Compiled 45 to 31 computations (31.1% saved)

soundness643.0ms (14.2%)

Rules
1264×unswap-sqr
1264×unswap-sqr
1146×log-prod
1138×unswap-sqr
1086×fma-def
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
0121569
1241535
2644519
33358519
47008519
03814458
18894338
227874168
377774168
062947
1172921
2613885
31646877
44645877
062947
1172921
2613885
31646877
44645877
01992361
14972317
212102267
341412257
Stop Event
node limit
node limit
node limit
node limit
node limit
Compiler

Compiled 138 to 92 computations (33.3% saved)

end74.0ms (1.6%)

Compiler

Compiled 88 to 48 computations (45.5% saved)

Profiling

Loading profile data...