math.exp on complex, real part

Time bar (total: 3.2s)

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.3s (41%)

Results
548.0ms4623×body256valid
339.0ms1018×body1024valid
139.0ms1257×body256infinite
123.0ms506×body1024infinite
104.0ms544×body512valid
54.0ms304×body512infinite
3.0msbody2048valid
Bogosity

preprocess14.0ms (0.4%)

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)

simplify11.0ms (0.4%)

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)

localize43.0ms (1.3%)

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.5%)

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)))

simplify68.0ms (2.1%)

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)

eval10.0ms (0.3%)

Compiler

Compiled 641 to 303 computations (52.7% saved)

prune11.0ms (0.4%)

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
99.5%
(*.f64 (exp.f64 re) (pow.f64 (cbrt.f64 (cos.f64 im)) 3))
65.8%
(*.f64 (exp.f64 re) (+.f64 1 (*.f64 -1/2 (*.f64 im im))))
100.0%
(*.f64 (exp.f64 re) (cos.f64 im))
69.7%
(*.f64 (exp.f64 re) 1)
99.5%
(*.f64 (exp.f64 re) (pow.f64 (cbrt.f64 (cos.f64 im)) 3))
65.8%
(*.f64 (exp.f64 re) (+.f64 1 (*.f64 -1/2 (*.f64 im im))))
100.0%
(*.f64 (exp.f64 re) (cos.f64 im))
69.7%
(*.f64 (exp.f64 re) 1)
Compiler

Compiled 70 to 54 computations (22.9% saved)

localize127.0ms (3.9%)

Local Accuracy

Found 5 expressions with local accuracy:

NewAccuracyProgram
100.0%
(cos.f64 im)
99.6%
(cbrt.f64 (cos.f64 im))
99.5%
(pow.f64 (cbrt.f64 (cos.f64 im)) 3)
100.0%
(*.f64 -1/2 (*.f64 im im))
96.5%
(*.f64 (exp.f64 re) (+.f64 1 (*.f64 -1/2 (*.f64 im im))))
Compiler

Compiled 65 to 29 computations (55.4% saved)

series9.0ms (0.3%)

Counts
4 → 60
Calls

15 calls:

TimeVariablePointExpression
2.0ms
im
@inf
(pow.f64 (cbrt.f64 (cos.f64 im)) 3)
2.0ms
im
@-inf
(pow.f64 (cbrt.f64 (cos.f64 im)) 3)
1.0ms
re
@inf
(*.f64 (exp.f64 re) (+.f64 1 (*.f64 -1/2 (*.f64 im im))))
1.0ms
im
@inf
(*.f64 -1/2 (*.f64 im im))
1.0ms
im
@inf
(*.f64 (exp.f64 re) (+.f64 1 (*.f64 -1/2 (*.f64 im im))))

rewrite89.0ms (2.8%)

Algorithm
batch-egg-rewrite
Rules
1326×log-prod
1102×prod-diff
800×fma-def
638×pow-exp
502×expm1-udef
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01656
132852
2373152
Stop Event
node limit
Counts
4 → 161
Calls
Call 1
Inputs
(*.f64 (exp.f64 re) (+.f64 1 (*.f64 -1/2 (*.f64 im im))))
(*.f64 -1/2 (*.f64 im im))
(pow.f64 (cbrt.f64 (cos.f64 im)) 3)
(cbrt.f64 (cos.f64 im))
Outputs
(+.f64 (exp.f64 re) (*.f64 (*.f64 (exp.f64 re) -1/2) (*.f64 im im)))
(+.f64 (exp.f64 re) (*.f64 (*.f64 (*.f64 (exp.f64 re) -1/2) (*.f64 im im)) 1))
(+.f64 0 (*.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 im im) 1)))
(+.f64 (*.f64 (*.f64 (exp.f64 re) -1/2) (*.f64 im im)) (exp.f64 re))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 (fma.f64 -1/2 (*.f64 im im) 1)) (exp.f64 re))) (cbrt.f64 (pow.f64 (exp.f64 (fma.f64 -1/2 (*.f64 im im) 1)) (exp.f64 re))))) (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 (fma.f64 -1/2 (*.f64 im im) 1)) (exp.f64 re)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (fma.f64 -1/2 (*.f64 im im) 1)) (exp.f64 re)))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 im im) 1)))) 1)
(/.f64 (+.f64 (pow.f64 (exp.f64 re) 3) (pow.f64 (*.f64 (*.f64 (exp.f64 re) -1/2) (*.f64 im im)) 3)) (+.f64 (pow.f64 (exp.f64 re) 2) (-.f64 (*.f64 (*.f64 (*.f64 (exp.f64 re) -1/2) (*.f64 im im)) (*.f64 (*.f64 (exp.f64 re) -1/2) (*.f64 im im))) (*.f64 (exp.f64 re) (*.f64 (*.f64 (exp.f64 re) -1/2) (*.f64 im im))))))
(/.f64 (-.f64 (pow.f64 (exp.f64 re) 2) (*.f64 (*.f64 (*.f64 (exp.f64 re) -1/2) (*.f64 im im)) (*.f64 (*.f64 (exp.f64 re) -1/2) (*.f64 im im)))) (-.f64 (exp.f64 re) (*.f64 (*.f64 (exp.f64 re) -1/2) (*.f64 im im))))
(/.f64 (*.f64 (exp.f64 re) (fma.f64 (pow.f64 (*.f64 im im) 3) -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 (*.f64 im im) 3) -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 -1/2 (*.f64 im im) 1)) 1)
(pow.f64 (cbrt.f64 (*.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 im im) 1))) 3)
(pow.f64 (pow.f64 (*.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 im im) 1)) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 im im) 1))) 2)
(sqrt.f64 (pow.f64 (*.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 im im) 1)) 2))
(log.f64 (pow.f64 (exp.f64 (fma.f64 -1/2 (*.f64 im im) 1)) (exp.f64 re)))
(log.f64 (+.f64 1 (expm1.f64 (*.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 (*.f64 (exp.f64 re) -1/2) (*.f64 im im)))))
(log.f64 (*.f64 (exp.f64 (*.f64 (*.f64 (exp.f64 re) -1/2) (*.f64 im im))) (exp.f64 (exp.f64 re))))
(log.f64 (*.f64 (exp.f64 (*.f64 (*.f64 (exp.f64 re) -1/2) (*.f64 im im))) (+.f64 1 (expm1.f64 (exp.f64 re)))))
(cbrt.f64 (pow.f64 (*.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 im im) 1)) 3))
(cbrt.f64 (*.f64 (pow.f64 (exp.f64 re) 3) (pow.f64 (fma.f64 -1/2 (*.f64 im im) 1) 3)))
(cbrt.f64 (*.f64 (pow.f64 (fma.f64 -1/2 (*.f64 im im) 1) 3) (pow.f64 (exp.f64 re) 3)))
(expm1.f64 (log1p.f64 (*.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 im im) 1))))
(exp.f64 (+.f64 re (log1p.f64 (*.f64 -1/2 (*.f64 im im)))))
(exp.f64 (*.f64 (+.f64 re (log1p.f64 (*.f64 -1/2 (*.f64 im im)))) 1))
(exp.f64 (*.f64 (*.f64 (+.f64 re (log1p.f64 (*.f64 -1/2 (*.f64 im im)))) 1) 1))
(exp.f64 (*.f64 (*.f64 1/3 (+.f64 re (log1p.f64 (*.f64 -1/2 (*.f64 im im))))) 3))
(exp.f64 (*.f64 (*.f64 3 (+.f64 re (log1p.f64 (*.f64 -1/2 (*.f64 im im))))) 1/3))
(exp.f64 (*.f64 (*.f64 1/2 (+.f64 re (log1p.f64 (*.f64 -1/2 (*.f64 im im))))) 2))
(log1p.f64 (expm1.f64 (*.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 im im) 1))))
(fma.f64 (exp.f64 re) 1 (*.f64 (*.f64 (exp.f64 re) -1/2) (*.f64 im im)))
(fma.f64 (exp.f64 re) 1 (*.f64 (*.f64 (*.f64 (exp.f64 re) -1/2) (*.f64 im im)) 1))
(fma.f64 (exp.f64 re) (*.f64 -1/2 (*.f64 im im)) (exp.f64 re))
(fma.f64 1 (exp.f64 re) (*.f64 (*.f64 (exp.f64 re) -1/2) (*.f64 im im)))
(fma.f64 1 (exp.f64 re) (*.f64 (*.f64 (*.f64 (exp.f64 re) -1/2) (*.f64 im im)) 1))
(fma.f64 1 (*.f64 (*.f64 (exp.f64 re) -1/2) (*.f64 im im)) (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 -1/2 (*.f64 im im)) (exp.f64 re) (exp.f64 re))
(fma.f64 (cbrt.f64 (exp.f64 re)) (pow.f64 (cbrt.f64 (exp.f64 re)) 2) (*.f64 (*.f64 (exp.f64 re) -1/2) (*.f64 im im)))
(fma.f64 (cbrt.f64 (exp.f64 re)) (pow.f64 (cbrt.f64 (exp.f64 re)) 2) (*.f64 (*.f64 (*.f64 (exp.f64 re) -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) -1/2) (*.f64 im im)))
(fma.f64 (pow.f64 (cbrt.f64 (exp.f64 re)) 2) (cbrt.f64 (exp.f64 re)) (*.f64 (*.f64 (*.f64 (exp.f64 re) -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) -1/2) (*.f64 im im)))
(fma.f64 (pow.f64 (cbrt.f64 (exp.f64 re)) 2) (*.f64 (cbrt.f64 (exp.f64 re)) 1) (*.f64 (*.f64 (*.f64 (exp.f64 re) -1/2) (*.f64 im im)) 1))
(fma.f64 (pow.f64 (cbrt.f64 (exp.f64 re)) 2) (*.f64 (cbrt.f64 (exp.f64 re)) (*.f64 -1/2 (*.f64 im im))) (exp.f64 re))
(fma.f64 (cbrt.f64 (*.f64 (pow.f64 im 4) 1/4)) (*.f64 (cbrt.f64 (*.f64 -1/2 (*.f64 im im))) (exp.f64 re)) (exp.f64 re))
(fma.f64 (sqrt.f64 (exp.f64 re)) (sqrt.f64 (exp.f64 re)) (*.f64 (*.f64 (exp.f64 re) -1/2) (*.f64 im im)))
(fma.f64 (sqrt.f64 (exp.f64 re)) (sqrt.f64 (exp.f64 re)) (*.f64 (*.f64 (*.f64 (exp.f64 re) -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) -1/2) (*.f64 im im)))
(fma.f64 (sqrt.f64 (exp.f64 re)) (*.f64 (sqrt.f64 (exp.f64 re)) 1) (*.f64 (*.f64 (*.f64 (exp.f64 re) -1/2) (*.f64 im im)) 1))
(fma.f64 (sqrt.f64 (exp.f64 re)) (*.f64 (sqrt.f64 (exp.f64 re)) (*.f64 -1/2 (*.f64 im im))) (exp.f64 re))
(fma.f64 (*.f64 im (sqrt.f64 -1/2)) (*.f64 (*.f64 im (sqrt.f64 -1/2)) (exp.f64 re)) (exp.f64 re))
(fma.f64 (*.f64 -1/2 im) (*.f64 im (exp.f64 re)) (exp.f64 re))
(fma.f64 (*.f64 (cbrt.f64 (*.f64 (*.f64 (exp.f64 re) -1/2) (*.f64 im im))) (cbrt.f64 (*.f64 (*.f64 (exp.f64 re) -1/2) (*.f64 im im)))) (cbrt.f64 (*.f64 (*.f64 (exp.f64 re) -1/2) (*.f64 im im))) (exp.f64 re))
(fma.f64 (sqrt.f64 (*.f64 (*.f64 (exp.f64 re) -1/2) (*.f64 im im))) (sqrt.f64 (*.f64 (*.f64 (exp.f64 re) -1/2) (*.f64 im im))) (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 (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 -1/2 (*.f64 im im)) (pow.f64 (cbrt.f64 (exp.f64 re)) 2)) (cbrt.f64 (exp.f64 re)) (exp.f64 re))
(fma.f64 (*.f64 (*.f64 -1/2 (*.f64 im im)) (sqrt.f64 (exp.f64 re))) (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 -1/2 (*.f64 im im))) (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 -1/2 im)) im (exp.f64 re))
(+.f64 0 (*.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 (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 -1/2 (*.f64 im im) 1) 1)
(pow.f64 (*.f64 -1/2 (*.f64 im im)) 1)
(pow.f64 (cbrt.f64 (*.f64 -1/2 (*.f64 im im))) 3)
(pow.f64 (*.f64 (pow.f64 (*.f64 im im) 3) -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 -1/2 (*.f64 im im)))))
(cbrt.f64 (*.f64 (pow.f64 (*.f64 im im) 3) -1/8))
(expm1.f64 (log1p.f64 (*.f64 -1/2 (*.f64 im im))))
(expm1.f64 (*.f64 (log1p.f64 (*.f64 -1/2 (*.f64 im im))) 1))
(exp.f64 (fma.f64 2 (log.f64 im) (log1p.f64 -3/2)))
(exp.f64 (*.f64 (fma.f64 2 (log.f64 im) (log1p.f64 -3/2)) 1))
(exp.f64 (*.f64 (*.f64 (fma.f64 2 (log.f64 im) (log1p.f64 -3/2)) 1) 1))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 -1/2 (*.f64 im im)))) 3))
(exp.f64 (*.f64 (*.f64 3 (fma.f64 2 (log.f64 im) (log1p.f64 -3/2))) 1/3))
(exp.f64 (*.f64 (*.f64 (fma.f64 2 (log.f64 im) (log1p.f64 -3/2)) 3) 1/3))
(exp.f64 (*.f64 (log.f64 (*.f64 im (sqrt.f64 -1/2))) 2))
(log1p.f64 (expm1.f64 (*.f64 -1/2 (*.f64 im im))))
(fma.f64 1 (fma.f64 -1/2 (*.f64 im im) 1) -1)
(fma.f64 (fma.f64 -1/2 (*.f64 im im) 1) 1 -1)
(fma.f64 (cbrt.f64 (fma.f64 -1/2 (*.f64 im im) 1)) (pow.f64 (cbrt.f64 (fma.f64 -1/2 (*.f64 im im) 1)) 2) -1)
(fma.f64 (pow.f64 (cbrt.f64 (fma.f64 -1/2 (*.f64 im im) 1)) 2) (cbrt.f64 (fma.f64 -1/2 (*.f64 im im) 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 (*.f64 im im) 3) -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)
(+.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 1 (cos.f64 im))
(*.f64 (cos.f64 im) 1)
(*.f64 (cbrt.f64 (cos.f64 im)) (pow.f64 (cbrt.f64 (cos.f64 im)) 2))
(*.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (cos.f64 im))) 2) (*.f64 (cbrt.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 (pow.f64 (cos.f64 im) 1/6) (*.f64 (pow.f64 (cos.f64 im) 1/6) (pow.f64 (cbrt.f64 (cos.f64 im)) 2)))
(*.f64 (sqrt.f64 (cos.f64 im)) (sqrt.f64 (cos.f64 im)))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (cos.f64 im))) 2) 3) (cbrt.f64 (cos.f64 im)))
(*.f64 (pow.f64 (pow.f64 (cos.f64 im) 1/6) 3) (pow.f64 (pow.f64 (cos.f64 im) 1/6) 3))
(*.f64 (*.f64 (pow.f64 (cbrt.f64 (cos.f64 im)) 2) 1) (cbrt.f64 (cos.f64 im)))
(*.f64 (*.f64 (pow.f64 (cbrt.f64 (cos.f64 im)) 2) (pow.f64 (cbrt.f64 (cbrt.f64 (cos.f64 im))) 2)) (cbrt.f64 (cbrt.f64 (cos.f64 im))))
(*.f64 (*.f64 (pow.f64 (cbrt.f64 (cos.f64 im)) 2) (pow.f64 (cos.f64 im) 1/6)) (pow.f64 (cos.f64 im) 1/6))
(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)))
(exp.f64 (log.f64 (cos.f64 im)))
(exp.f64 (*.f64 (log.f64 (cos.f64 im)) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (cos.f64 im)) 1) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (cos.f64 im)) 1/3) 3))
(exp.f64 (*.f64 (*.f64 (log.f64 (cbrt.f64 (cos.f64 im))) 1) 3))
(exp.f64 (*.f64 (*.f64 2/3 (log.f64 (cos.f64 im))) 3/2))
(exp.f64 (*.f64 (*.f64 3 (log.f64 (cos.f64 im))) 1/3))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (cos.f64 im))) 2))
(exp.f64 (*.f64 (*.f64 (log.f64 (cbrt.f64 (cos.f64 im))) 3/2) 2))
(log1p.f64 (expm1.f64 (cos.f64 im)))
(+.f64 0 (cbrt.f64 (cos.f64 im)))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (cbrt.f64 (cos.f64 im)))) (cbrt.f64 (exp.f64 (cbrt.f64 (cos.f64 im)))))) (log.f64 (cbrt.f64 (exp.f64 (cbrt.f64 (cos.f64 im))))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (cbrt.f64 (cos.f64 im))))) (log.f64 (sqrt.f64 (exp.f64 (cbrt.f64 (cos.f64 im))))))
(-.f64 (exp.f64 (log1p.f64 (cbrt.f64 (cos.f64 im)))) 1)
(*.f64 1 (cbrt.f64 (cos.f64 im)))
(*.f64 (cbrt.f64 (cos.f64 im)) 1)
(*.f64 (cbrt.f64 (cbrt.f64 (cos.f64 im))) (pow.f64 (cbrt.f64 (cbrt.f64 (cos.f64 im))) 2))
(*.f64 (cbrt.f64 (cbrt.f64 (cos.f64 im))) (exp.f64 (*.f64 (*.f64 2/3 (log.f64 (cos.f64 im))) 1/3)))
(*.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (cos.f64 im))) 2) (cbrt.f64 (cbrt.f64 (cos.f64 im))))
(*.f64 (pow.f64 (cos.f64 im) 1/6) (pow.f64 (cos.f64 im) 1/6))
(*.f64 (pow.f64 1 1/3) (cbrt.f64 (cos.f64 im)))
(*.f64 (exp.f64 (*.f64 (*.f64 2/3 (log.f64 (cos.f64 im))) 1/3)) (cbrt.f64 (cbrt.f64 (cos.f64 im))))
(*.f64 (exp.f64 (*.f64 (log.f64 (sqrt.f64 (cos.f64 im))) 1/3)) (exp.f64 (*.f64 (log.f64 (sqrt.f64 (cos.f64 im))) 1/3)))
(pow.f64 (cos.f64 im) 1/3)
(pow.f64 (cbrt.f64 (cos.f64 im)) 1)
(pow.f64 (cbrt.f64 (cbrt.f64 (cos.f64 im))) 3)
(pow.f64 (pow.f64 (cos.f64 im) 1/6) 2)
(sqrt.f64 (pow.f64 (cbrt.f64 (cos.f64 im)) 2))
(log.f64 (exp.f64 (cbrt.f64 (cos.f64 im))))
(log.f64 (+.f64 1 (expm1.f64 (cbrt.f64 (cos.f64 im)))))
(expm1.f64 (log1p.f64 (cbrt.f64 (cos.f64 im))))
(exp.f64 (log.f64 (cbrt.f64 (cos.f64 im))))
(exp.f64 (*.f64 (log.f64 (cos.f64 im)) 1/3))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (cos.f64 im))) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (cos.f64 im)) 1) 1/3))
(exp.f64 (*.f64 (*.f64 (log.f64 (cos.f64 im)) 1/3) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (cbrt.f64 (cos.f64 im))) 1) 1))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (cbrt.f64 (cos.f64 im)))) 3))
(exp.f64 (*.f64 (*.f64 1/6 (log.f64 (cos.f64 im))) 2))
(log1p.f64 (expm1.f64 (cbrt.f64 (cos.f64 im))))

simplify118.0ms (3.7%)

Algorithm
egg-herbie
Rules
1146×fma-neg
1034×log-prod
670×exp-prod
590×associate-*r*
562×associate-*l*
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
04234607
19894451
231234277
374294273
Stop Event
node limit
Counts
221 → 235
Calls
Call 1
Inputs
(+.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))
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 (pow.f64 1 1/3) (cos.f64 im))
(*.f64 (pow.f64 1 1/3) (cos.f64 im))
(*.f64 (pow.f64 1 1/3) (cos.f64 im))
(*.f64 (pow.f64 1 1/3) (cos.f64 im))
(*.f64 (pow.f64 1 1/3) (cos.f64 im))
(*.f64 (pow.f64 1 1/3) (cos.f64 im))
(*.f64 (pow.f64 1 1/3) (cos.f64 im))
(*.f64 (pow.f64 1 1/3) (cos.f64 im))
1
(+.f64 1 (*.f64 -1/6 (pow.f64 im 2)))
(+.f64 1 (+.f64 (*.f64 -1/6 (pow.f64 im 2)) (*.f64 -1/72 (pow.f64 im 4))))
(+.f64 1 (+.f64 (*.f64 -1/6 (pow.f64 im 2)) (+.f64 (*.f64 -23/6480 (pow.f64 im 6)) (*.f64 -1/72 (pow.f64 im 4)))))
(pow.f64 (cos.f64 im) 1/3)
(pow.f64 (cos.f64 im) 1/3)
(pow.f64 (cos.f64 im) 1/3)
(pow.f64 (cos.f64 im) 1/3)
(pow.f64 (cos.f64 im) 1/3)
(pow.f64 (cos.f64 im) 1/3)
(pow.f64 (cos.f64 im) 1/3)
(pow.f64 (cos.f64 im) 1/3)
(+.f64 (exp.f64 re) (*.f64 (*.f64 (exp.f64 re) -1/2) (*.f64 im im)))
(+.f64 (exp.f64 re) (*.f64 (*.f64 (*.f64 (exp.f64 re) -1/2) (*.f64 im im)) 1))
(+.f64 0 (*.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 im im) 1)))
(+.f64 (*.f64 (*.f64 (exp.f64 re) -1/2) (*.f64 im im)) (exp.f64 re))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 (fma.f64 -1/2 (*.f64 im im) 1)) (exp.f64 re))) (cbrt.f64 (pow.f64 (exp.f64 (fma.f64 -1/2 (*.f64 im im) 1)) (exp.f64 re))))) (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 (fma.f64 -1/2 (*.f64 im im) 1)) (exp.f64 re)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (fma.f64 -1/2 (*.f64 im im) 1)) (exp.f64 re)))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 im im) 1)))) 1)
(/.f64 (+.f64 (pow.f64 (exp.f64 re) 3) (pow.f64 (*.f64 (*.f64 (exp.f64 re) -1/2) (*.f64 im im)) 3)) (+.f64 (pow.f64 (exp.f64 re) 2) (-.f64 (*.f64 (*.f64 (*.f64 (exp.f64 re) -1/2) (*.f64 im im)) (*.f64 (*.f64 (exp.f64 re) -1/2) (*.f64 im im))) (*.f64 (exp.f64 re) (*.f64 (*.f64 (exp.f64 re) -1/2) (*.f64 im im))))))
(/.f64 (-.f64 (pow.f64 (exp.f64 re) 2) (*.f64 (*.f64 (*.f64 (exp.f64 re) -1/2) (*.f64 im im)) (*.f64 (*.f64 (exp.f64 re) -1/2) (*.f64 im im)))) (-.f64 (exp.f64 re) (*.f64 (*.f64 (exp.f64 re) -1/2) (*.f64 im im))))
(/.f64 (*.f64 (exp.f64 re) (fma.f64 (pow.f64 (*.f64 im im) 3) -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 (*.f64 im im) 3) -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 -1/2 (*.f64 im im) 1)) 1)
(pow.f64 (cbrt.f64 (*.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 im im) 1))) 3)
(pow.f64 (pow.f64 (*.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 im im) 1)) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 im im) 1))) 2)
(sqrt.f64 (pow.f64 (*.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 im im) 1)) 2))
(log.f64 (pow.f64 (exp.f64 (fma.f64 -1/2 (*.f64 im im) 1)) (exp.f64 re)))
(log.f64 (+.f64 1 (expm1.f64 (*.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 (*.f64 (exp.f64 re) -1/2) (*.f64 im im)))))
(log.f64 (*.f64 (exp.f64 (*.f64 (*.f64 (exp.f64 re) -1/2) (*.f64 im im))) (exp.f64 (exp.f64 re))))
(log.f64 (*.f64 (exp.f64 (*.f64 (*.f64 (exp.f64 re) -1/2) (*.f64 im im))) (+.f64 1 (expm1.f64 (exp.f64 re)))))
(cbrt.f64 (pow.f64 (*.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 im im) 1)) 3))
(cbrt.f64 (*.f64 (pow.f64 (exp.f64 re) 3) (pow.f64 (fma.f64 -1/2 (*.f64 im im) 1) 3)))
(cbrt.f64 (*.f64 (pow.f64 (fma.f64 -1/2 (*.f64 im im) 1) 3) (pow.f64 (exp.f64 re) 3)))
(expm1.f64 (log1p.f64 (*.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 im im) 1))))
(exp.f64 (+.f64 re (log1p.f64 (*.f64 -1/2 (*.f64 im im)))))
(exp.f64 (*.f64 (+.f64 re (log1p.f64 (*.f64 -1/2 (*.f64 im im)))) 1))
(exp.f64 (*.f64 (*.f64 (+.f64 re (log1p.f64 (*.f64 -1/2 (*.f64 im im)))) 1) 1))
(exp.f64 (*.f64 (*.f64 1/3 (+.f64 re (log1p.f64 (*.f64 -1/2 (*.f64 im im))))) 3))
(exp.f64 (*.f64 (*.f64 3 (+.f64 re (log1p.f64 (*.f64 -1/2 (*.f64 im im))))) 1/3))
(exp.f64 (*.f64 (*.f64 1/2 (+.f64 re (log1p.f64 (*.f64 -1/2 (*.f64 im im))))) 2))
(log1p.f64 (expm1.f64 (*.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 im im) 1))))
(fma.f64 (exp.f64 re) 1 (*.f64 (*.f64 (exp.f64 re) -1/2) (*.f64 im im)))
(fma.f64 (exp.f64 re) 1 (*.f64 (*.f64 (*.f64 (exp.f64 re) -1/2) (*.f64 im im)) 1))
(fma.f64 (exp.f64 re) (*.f64 -1/2 (*.f64 im im)) (exp.f64 re))
(fma.f64 1 (exp.f64 re) (*.f64 (*.f64 (exp.f64 re) -1/2) (*.f64 im im)))
(fma.f64 1 (exp.f64 re) (*.f64 (*.f64 (*.f64 (exp.f64 re) -1/2) (*.f64 im im)) 1))
(fma.f64 1 (*.f64 (*.f64 (exp.f64 re) -1/2) (*.f64 im im)) (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 -1/2 (*.f64 im im)) (exp.f64 re) (exp.f64 re))
(fma.f64 (cbrt.f64 (exp.f64 re)) (pow.f64 (cbrt.f64 (exp.f64 re)) 2) (*.f64 (*.f64 (exp.f64 re) -1/2) (*.f64 im im)))
(fma.f64 (cbrt.f64 (exp.f64 re)) (pow.f64 (cbrt.f64 (exp.f64 re)) 2) (*.f64 (*.f64 (*.f64 (exp.f64 re) -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) -1/2) (*.f64 im im)))
(fma.f64 (pow.f64 (cbrt.f64 (exp.f64 re)) 2) (cbrt.f64 (exp.f64 re)) (*.f64 (*.f64 (*.f64 (exp.f64 re) -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) -1/2) (*.f64 im im)))
(fma.f64 (pow.f64 (cbrt.f64 (exp.f64 re)) 2) (*.f64 (cbrt.f64 (exp.f64 re)) 1) (*.f64 (*.f64 (*.f64 (exp.f64 re) -1/2) (*.f64 im im)) 1))
(fma.f64 (pow.f64 (cbrt.f64 (exp.f64 re)) 2) (*.f64 (cbrt.f64 (exp.f64 re)) (*.f64 -1/2 (*.f64 im im))) (exp.f64 re))
(fma.f64 (cbrt.f64 (*.f64 (pow.f64 im 4) 1/4)) (*.f64 (cbrt.f64 (*.f64 -1/2 (*.f64 im im))) (exp.f64 re)) (exp.f64 re))
(fma.f64 (sqrt.f64 (exp.f64 re)) (sqrt.f64 (exp.f64 re)) (*.f64 (*.f64 (exp.f64 re) -1/2) (*.f64 im im)))
(fma.f64 (sqrt.f64 (exp.f64 re)) (sqrt.f64 (exp.f64 re)) (*.f64 (*.f64 (*.f64 (exp.f64 re) -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) -1/2) (*.f64 im im)))
(fma.f64 (sqrt.f64 (exp.f64 re)) (*.f64 (sqrt.f64 (exp.f64 re)) 1) (*.f64 (*.f64 (*.f64 (exp.f64 re) -1/2) (*.f64 im im)) 1))
(fma.f64 (sqrt.f64 (exp.f64 re)) (*.f64 (sqrt.f64 (exp.f64 re)) (*.f64 -1/2 (*.f64 im im))) (exp.f64 re))
(fma.f64 (*.f64 im (sqrt.f64 -1/2)) (*.f64 (*.f64 im (sqrt.f64 -1/2)) (exp.f64 re)) (exp.f64 re))
(fma.f64 (*.f64 -1/2 im) (*.f64 im (exp.f64 re)) (exp.f64 re))
(fma.f64 (*.f64 (cbrt.f64 (*.f64 (*.f64 (exp.f64 re) -1/2) (*.f64 im im))) (cbrt.f64 (*.f64 (*.f64 (exp.f64 re) -1/2) (*.f64 im im)))) (cbrt.f64 (*.f64 (*.f64 (exp.f64 re) -1/2) (*.f64 im im))) (exp.f64 re))
(fma.f64 (sqrt.f64 (*.f64 (*.f64 (exp.f64 re) -1/2) (*.f64 im im))) (sqrt.f64 (*.f64 (*.f64 (exp.f64 re) -1/2) (*.f64 im im))) (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 (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 -1/2 (*.f64 im im)) (pow.f64 (cbrt.f64 (exp.f64 re)) 2)) (cbrt.f64 (exp.f64 re)) (exp.f64 re))
(fma.f64 (*.f64 (*.f64 -1/2 (*.f64 im im)) (sqrt.f64 (exp.f64 re))) (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 -1/2 (*.f64 im im))) (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 -1/2 im)) im (exp.f64 re))
(+.f64 0 (*.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 (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 -1/2 (*.f64 im im) 1) 1)
(pow.f64 (*.f64 -1/2 (*.f64 im im)) 1)
(pow.f64 (cbrt.f64 (*.f64 -1/2 (*.f64 im im))) 3)
(pow.f64 (*.f64 (pow.f64 (*.f64 im im) 3) -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 -1/2 (*.f64 im im)))))
(cbrt.f64 (*.f64 (pow.f64 (*.f64 im im) 3) -1/8))
(expm1.f64 (log1p.f64 (*.f64 -1/2 (*.f64 im im))))
(expm1.f64 (*.f64 (log1p.f64 (*.f64 -1/2 (*.f64 im im))) 1))
(exp.f64 (fma.f64 2 (log.f64 im) (log1p.f64 -3/2)))
(exp.f64 (*.f64 (fma.f64 2 (log.f64 im) (log1p.f64 -3/2)) 1))
(exp.f64 (*.f64 (*.f64 (fma.f64 2 (log.f64 im) (log1p.f64 -3/2)) 1) 1))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 -1/2 (*.f64 im im)))) 3))
(exp.f64 (*.f64 (*.f64 3 (fma.f64 2 (log.f64 im) (log1p.f64 -3/2))) 1/3))
(exp.f64 (*.f64 (*.f64 (fma.f64 2 (log.f64 im) (log1p.f64 -3/2)) 3) 1/3))
(exp.f64 (*.f64 (log.f64 (*.f64 im (sqrt.f64 -1/2))) 2))
(log1p.f64 (expm1.f64 (*.f64 -1/2 (*.f64 im im))))
(fma.f64 1 (fma.f64 -1/2 (*.f64 im im) 1) -1)
(fma.f64 (fma.f64 -1/2 (*.f64 im im) 1) 1 -1)
(fma.f64 (cbrt.f64 (fma.f64 -1/2 (*.f64 im im) 1)) (pow.f64 (cbrt.f64 (fma.f64 -1/2 (*.f64 im im) 1)) 2) -1)
(fma.f64 (pow.f64 (cbrt.f64 (fma.f64 -1/2 (*.f64 im im) 1)) 2) (cbrt.f64 (fma.f64 -1/2 (*.f64 im im) 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 (*.f64 im im) 3) -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)
(+.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 1 (cos.f64 im))
(*.f64 (cos.f64 im) 1)
(*.f64 (cbrt.f64 (cos.f64 im)) (pow.f64 (cbrt.f64 (cos.f64 im)) 2))
(*.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (cos.f64 im))) 2) (*.f64 (cbrt.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 (pow.f64 (cos.f64 im) 1/6) (*.f64 (pow.f64 (cos.f64 im) 1/6) (pow.f64 (cbrt.f64 (cos.f64 im)) 2)))
(*.f64 (sqrt.f64 (cos.f64 im)) (sqrt.f64 (cos.f64 im)))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (cos.f64 im))) 2) 3) (cbrt.f64 (cos.f64 im)))
(*.f64 (pow.f64 (pow.f64 (cos.f64 im) 1/6) 3) (pow.f64 (pow.f64 (cos.f64 im) 1/6) 3))
(*.f64 (*.f64 (pow.f64 (cbrt.f64 (cos.f64 im)) 2) 1) (cbrt.f64 (cos.f64 im)))
(*.f64 (*.f64 (pow.f64 (cbrt.f64 (cos.f64 im)) 2) (pow.f64 (cbrt.f64 (cbrt.f64 (cos.f64 im))) 2)) (cbrt.f64 (cbrt.f64 (cos.f64 im))))
(*.f64 (*.f64 (pow.f64 (cbrt.f64 (cos.f64 im)) 2) (pow.f64 (cos.f64 im) 1/6)) (pow.f64 (cos.f64 im) 1/6))
(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)))
(exp.f64 (log.f64 (cos.f64 im)))
(exp.f64 (*.f64 (log.f64 (cos.f64 im)) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (cos.f64 im)) 1) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (cos.f64 im)) 1/3) 3))
(exp.f64 (*.f64 (*.f64 (log.f64 (cbrt.f64 (cos.f64 im))) 1) 3))
(exp.f64 (*.f64 (*.f64 2/3 (log.f64 (cos.f64 im))) 3/2))
(exp.f64 (*.f64 (*.f64 3 (log.f64 (cos.f64 im))) 1/3))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (cos.f64 im))) 2))
(exp.f64 (*.f64 (*.f64 (log.f64 (cbrt.f64 (cos.f64 im))) 3/2) 2))
(log1p.f64 (expm1.f64 (cos.f64 im)))
(+.f64 0 (cbrt.f64 (cos.f64 im)))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (cbrt.f64 (cos.f64 im)))) (cbrt.f64 (exp.f64 (cbrt.f64 (cos.f64 im)))))) (log.f64 (cbrt.f64 (exp.f64 (cbrt.f64 (cos.f64 im))))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (cbrt.f64 (cos.f64 im))))) (log.f64 (sqrt.f64 (exp.f64 (cbrt.f64 (cos.f64 im))))))
(-.f64 (exp.f64 (log1p.f64 (cbrt.f64 (cos.f64 im)))) 1)
(*.f64 1 (cbrt.f64 (cos.f64 im)))
(*.f64 (cbrt.f64 (cos.f64 im)) 1)
(*.f64 (cbrt.f64 (cbrt.f64 (cos.f64 im))) (pow.f64 (cbrt.f64 (cbrt.f64 (cos.f64 im))) 2))
(*.f64 (cbrt.f64 (cbrt.f64 (cos.f64 im))) (exp.f64 (*.f64 (*.f64 2/3 (log.f64 (cos.f64 im))) 1/3)))
(*.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (cos.f64 im))) 2) (cbrt.f64 (cbrt.f64 (cos.f64 im))))
(*.f64 (pow.f64 (cos.f64 im) 1/6) (pow.f64 (cos.f64 im) 1/6))
(*.f64 (pow.f64 1 1/3) (cbrt.f64 (cos.f64 im)))
(*.f64 (exp.f64 (*.f64 (*.f64 2/3 (log.f64 (cos.f64 im))) 1/3)) (cbrt.f64 (cbrt.f64 (cos.f64 im))))
(*.f64 (exp.f64 (*.f64 (log.f64 (sqrt.f64 (cos.f64 im))) 1/3)) (exp.f64 (*.f64 (log.f64 (sqrt.f64 (cos.f64 im))) 1/3)))
(pow.f64 (cos.f64 im) 1/3)
(pow.f64 (cbrt.f64 (cos.f64 im)) 1)
(pow.f64 (cbrt.f64 (cbrt.f64 (cos.f64 im))) 3)
(pow.f64 (pow.f64 (cos.f64 im) 1/6) 2)
(sqrt.f64 (pow.f64 (cbrt.f64 (cos.f64 im)) 2))
(log.f64 (exp.f64 (cbrt.f64 (cos.f64 im))))
(log.f64 (+.f64 1 (expm1.f64 (cbrt.f64 (cos.f64 im)))))
(expm1.f64 (log1p.f64 (cbrt.f64 (cos.f64 im))))
(exp.f64 (log.f64 (cbrt.f64 (cos.f64 im))))
(exp.f64 (*.f64 (log.f64 (cos.f64 im)) 1/3))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (cos.f64 im))) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (cos.f64 im)) 1) 1/3))
(exp.f64 (*.f64 (*.f64 (log.f64 (cos.f64 im)) 1/3) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (cbrt.f64 (cos.f64 im))) 1) 1))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (cbrt.f64 (cos.f64 im)))) 3))
(exp.f64 (*.f64 (*.f64 1/6 (log.f64 (cos.f64 im))) 2))
(log1p.f64 (expm1.f64 (cbrt.f64 (cos.f64 im))))
Outputs
(+.f64 1 (*.f64 -1/2 (pow.f64 im 2)))
(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 -1/2 (*.f64 im im) 1) (*.f64 re (fma.f64 -1/2 (*.f64 im 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 -1/2 (*.f64 im im) 1)) (+.f64 (fma.f64 -1/2 (*.f64 im im) 1) (*.f64 re (fma.f64 -1/2 (*.f64 im im) 1))))
(fma.f64 1/2 (*.f64 re (*.f64 re (fma.f64 -1/2 (*.f64 im im) 1))) (*.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 -1/2 (*.f64 im im) 1)) (fma.f64 1/2 (*.f64 (*.f64 re re) (fma.f64 -1/2 (*.f64 im im) 1)) (+.f64 (fma.f64 -1/2 (*.f64 im im) 1) (*.f64 re (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)) (fma.f64 1/2 (*.f64 re (*.f64 re (fma.f64 -1/2 (*.f64 im im) 1))) (*.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 -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 -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 -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 -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 -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 -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 -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 -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 -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 -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 -1/2 (*.f64 im im) 1))
(*.f64 -1/2 (*.f64 (exp.f64 re) (pow.f64 im 2)))
(*.f64 -1/2 (*.f64 im (*.f64 im (exp.f64 re))))
(*.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 -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 -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 -1/2 (*.f64 im im) 1))
(*.f64 -1/2 (*.f64 (exp.f64 re) (pow.f64 im 2)))
(*.f64 -1/2 (*.f64 im (*.f64 im (exp.f64 re))))
(*.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 -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 -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 -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))
1
(+.f64 1 (*.f64 -1/2 (pow.f64 im 2)))
(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))))
(+.f64 (*.f64 1/24 (pow.f64 im 4)) (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 -1/2 (*.f64 im im) 1) (fma.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 (fma.f64 1/24 (pow.f64 im 4) (*.f64 -1/720 (pow.f64 im 6))) (fma.f64 -1/2 (*.f64 im im) 1))
(*.f64 (pow.f64 1 1/3) (cos.f64 im))
(cos.f64 im)
(*.f64 (pow.f64 1 1/3) (cos.f64 im))
(cos.f64 im)
(*.f64 (pow.f64 1 1/3) (cos.f64 im))
(cos.f64 im)
(*.f64 (pow.f64 1 1/3) (cos.f64 im))
(cos.f64 im)
(*.f64 (pow.f64 1 1/3) (cos.f64 im))
(cos.f64 im)
(*.f64 (pow.f64 1 1/3) (cos.f64 im))
(cos.f64 im)
(*.f64 (pow.f64 1 1/3) (cos.f64 im))
(cos.f64 im)
(*.f64 (pow.f64 1 1/3) (cos.f64 im))
(cos.f64 im)
1
(+.f64 1 (*.f64 -1/6 (pow.f64 im 2)))
(+.f64 1 (*.f64 -1/6 (*.f64 im im)))
(fma.f64 -1/6 (*.f64 im im) 1)
(+.f64 1 (+.f64 (*.f64 -1/6 (pow.f64 im 2)) (*.f64 -1/72 (pow.f64 im 4))))
(+.f64 1 (fma.f64 -1/6 (*.f64 im im) (*.f64 (pow.f64 im 4) -1/72)))
(+.f64 (fma.f64 -1/6 (*.f64 im im) 1) (*.f64 (pow.f64 im 4) -1/72))
(+.f64 1 (+.f64 (*.f64 -1/6 (pow.f64 im 2)) (+.f64 (*.f64 -23/6480 (pow.f64 im 6)) (*.f64 -1/72 (pow.f64 im 4)))))
(+.f64 1 (fma.f64 -1/6 (*.f64 im im) (fma.f64 -23/6480 (pow.f64 im 6) (*.f64 (pow.f64 im 4) -1/72))))
(+.f64 1 (fma.f64 -1/6 (*.f64 im im) (fma.f64 (pow.f64 im 4) -1/72 (*.f64 (pow.f64 im 6) -23/6480))))
(+.f64 (fma.f64 -1/6 (*.f64 im im) 1) (fma.f64 (pow.f64 im 4) -1/72 (*.f64 (pow.f64 im 6) -23/6480)))
(pow.f64 (cos.f64 im) 1/3)
(cbrt.f64 (cos.f64 im))
(pow.f64 (cos.f64 im) 1/3)
(cbrt.f64 (cos.f64 im))
(pow.f64 (cos.f64 im) 1/3)
(cbrt.f64 (cos.f64 im))
(pow.f64 (cos.f64 im) 1/3)
(cbrt.f64 (cos.f64 im))
(pow.f64 (cos.f64 im) 1/3)
(cbrt.f64 (cos.f64 im))
(pow.f64 (cos.f64 im) 1/3)
(cbrt.f64 (cos.f64 im))
(pow.f64 (cos.f64 im) 1/3)
(cbrt.f64 (cos.f64 im))
(pow.f64 (cos.f64 im) 1/3)
(cbrt.f64 (cos.f64 im))
(+.f64 (exp.f64 re) (*.f64 (*.f64 (exp.f64 re) -1/2) (*.f64 im im)))
(*.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 im im) 1))
(+.f64 (exp.f64 re) (*.f64 (*.f64 (*.f64 (exp.f64 re) -1/2) (*.f64 im im)) 1))
(*.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 im im) 1))
(+.f64 0 (*.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 im im) 1)))
(*.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 im im) 1))
(+.f64 (*.f64 (*.f64 (exp.f64 re) -1/2) (*.f64 im im)) (exp.f64 re))
(*.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 im im) 1))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 (fma.f64 -1/2 (*.f64 im im) 1)) (exp.f64 re))) (cbrt.f64 (pow.f64 (exp.f64 (fma.f64 -1/2 (*.f64 im im) 1)) (exp.f64 re))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (fma.f64 -1/2 (*.f64 im im) 1)) (exp.f64 re)))))
(+.f64 (*.f64 2 (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (fma.f64 -1/2 (*.f64 im im) 1)) (exp.f64 re))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (fma.f64 -1/2 (*.f64 im im) 1)) (exp.f64 re)))))
(*.f64 3 (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (exp.f64 re)) (fma.f64 -1/2 (*.f64 im im) 1)))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (fma.f64 -1/2 (*.f64 im im) 1)) (exp.f64 re)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (fma.f64 -1/2 (*.f64 im im) 1)) (exp.f64 re)))))
(*.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 im im) 1))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 im im) 1)))) 1)
(*.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 im im) 1))
(/.f64 (+.f64 (pow.f64 (exp.f64 re) 3) (pow.f64 (*.f64 (*.f64 (exp.f64 re) -1/2) (*.f64 im im)) 3)) (+.f64 (pow.f64 (exp.f64 re) 2) (-.f64 (*.f64 (*.f64 (*.f64 (exp.f64 re) -1/2) (*.f64 im im)) (*.f64 (*.f64 (exp.f64 re) -1/2) (*.f64 im im))) (*.f64 (exp.f64 re) (*.f64 (*.f64 (exp.f64 re) -1/2) (*.f64 im im))))))
(/.f64 (+.f64 (pow.f64 (exp.f64 re) 3) (*.f64 (pow.f64 (*.f64 -1/2 (exp.f64 re)) 3) (pow.f64 im 6))) (+.f64 (pow.f64 (exp.f64 re) 2) (*.f64 (*.f64 -1/2 (*.f64 im (*.f64 im (exp.f64 re)))) (-.f64 (*.f64 -1/2 (*.f64 im (*.f64 im (exp.f64 re)))) (exp.f64 re)))))
(/.f64 (fma.f64 (*.f64 (pow.f64 (exp.f64 re) 3) -1/8) (pow.f64 im 6) (pow.f64 (exp.f64 re) 3)) (fma.f64 (*.f64 -1/2 (*.f64 im (*.f64 im (exp.f64 re)))) (-.f64 (*.f64 -1/2 (*.f64 im (*.f64 im (exp.f64 re)))) (exp.f64 re)) (pow.f64 (exp.f64 re) 2)))
(/.f64 (fma.f64 (pow.f64 (*.f64 -1/2 (exp.f64 re)) 3) (pow.f64 im 6) (pow.f64 (exp.f64 re) 3)) (+.f64 (pow.f64 (exp.f64 re) 2) (*.f64 (pow.f64 (exp.f64 re) 2) (-.f64 (*.f64 (pow.f64 im 4) 1/4) (*.f64 -1/2 (*.f64 im im))))))
(/.f64 (fma.f64 (pow.f64 (*.f64 -1/2 (exp.f64 re)) 3) (pow.f64 im 6) (pow.f64 (exp.f64 re) 3)) (+.f64 (pow.f64 (exp.f64 re) 2) (*.f64 (pow.f64 (exp.f64 re) 2) (fma.f64 (pow.f64 im 4) 1/4 (*.f64 im (*.f64 im 1/2))))))
(/.f64 (-.f64 (pow.f64 (exp.f64 re) 2) (*.f64 (*.f64 (*.f64 (exp.f64 re) -1/2) (*.f64 im im)) (*.f64 (*.f64 (exp.f64 re) -1/2) (*.f64 im im)))) (-.f64 (exp.f64 re) (*.f64 (*.f64 (exp.f64 re) -1/2) (*.f64 im im))))
(/.f64 (-.f64 (pow.f64 (exp.f64 re) 2) (*.f64 (*.f64 (*.f64 -1/2 (exp.f64 re)) (*.f64 -1/2 (exp.f64 re))) (pow.f64 im 4))) (-.f64 (exp.f64 re) (*.f64 -1/2 (*.f64 im (*.f64 im (exp.f64 re))))))
(/.f64 (-.f64 (pow.f64 (exp.f64 re) 2) (*.f64 (pow.f64 im 4) (*.f64 (pow.f64 (exp.f64 re) 2) 1/4))) (+.f64 (exp.f64 re) (*.f64 1/2 (*.f64 im (*.f64 im (exp.f64 re))))))
(/.f64 (+.f64 (pow.f64 (exp.f64 re) 2) (*.f64 (pow.f64 im 4) (*.f64 (pow.f64 (exp.f64 re) 2) -1/4))) (*.f64 (exp.f64 re) (fma.f64 (*.f64 im 1/2) im 1)))
(/.f64 (*.f64 (exp.f64 re) (fma.f64 (pow.f64 (*.f64 im im) 3) -1/8 1)) (+.f64 1 (fma.f64 (pow.f64 im 4) 1/4 (*.f64 1/2 (*.f64 im im)))))
(/.f64 (exp.f64 re) (/.f64 (+.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 (/.f64 (exp.f64 re) (+.f64 1 (fma.f64 (pow.f64 im 4) 1/4 (*.f64 im (*.f64 im 1/2))))) (fma.f64 (pow.f64 im 6) -1/8 1))
(/.f64 (*.f64 (exp.f64 re) (-.f64 1 (*.f64 (pow.f64 im 4) 1/4))) (+.f64 1 (*.f64 1/2 (*.f64 im im))))
(/.f64 (-.f64 1 (*.f64 (pow.f64 im 4) 1/4)) (/.f64 (+.f64 1 (*.f64 1/2 (*.f64 im im))) (exp.f64 re)))
(*.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 (*.f64 im 1/2) im 1)) (exp.f64 re))
(/.f64 (*.f64 (fma.f64 (pow.f64 (*.f64 im im) 3) -1/8 1) (exp.f64 re)) (+.f64 1 (fma.f64 (pow.f64 im 4) 1/4 (*.f64 1/2 (*.f64 im im)))))
(/.f64 (exp.f64 re) (/.f64 (+.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 (/.f64 (exp.f64 re) (+.f64 1 (fma.f64 (pow.f64 im 4) 1/4 (*.f64 im (*.f64 im 1/2))))) (fma.f64 (pow.f64 im 6) -1/8 1))
(/.f64 (*.f64 (-.f64 1 (*.f64 (pow.f64 im 4) 1/4)) (exp.f64 re)) (+.f64 1 (*.f64 1/2 (*.f64 im im))))
(/.f64 (-.f64 1 (*.f64 (pow.f64 im 4) 1/4)) (/.f64 (+.f64 1 (*.f64 1/2 (*.f64 im im))) (exp.f64 re)))
(*.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 (*.f64 im 1/2) im 1)) (exp.f64 re))
(pow.f64 (*.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 im im) 1)) 1)
(*.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 im im) 1))
(pow.f64 (cbrt.f64 (*.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 im im) 1))) 3)
(*.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 im im) 1))
(pow.f64 (pow.f64 (*.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 im im) 1)) 3) 1/3)
(*.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 im im) 1))
(pow.f64 (sqrt.f64 (*.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 im im) 1))) 2)
(*.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 im im) 1))
(sqrt.f64 (pow.f64 (*.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 im im) 1)) 2))
(*.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 im im) 1))
(log.f64 (pow.f64 (exp.f64 (fma.f64 -1/2 (*.f64 im im) 1)) (exp.f64 re)))
(*.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 im im) 1))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 im 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 (*.f64 (exp.f64 re) -1/2) (*.f64 im im)))))
(*.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 im im) 1))
(log.f64 (*.f64 (exp.f64 (*.f64 (*.f64 (exp.f64 re) -1/2) (*.f64 im im))) (exp.f64 (exp.f64 re))))
(*.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 im im) 1))
(log.f64 (*.f64 (exp.f64 (*.f64 (*.f64 (exp.f64 re) -1/2) (*.f64 im im))) (+.f64 1 (expm1.f64 (exp.f64 re)))))
(*.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 im im) 1))
(cbrt.f64 (pow.f64 (*.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 im im) 1)) 3))
(*.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 -1/2 (*.f64 im im) 1) 3)))
(*.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 im im) 1))
(cbrt.f64 (*.f64 (pow.f64 (fma.f64 -1/2 (*.f64 im im) 1) 3) (pow.f64 (exp.f64 re) 3)))
(*.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 im im) 1))
(expm1.f64 (log1p.f64 (*.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 im im) 1))))
(*.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 im im) 1))
(exp.f64 (+.f64 re (log1p.f64 (*.f64 -1/2 (*.f64 im im)))))
(exp.f64 (*.f64 (+.f64 re (log1p.f64 (*.f64 -1/2 (*.f64 im im)))) 1))
(exp.f64 (+.f64 re (log1p.f64 (*.f64 -1/2 (*.f64 im im)))))
(exp.f64 (*.f64 (*.f64 (+.f64 re (log1p.f64 (*.f64 -1/2 (*.f64 im im)))) 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 -1/2 (*.f64 im im))))) 3))
(exp.f64 (+.f64 re (log1p.f64 (*.f64 -1/2 (*.f64 im im)))))
(exp.f64 (*.f64 (*.f64 3 (+.f64 re (log1p.f64 (*.f64 -1/2 (*.f64 im im))))) 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 -1/2 (*.f64 im im))))) 2))
(exp.f64 (+.f64 re (log1p.f64 (*.f64 -1/2 (*.f64 im im)))))
(log1p.f64 (expm1.f64 (*.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 im 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) -1/2) (*.f64 im im)))
(*.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 im im) 1))
(fma.f64 (exp.f64 re) 1 (*.f64 (*.f64 (*.f64 (exp.f64 re) -1/2) (*.f64 im im)) 1))
(*.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 im im) 1))
(fma.f64 (exp.f64 re) (*.f64 -1/2 (*.f64 im im)) (exp.f64 re))
(*.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 im im) 1))
(fma.f64 1 (exp.f64 re) (*.f64 (*.f64 (exp.f64 re) -1/2) (*.f64 im im)))
(*.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 im im) 1))
(fma.f64 1 (exp.f64 re) (*.f64 (*.f64 (*.f64 (exp.f64 re) -1/2) (*.f64 im im)) 1))
(*.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 im im) 1))
(fma.f64 1 (*.f64 (*.f64 (exp.f64 re) -1/2) (*.f64 im im)) (exp.f64 re))
(*.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 -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 -1/2 (*.f64 im im) 1))
(fma.f64 (*.f64 -1/2 (*.f64 im im)) (exp.f64 re) (exp.f64 re))
(*.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) -1/2) (*.f64 im im)))
(*.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 (*.f64 (exp.f64 re) -1/2) (*.f64 im 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) -1/2) (*.f64 im im)))
(*.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 (*.f64 (exp.f64 re) -1/2) (*.f64 im 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) -1/2) (*.f64 im im)))
(*.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 (*.f64 (exp.f64 re) -1/2) (*.f64 im 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 -1/2 (*.f64 im im))) (exp.f64 re))
(*.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 -1/2 (*.f64 im im))) (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))
(fma.f64 (sqrt.f64 (exp.f64 re)) (sqrt.f64 (exp.f64 re)) (*.f64 (*.f64 (exp.f64 re) -1/2) (*.f64 im im)))
(*.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 (*.f64 (exp.f64 re) -1/2) (*.f64 im 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) -1/2) (*.f64 im im)))
(*.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 (*.f64 (exp.f64 re) -1/2) (*.f64 im 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 -1/2 (*.f64 im im))) (exp.f64 re))
(*.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 -1/2 (*.f64 im im) 1))
(fma.f64 (*.f64 -1/2 im) (*.f64 im (exp.f64 re)) (exp.f64 re))
(*.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 im im) 1))
(fma.f64 (*.f64 (cbrt.f64 (*.f64 (*.f64 (exp.f64 re) -1/2) (*.f64 im im))) (cbrt.f64 (*.f64 (*.f64 (exp.f64 re) -1/2) (*.f64 im im)))) (cbrt.f64 (*.f64 (*.f64 (exp.f64 re) -1/2) (*.f64 im im))) (exp.f64 re))
(*.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 im im) 1))
(fma.f64 (sqrt.f64 (*.f64 (*.f64 (exp.f64 re) -1/2) (*.f64 im im))) (sqrt.f64 (*.f64 (*.f64 (exp.f64 re) -1/2) (*.f64 im im))) (exp.f64 re))
(*.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 -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 -1/2 (*.f64 im im) 1))
(fma.f64 (*.f64 (*.f64 -1/2 (*.f64 im im)) (pow.f64 (cbrt.f64 (exp.f64 re)) 2)) (cbrt.f64 (exp.f64 re)) (exp.f64 re))
(*.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 im im) 1))
(fma.f64 (*.f64 (*.f64 -1/2 (*.f64 im im)) (sqrt.f64 (exp.f64 re))) (sqrt.f64 (exp.f64 re)) (exp.f64 re))
(*.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 -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 -1/2 (*.f64 im im) 1))
(fma.f64 (*.f64 (exp.f64 re) (cbrt.f64 (*.f64 (pow.f64 im 4) 1/4))) (cbrt.f64 (*.f64 -1/2 (*.f64 im im))) (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))
(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 -1/2 (*.f64 im im) 1))
(fma.f64 (*.f64 (exp.f64 re) (*.f64 -1/2 im)) im (exp.f64 re))
(*.f64 (exp.f64 re) (fma.f64 -1/2 (*.f64 im im) 1))
(+.f64 0 (*.f64 -1/2 (*.f64 im im)))
(*.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 (exp.f64 im) (*.f64 -1/2 im)))))
(+.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 -1/2 (*.f64 im im) 1) 1)
(*.f64 -1/2 (*.f64 im im))
(pow.f64 (*.f64 -1/2 (*.f64 im im)) 1)
(*.f64 -1/2 (*.f64 im im))
(pow.f64 (cbrt.f64 (*.f64 -1/2 (*.f64 im im))) 3)
(*.f64 -1/2 (*.f64 im im))
(pow.f64 (*.f64 (pow.f64 (*.f64 im im) 3) -1/8) 1/3)
(cbrt.f64 (*.f64 (pow.f64 im 6) -1/8))
(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 -1/2 (*.f64 im im)))))
(*.f64 -1/2 (*.f64 im im))
(cbrt.f64 (*.f64 (pow.f64 (*.f64 im im) 3) -1/8))
(cbrt.f64 (*.f64 (pow.f64 im 6) -1/8))
(expm1.f64 (log1p.f64 (*.f64 -1/2 (*.f64 im im))))
(*.f64 -1/2 (*.f64 im im))
(expm1.f64 (*.f64 (log1p.f64 (*.f64 -1/2 (*.f64 im im))) 1))
(*.f64 -1/2 (*.f64 im im))
(exp.f64 (fma.f64 2 (log.f64 im) (log1p.f64 -3/2)))
(*.f64 (*.f64 im im) (exp.f64 (log1p.f64 -3/2)))
(exp.f64 (*.f64 (fma.f64 2 (log.f64 im) (log1p.f64 -3/2)) 1))
(exp.f64 (fma.f64 2 (log.f64 im) (log1p.f64 -3/2)))
(*.f64 (*.f64 im im) (exp.f64 (log1p.f64 -3/2)))
(exp.f64 (*.f64 (*.f64 (fma.f64 2 (log.f64 im) (log1p.f64 -3/2)) 1) 1))
(exp.f64 (fma.f64 2 (log.f64 im) (log1p.f64 -3/2)))
(*.f64 (*.f64 im im) (exp.f64 (log1p.f64 -3/2)))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 -1/2 (*.f64 im im)))) 3))
(*.f64 -1/2 (*.f64 im im))
(exp.f64 (*.f64 (*.f64 3 (fma.f64 2 (log.f64 im) (log1p.f64 -3/2))) 1/3))
(exp.f64 (fma.f64 2 (log.f64 im) (log1p.f64 -3/2)))
(*.f64 (*.f64 im im) (exp.f64 (log1p.f64 -3/2)))
(exp.f64 (*.f64 (*.f64 (fma.f64 2 (log.f64 im) (log1p.f64 -3/2)) 3) 1/3))
(exp.f64 (fma.f64 2 (log.f64 im) (log1p.f64 -3/2)))
(*.f64 (*.f64 im im) (exp.f64 (log1p.f64 -3/2)))
(exp.f64 (*.f64 (log.f64 (*.f64 im (sqrt.f64 -1/2))) 2))
(*.f64 -1/2 (*.f64 im im))
(log1p.f64 (expm1.f64 (*.f64 -1/2 (*.f64 im im))))
(*.f64 -1/2 (*.f64 im im))
(fma.f64 1 (fma.f64 -1/2 (*.f64 im im) 1) -1)
(*.f64 -1/2 (*.f64 im im))
(fma.f64 (fma.f64 -1/2 (*.f64 im im) 1) 1 -1)
(*.f64 -1/2 (*.f64 im im))
(fma.f64 (cbrt.f64 (fma.f64 -1/2 (*.f64 im im) 1)) (pow.f64 (cbrt.f64 (fma.f64 -1/2 (*.f64 im im) 1)) 2) -1)
(*.f64 -1/2 (*.f64 im im))
(fma.f64 (pow.f64 (cbrt.f64 (fma.f64 -1/2 (*.f64 im im) 1)) 2) (cbrt.f64 (fma.f64 -1/2 (*.f64 im im) 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 (*.f64 im im) 3) -1/8 1) (/.f64 1 (+.f64 1 (fma.f64 (pow.f64 im 4) 1/4 (*.f64 1/2 (*.f64 im im))))) -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 (fma.f64 (pow.f64 im 6) -1/8 1) (/.f64 1 (+.f64 1 (fma.f64 (pow.f64 im 4) 1/4 (*.f64 im (*.f64 im 1/2))))) -1)
(+.f64 -1 (/.f64 (fma.f64 (pow.f64 im 6) -1/8 1) (+.f64 1 (fma.f64 (pow.f64 im 4) 1/4 (*.f64 im (*.f64 im 1/2))))))
(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 (*.f64 im 1/2) 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 1 (cos.f64 im))
(cos.f64 im)
(*.f64 (cos.f64 im) 1)
(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 (cbrt.f64 (cos.f64 im))) 2) (*.f64 (cbrt.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 (pow.f64 (cos.f64 im) 1/6) (*.f64 (pow.f64 (cos.f64 im) 1/6) (pow.f64 (cbrt.f64 (cos.f64 im)) 2)))
(cos.f64 im)
(*.f64 (sqrt.f64 (cos.f64 im)) (sqrt.f64 (cos.f64 im)))
(cos.f64 im)
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (cos.f64 im))) 2) 3) (cbrt.f64 (cos.f64 im)))
(cos.f64 im)
(*.f64 (pow.f64 (pow.f64 (cos.f64 im) 1/6) 3) (pow.f64 (pow.f64 (cos.f64 im) 1/6) 3))
(cos.f64 im)
(*.f64 (*.f64 (pow.f64 (cbrt.f64 (cos.f64 im)) 2) 1) (cbrt.f64 (cos.f64 im)))
(cos.f64 im)
(*.f64 (*.f64 (pow.f64 (cbrt.f64 (cos.f64 im)) 2) (pow.f64 (cbrt.f64 (cbrt.f64 (cos.f64 im))) 2)) (cbrt.f64 (cbrt.f64 (cos.f64 im))))
(cos.f64 im)
(*.f64 (*.f64 (pow.f64 (cbrt.f64 (cos.f64 im)) 2) (pow.f64 (cos.f64 im) 1/6)) (pow.f64 (cos.f64 im) 1/6))
(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)
(exp.f64 (log.f64 (cos.f64 im)))
(cos.f64 im)
(exp.f64 (*.f64 (log.f64 (cos.f64 im)) 1))
(cos.f64 im)
(exp.f64 (*.f64 (*.f64 (log.f64 (cos.f64 im)) 1) 1))
(cos.f64 im)
(exp.f64 (*.f64 (*.f64 (log.f64 (cos.f64 im)) 1/3) 3))
(cos.f64 im)
(exp.f64 (*.f64 (*.f64 (log.f64 (cbrt.f64 (cos.f64 im))) 1) 3))
(cos.f64 im)
(exp.f64 (*.f64 (*.f64 2/3 (log.f64 (cos.f64 im))) 3/2))
(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)
(exp.f64 (*.f64 (*.f64 (log.f64 (cbrt.f64 (cos.f64 im))) 3/2) 2))
(cos.f64 im)
(log1p.f64 (expm1.f64 (cos.f64 im)))
(cos.f64 im)
(+.f64 0 (cbrt.f64 (cos.f64 im)))
(cbrt.f64 (cos.f64 im))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (cbrt.f64 (cos.f64 im)))) (cbrt.f64 (exp.f64 (cbrt.f64 (cos.f64 im)))))) (log.f64 (cbrt.f64 (exp.f64 (cbrt.f64 (cos.f64 im))))))
(+.f64 (*.f64 2 (log.f64 (cbrt.f64 (exp.f64 (cbrt.f64 (cos.f64 im)))))) (log.f64 (cbrt.f64 (exp.f64 (cbrt.f64 (cos.f64 im))))))
(*.f64 3 (log.f64 (cbrt.f64 (exp.f64 (cbrt.f64 (cos.f64 im))))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (cbrt.f64 (cos.f64 im))))) (log.f64 (sqrt.f64 (exp.f64 (cbrt.f64 (cos.f64 im))))))
(*.f64 2 (log.f64 (sqrt.f64 (exp.f64 (cbrt.f64 (cos.f64 im))))))
(-.f64 (exp.f64 (log1p.f64 (cbrt.f64 (cos.f64 im)))) 1)
(cbrt.f64 (cos.f64 im))
(*.f64 1 (cbrt.f64 (cos.f64 im)))
(cbrt.f64 (cos.f64 im))
(*.f64 (cbrt.f64 (cos.f64 im)) 1)
(cbrt.f64 (cos.f64 im))
(*.f64 (cbrt.f64 (cbrt.f64 (cos.f64 im))) (pow.f64 (cbrt.f64 (cbrt.f64 (cos.f64 im))) 2))
(cbrt.f64 (cos.f64 im))
(*.f64 (cbrt.f64 (cbrt.f64 (cos.f64 im))) (exp.f64 (*.f64 (*.f64 2/3 (log.f64 (cos.f64 im))) 1/3)))
(cbrt.f64 (cos.f64 im))
(*.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (cos.f64 im))) 2) (cbrt.f64 (cbrt.f64 (cos.f64 im))))
(cbrt.f64 (cos.f64 im))
(*.f64 (pow.f64 (cos.f64 im) 1/6) (pow.f64 (cos.f64 im) 1/6))
(cbrt.f64 (cos.f64 im))
(*.f64 (pow.f64 1 1/3) (cbrt.f64 (cos.f64 im)))
(cbrt.f64 (cos.f64 im))
(*.f64 (exp.f64 (*.f64 (*.f64 2/3 (log.f64 (cos.f64 im))) 1/3)) (cbrt.f64 (cbrt.f64 (cos.f64 im))))
(cbrt.f64 (cos.f64 im))
(*.f64 (exp.f64 (*.f64 (log.f64 (sqrt.f64 (cos.f64 im))) 1/3)) (exp.f64 (*.f64 (log.f64 (sqrt.f64 (cos.f64 im))) 1/3)))
(cbrt.f64 (cos.f64 im))
(pow.f64 (cos.f64 im) 1/3)
(cbrt.f64 (cos.f64 im))
(pow.f64 (cbrt.f64 (cos.f64 im)) 1)
(cbrt.f64 (cos.f64 im))
(pow.f64 (cbrt.f64 (cbrt.f64 (cos.f64 im))) 3)
(cbrt.f64 (cos.f64 im))
(pow.f64 (pow.f64 (cos.f64 im) 1/6) 2)
(cbrt.f64 (cos.f64 im))
(sqrt.f64 (pow.f64 (cbrt.f64 (cos.f64 im)) 2))
(cbrt.f64 (cos.f64 im))
(log.f64 (exp.f64 (cbrt.f64 (cos.f64 im))))
(cbrt.f64 (cos.f64 im))
(log.f64 (+.f64 1 (expm1.f64 (cbrt.f64 (cos.f64 im)))))
(cbrt.f64 (cos.f64 im))
(expm1.f64 (log1p.f64 (cbrt.f64 (cos.f64 im))))
(cbrt.f64 (cos.f64 im))
(exp.f64 (log.f64 (cbrt.f64 (cos.f64 im))))
(cbrt.f64 (cos.f64 im))
(exp.f64 (*.f64 (log.f64 (cos.f64 im)) 1/3))
(cbrt.f64 (cos.f64 im))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (cos.f64 im))) 1))
(cbrt.f64 (cos.f64 im))
(exp.f64 (*.f64 (*.f64 (log.f64 (cos.f64 im)) 1) 1/3))
(cbrt.f64 (cos.f64 im))
(exp.f64 (*.f64 (*.f64 (log.f64 (cos.f64 im)) 1/3) 1))
(cbrt.f64 (cos.f64 im))
(exp.f64 (*.f64 (*.f64 (log.f64 (cbrt.f64 (cos.f64 im))) 1) 1))
(cbrt.f64 (cos.f64 im))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (cbrt.f64 (cos.f64 im)))) 3))
(cbrt.f64 (cos.f64 im))
(exp.f64 (*.f64 (*.f64 1/6 (log.f64 (cos.f64 im))) 2))
(cbrt.f64 (cos.f64 im))
(log1p.f64 (expm1.f64 (cbrt.f64 (cos.f64 im))))
(cbrt.f64 (cos.f64 im))

eval91.0ms (2.8%)

Compiler

Compiled 4516 to 2518 computations (44.2% saved)

prune41.0ms (1.3%)

Pruning

5 alts after pruning (3 fresh and 2 done)

PrunedKeptTotal
New2873290
Fresh000
Picked213
Done011
Total2895294
Accurracy
100.0%
Counts
294 → 5
Alt Table
Click to see full alt table
StatusAccuracyProgram
34.1%
(fma.f64 -1/2 (*.f64 im im) 1)
99.5%
(*.f64 (exp.f64 re) (pow.f64 (cbrt.f64 (cos.f64 im)) 3))
25.4%
(*.f64 (exp.f64 re) (*.f64 -1/2 (*.f64 im im)))
100.0%
(*.f64 (exp.f64 re) (cos.f64 im))
69.7%
(exp.f64 re)
34.1%
(fma.f64 -1/2 (*.f64 im im) 1)
99.5%
(*.f64 (exp.f64 re) (pow.f64 (cbrt.f64 (cos.f64 im)) 3))
25.4%
(*.f64 (exp.f64 re) (*.f64 -1/2 (*.f64 im im)))
100.0%
(*.f64 (exp.f64 re) (cos.f64 im))
69.7%
(exp.f64 re)
Compiler

Compiled 78 to 58 computations (25.6% saved)

localize106.0ms (3.3%)

Local Accuracy

Found 2 expressions with local accuracy:

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

Compiled 39 to 16 computations (59% saved)

series4.0ms (0.1%)

Counts
1 → 24
Calls

6 calls:

TimeVariablePointExpression
2.0ms
re
@-inf
(*.f64 (exp.f64 re) (*.f64 -1/2 (*.f64 im im)))
1.0ms
im
@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
@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)))

rewrite56.0ms (1.7%)

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)))))

simplify59.0ms (1.8%)

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))))

eval24.0ms (0.8%)

Compiler

Compiled 1066 to 637 computations (40.2% saved)

prune15.0ms (0.5%)

Pruning

7 alts after pruning (2 fresh and 5 done)

PrunedKeptTotal
New74276
Fresh000
Picked033
Done022
Total74781
Accurracy
100.0%
Counts
81 → 7
Alt Table
Click to see full alt table
StatusAccuracyProgram
34.1%
(fma.f64 -1/2 (*.f64 im im) 1)
13.4%
(*.f64 (*.f64 im im) (+.f64 (*.f64 -1/2 re) -1/2))
99.5%
(*.f64 (exp.f64 re) (pow.f64 (cbrt.f64 (cos.f64 im)) 3))
25.4%
(*.f64 (exp.f64 re) (*.f64 -1/2 (*.f64 im im)))
100.0%
(*.f64 (exp.f64 re) (cos.f64 im))
12.2%
(*.f64 -1/2 (*.f64 im im))
69.7%
(exp.f64 re)
34.1%
(fma.f64 -1/2 (*.f64 im im) 1)
13.4%
(*.f64 (*.f64 im im) (+.f64 (*.f64 -1/2 re) -1/2))
99.5%
(*.f64 (exp.f64 re) (pow.f64 (cbrt.f64 (cos.f64 im)) 3))
25.4%
(*.f64 (exp.f64 re) (*.f64 -1/2 (*.f64 im im)))
100.0%
(*.f64 (exp.f64 re) (cos.f64 im))
12.2%
(*.f64 -1/2 (*.f64 im im))
69.7%
(exp.f64 re)
Compiler

Compiled 114 to 84 computations (26.3% saved)

localize38.0ms (1.2%)

Local Accuracy

Found 2 expressions with local accuracy:

NewAccuracyProgram
94.7%
(*.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)

series4.0ms (0.1%)

Counts
1 → 24
Calls

6 calls:

TimeVariablePointExpression
2.0ms
im
@inf
(*.f64 (*.f64 im im) (+.f64 (*.f64 -1/2 re) -1/2))
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
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))

rewrite66.0ms (2%)

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))))

simplify103.0ms (3.2%)

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)))))

eval41.0ms (1.3%)

Compiler

Compiled 2000 to 1324 computations (33.8% saved)

prune70.0ms (2.2%)

Pruning

9 alts after pruning (2 fresh and 7 done)

PrunedKeptTotal
New1362138
Fresh000
Picked022
Done055
Total1369145
Accurracy
100.0%
Counts
145 → 9
Alt Table
Click to see full alt table
StatusAccuracyProgram
34.1%
(fma.f64 -1/2 (*.f64 im im) 1)
11.0%
(+.f64 (*.f64 im (*.f64 im (*.f64 -1/2 re))) (*.f64 im (*.f64 im -1/2)))
13.4%
(*.f64 (*.f64 im im) (+.f64 (*.f64 -1/2 re) -1/2))
99.5%
(*.f64 (exp.f64 re) (pow.f64 (cbrt.f64 (cos.f64 im)) 3))
25.4%
(*.f64 (exp.f64 re) (*.f64 -1/2 (*.f64 im im)))
100.0%
(*.f64 (exp.f64 re) (cos.f64 im))
13.7%
(*.f64 -1/2 (*.f64 re (*.f64 im im)))
12.2%
(*.f64 -1/2 (*.f64 im im))
69.7%
(exp.f64 re)
Compiler

Compiled 160 to 99 computations (38.1% saved)

regimes27.0ms (0.8%)

Counts
11 → 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))
(+.f64 (*.f64 im (*.f64 im (*.f64 -1/2 re))) (*.f64 im (*.f64 im -1/2)))
(exp.f64 re)
(*.f64 (exp.f64 re) 1)
(fma.f64 -1/2 (*.f64 im im) 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) (pow.f64 (cbrt.f64 (cos.f64 im)) 3))
Outputs
(*.f64 (exp.f64 re) (cos.f64 im))
Calls

5 calls:

6.0ms
im
6.0ms
re
5.0ms
(cos.f64 im)
4.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 100 to 56 computations (44% saved)

regimes36.0ms (1.1%)

Counts
9 → 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))
(+.f64 (*.f64 im (*.f64 im (*.f64 -1/2 re))) (*.f64 im (*.f64 im -1/2)))
(exp.f64 re)
(*.f64 (exp.f64 re) 1)
(fma.f64 -1/2 (*.f64 im im) 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:

15.0ms
re
15.0ms
im
3.0ms
(exp.f64 re)
Results
AccuracySegmentsBranch
72.0%2re
71.6%3im
69.7%1(exp.f64 re)
Compiler

Compiled 76 to 42 computations (44.7% saved)

regimes11.0ms (0.3%)

Counts
8 → 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))
(+.f64 (*.f64 im (*.f64 im (*.f64 -1/2 re))) (*.f64 im (*.f64 im -1/2)))
(exp.f64 re)
(*.f64 (exp.f64 re) 1)
(fma.f64 -1/2 (*.f64 im im) 1)
(*.f64 (exp.f64 re) (*.f64 -1/2 (*.f64 im im)))
Outputs
(exp.f64 re)
Calls

2 calls:

7.0ms
re
2.0ms
(exp.f64 re)
Results
AccuracySegmentsBranch
69.7%1(exp.f64 re)
69.7%1re
Compiler

Compiled 63 to 35 computations (44.4% saved)

regimes10.0ms (0.3%)

Counts
4 → 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))
(+.f64 (*.f64 im (*.f64 im (*.f64 -1/2 re))) (*.f64 im (*.f64 im -1/2)))
Outputs
(*.f64 -1/2 (*.f64 re (*.f64 im im)))
Calls

2 calls:

5.0ms
im
4.0ms
re
Results
AccuracySegmentsBranch
13.7%1im
13.7%1re
Compiler

Compiled 42 to 25 computations (40.5% saved)

regimes6.0ms (0.2%)

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
re
2.0ms
im
Results
AccuracySegmentsBranch
12.2%1re
12.2%1im
Compiler

Compiled 13 to 9 computations (30.8% saved)

bsearch8.0ms (0.2%)

Algorithm
binary-search
Stop Event
predicate-same
Steps
TimeLeftRight
8.0ms
2057566634409016.0
11361621588934776.0
Results
4.0msbody512infinite
3.0ms26×body256infinite
0.0msbody1024infinite
Compiler

Compiled 48 to 37 computations (22.9% saved)

simplify8.0ms (0.2%)

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 5000000000000000) (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 5000000000000000) (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)

soundness492.0ms (15.3%)

Rules
1264×unswap-sqr
1264×unswap-sqr
1146×fma-neg
1086×fma-def
1086×fma-def
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
0121569
1241535
2644519
33358519
47008519
04234607
19894451
231234277
374294273
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)

end38.0ms (1.2%)

Compiler

Compiled 88 to 48 computations (45.5% saved)

Profiling

Loading profile data...