math.log/1 on complex, real part

Details

Time bar (total: 2.0s)

analyze1.0ms (0%)

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

Compiled 12 to 8 computations (33.3% saved)

sample942.0ms (46.5%)

Results
931.0ms8256×body256valid
Bogosity

preprocess15.0ms (0.7%)

Algorithm
egg-herbie
Rules
fma-def
hypot-def
swap-re-im
+-commutative
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01322
11822
022
122
Stop Event
unsound
saturated
Alt Table
Click to see full alt table
StatusAccuracyProgram
51.9%
(log.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))
51.9%
(log.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))
Calls
Call 1
Inputs
0
1
Outputs
0
1
0
Call 2
Inputs
(log.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))
(log.f64 (sqrt.f64 (+.f64 (*.f64 im im) (*.f64 re re))))
Outputs
(log.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))
(log.f64 (hypot.f64 re im))
(log.f64 (sqrt.f64 (+.f64 (*.f64 im im) (*.f64 re re))))
(log.f64 (hypot.f64 re im))
Symmetry

(sort re im)

Compiler

Compiled 35 to 23 computations (34.3% saved)

localize36.0ms (1.8%)

Local Accuracy

Found 1 expressions with local accuracy:

NewAccuracyProgram
53.7%
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
Compiler

Compiled 35 to 8 computations (77.1% saved)

series2.0ms (0.1%)

Counts
1 → 24
Calls

6 calls:

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

rewrite57.0ms (2.8%)

Algorithm
batch-egg-rewrite
Rules
1818×pow1
1682×add-exp-log
1682×log1p-expm1-u
1682×expm1-log1p-u
1644×add-log-exp
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
097
11897
224337
Stop Event
node limit
Counts
1 → 24
Calls
Call 1
Inputs
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
Outputs
(-.f64 (+.f64 1 (hypot.f64 re im)) 1)
(*.f64 (hypot.f64 re im) 1)
(*.f64 1 (hypot.f64 re im))
(*.f64 (pow.f64 (cbrt.f64 (hypot.f64 re im)) 2) (cbrt.f64 (hypot.f64 re im)))
(*.f64 (cbrt.f64 (hypot.f64 re im)) (pow.f64 (cbrt.f64 (hypot.f64 re im)) 2))
(*.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (hypot.f64 re im)))
(*.f64 (sqrt.f64 (pow.f64 (pow.f64 (cbrt.f64 (hypot.f64 re im)) 2) 2)) (sqrt.f64 (pow.f64 (cbrt.f64 (hypot.f64 re im)) 2)))
(*.f64 (pow.f64 1 1/2) (hypot.f64 re im))
(*.f64 (pow.f64 (pow.f64 (pow.f64 (cbrt.f64 (hypot.f64 re im)) 2) 2) 1/2) (pow.f64 (pow.f64 (cbrt.f64 (hypot.f64 re im)) 2) 1/2))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 re 4) (pow.f64 im 4))) (sqrt.f64 (fma.f64 re re (neg.f64 (*.f64 im im)))))
(/.f64 (sqrt.f64 (+.f64 (pow.f64 re 6) (pow.f64 im 6))) (sqrt.f64 (+.f64 (pow.f64 re 4) (-.f64 (pow.f64 im 4) (pow.f64 (*.f64 re im) 2)))))
(pow.f64 (pow.f64 (hypot.f64 re im) 2) 1/2)
(pow.f64 (hypot.f64 re im) 1)
(pow.f64 (cbrt.f64 (hypot.f64 re im)) 3)
(pow.f64 (pow.f64 (hypot.f64 re im) 3) 1/3)
(pow.f64 (sqrt.f64 (hypot.f64 re im)) 2)
(fabs.f64 (hypot.f64 re im))
(log.f64 (exp.f64 (hypot.f64 re im)))
(cbrt.f64 (pow.f64 (hypot.f64 re im) 3))
(expm1.f64 (log1p.f64 (hypot.f64 re im)))
(hypot.f64 re im)
(hypot.f64 im re)
(exp.f64 (log.f64 (hypot.f64 re im)))
(log1p.f64 (expm1.f64 (hypot.f64 re im)))

simplify65.0ms (3.2%)

Algorithm
egg-herbie
Rules
850×associate-*r*
748×log-prod
730×fma-def
688×associate-*l*
664×fma-neg
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01221432
13081280
29471154
349131154
Stop Event
node limit
Counts
48 → 92
Calls
Call 1
Inputs
im
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) im)
(+.f64 (*.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) im))
(+.f64 (*.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 re 6) (pow.f64 im 5))) im)))
re
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) re)
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 re (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (+.f64 re (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))))
(*.f64 -1 re)
(+.f64 (*.f64 -1 re) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)))
(+.f64 (*.f64 -1 re) (+.f64 (*.f64 1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re))))
(+.f64 (*.f64 -1 re) (+.f64 (*.f64 1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))) (+.f64 (*.f64 -1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)))))
re
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) re)
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 re (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (+.f64 re (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))))
im
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) im)
(+.f64 (*.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) im))
(+.f64 (*.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 re 6) (pow.f64 im 5))) im)))
(*.f64 -1 im)
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 re 2) im)) (*.f64 -1 im))
(+.f64 (*.f64 1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 re 2) im)) (*.f64 -1 im)))
(+.f64 (*.f64 -1/16 (/.f64 (pow.f64 re 6) (pow.f64 im 5))) (+.f64 (*.f64 1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 re 2) im)) (*.f64 -1 im))))
(-.f64 (+.f64 1 (hypot.f64 re im)) 1)
(*.f64 (hypot.f64 re im) 1)
(*.f64 1 (hypot.f64 re im))
(*.f64 (pow.f64 (cbrt.f64 (hypot.f64 re im)) 2) (cbrt.f64 (hypot.f64 re im)))
(*.f64 (cbrt.f64 (hypot.f64 re im)) (pow.f64 (cbrt.f64 (hypot.f64 re im)) 2))
(*.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (hypot.f64 re im)))
(*.f64 (sqrt.f64 (pow.f64 (pow.f64 (cbrt.f64 (hypot.f64 re im)) 2) 2)) (sqrt.f64 (pow.f64 (cbrt.f64 (hypot.f64 re im)) 2)))
(*.f64 (pow.f64 1 1/2) (hypot.f64 re im))
(*.f64 (pow.f64 (pow.f64 (pow.f64 (cbrt.f64 (hypot.f64 re im)) 2) 2) 1/2) (pow.f64 (pow.f64 (cbrt.f64 (hypot.f64 re im)) 2) 1/2))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 re 4) (pow.f64 im 4))) (sqrt.f64 (fma.f64 re re (neg.f64 (*.f64 im im)))))
(/.f64 (sqrt.f64 (+.f64 (pow.f64 re 6) (pow.f64 im 6))) (sqrt.f64 (+.f64 (pow.f64 re 4) (-.f64 (pow.f64 im 4) (pow.f64 (*.f64 re im) 2)))))
(pow.f64 (pow.f64 (hypot.f64 re im) 2) 1/2)
(pow.f64 (hypot.f64 re im) 1)
(pow.f64 (cbrt.f64 (hypot.f64 re im)) 3)
(pow.f64 (pow.f64 (hypot.f64 re im) 3) 1/3)
(pow.f64 (sqrt.f64 (hypot.f64 re im)) 2)
(fabs.f64 (hypot.f64 re im))
(log.f64 (exp.f64 (hypot.f64 re im)))
(cbrt.f64 (pow.f64 (hypot.f64 re im) 3))
(expm1.f64 (log1p.f64 (hypot.f64 re im)))
(hypot.f64 re im)
(hypot.f64 im re)
(exp.f64 (log.f64 (hypot.f64 re im)))
(log1p.f64 (expm1.f64 (hypot.f64 re im)))
Outputs
im
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) im)
(fma.f64 1/2 (/.f64 (*.f64 re re) im) im)
(fma.f64 1/2 (/.f64 re (/.f64 im re)) im)
(fma.f64 1/2 (*.f64 (/.f64 re im) re) im)
(+.f64 (*.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) im))
(fma.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3)) (fma.f64 1/2 (/.f64 (*.f64 re re) im) im))
(fma.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3)) (fma.f64 1/2 (/.f64 re (/.f64 im re)) im))
(fma.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3)) (fma.f64 1/2 (*.f64 (/.f64 re im) re) im))
(+.f64 (*.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 re 6) (pow.f64 im 5))) im)))
(fma.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3)) (fma.f64 1/2 (/.f64 (*.f64 re re) im) (fma.f64 1/16 (/.f64 (pow.f64 re 6) (pow.f64 im 5)) im)))
(fma.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3)) (fma.f64 1/2 (/.f64 re (/.f64 im re)) (fma.f64 1/16 (/.f64 (pow.f64 re 6) (pow.f64 im 5)) im)))
(fma.f64 1/2 (*.f64 (/.f64 re im) re) (fma.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3)) (fma.f64 1/16 (/.f64 (pow.f64 re 6) (pow.f64 im 5)) im)))
(fma.f64 1/2 (/.f64 re (/.f64 im re)) (fma.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3)) (fma.f64 1/16 (/.f64 (pow.f64 re 6) (pow.f64 im 5)) im)))
re
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) re)
(fma.f64 1/2 (/.f64 (*.f64 im im) re) re)
(fma.f64 1/2 (/.f64 im (/.f64 re im)) re)
(fma.f64 1/2 (*.f64 (/.f64 im re) im) re)
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 re (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)))))
(+.f64 (fma.f64 1/2 (/.f64 (*.f64 im im) re) re) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))
(fma.f64 1/2 (/.f64 im (/.f64 re im)) (fma.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) re))
(fma.f64 1/2 (*.f64 (/.f64 im re) im) (fma.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) re))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (+.f64 re (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))))
(fma.f64 1/2 (/.f64 (*.f64 im im) re) (fma.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5)) (+.f64 re (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))))
(fma.f64 1/2 (/.f64 im (/.f64 re im)) (fma.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5)) (fma.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) re)))
(fma.f64 1/2 (*.f64 (/.f64 im re) im) (fma.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) (fma.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5)) re)))
(*.f64 -1 re)
(neg.f64 re)
(+.f64 (*.f64 -1 re) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)))
(fma.f64 -1 re (/.f64 (*.f64 -1/2 (*.f64 im im)) re))
(-.f64 (*.f64 (/.f64 im (/.f64 re im)) -1/2) re)
(-.f64 (*.f64 (*.f64 (/.f64 im re) im) -1/2) re)
(-.f64 (*.f64 (/.f64 -1/2 re) (*.f64 im im)) re)
(+.f64 (*.f64 -1 re) (+.f64 (*.f64 1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re))))
(fma.f64 -1 re (fma.f64 1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) (/.f64 (*.f64 -1/2 (*.f64 im im)) re)))
(-.f64 (fma.f64 (/.f64 im (/.f64 re im)) -1/2 (*.f64 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) 1/8)) re)
(-.f64 (fma.f64 (*.f64 (/.f64 im re) im) -1/2 (*.f64 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) 1/8)) re)
(-.f64 (*.f64 (/.f64 -1/2 re) (*.f64 im im)) (fma.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) re))
(+.f64 (*.f64 -1 re) (+.f64 (*.f64 1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))) (+.f64 (*.f64 -1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)))))
(fma.f64 -1 re (fma.f64 1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) (fma.f64 -1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5)) (/.f64 (*.f64 -1/2 (*.f64 im im)) re))))
(-.f64 (fma.f64 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) 1/8 (fma.f64 (/.f64 im (/.f64 re im)) -1/2 (*.f64 (/.f64 (pow.f64 im 6) (pow.f64 re 5)) -1/16))) re)
(-.f64 (fma.f64 (*.f64 (/.f64 im re) im) -1/2 (fma.f64 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) 1/8 (*.f64 (/.f64 (pow.f64 im 6) (pow.f64 re 5)) -1/16))) re)
(-.f64 (fma.f64 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) 1/8 (*.f64 (/.f64 -1/2 re) (*.f64 im im))) (fma.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5)) re))
re
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) re)
(fma.f64 1/2 (/.f64 (*.f64 im im) re) re)
(fma.f64 1/2 (/.f64 im (/.f64 re im)) re)
(fma.f64 1/2 (*.f64 (/.f64 im re) im) re)
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 re (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)))))
(+.f64 (fma.f64 1/2 (/.f64 (*.f64 im im) re) re) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))
(fma.f64 1/2 (/.f64 im (/.f64 re im)) (fma.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) re))
(fma.f64 1/2 (*.f64 (/.f64 im re) im) (fma.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) re))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5))) (+.f64 re (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))))
(fma.f64 1/2 (/.f64 (*.f64 im im) re) (fma.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5)) (+.f64 re (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3))))))
(fma.f64 1/2 (/.f64 im (/.f64 re im)) (fma.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5)) (fma.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) re)))
(fma.f64 1/2 (*.f64 (/.f64 im re) im) (fma.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 3)) (fma.f64 1/16 (/.f64 (pow.f64 im 6) (pow.f64 re 5)) re)))
im
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) im)
(fma.f64 1/2 (/.f64 (*.f64 re re) im) im)
(fma.f64 1/2 (/.f64 re (/.f64 im re)) im)
(fma.f64 1/2 (*.f64 (/.f64 re im) re) im)
(+.f64 (*.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) im))
(fma.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3)) (fma.f64 1/2 (/.f64 (*.f64 re re) im) im))
(fma.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3)) (fma.f64 1/2 (/.f64 re (/.f64 im re)) im))
(fma.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3)) (fma.f64 1/2 (*.f64 (/.f64 re im) re) im))
(+.f64 (*.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 re 6) (pow.f64 im 5))) im)))
(fma.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3)) (fma.f64 1/2 (/.f64 (*.f64 re re) im) (fma.f64 1/16 (/.f64 (pow.f64 re 6) (pow.f64 im 5)) im)))
(fma.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3)) (fma.f64 1/2 (/.f64 re (/.f64 im re)) (fma.f64 1/16 (/.f64 (pow.f64 re 6) (pow.f64 im 5)) im)))
(fma.f64 1/2 (*.f64 (/.f64 re im) re) (fma.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3)) (fma.f64 1/16 (/.f64 (pow.f64 re 6) (pow.f64 im 5)) im)))
(fma.f64 1/2 (/.f64 re (/.f64 im re)) (fma.f64 -1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3)) (fma.f64 1/16 (/.f64 (pow.f64 re 6) (pow.f64 im 5)) im)))
(*.f64 -1 im)
(neg.f64 im)
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 re 2) im)) (*.f64 -1 im))
(fma.f64 -1/2 (/.f64 (*.f64 re re) im) (neg.f64 im))
(-.f64 (*.f64 (/.f64 re (/.f64 im re)) -1/2) im)
(-.f64 (*.f64 (*.f64 (/.f64 re im) re) -1/2) im)
(fma.f64 (/.f64 re (/.f64 im re)) -1/2 (neg.f64 im))
(+.f64 (*.f64 1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 re 2) im)) (*.f64 -1 im)))
(fma.f64 1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3)) (fma.f64 -1/2 (/.f64 (*.f64 re re) im) (neg.f64 im)))
(fma.f64 (/.f64 (pow.f64 re 4) (pow.f64 im 3)) 1/8 (-.f64 (*.f64 (/.f64 re (/.f64 im re)) -1/2) im))
(-.f64 (fma.f64 (*.f64 (/.f64 re im) re) -1/2 (/.f64 (*.f64 (pow.f64 re 4) 1/8) (pow.f64 im 3))) im)
(fma.f64 (/.f64 (pow.f64 re 4) (pow.f64 im 3)) 1/8 (fma.f64 (/.f64 re (/.f64 im re)) -1/2 (neg.f64 im)))
(+.f64 (*.f64 -1/16 (/.f64 (pow.f64 re 6) (pow.f64 im 5))) (+.f64 (*.f64 1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 re 2) im)) (*.f64 -1 im))))
(fma.f64 -1/16 (/.f64 (pow.f64 re 6) (pow.f64 im 5)) (fma.f64 1/8 (/.f64 (pow.f64 re 4) (pow.f64 im 3)) (fma.f64 -1/2 (/.f64 (*.f64 re re) im) (neg.f64 im))))
(fma.f64 (/.f64 (pow.f64 re 6) (pow.f64 im 5)) -1/16 (fma.f64 (/.f64 (pow.f64 re 4) (pow.f64 im 3)) 1/8 (-.f64 (*.f64 (/.f64 re (/.f64 im re)) -1/2) im)))
(-.f64 (fma.f64 (/.f64 (pow.f64 re 6) (pow.f64 im 5)) -1/16 (fma.f64 (*.f64 (/.f64 re im) re) -1/2 (/.f64 (*.f64 (pow.f64 re 4) 1/8) (pow.f64 im 3)))) im)
(-.f64 (fma.f64 (/.f64 (pow.f64 re 6) (pow.f64 im 5)) -1/16 (fma.f64 (/.f64 re (/.f64 im re)) -1/2 (/.f64 (*.f64 (pow.f64 re 4) 1/8) (pow.f64 im 3)))) im)
(-.f64 (+.f64 1 (hypot.f64 re im)) 1)
(+.f64 1 (-.f64 (hypot.f64 re im) 1))
(+.f64 (hypot.f64 re im) 0)
(hypot.f64 re im)
(*.f64 (hypot.f64 re im) 1)
(+.f64 1 (-.f64 (hypot.f64 re im) 1))
(+.f64 (hypot.f64 re im) 0)
(hypot.f64 re im)
(*.f64 1 (hypot.f64 re im))
(+.f64 1 (-.f64 (hypot.f64 re im) 1))
(+.f64 (hypot.f64 re im) 0)
(hypot.f64 re im)
(*.f64 (pow.f64 (cbrt.f64 (hypot.f64 re im)) 2) (cbrt.f64 (hypot.f64 re im)))
(+.f64 1 (-.f64 (hypot.f64 re im) 1))
(+.f64 (hypot.f64 re im) 0)
(hypot.f64 re im)
(*.f64 (cbrt.f64 (hypot.f64 re im)) (pow.f64 (cbrt.f64 (hypot.f64 re im)) 2))
(+.f64 1 (-.f64 (hypot.f64 re im) 1))
(+.f64 (hypot.f64 re im) 0)
(hypot.f64 re im)
(*.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (hypot.f64 re im)))
(+.f64 1 (-.f64 (hypot.f64 re im) 1))
(+.f64 (hypot.f64 re im) 0)
(hypot.f64 re im)
(*.f64 (sqrt.f64 (pow.f64 (pow.f64 (cbrt.f64 (hypot.f64 re im)) 2) 2)) (sqrt.f64 (pow.f64 (cbrt.f64 (hypot.f64 re im)) 2)))
(+.f64 1 (-.f64 (hypot.f64 re im) 1))
(+.f64 (hypot.f64 re im) 0)
(hypot.f64 re im)
(*.f64 (pow.f64 1 1/2) (hypot.f64 re im))
(+.f64 1 (-.f64 (hypot.f64 re im) 1))
(+.f64 (hypot.f64 re im) 0)
(hypot.f64 re im)
(*.f64 (pow.f64 (pow.f64 (pow.f64 (cbrt.f64 (hypot.f64 re im)) 2) 2) 1/2) (pow.f64 (pow.f64 (cbrt.f64 (hypot.f64 re im)) 2) 1/2))
(+.f64 1 (-.f64 (hypot.f64 re im) 1))
(+.f64 (hypot.f64 re im) 0)
(hypot.f64 re im)
(/.f64 (sqrt.f64 (-.f64 (pow.f64 re 4) (pow.f64 im 4))) (sqrt.f64 (fma.f64 re re (neg.f64 (*.f64 im im)))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 re 4) (pow.f64 im 4))) (sqrt.f64 (fma.f64 re re (*.f64 im (neg.f64 im)))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 re 4) (pow.f64 im 4))) (sqrt.f64 (-.f64 (*.f64 re re) (*.f64 im im))))
(/.f64 (sqrt.f64 (+.f64 (pow.f64 re 6) (pow.f64 im 6))) (sqrt.f64 (+.f64 (pow.f64 re 4) (-.f64 (pow.f64 im 4) (pow.f64 (*.f64 re im) 2)))))
(/.f64 (sqrt.f64 (+.f64 (pow.f64 re 6) (pow.f64 im 6))) (sqrt.f64 (+.f64 (pow.f64 re 4) (-.f64 (pow.f64 im 4) (pow.f64 (*.f64 im re) 2)))))
(/.f64 (hypot.f64 (pow.f64 im 3) (pow.f64 re 3)) (sqrt.f64 (+.f64 (pow.f64 re 4) (-.f64 (pow.f64 im 4) (pow.f64 (*.f64 im re) 2)))))
(/.f64 (hypot.f64 (pow.f64 im 3) (pow.f64 re 3)) (sqrt.f64 (+.f64 (pow.f64 im 4) (-.f64 (pow.f64 re 4) (pow.f64 (*.f64 im re) 2)))))
(pow.f64 (pow.f64 (hypot.f64 re im) 2) 1/2)
(+.f64 1 (-.f64 (hypot.f64 re im) 1))
(+.f64 (hypot.f64 re im) 0)
(hypot.f64 re im)
(pow.f64 (hypot.f64 re im) 1)
(+.f64 1 (-.f64 (hypot.f64 re im) 1))
(+.f64 (hypot.f64 re im) 0)
(hypot.f64 re im)
(pow.f64 (cbrt.f64 (hypot.f64 re im)) 3)
(+.f64 1 (-.f64 (hypot.f64 re im) 1))
(+.f64 (hypot.f64 re im) 0)
(hypot.f64 re im)
(pow.f64 (pow.f64 (hypot.f64 re im) 3) 1/3)
(+.f64 1 (-.f64 (hypot.f64 re im) 1))
(+.f64 (hypot.f64 re im) 0)
(hypot.f64 re im)
(pow.f64 (sqrt.f64 (hypot.f64 re im)) 2)
(+.f64 1 (-.f64 (hypot.f64 re im) 1))
(+.f64 (hypot.f64 re im) 0)
(hypot.f64 re im)
(fabs.f64 (hypot.f64 re im))
(+.f64 1 (-.f64 (hypot.f64 re im) 1))
(+.f64 (hypot.f64 re im) 0)
(hypot.f64 re im)
(log.f64 (exp.f64 (hypot.f64 re im)))
(+.f64 1 (-.f64 (hypot.f64 re im) 1))
(+.f64 (hypot.f64 re im) 0)
(hypot.f64 re im)
(cbrt.f64 (pow.f64 (hypot.f64 re im) 3))
(+.f64 1 (-.f64 (hypot.f64 re im) 1))
(+.f64 (hypot.f64 re im) 0)
(hypot.f64 re im)
(expm1.f64 (log1p.f64 (hypot.f64 re im)))
(+.f64 1 (-.f64 (hypot.f64 re im) 1))
(+.f64 (hypot.f64 re im) 0)
(hypot.f64 re im)
(hypot.f64 re im)
(+.f64 1 (-.f64 (hypot.f64 re im) 1))
(+.f64 (hypot.f64 re im) 0)
(hypot.f64 im re)
(exp.f64 (log.f64 (hypot.f64 re im)))
(+.f64 1 (-.f64 (hypot.f64 re im) 1))
(+.f64 (hypot.f64 re im) 0)
(hypot.f64 re im)
(log1p.f64 (expm1.f64 (hypot.f64 re im)))
(+.f64 1 (-.f64 (hypot.f64 re im) 1))
(+.f64 (hypot.f64 re im) 0)
(hypot.f64 re im)

eval46.0ms (2.3%)

Compiler

Compiled 1426 to 881 computations (38.2% saved)

prune18.0ms (0.9%)

Pruning

4 alts after pruning (4 fresh and 0 done)

PrunedKeptTotal
New88492
Fresh000
Picked101
Done000
Total89493
Accurracy
100.0%
Counts
93 → 4
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(log.f64 (hypot.f64 re im))
52.1%
(log.f64 (-.f64 (*.f64 (/.f64 im (/.f64 re im)) -1/2) re))
52.3%
(log.f64 (neg.f64 re))
51.9%
(log.f64 im)
100.0%
(log.f64 (hypot.f64 re im))
52.1%
(log.f64 (-.f64 (*.f64 (/.f64 im (/.f64 re im)) -1/2) re))
52.3%
(log.f64 (neg.f64 re))
51.9%
(log.f64 im)
Compiler

Compiled 54 to 38 computations (29.6% saved)

localize69.0ms (3.4%)

Local Accuracy

Found 3 expressions with local accuracy:

NewAccuracyProgram
100.0%
(*.f64 (/.f64 im (/.f64 re im)) -1/2)
99.9%
(/.f64 im (/.f64 re im))
90.5%
(log.f64 (-.f64 (*.f64 (/.f64 im (/.f64 re im)) -1/2) re))
Compiler

Compiled 58 to 20 computations (65.5% saved)

series9.0ms (0.5%)

Counts
3 → 72
Calls

18 calls:

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

rewrite133.0ms (6.5%)

Algorithm
batch-egg-rewrite
Rules
1500×prod-diff
1282×log-prod
628×fma-def
526×pow-exp
442×expm1-udef
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01161
124061
2336761
Stop Event
node limit
Counts
3 → 124
Calls
Call 1
Inputs
(log.f64 (-.f64 (*.f64 (/.f64 im (/.f64 re im)) -1/2) re))
(/.f64 im (/.f64 re im))
(*.f64 (/.f64 im (/.f64 re im)) -1/2)
Outputs
(+.f64 (log.f64 (fma.f64 im (*.f64 (/.f64 im re) -1/2) (neg.f64 re))) 0)
(+.f64 0 (log.f64 (fma.f64 im (*.f64 (/.f64 im re) -1/2) (neg.f64 re))))
(+.f64 (log.f64 (cbrt.f64 (fma.f64 im (*.f64 (/.f64 im re) -1/2) (neg.f64 re)))) (*.f64 2 (log.f64 (cbrt.f64 (fma.f64 im (*.f64 (/.f64 im re) -1/2) (neg.f64 re))))))
(+.f64 (log.f64 (-.f64 (*.f64 -1/8 (pow.f64 (*.f64 im (/.f64 im re)) 3)) (pow.f64 re 3))) (log.f64 (/.f64 1 (fma.f64 re (fma.f64 im (*.f64 (/.f64 im re) -1/2) re) (*.f64 1/4 (pow.f64 (*.f64 im (/.f64 im re)) 2))))))
(+.f64 (log.f64 (-.f64 (*.f64 1/4 (pow.f64 (*.f64 im (/.f64 im re)) 2)) (*.f64 re re))) (log.f64 (/.f64 1 (fma.f64 im (*.f64 (/.f64 im re) -1/2) re))))
(+.f64 (log.f64 (sqrt.f64 (fma.f64 im (*.f64 (/.f64 im re) -1/2) (neg.f64 re)))) (log.f64 (sqrt.f64 (fma.f64 im (*.f64 (/.f64 im re) -1/2) (neg.f64 re)))))
(+.f64 (*.f64 2 (log.f64 (cbrt.f64 (fma.f64 im (*.f64 (/.f64 im re) -1/2) (neg.f64 re))))) (log.f64 (cbrt.f64 (fma.f64 im (*.f64 (/.f64 im re) -1/2) (neg.f64 re)))))
(+.f64 (log.f64 (+.f64 (sqrt.f64 (*.f64 im (*.f64 (/.f64 im re) -1/2))) (sqrt.f64 re))) (log.f64 (-.f64 (sqrt.f64 (*.f64 im (*.f64 (/.f64 im re) -1/2))) (sqrt.f64 re))))
(-.f64 0 (log.f64 (/.f64 (fma.f64 re (fma.f64 im (*.f64 (/.f64 im re) -1/2) re) (*.f64 1/4 (pow.f64 (*.f64 im (/.f64 im re)) 2))) (-.f64 (*.f64 -1/8 (pow.f64 (*.f64 im (/.f64 im re)) 3)) (pow.f64 re 3)))))
(-.f64 0 (log.f64 (/.f64 (fma.f64 im (*.f64 (/.f64 im re) -1/2) re) (-.f64 (*.f64 1/4 (pow.f64 (*.f64 im (/.f64 im re)) 2)) (*.f64 re re)))))
(-.f64 (log.f64 (-.f64 (*.f64 -1/8 (pow.f64 (*.f64 im (/.f64 im re)) 3)) (pow.f64 re 3))) (log.f64 (fma.f64 re (fma.f64 im (*.f64 (/.f64 im re) -1/2) re) (*.f64 1/4 (pow.f64 (*.f64 im (/.f64 im re)) 2)))))
(-.f64 (log.f64 (-.f64 (*.f64 1/4 (pow.f64 (*.f64 im (/.f64 im re)) 2)) (*.f64 re re))) (log.f64 (fma.f64 im (*.f64 (/.f64 im re) -1/2) re)))
(-.f64 (exp.f64 (log1p.f64 (log.f64 (fma.f64 im (*.f64 (/.f64 im re) -1/2) (neg.f64 re))))) 1)
(-.f64 (log.f64 (neg.f64 (-.f64 (*.f64 -1/8 (pow.f64 (*.f64 im (/.f64 im re)) 3)) (pow.f64 re 3)))) (log.f64 (neg.f64 (fma.f64 re (fma.f64 im (*.f64 (/.f64 im re) -1/2) re) (*.f64 1/4 (pow.f64 (*.f64 im (/.f64 im re)) 2))))))
(-.f64 (log.f64 (neg.f64 (-.f64 (*.f64 1/4 (pow.f64 (*.f64 im (/.f64 im re)) 2)) (*.f64 re re)))) (log.f64 (neg.f64 (fma.f64 im (*.f64 (/.f64 im re) -1/2) re))))
(-.f64 (log.f64 (fma.f64 -1/8 (pow.f64 (*.f64 im (/.f64 im re)) 3) (pow.f64 (neg.f64 re) 3))) (log.f64 (fma.f64 1/4 (pow.f64 (*.f64 im (/.f64 im re)) 2) (-.f64 (*.f64 (neg.f64 re) (neg.f64 re)) (*.f64 (*.f64 im (*.f64 (/.f64 im re) -1/2)) (neg.f64 re))))))
(-.f64 (log.f64 (-.f64 (*.f64 1/4 (pow.f64 (*.f64 im (/.f64 im re)) 2)) (*.f64 (neg.f64 re) (neg.f64 re)))) (log.f64 (fma.f64 (/.f64 im re) (*.f64 im -1/2) (neg.f64 (neg.f64 re)))))
(*.f64 (log.f64 (fma.f64 im (*.f64 (/.f64 im re) -1/2) (neg.f64 re))) 1)
(*.f64 1 (log.f64 (fma.f64 im (*.f64 (/.f64 im re) -1/2) (neg.f64 re))))
(*.f64 (cbrt.f64 (log.f64 (fma.f64 im (*.f64 (/.f64 im re) -1/2) (neg.f64 re)))) (pow.f64 (cbrt.f64 (log.f64 (fma.f64 im (*.f64 (/.f64 im re) -1/2) (neg.f64 re)))) 2))
(*.f64 (pow.f64 (cbrt.f64 (log.f64 (fma.f64 im (*.f64 (/.f64 im re) -1/2) (neg.f64 re)))) 2) (cbrt.f64 (log.f64 (fma.f64 im (*.f64 (/.f64 im re) -1/2) (neg.f64 re)))))
(*.f64 (sqrt.f64 (log.f64 (fma.f64 im (*.f64 (/.f64 im re) -1/2) (neg.f64 re)))) (sqrt.f64 (log.f64 (fma.f64 im (*.f64 (/.f64 im re) -1/2) (neg.f64 re)))))
(*.f64 3 (log.f64 (cbrt.f64 (fma.f64 im (*.f64 (/.f64 im re) -1/2) (neg.f64 re)))))
(*.f64 2 (log.f64 (sqrt.f64 (fma.f64 im (*.f64 (/.f64 im re) -1/2) (neg.f64 re)))))
(*.f64 1/3 (*.f64 3 (log.f64 (fma.f64 im (*.f64 (/.f64 im re) -1/2) (neg.f64 re)))))
(pow.f64 (log.f64 (fma.f64 im (*.f64 (/.f64 im re) -1/2) (neg.f64 re))) 1)
(pow.f64 (cbrt.f64 (log.f64 (fma.f64 im (*.f64 (/.f64 im re) -1/2) (neg.f64 re)))) 3)
(pow.f64 (pow.f64 (log.f64 (fma.f64 im (*.f64 (/.f64 im re) -1/2) (neg.f64 re))) 3) 1/3)
(pow.f64 (sqrt.f64 (log.f64 (fma.f64 im (*.f64 (/.f64 im re) -1/2) (neg.f64 re)))) 2)
(neg.f64 (log.f64 (/.f64 (fma.f64 re (fma.f64 im (*.f64 (/.f64 im re) -1/2) re) (*.f64 1/4 (pow.f64 (*.f64 im (/.f64 im re)) 2))) (-.f64 (*.f64 -1/8 (pow.f64 (*.f64 im (/.f64 im re)) 3)) (pow.f64 re 3)))))
(neg.f64 (log.f64 (/.f64 (fma.f64 im (*.f64 (/.f64 im re) -1/2) re) (-.f64 (*.f64 1/4 (pow.f64 (*.f64 im (/.f64 im re)) 2)) (*.f64 re re)))))
(sqrt.f64 (pow.f64 (log.f64 (fma.f64 im (*.f64 (/.f64 im re) -1/2) (neg.f64 re))) 2))
(cbrt.f64 (pow.f64 (log.f64 (fma.f64 im (*.f64 (/.f64 im re) -1/2) (neg.f64 re))) 3))
(expm1.f64 (log1p.f64 (log.f64 (fma.f64 im (*.f64 (/.f64 im re) -1/2) (neg.f64 re)))))
(exp.f64 (log.f64 (log.f64 (fma.f64 im (*.f64 (/.f64 im re) -1/2) (neg.f64 re)))))
(exp.f64 (*.f64 (log.f64 (log.f64 (fma.f64 im (*.f64 (/.f64 im re) -1/2) (neg.f64 re)))) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (log.f64 (fma.f64 im (*.f64 (/.f64 im re) -1/2) (neg.f64 re)))) 1) 1))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (log.f64 (fma.f64 im (*.f64 (/.f64 im re) -1/2) (neg.f64 re))))) 3))
(exp.f64 (*.f64 (*.f64 3 (log.f64 (log.f64 (fma.f64 im (*.f64 (/.f64 im re) -1/2) (neg.f64 re))))) 1/3))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (log.f64 (fma.f64 im (*.f64 (/.f64 im re) -1/2) (neg.f64 re))))) 2))
(log1p.f64 (-.f64 (fma.f64 im (*.f64 (/.f64 im re) -1/2) (neg.f64 re)) 1))
(+.f64 0 (*.f64 im (/.f64 im re)))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 im) (/.f64 im re))) (cbrt.f64 (pow.f64 (exp.f64 im) (/.f64 im re))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 im) (/.f64 im re)))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 im) (/.f64 im re)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 im) (/.f64 im re)))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 im (/.f64 im re)))) 1)
(*.f64 im (/.f64 im re))
(*.f64 (*.f64 im (/.f64 im re)) 1)
(*.f64 1 (*.f64 im (/.f64 im re)))
(*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2) (cbrt.f64 (*.f64 im (/.f64 im re))))
(*.f64 (pow.f64 (cbrt.f64 im) 2) (*.f64 (cbrt.f64 im) (/.f64 im re)))
(*.f64 (sqrt.f64 (*.f64 im (/.f64 im re))) (sqrt.f64 (*.f64 im (/.f64 im re))))
(*.f64 (sqrt.f64 im) (*.f64 (sqrt.f64 im) (/.f64 im re)))
(*.f64 (neg.f64 im) (/.f64 1 (/.f64 (neg.f64 re) im)))
(*.f64 (/.f64 im re) im)
(*.f64 (/.f64 im 1) (/.f64 im re))
(*.f64 (/.f64 1 re) (/.f64 im (/.f64 1 im)))
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 (/.f64 re im)) 2)) (/.f64 im (cbrt.f64 (/.f64 re im))))
(*.f64 (/.f64 1 (sqrt.f64 (/.f64 re im))) (/.f64 im (sqrt.f64 (/.f64 re im))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 im) 2) re) (/.f64 (cbrt.f64 im) (/.f64 1 im)))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 im) 2) 1) (/.f64 (cbrt.f64 im) (/.f64 re im)))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 im) 2) (pow.f64 (cbrt.f64 (/.f64 re im)) 2)) (cbrt.f64 (*.f64 im (/.f64 im re))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 im) 2) (sqrt.f64 (/.f64 re im))) (/.f64 (cbrt.f64 im) (sqrt.f64 (/.f64 re im))))
(*.f64 (/.f64 (sqrt.f64 im) re) (/.f64 (sqrt.f64 im) (/.f64 1 im)))
(*.f64 (/.f64 (sqrt.f64 im) 1) (/.f64 (sqrt.f64 im) (/.f64 re im)))
(*.f64 (/.f64 (sqrt.f64 im) (pow.f64 (cbrt.f64 (/.f64 re im)) 2)) (/.f64 (sqrt.f64 im) (cbrt.f64 (/.f64 re im))))
(*.f64 (*.f64 (/.f64 im re) 1) im)
(*.f64 (*.f64 (/.f64 im re) (pow.f64 (cbrt.f64 im) 2)) (cbrt.f64 im))
(*.f64 (*.f64 (/.f64 im re) (sqrt.f64 im)) (sqrt.f64 im))
(*.f64 (/.f64 im (neg.f64 re)) (neg.f64 im))
(pow.f64 (*.f64 im (/.f64 im re)) 1)
(pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 3)
(pow.f64 (pow.f64 (*.f64 im (/.f64 im re)) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 im (/.f64 im re))) 2)
(pow.f64 (/.f64 (/.f64 re im) im) -1)
(pow.f64 (/.f64 (/.f64 (/.f64 re im) im) 1) -1)
(neg.f64 (/.f64 im (/.f64 (neg.f64 re) im)))
(sqrt.f64 (pow.f64 (*.f64 im (/.f64 im re)) 2))
(log.f64 (pow.f64 (exp.f64 im) (/.f64 im re)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 im (/.f64 im re)))))
(cbrt.f64 (pow.f64 (*.f64 im (/.f64 im re)) 3))
(cbrt.f64 (/.f64 (pow.f64 im 3) (pow.f64 (/.f64 re im) 3)))
(expm1.f64 (log1p.f64 (*.f64 im (/.f64 im re))))
(exp.f64 (log.f64 (*.f64 im (/.f64 im re))))
(exp.f64 (*.f64 (log.f64 (*.f64 im (/.f64 im re))) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 im (/.f64 im re))) 1) 1))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 im (/.f64 im re)))) 3))
(exp.f64 (*.f64 (*.f64 3 (log.f64 (*.f64 im (/.f64 im re)))) 1/3))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 im (/.f64 im re)))) 2))
(exp.f64 (*.f64 (log.f64 (/.f64 (/.f64 re im) im)) -1))
(log1p.f64 (expm1.f64 (*.f64 im (/.f64 im re))))
(+.f64 0 (*.f64 im (*.f64 (/.f64 im re) -1/2)))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 -1/2) (*.f64 im (/.f64 im re)))) (cbrt.f64 (pow.f64 (exp.f64 -1/2) (*.f64 im (/.f64 im re)))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 -1/2) (*.f64 im (/.f64 im re))))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 -1/2) (*.f64 im (/.f64 im re))))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 -1/2) (*.f64 im (/.f64 im re))))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 im (*.f64 (/.f64 im re) -1/2)))) 1)
(/.f64 im (/.f64 (/.f64 re im) -1/2))
(/.f64 -1/2 (/.f64 (/.f64 re im) im))
(/.f64 1 (/.f64 (/.f64 re im) (*.f64 im -1/2)))
(/.f64 (*.f64 im -1/2) (/.f64 re im))
(/.f64 (neg.f64 (*.f64 im -1/2)) (/.f64 (neg.f64 re) im))
(/.f64 (*.f64 -1/2 (neg.f64 im)) (/.f64 (neg.f64 re) im))
(/.f64 (*.f64 (neg.f64 im) -1/2) (/.f64 (neg.f64 re) im))
(/.f64 (/.f64 (*.f64 im -1/2) re) (/.f64 1 im))
(/.f64 (/.f64 (*.f64 im -1/2) 1) (/.f64 re im))
(/.f64 (/.f64 (*.f64 im -1/2) (pow.f64 (cbrt.f64 (/.f64 re im)) 2)) (cbrt.f64 (/.f64 re im)))
(/.f64 (/.f64 (*.f64 im -1/2) (sqrt.f64 (/.f64 re im))) (sqrt.f64 (/.f64 re im)))
(pow.f64 (*.f64 im (*.f64 (/.f64 im re) -1/2)) 1)
(pow.f64 (cbrt.f64 (*.f64 im (*.f64 (/.f64 im re) -1/2))) 3)
(pow.f64 (*.f64 -1/8 (pow.f64 (*.f64 im (/.f64 im re)) 3)) 1/3)
(pow.f64 (sqrt.f64 (*.f64 im (*.f64 (/.f64 im re) -1/2))) 2)
(pow.f64 (/.f64 (/.f64 re im) (*.f64 im -1/2)) -1)
(sqrt.f64 (*.f64 1/4 (pow.f64 (*.f64 im (/.f64 im re)) 2)))
(log.f64 (pow.f64 (exp.f64 -1/2) (*.f64 im (/.f64 im re))))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 im (*.f64 (/.f64 im re) -1/2)))))
(cbrt.f64 (*.f64 -1/8 (pow.f64 (*.f64 im (/.f64 im re)) 3)))
(expm1.f64 (log1p.f64 (*.f64 im (*.f64 (/.f64 im re) -1/2))))
(exp.f64 (log.f64 (*.f64 im (*.f64 (/.f64 im re) -1/2))))
(exp.f64 (*.f64 (log.f64 (*.f64 im (*.f64 (/.f64 im re) -1/2))) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 im (*.f64 (/.f64 im re) -1/2))) 1) 1))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 im (*.f64 (/.f64 im re) -1/2)))) 3))
(exp.f64 (*.f64 (*.f64 3 (log.f64 (*.f64 im (*.f64 (/.f64 im re) -1/2)))) 1/3))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 im (*.f64 (/.f64 im re) -1/2))) 3) 1/3))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 im (*.f64 (/.f64 im re) -1/2)))) 2))
(log1p.f64 (expm1.f64 (*.f64 im (*.f64 (/.f64 im re) -1/2))))

simplify93.0ms (4.6%)

Algorithm
egg-herbie
Rules
952×distribute-lft-in
798×unswap-sqr
616×log-prod
388×distribute-lft-neg-in
366×cancel-sign-sub-inv
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
04105868
19975730
232895638
Stop Event
node limit
Counts
196 → 231
Calls
Call 1
Inputs
(log.f64 (neg.f64 re))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) (pow.f64 re 2))) (log.f64 (neg.f64 re)))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) (pow.f64 re 2))) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 4))) (log.f64 (neg.f64 re))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) (pow.f64 re 2))) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 4))) (+.f64 (log.f64 (neg.f64 re)) (*.f64 1/24 (/.f64 (pow.f64 im 6) (pow.f64 re 6))))))
(+.f64 (log.f64 (neg.f64 (*.f64 1/2 (/.f64 1 re)))) (*.f64 -2 (log.f64 (/.f64 1 im))))
(+.f64 (log.f64 (neg.f64 (*.f64 1/2 (/.f64 1 re)))) (+.f64 (*.f64 2 (/.f64 (pow.f64 re 2) (pow.f64 im 2))) (*.f64 -2 (log.f64 (/.f64 1 im)))))
(+.f64 (log.f64 (neg.f64 (*.f64 1/2 (/.f64 1 re)))) (+.f64 (*.f64 -2 (/.f64 (pow.f64 re 4) (pow.f64 im 4))) (+.f64 (*.f64 2 (/.f64 (pow.f64 re 2) (pow.f64 im 2))) (*.f64 -2 (log.f64 (/.f64 1 im))))))
(+.f64 (log.f64 (neg.f64 (*.f64 1/2 (/.f64 1 re)))) (+.f64 (*.f64 -2 (/.f64 (pow.f64 re 4) (pow.f64 im 4))) (+.f64 (*.f64 2 (/.f64 (pow.f64 re 2) (pow.f64 im 2))) (+.f64 (*.f64 8/3 (/.f64 (pow.f64 re 6) (pow.f64 im 6))) (*.f64 -2 (log.f64 (/.f64 1 im)))))))
(+.f64 (log.f64 (neg.f64 (*.f64 1/2 (/.f64 1 re)))) (*.f64 -2 (log.f64 (/.f64 -1 im))))
(+.f64 (log.f64 (neg.f64 (*.f64 1/2 (/.f64 1 re)))) (+.f64 (*.f64 2 (/.f64 (pow.f64 re 2) (pow.f64 im 2))) (*.f64 -2 (log.f64 (/.f64 -1 im)))))
(+.f64 (log.f64 (neg.f64 (*.f64 1/2 (/.f64 1 re)))) (+.f64 (*.f64 -2 (/.f64 (pow.f64 re 4) (pow.f64 im 4))) (+.f64 (*.f64 2 (/.f64 (pow.f64 re 2) (pow.f64 im 2))) (*.f64 -2 (log.f64 (/.f64 -1 im))))))
(+.f64 (log.f64 (neg.f64 (*.f64 1/2 (/.f64 1 re)))) (+.f64 (*.f64 -2 (/.f64 (pow.f64 re 4) (pow.f64 im 4))) (+.f64 (*.f64 2 (/.f64 (pow.f64 re 2) (pow.f64 im 2))) (+.f64 (*.f64 8/3 (/.f64 (pow.f64 re 6) (pow.f64 im 6))) (*.f64 -2 (log.f64 (/.f64 -1 im)))))))
(+.f64 (log.f64 (*.f64 -1/2 (pow.f64 im 2))) (*.f64 -1 (log.f64 re)))
(+.f64 (log.f64 (*.f64 -1/2 (pow.f64 im 2))) (+.f64 (*.f64 2 (/.f64 (pow.f64 re 2) (pow.f64 im 2))) (*.f64 -1 (log.f64 re))))
(+.f64 (*.f64 -2 (/.f64 (pow.f64 re 4) (pow.f64 im 4))) (+.f64 (log.f64 (*.f64 -1/2 (pow.f64 im 2))) (+.f64 (*.f64 2 (/.f64 (pow.f64 re 2) (pow.f64 im 2))) (*.f64 -1 (log.f64 re)))))
(+.f64 (*.f64 -2 (/.f64 (pow.f64 re 4) (pow.f64 im 4))) (+.f64 (log.f64 (*.f64 -1/2 (pow.f64 im 2))) (+.f64 (*.f64 2 (/.f64 (pow.f64 re 2) (pow.f64 im 2))) (+.f64 (*.f64 8/3 (/.f64 (pow.f64 re 6) (pow.f64 im 6))) (*.f64 -1 (log.f64 re))))))
(+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 1 re))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) (pow.f64 re 2))) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 1 re)))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) (pow.f64 re 2))) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 4))) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 1 re))))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) (pow.f64 re 2))) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 4))) (+.f64 (*.f64 1/24 (/.f64 (pow.f64 im 6) (pow.f64 re 6))) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 1 re)))))))
(*.f64 -1 (log.f64 (/.f64 -1 re)))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) (pow.f64 re 2))) (*.f64 -1 (log.f64 (/.f64 -1 re))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) (pow.f64 re 2))) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 4))) (*.f64 -1 (log.f64 (/.f64 -1 re)))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) (pow.f64 re 2))) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 4))) (+.f64 (*.f64 1/24 (/.f64 (pow.f64 im 6) (pow.f64 re 6))) (*.f64 -1 (log.f64 (/.f64 -1 re))))))
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(/.f64 (pow.f64 im 2) re)
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(+.f64 (log.f64 (fma.f64 im (*.f64 (/.f64 im re) -1/2) (neg.f64 re))) 0)
(+.f64 0 (log.f64 (fma.f64 im (*.f64 (/.f64 im re) -1/2) (neg.f64 re))))
(+.f64 (log.f64 (cbrt.f64 (fma.f64 im (*.f64 (/.f64 im re) -1/2) (neg.f64 re)))) (*.f64 2 (log.f64 (cbrt.f64 (fma.f64 im (*.f64 (/.f64 im re) -1/2) (neg.f64 re))))))
(+.f64 (log.f64 (-.f64 (*.f64 -1/8 (pow.f64 (*.f64 im (/.f64 im re)) 3)) (pow.f64 re 3))) (log.f64 (/.f64 1 (fma.f64 re (fma.f64 im (*.f64 (/.f64 im re) -1/2) re) (*.f64 1/4 (pow.f64 (*.f64 im (/.f64 im re)) 2))))))
(+.f64 (log.f64 (-.f64 (*.f64 1/4 (pow.f64 (*.f64 im (/.f64 im re)) 2)) (*.f64 re re))) (log.f64 (/.f64 1 (fma.f64 im (*.f64 (/.f64 im re) -1/2) re))))
(+.f64 (log.f64 (sqrt.f64 (fma.f64 im (*.f64 (/.f64 im re) -1/2) (neg.f64 re)))) (log.f64 (sqrt.f64 (fma.f64 im (*.f64 (/.f64 im re) -1/2) (neg.f64 re)))))
(+.f64 (*.f64 2 (log.f64 (cbrt.f64 (fma.f64 im (*.f64 (/.f64 im re) -1/2) (neg.f64 re))))) (log.f64 (cbrt.f64 (fma.f64 im (*.f64 (/.f64 im re) -1/2) (neg.f64 re)))))
(+.f64 (log.f64 (+.f64 (sqrt.f64 (*.f64 im (*.f64 (/.f64 im re) -1/2))) (sqrt.f64 re))) (log.f64 (-.f64 (sqrt.f64 (*.f64 im (*.f64 (/.f64 im re) -1/2))) (sqrt.f64 re))))
(-.f64 0 (log.f64 (/.f64 (fma.f64 re (fma.f64 im (*.f64 (/.f64 im re) -1/2) re) (*.f64 1/4 (pow.f64 (*.f64 im (/.f64 im re)) 2))) (-.f64 (*.f64 -1/8 (pow.f64 (*.f64 im (/.f64 im re)) 3)) (pow.f64 re 3)))))
(-.f64 0 (log.f64 (/.f64 (fma.f64 im (*.f64 (/.f64 im re) -1/2) re) (-.f64 (*.f64 1/4 (pow.f64 (*.f64 im (/.f64 im re)) 2)) (*.f64 re re)))))
(-.f64 (log.f64 (-.f64 (*.f64 -1/8 (pow.f64 (*.f64 im (/.f64 im re)) 3)) (pow.f64 re 3))) (log.f64 (fma.f64 re (fma.f64 im (*.f64 (/.f64 im re) -1/2) re) (*.f64 1/4 (pow.f64 (*.f64 im (/.f64 im re)) 2)))))
(-.f64 (log.f64 (-.f64 (*.f64 1/4 (pow.f64 (*.f64 im (/.f64 im re)) 2)) (*.f64 re re))) (log.f64 (fma.f64 im (*.f64 (/.f64 im re) -1/2) re)))
(-.f64 (exp.f64 (log1p.f64 (log.f64 (fma.f64 im (*.f64 (/.f64 im re) -1/2) (neg.f64 re))))) 1)
(-.f64 (log.f64 (neg.f64 (-.f64 (*.f64 -1/8 (pow.f64 (*.f64 im (/.f64 im re)) 3)) (pow.f64 re 3)))) (log.f64 (neg.f64 (fma.f64 re (fma.f64 im (*.f64 (/.f64 im re) -1/2) re) (*.f64 1/4 (pow.f64 (*.f64 im (/.f64 im re)) 2))))))
(-.f64 (log.f64 (neg.f64 (-.f64 (*.f64 1/4 (pow.f64 (*.f64 im (/.f64 im re)) 2)) (*.f64 re re)))) (log.f64 (neg.f64 (fma.f64 im (*.f64 (/.f64 im re) -1/2) re))))
(-.f64 (log.f64 (fma.f64 -1/8 (pow.f64 (*.f64 im (/.f64 im re)) 3) (pow.f64 (neg.f64 re) 3))) (log.f64 (fma.f64 1/4 (pow.f64 (*.f64 im (/.f64 im re)) 2) (-.f64 (*.f64 (neg.f64 re) (neg.f64 re)) (*.f64 (*.f64 im (*.f64 (/.f64 im re) -1/2)) (neg.f64 re))))))
(-.f64 (log.f64 (-.f64 (*.f64 1/4 (pow.f64 (*.f64 im (/.f64 im re)) 2)) (*.f64 (neg.f64 re) (neg.f64 re)))) (log.f64 (fma.f64 (/.f64 im re) (*.f64 im -1/2) (neg.f64 (neg.f64 re)))))
(*.f64 (log.f64 (fma.f64 im (*.f64 (/.f64 im re) -1/2) (neg.f64 re))) 1)
(*.f64 1 (log.f64 (fma.f64 im (*.f64 (/.f64 im re) -1/2) (neg.f64 re))))
(*.f64 (cbrt.f64 (log.f64 (fma.f64 im (*.f64 (/.f64 im re) -1/2) (neg.f64 re)))) (pow.f64 (cbrt.f64 (log.f64 (fma.f64 im (*.f64 (/.f64 im re) -1/2) (neg.f64 re)))) 2))
(*.f64 (pow.f64 (cbrt.f64 (log.f64 (fma.f64 im (*.f64 (/.f64 im re) -1/2) (neg.f64 re)))) 2) (cbrt.f64 (log.f64 (fma.f64 im (*.f64 (/.f64 im re) -1/2) (neg.f64 re)))))
(*.f64 (sqrt.f64 (log.f64 (fma.f64 im (*.f64 (/.f64 im re) -1/2) (neg.f64 re)))) (sqrt.f64 (log.f64 (fma.f64 im (*.f64 (/.f64 im re) -1/2) (neg.f64 re)))))
(*.f64 3 (log.f64 (cbrt.f64 (fma.f64 im (*.f64 (/.f64 im re) -1/2) (neg.f64 re)))))
(*.f64 2 (log.f64 (sqrt.f64 (fma.f64 im (*.f64 (/.f64 im re) -1/2) (neg.f64 re)))))
(*.f64 1/3 (*.f64 3 (log.f64 (fma.f64 im (*.f64 (/.f64 im re) -1/2) (neg.f64 re)))))
(pow.f64 (log.f64 (fma.f64 im (*.f64 (/.f64 im re) -1/2) (neg.f64 re))) 1)
(pow.f64 (cbrt.f64 (log.f64 (fma.f64 im (*.f64 (/.f64 im re) -1/2) (neg.f64 re)))) 3)
(pow.f64 (pow.f64 (log.f64 (fma.f64 im (*.f64 (/.f64 im re) -1/2) (neg.f64 re))) 3) 1/3)
(pow.f64 (sqrt.f64 (log.f64 (fma.f64 im (*.f64 (/.f64 im re) -1/2) (neg.f64 re)))) 2)
(neg.f64 (log.f64 (/.f64 (fma.f64 re (fma.f64 im (*.f64 (/.f64 im re) -1/2) re) (*.f64 1/4 (pow.f64 (*.f64 im (/.f64 im re)) 2))) (-.f64 (*.f64 -1/8 (pow.f64 (*.f64 im (/.f64 im re)) 3)) (pow.f64 re 3)))))
(neg.f64 (log.f64 (/.f64 (fma.f64 im (*.f64 (/.f64 im re) -1/2) re) (-.f64 (*.f64 1/4 (pow.f64 (*.f64 im (/.f64 im re)) 2)) (*.f64 re re)))))
(sqrt.f64 (pow.f64 (log.f64 (fma.f64 im (*.f64 (/.f64 im re) -1/2) (neg.f64 re))) 2))
(cbrt.f64 (pow.f64 (log.f64 (fma.f64 im (*.f64 (/.f64 im re) -1/2) (neg.f64 re))) 3))
(expm1.f64 (log1p.f64 (log.f64 (fma.f64 im (*.f64 (/.f64 im re) -1/2) (neg.f64 re)))))
(exp.f64 (log.f64 (log.f64 (fma.f64 im (*.f64 (/.f64 im re) -1/2) (neg.f64 re)))))
(exp.f64 (*.f64 (log.f64 (log.f64 (fma.f64 im (*.f64 (/.f64 im re) -1/2) (neg.f64 re)))) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (log.f64 (fma.f64 im (*.f64 (/.f64 im re) -1/2) (neg.f64 re)))) 1) 1))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (log.f64 (fma.f64 im (*.f64 (/.f64 im re) -1/2) (neg.f64 re))))) 3))
(exp.f64 (*.f64 (*.f64 3 (log.f64 (log.f64 (fma.f64 im (*.f64 (/.f64 im re) -1/2) (neg.f64 re))))) 1/3))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (log.f64 (fma.f64 im (*.f64 (/.f64 im re) -1/2) (neg.f64 re))))) 2))
(log1p.f64 (-.f64 (fma.f64 im (*.f64 (/.f64 im re) -1/2) (neg.f64 re)) 1))
(+.f64 0 (*.f64 im (/.f64 im re)))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 im) (/.f64 im re))) (cbrt.f64 (pow.f64 (exp.f64 im) (/.f64 im re))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 im) (/.f64 im re)))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 im) (/.f64 im re)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 im) (/.f64 im re)))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 im (/.f64 im re)))) 1)
(*.f64 im (/.f64 im re))
(*.f64 (*.f64 im (/.f64 im re)) 1)
(*.f64 1 (*.f64 im (/.f64 im re)))
(*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2) (cbrt.f64 (*.f64 im (/.f64 im re))))
(*.f64 (pow.f64 (cbrt.f64 im) 2) (*.f64 (cbrt.f64 im) (/.f64 im re)))
(*.f64 (sqrt.f64 (*.f64 im (/.f64 im re))) (sqrt.f64 (*.f64 im (/.f64 im re))))
(*.f64 (sqrt.f64 im) (*.f64 (sqrt.f64 im) (/.f64 im re)))
(*.f64 (neg.f64 im) (/.f64 1 (/.f64 (neg.f64 re) im)))
(*.f64 (/.f64 im re) im)
(*.f64 (/.f64 im 1) (/.f64 im re))
(*.f64 (/.f64 1 re) (/.f64 im (/.f64 1 im)))
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 (/.f64 re im)) 2)) (/.f64 im (cbrt.f64 (/.f64 re im))))
(*.f64 (/.f64 1 (sqrt.f64 (/.f64 re im))) (/.f64 im (sqrt.f64 (/.f64 re im))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 im) 2) re) (/.f64 (cbrt.f64 im) (/.f64 1 im)))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 im) 2) 1) (/.f64 (cbrt.f64 im) (/.f64 re im)))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 im) 2) (pow.f64 (cbrt.f64 (/.f64 re im)) 2)) (cbrt.f64 (*.f64 im (/.f64 im re))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 im) 2) (sqrt.f64 (/.f64 re im))) (/.f64 (cbrt.f64 im) (sqrt.f64 (/.f64 re im))))
(*.f64 (/.f64 (sqrt.f64 im) re) (/.f64 (sqrt.f64 im) (/.f64 1 im)))
(*.f64 (/.f64 (sqrt.f64 im) 1) (/.f64 (sqrt.f64 im) (/.f64 re im)))
(*.f64 (/.f64 (sqrt.f64 im) (pow.f64 (cbrt.f64 (/.f64 re im)) 2)) (/.f64 (sqrt.f64 im) (cbrt.f64 (/.f64 re im))))
(*.f64 (*.f64 (/.f64 im re) 1) im)
(*.f64 (*.f64 (/.f64 im re) (pow.f64 (cbrt.f64 im) 2)) (cbrt.f64 im))
(*.f64 (*.f64 (/.f64 im re) (sqrt.f64 im)) (sqrt.f64 im))
(*.f64 (/.f64 im (neg.f64 re)) (neg.f64 im))
(pow.f64 (*.f64 im (/.f64 im re)) 1)
(pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 3)
(pow.f64 (pow.f64 (*.f64 im (/.f64 im re)) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 im (/.f64 im re))) 2)
(pow.f64 (/.f64 (/.f64 re im) im) -1)
(pow.f64 (/.f64 (/.f64 (/.f64 re im) im) 1) -1)
(neg.f64 (/.f64 im (/.f64 (neg.f64 re) im)))
(sqrt.f64 (pow.f64 (*.f64 im (/.f64 im re)) 2))
(log.f64 (pow.f64 (exp.f64 im) (/.f64 im re)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 im (/.f64 im re)))))
(cbrt.f64 (pow.f64 (*.f64 im (/.f64 im re)) 3))
(cbrt.f64 (/.f64 (pow.f64 im 3) (pow.f64 (/.f64 re im) 3)))
(expm1.f64 (log1p.f64 (*.f64 im (/.f64 im re))))
(exp.f64 (log.f64 (*.f64 im (/.f64 im re))))
(exp.f64 (*.f64 (log.f64 (*.f64 im (/.f64 im re))) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 im (/.f64 im re))) 1) 1))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 im (/.f64 im re)))) 3))
(exp.f64 (*.f64 (*.f64 3 (log.f64 (*.f64 im (/.f64 im re)))) 1/3))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 im (/.f64 im re)))) 2))
(exp.f64 (*.f64 (log.f64 (/.f64 (/.f64 re im) im)) -1))
(log1p.f64 (expm1.f64 (*.f64 im (/.f64 im re))))
(+.f64 0 (*.f64 im (*.f64 (/.f64 im re) -1/2)))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 -1/2) (*.f64 im (/.f64 im re)))) (cbrt.f64 (pow.f64 (exp.f64 -1/2) (*.f64 im (/.f64 im re)))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 -1/2) (*.f64 im (/.f64 im re))))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 -1/2) (*.f64 im (/.f64 im re))))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 -1/2) (*.f64 im (/.f64 im re))))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 im (*.f64 (/.f64 im re) -1/2)))) 1)
(/.f64 im (/.f64 (/.f64 re im) -1/2))
(/.f64 -1/2 (/.f64 (/.f64 re im) im))
(/.f64 1 (/.f64 (/.f64 re im) (*.f64 im -1/2)))
(/.f64 (*.f64 im -1/2) (/.f64 re im))
(/.f64 (neg.f64 (*.f64 im -1/2)) (/.f64 (neg.f64 re) im))
(/.f64 (*.f64 -1/2 (neg.f64 im)) (/.f64 (neg.f64 re) im))
(/.f64 (*.f64 (neg.f64 im) -1/2) (/.f64 (neg.f64 re) im))
(/.f64 (/.f64 (*.f64 im -1/2) re) (/.f64 1 im))
(/.f64 (/.f64 (*.f64 im -1/2) 1) (/.f64 re im))
(/.f64 (/.f64 (*.f64 im -1/2) (pow.f64 (cbrt.f64 (/.f64 re im)) 2)) (cbrt.f64 (/.f64 re im)))
(/.f64 (/.f64 (*.f64 im -1/2) (sqrt.f64 (/.f64 re im))) (sqrt.f64 (/.f64 re im)))
(pow.f64 (*.f64 im (*.f64 (/.f64 im re) -1/2)) 1)
(pow.f64 (cbrt.f64 (*.f64 im (*.f64 (/.f64 im re) -1/2))) 3)
(pow.f64 (*.f64 -1/8 (pow.f64 (*.f64 im (/.f64 im re)) 3)) 1/3)
(pow.f64 (sqrt.f64 (*.f64 im (*.f64 (/.f64 im re) -1/2))) 2)
(pow.f64 (/.f64 (/.f64 re im) (*.f64 im -1/2)) -1)
(sqrt.f64 (*.f64 1/4 (pow.f64 (*.f64 im (/.f64 im re)) 2)))
(log.f64 (pow.f64 (exp.f64 -1/2) (*.f64 im (/.f64 im re))))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 im (*.f64 (/.f64 im re) -1/2)))))
(cbrt.f64 (*.f64 -1/8 (pow.f64 (*.f64 im (/.f64 im re)) 3)))
(expm1.f64 (log1p.f64 (*.f64 im (*.f64 (/.f64 im re) -1/2))))
(exp.f64 (log.f64 (*.f64 im (*.f64 (/.f64 im re) -1/2))))
(exp.f64 (*.f64 (log.f64 (*.f64 im (*.f64 (/.f64 im re) -1/2))) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 im (*.f64 (/.f64 im re) -1/2))) 1) 1))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 im (*.f64 (/.f64 im re) -1/2)))) 3))
(exp.f64 (*.f64 (*.f64 3 (log.f64 (*.f64 im (*.f64 (/.f64 im re) -1/2)))) 1/3))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 im (*.f64 (/.f64 im re) -1/2))) 3) 1/3))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 im (*.f64 (/.f64 im re) -1/2)))) 2))
(log1p.f64 (expm1.f64 (*.f64 im (*.f64 (/.f64 im re) -1/2))))
Outputs
(log.f64 (neg.f64 re))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) (pow.f64 re 2))) (log.f64 (neg.f64 re)))
(fma.f64 1/2 (/.f64 (*.f64 im im) (*.f64 re re)) (log.f64 (neg.f64 re)))
(fma.f64 1/2 (*.f64 (/.f64 im re) (/.f64 im re)) (log.f64 (neg.f64 re)))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) (pow.f64 re 2))) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 4))) (log.f64 (neg.f64 re))))
(fma.f64 1/2 (/.f64 (*.f64 im im) (*.f64 re re)) (fma.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 4)) (log.f64 (neg.f64 re))))
(fma.f64 1/2 (*.f64 (/.f64 im re) (/.f64 im re)) (fma.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 4)) (log.f64 (neg.f64 re))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) (pow.f64 re 2))) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 4))) (+.f64 (log.f64 (neg.f64 re)) (*.f64 1/24 (/.f64 (pow.f64 im 6) (pow.f64 re 6))))))
(fma.f64 1/2 (/.f64 (*.f64 im im) (*.f64 re re)) (+.f64 (fma.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 4)) (log.f64 (neg.f64 re))) (*.f64 1/24 (/.f64 (pow.f64 im 6) (pow.f64 re 6)))))
(fma.f64 1/2 (/.f64 (*.f64 im im) (*.f64 re re)) (fma.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 4)) (fma.f64 1/24 (/.f64 (pow.f64 im 6) (pow.f64 re 6)) (log.f64 (neg.f64 re)))))
(fma.f64 1/2 (*.f64 (/.f64 im re) (/.f64 im re)) (fma.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 4)) (fma.f64 1/24 (pow.f64 (/.f64 im re) 6) (log.f64 (neg.f64 re)))))
(+.f64 (log.f64 (neg.f64 (*.f64 1/2 (/.f64 1 re)))) (*.f64 -2 (log.f64 (/.f64 1 im))))
(+.f64 (log.f64 (neg.f64 (/.f64 1/2 re))) (*.f64 -2 (neg.f64 (log.f64 im))))
(fma.f64 -2 (neg.f64 (log.f64 im)) (log.f64 (/.f64 -1/2 re)))
(log.f64 (*.f64 im (*.f64 -1/2 (/.f64 im re))))
(+.f64 (log.f64 (neg.f64 (*.f64 1/2 (/.f64 1 re)))) (+.f64 (*.f64 2 (/.f64 (pow.f64 re 2) (pow.f64 im 2))) (*.f64 -2 (log.f64 (/.f64 1 im)))))
(+.f64 (log.f64 (neg.f64 (/.f64 1/2 re))) (fma.f64 2 (/.f64 (*.f64 re re) (*.f64 im im)) (*.f64 -2 (neg.f64 (log.f64 im)))))
(+.f64 (log.f64 (/.f64 -1/2 re)) (fma.f64 2 (*.f64 (/.f64 re im) (/.f64 re im)) (*.f64 -2 (neg.f64 (log.f64 im)))))
(+.f64 (log.f64 (/.f64 -1/2 re)) (fma.f64 2 (pow.f64 (cbrt.f64 (/.f64 re im)) 6) (*.f64 2 (log.f64 im))))
(+.f64 (log.f64 (neg.f64 (*.f64 1/2 (/.f64 1 re)))) (+.f64 (*.f64 -2 (/.f64 (pow.f64 re 4) (pow.f64 im 4))) (+.f64 (*.f64 2 (/.f64 (pow.f64 re 2) (pow.f64 im 2))) (*.f64 -2 (log.f64 (/.f64 1 im))))))
(+.f64 (log.f64 (neg.f64 (/.f64 1/2 re))) (fma.f64 -2 (/.f64 (pow.f64 re 4) (pow.f64 im 4)) (fma.f64 2 (/.f64 (*.f64 re re) (*.f64 im im)) (*.f64 -2 (neg.f64 (log.f64 im))))))
(+.f64 (log.f64 (/.f64 -1/2 re)) (fma.f64 -2 (/.f64 (pow.f64 re 4) (pow.f64 im 4)) (fma.f64 2 (*.f64 (/.f64 re im) (/.f64 re im)) (*.f64 -2 (neg.f64 (log.f64 im))))))
(+.f64 (log.f64 (/.f64 -1/2 re)) (fma.f64 -2 (/.f64 (pow.f64 re 4) (pow.f64 im 4)) (fma.f64 2 (pow.f64 (cbrt.f64 (/.f64 re im)) 6) (*.f64 2 (log.f64 im)))))
(+.f64 (log.f64 (neg.f64 (*.f64 1/2 (/.f64 1 re)))) (+.f64 (*.f64 -2 (/.f64 (pow.f64 re 4) (pow.f64 im 4))) (+.f64 (*.f64 2 (/.f64 (pow.f64 re 2) (pow.f64 im 2))) (+.f64 (*.f64 8/3 (/.f64 (pow.f64 re 6) (pow.f64 im 6))) (*.f64 -2 (log.f64 (/.f64 1 im)))))))
(+.f64 (log.f64 (neg.f64 (/.f64 1/2 re))) (fma.f64 -2 (/.f64 (pow.f64 re 4) (pow.f64 im 4)) (fma.f64 2 (/.f64 (*.f64 re re) (*.f64 im im)) (fma.f64 8/3 (/.f64 (pow.f64 re 6) (pow.f64 im 6)) (*.f64 -2 (neg.f64 (log.f64 im)))))))
(+.f64 (log.f64 (/.f64 -1/2 re)) (fma.f64 -2 (/.f64 (pow.f64 re 4) (pow.f64 im 4)) (fma.f64 2 (*.f64 (/.f64 re im) (/.f64 re im)) (fma.f64 -2 (neg.f64 (log.f64 im)) (*.f64 8/3 (/.f64 (pow.f64 re 6) (pow.f64 im 6)))))))
(+.f64 (log.f64 (/.f64 -1/2 re)) (fma.f64 -2 (/.f64 (pow.f64 re 4) (pow.f64 im 4)) (fma.f64 2 (pow.f64 (cbrt.f64 (/.f64 re im)) 6) (fma.f64 8/3 (pow.f64 (/.f64 re im) 6) (*.f64 2 (log.f64 im))))))
(+.f64 (log.f64 (neg.f64 (*.f64 1/2 (/.f64 1 re)))) (*.f64 -2 (log.f64 (/.f64 -1 im))))
(+.f64 (log.f64 (neg.f64 (/.f64 1/2 re))) (*.f64 -2 (log.f64 (/.f64 -1 im))))
(fma.f64 -2 (log.f64 (/.f64 -1 im)) (log.f64 (/.f64 -1/2 re)))
(+.f64 (log.f64 (neg.f64 (*.f64 1/2 (/.f64 1 re)))) (+.f64 (*.f64 2 (/.f64 (pow.f64 re 2) (pow.f64 im 2))) (*.f64 -2 (log.f64 (/.f64 -1 im)))))
(+.f64 (log.f64 (neg.f64 (/.f64 1/2 re))) (fma.f64 2 (/.f64 (*.f64 re re) (*.f64 im im)) (*.f64 -2 (log.f64 (/.f64 -1 im)))))
(+.f64 (log.f64 (/.f64 -1/2 re)) (fma.f64 2 (*.f64 (/.f64 re im) (/.f64 re im)) (*.f64 -2 (log.f64 (/.f64 -1 im)))))
(+.f64 (log.f64 (/.f64 -1/2 re)) (fma.f64 2 (pow.f64 (cbrt.f64 (/.f64 re im)) 6) (*.f64 -2 (log.f64 (/.f64 -1 im)))))
(+.f64 (log.f64 (neg.f64 (*.f64 1/2 (/.f64 1 re)))) (+.f64 (*.f64 -2 (/.f64 (pow.f64 re 4) (pow.f64 im 4))) (+.f64 (*.f64 2 (/.f64 (pow.f64 re 2) (pow.f64 im 2))) (*.f64 -2 (log.f64 (/.f64 -1 im))))))
(+.f64 (log.f64 (neg.f64 (/.f64 1/2 re))) (fma.f64 -2 (/.f64 (pow.f64 re 4) (pow.f64 im 4)) (fma.f64 2 (/.f64 (*.f64 re re) (*.f64 im im)) (*.f64 -2 (log.f64 (/.f64 -1 im))))))
(+.f64 (fma.f64 -2 (/.f64 (pow.f64 re 4) (pow.f64 im 4)) (*.f64 2 (*.f64 (/.f64 re im) (/.f64 re im)))) (fma.f64 -2 (log.f64 (/.f64 -1 im)) (log.f64 (/.f64 -1/2 re))))
(+.f64 (log.f64 (/.f64 -1/2 re)) (fma.f64 -2 (/.f64 (pow.f64 re 4) (pow.f64 im 4)) (fma.f64 2 (pow.f64 (cbrt.f64 (/.f64 re im)) 6) (*.f64 -2 (log.f64 (/.f64 -1 im))))))
(+.f64 (log.f64 (neg.f64 (*.f64 1/2 (/.f64 1 re)))) (+.f64 (*.f64 -2 (/.f64 (pow.f64 re 4) (pow.f64 im 4))) (+.f64 (*.f64 2 (/.f64 (pow.f64 re 2) (pow.f64 im 2))) (+.f64 (*.f64 8/3 (/.f64 (pow.f64 re 6) (pow.f64 im 6))) (*.f64 -2 (log.f64 (/.f64 -1 im)))))))
(+.f64 (log.f64 (neg.f64 (/.f64 1/2 re))) (fma.f64 -2 (/.f64 (pow.f64 re 4) (pow.f64 im 4)) (fma.f64 2 (/.f64 (*.f64 re re) (*.f64 im im)) (fma.f64 8/3 (/.f64 (pow.f64 re 6) (pow.f64 im 6)) (*.f64 -2 (log.f64 (/.f64 -1 im)))))))
(+.f64 (log.f64 (/.f64 -1/2 re)) (fma.f64 -2 (/.f64 (pow.f64 re 4) (pow.f64 im 4)) (fma.f64 2 (*.f64 (/.f64 re im) (/.f64 re im)) (fma.f64 -2 (log.f64 (/.f64 -1 im)) (*.f64 8/3 (/.f64 (pow.f64 re 6) (pow.f64 im 6)))))))
(+.f64 (log.f64 (/.f64 -1/2 re)) (fma.f64 -2 (/.f64 (pow.f64 re 4) (pow.f64 im 4)) (fma.f64 2 (pow.f64 (cbrt.f64 (/.f64 re im)) 6) (fma.f64 -2 (log.f64 (/.f64 -1 im)) (*.f64 8/3 (pow.f64 (/.f64 re im) 6))))))
(+.f64 (log.f64 (*.f64 -1/2 (pow.f64 im 2))) (*.f64 -1 (log.f64 re)))
(+.f64 (log.f64 (neg.f64 (/.f64 1/2 re))) (*.f64 -2 (neg.f64 (log.f64 im))))
(fma.f64 -2 (neg.f64 (log.f64 im)) (log.f64 (/.f64 -1/2 re)))
(log.f64 (*.f64 im (*.f64 -1/2 (/.f64 im re))))
(+.f64 (log.f64 (*.f64 -1/2 (pow.f64 im 2))) (+.f64 (*.f64 2 (/.f64 (pow.f64 re 2) (pow.f64 im 2))) (*.f64 -1 (log.f64 re))))
(+.f64 (log.f64 (neg.f64 (/.f64 1/2 re))) (fma.f64 2 (/.f64 (*.f64 re re) (*.f64 im im)) (*.f64 -2 (neg.f64 (log.f64 im)))))
(+.f64 (log.f64 (/.f64 -1/2 re)) (fma.f64 2 (*.f64 (/.f64 re im) (/.f64 re im)) (*.f64 -2 (neg.f64 (log.f64 im)))))
(+.f64 (log.f64 (/.f64 -1/2 re)) (fma.f64 2 (pow.f64 (cbrt.f64 (/.f64 re im)) 6) (*.f64 2 (log.f64 im))))
(+.f64 (*.f64 -2 (/.f64 (pow.f64 re 4) (pow.f64 im 4))) (+.f64 (log.f64 (*.f64 -1/2 (pow.f64 im 2))) (+.f64 (*.f64 2 (/.f64 (pow.f64 re 2) (pow.f64 im 2))) (*.f64 -1 (log.f64 re)))))
(+.f64 (log.f64 (neg.f64 (/.f64 1/2 re))) (fma.f64 -2 (/.f64 (pow.f64 re 4) (pow.f64 im 4)) (fma.f64 2 (/.f64 (*.f64 re re) (*.f64 im im)) (*.f64 -2 (neg.f64 (log.f64 im))))))
(+.f64 (log.f64 (/.f64 -1/2 re)) (fma.f64 -2 (/.f64 (pow.f64 re 4) (pow.f64 im 4)) (fma.f64 2 (*.f64 (/.f64 re im) (/.f64 re im)) (*.f64 -2 (neg.f64 (log.f64 im))))))
(+.f64 (log.f64 (/.f64 -1/2 re)) (fma.f64 -2 (/.f64 (pow.f64 re 4) (pow.f64 im 4)) (fma.f64 2 (pow.f64 (cbrt.f64 (/.f64 re im)) 6) (*.f64 2 (log.f64 im)))))
(+.f64 (*.f64 -2 (/.f64 (pow.f64 re 4) (pow.f64 im 4))) (+.f64 (log.f64 (*.f64 -1/2 (pow.f64 im 2))) (+.f64 (*.f64 2 (/.f64 (pow.f64 re 2) (pow.f64 im 2))) (+.f64 (*.f64 8/3 (/.f64 (pow.f64 re 6) (pow.f64 im 6))) (*.f64 -1 (log.f64 re))))))
(fma.f64 -2 (/.f64 (pow.f64 re 4) (pow.f64 im 4)) (+.f64 (log.f64 (*.f64 (*.f64 im im) -1/2)) (fma.f64 2 (/.f64 (*.f64 re re) (*.f64 im im)) (fma.f64 8/3 (/.f64 (pow.f64 re 6) (pow.f64 im 6)) (neg.f64 (log.f64 re))))))
(fma.f64 -2 (/.f64 (pow.f64 re 4) (pow.f64 im 4)) (+.f64 (fma.f64 2 (*.f64 (/.f64 re im) (/.f64 re im)) (*.f64 8/3 (/.f64 (pow.f64 re 6) (pow.f64 im 6)))) (log.f64 (*.f64 im (/.f64 im (/.f64 re -1/2))))))
(fma.f64 -2 (/.f64 (pow.f64 re 4) (pow.f64 im 4)) (+.f64 (fma.f64 2 (pow.f64 (cbrt.f64 (/.f64 re im)) 6) (*.f64 8/3 (pow.f64 (/.f64 re im) 6))) (log.f64 (*.f64 im (*.f64 -1/2 (/.f64 im re))))))
(+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 1 re))))
(log.f64 (neg.f64 re))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) (pow.f64 re 2))) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 1 re)))))
(fma.f64 1/2 (/.f64 (*.f64 im im) (*.f64 re re)) (log.f64 (neg.f64 re)))
(fma.f64 1/2 (*.f64 (/.f64 im re) (/.f64 im re)) (log.f64 (neg.f64 re)))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) (pow.f64 re 2))) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 4))) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 1 re))))))
(fma.f64 1/2 (/.f64 (*.f64 im im) (*.f64 re re)) (fma.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 4)) (log.f64 (neg.f64 re))))
(fma.f64 1/2 (*.f64 (/.f64 im re) (/.f64 im re)) (fma.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 4)) (log.f64 (neg.f64 re))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) (pow.f64 re 2))) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 4))) (+.f64 (*.f64 1/24 (/.f64 (pow.f64 im 6) (pow.f64 re 6))) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 1 re)))))))
(fma.f64 1/2 (/.f64 (*.f64 im im) (*.f64 re re)) (+.f64 (fma.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 4)) (log.f64 (neg.f64 re))) (*.f64 1/24 (/.f64 (pow.f64 im 6) (pow.f64 re 6)))))
(fma.f64 1/2 (/.f64 (*.f64 im im) (*.f64 re re)) (fma.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 4)) (fma.f64 1/24 (/.f64 (pow.f64 im 6) (pow.f64 re 6)) (log.f64 (neg.f64 re)))))
(fma.f64 1/2 (*.f64 (/.f64 im re) (/.f64 im re)) (fma.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 4)) (fma.f64 1/24 (pow.f64 (/.f64 im re) 6) (log.f64 (neg.f64 re)))))
(*.f64 -1 (log.f64 (/.f64 -1 re)))
(neg.f64 (log.f64 (/.f64 -1 re)))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) (pow.f64 re 2))) (*.f64 -1 (log.f64 (/.f64 -1 re))))
(fma.f64 1/2 (/.f64 (*.f64 im im) (*.f64 re re)) (neg.f64 (log.f64 (/.f64 -1 re))))
(-.f64 (*.f64 1/2 (/.f64 (*.f64 im im) (*.f64 re re))) (log.f64 (/.f64 -1 re)))
(-.f64 (/.f64 1/2 (pow.f64 (cbrt.f64 (/.f64 re im)) 6)) (log.f64 (/.f64 -1 re)))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) (pow.f64 re 2))) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 4))) (*.f64 -1 (log.f64 (/.f64 -1 re)))))
(fma.f64 1/2 (/.f64 (*.f64 im im) (*.f64 re re)) (fma.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 4)) (neg.f64 (log.f64 (/.f64 -1 re)))))
(-.f64 (fma.f64 1/2 (/.f64 (*.f64 im im) (*.f64 re re)) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 4)))) (log.f64 (/.f64 -1 re)))
(-.f64 (fma.f64 1/2 (*.f64 (/.f64 im re) (/.f64 im re)) (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 4)))) (log.f64 (/.f64 -1 re)))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) (pow.f64 re 2))) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 4))) (+.f64 (*.f64 1/24 (/.f64 (pow.f64 im 6) (pow.f64 re 6))) (*.f64 -1 (log.f64 (/.f64 -1 re))))))
(fma.f64 1/2 (/.f64 (*.f64 im im) (*.f64 re re)) (fma.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 4)) (fma.f64 1/24 (/.f64 (pow.f64 im 6) (pow.f64 re 6)) (neg.f64 (log.f64 (/.f64 -1 re))))))
(fma.f64 1/2 (/.f64 (*.f64 im im) (*.f64 re re)) (-.f64 (fma.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 4)) (*.f64 1/24 (/.f64 (pow.f64 im 6) (pow.f64 re 6)))) (log.f64 (/.f64 -1 re))))
(fma.f64 1/2 (*.f64 (/.f64 im re) (/.f64 im re)) (-.f64 (fma.f64 -1/8 (/.f64 (pow.f64 im 4) (pow.f64 re 4)) (*.f64 1/24 (pow.f64 (/.f64 im re) 6))) (log.f64 (/.f64 -1 re))))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(/.f64 (pow.f64 im 2) re)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 im (/.f64 im (/.f64 re -1/2)))
(*.f64 im (*.f64 -1/2 (/.f64 im re)))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 im (/.f64 im (/.f64 re -1/2)))
(*.f64 im (*.f64 -1/2 (/.f64 im re)))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 im (/.f64 im (/.f64 re -1/2)))
(*.f64 im (*.f64 -1/2 (/.f64 im re)))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 im (/.f64 im (/.f64 re -1/2)))
(*.f64 im (*.f64 -1/2 (/.f64 im re)))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 im (/.f64 im (/.f64 re -1/2)))
(*.f64 im (*.f64 -1/2 (/.f64 im re)))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 im (/.f64 im (/.f64 re -1/2)))
(*.f64 im (*.f64 -1/2 (/.f64 im re)))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 im (/.f64 im (/.f64 re -1/2)))
(*.f64 im (*.f64 -1/2 (/.f64 im re)))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 im (/.f64 im (/.f64 re -1/2)))
(*.f64 im (*.f64 -1/2 (/.f64 im re)))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 im (/.f64 im (/.f64 re -1/2)))
(*.f64 im (*.f64 -1/2 (/.f64 im re)))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 im (/.f64 im (/.f64 re -1/2)))
(*.f64 im (*.f64 -1/2 (/.f64 im re)))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 im (/.f64 im (/.f64 re -1/2)))
(*.f64 im (*.f64 -1/2 (/.f64 im re)))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 im (/.f64 im (/.f64 re -1/2)))
(*.f64 im (*.f64 -1/2 (/.f64 im re)))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 im (/.f64 im (/.f64 re -1/2)))
(*.f64 im (*.f64 -1/2 (/.f64 im re)))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 im (/.f64 im (/.f64 re -1/2)))
(*.f64 im (*.f64 -1/2 (/.f64 im re)))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 im (/.f64 im (/.f64 re -1/2)))
(*.f64 im (*.f64 -1/2 (/.f64 im re)))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 im (/.f64 im (/.f64 re -1/2)))
(*.f64 im (*.f64 -1/2 (/.f64 im re)))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 im (/.f64 im (/.f64 re -1/2)))
(*.f64 im (*.f64 -1/2 (/.f64 im re)))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 im (/.f64 im (/.f64 re -1/2)))
(*.f64 im (*.f64 -1/2 (/.f64 im re)))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 im (/.f64 im (/.f64 re -1/2)))
(*.f64 im (*.f64 -1/2 (/.f64 im re)))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 im (/.f64 im (/.f64 re -1/2)))
(*.f64 im (*.f64 -1/2 (/.f64 im re)))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 im (/.f64 im (/.f64 re -1/2)))
(*.f64 im (*.f64 -1/2 (/.f64 im re)))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 im (/.f64 im (/.f64 re -1/2)))
(*.f64 im (*.f64 -1/2 (/.f64 im re)))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 im (/.f64 im (/.f64 re -1/2)))
(*.f64 im (*.f64 -1/2 (/.f64 im re)))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 im (/.f64 im (/.f64 re -1/2)))
(*.f64 im (*.f64 -1/2 (/.f64 im re)))
(+.f64 (log.f64 (fma.f64 im (*.f64 (/.f64 im re) -1/2) (neg.f64 re))) 0)
(log.f64 (fma.f64 im (/.f64 im (/.f64 re -1/2)) (neg.f64 re)))
(log.f64 (-.f64 (*.f64 im (/.f64 im (/.f64 re -1/2))) re))
(log.f64 (fma.f64 -1/2 (*.f64 im (/.f64 im re)) (neg.f64 re)))
(+.f64 0 (log.f64 (fma.f64 im (*.f64 (/.f64 im re) -1/2) (neg.f64 re))))
(log.f64 (fma.f64 im (/.f64 im (/.f64 re -1/2)) (neg.f64 re)))
(log.f64 (-.f64 (*.f64 im (/.f64 im (/.f64 re -1/2))) re))
(log.f64 (fma.f64 -1/2 (*.f64 im (/.f64 im re)) (neg.f64 re)))
(+.f64 (log.f64 (cbrt.f64 (fma.f64 im (*.f64 (/.f64 im re) -1/2) (neg.f64 re)))) (*.f64 2 (log.f64 (cbrt.f64 (fma.f64 im (*.f64 (/.f64 im re) -1/2) (neg.f64 re))))))
(*.f64 (log.f64 (cbrt.f64 (fma.f64 im (/.f64 im (/.f64 re -1/2)) (neg.f64 re)))) 3)
(*.f64 (log.f64 (cbrt.f64 (-.f64 (*.f64 im (/.f64 im (/.f64 re -1/2))) re))) 3)
(*.f64 (log.f64 (cbrt.f64 (fma.f64 -1/2 (*.f64 im (/.f64 im re)) (neg.f64 re)))) 3)
(+.f64 (log.f64 (-.f64 (*.f64 -1/8 (pow.f64 (*.f64 im (/.f64 im re)) 3)) (pow.f64 re 3))) (log.f64 (/.f64 1 (fma.f64 re (fma.f64 im (*.f64 (/.f64 im re) -1/2) re) (*.f64 1/4 (pow.f64 (*.f64 im (/.f64 im re)) 2))))))
(-.f64 (log.f64 (-.f64 (*.f64 -1/8 (pow.f64 (*.f64 im (/.f64 im re)) 3)) (pow.f64 re 3))) (log.f64 (fma.f64 re (fma.f64 im (/.f64 im (/.f64 re -1/2)) re) (*.f64 1/4 (pow.f64 (*.f64 im (/.f64 im re)) 2)))))
(-.f64 (log.f64 (-.f64 (*.f64 -1/8 (pow.f64 (/.f64 im (/.f64 re im)) 3)) (pow.f64 re 3))) (log.f64 (fma.f64 re (fma.f64 im (/.f64 im (/.f64 re -1/2)) re) (*.f64 1/4 (pow.f64 (/.f64 im (/.f64 re im)) 2)))))
(-.f64 (log.f64 (-.f64 (*.f64 -1/8 (pow.f64 (*.f64 im (/.f64 im re)) 3)) (pow.f64 re 3))) (log.f64 (fma.f64 re (fma.f64 im (*.f64 -1/2 (/.f64 im re)) re) (*.f64 1/4 (pow.f64 (*.f64 im (/.f64 im re)) 2)))))
(+.f64 (log.f64 (-.f64 (*.f64 1/4 (pow.f64 (*.f64 im (/.f64 im re)) 2)) (*.f64 re re))) (log.f64 (/.f64 1 (fma.f64 im (*.f64 (/.f64 im re) -1/2) re))))
(-.f64 (log.f64 (fma.f64 1/4 (pow.f64 (*.f64 im (/.f64 im re)) 2) (neg.f64 (*.f64 re re)))) (log.f64 (fma.f64 im (/.f64 im (/.f64 re -1/2)) re)))
(-.f64 (log.f64 (fma.f64 1/4 (pow.f64 (/.f64 im (/.f64 re im)) 2) (*.f64 re (neg.f64 re)))) (log.f64 (fma.f64 im (/.f64 im (/.f64 re -1/2)) re)))
(-.f64 (log.f64 (fma.f64 1/4 (pow.f64 (*.f64 im (/.f64 im re)) 2) (*.f64 re (neg.f64 re)))) (log.f64 (fma.f64 im (*.f64 -1/2 (/.f64 im re)) re)))
(+.f64 (log.f64 (sqrt.f64 (fma.f64 im (*.f64 (/.f64 im re) -1/2) (neg.f64 re)))) (log.f64 (sqrt.f64 (fma.f64 im (*.f64 (/.f64 im re) -1/2) (neg.f64 re)))))
(*.f64 2 (log.f64 (sqrt.f64 (fma.f64 im (/.f64 im (/.f64 re -1/2)) (neg.f64 re)))))
(*.f64 2 (log.f64 (sqrt.f64 (-.f64 (*.f64 im (/.f64 im (/.f64 re -1/2))) re))))
(*.f64 2 (log.f64 (sqrt.f64 (fma.f64 -1/2 (*.f64 im (/.f64 im re)) (neg.f64 re)))))
(+.f64 (*.f64 2 (log.f64 (cbrt.f64 (fma.f64 im (*.f64 (/.f64 im re) -1/2) (neg.f64 re))))) (log.f64 (cbrt.f64 (fma.f64 im (*.f64 (/.f64 im re) -1/2) (neg.f64 re)))))
(*.f64 (log.f64 (cbrt.f64 (fma.f64 im (/.f64 im (/.f64 re -1/2)) (neg.f64 re)))) 3)
(*.f64 (log.f64 (cbrt.f64 (-.f64 (*.f64 im (/.f64 im (/.f64 re -1/2))) re))) 3)
(*.f64 (log.f64 (cbrt.f64 (fma.f64 -1/2 (*.f64 im (/.f64 im re)) (neg.f64 re)))) 3)
(+.f64 (log.f64 (+.f64 (sqrt.f64 (*.f64 im (*.f64 (/.f64 im re) -1/2))) (sqrt.f64 re))) (log.f64 (-.f64 (sqrt.f64 (*.f64 im (*.f64 (/.f64 im re) -1/2))) (sqrt.f64 re))))
(+.f64 (log.f64 (+.f64 (sqrt.f64 (*.f64 im (/.f64 im (/.f64 re -1/2)))) (sqrt.f64 re))) (log.f64 (-.f64 (sqrt.f64 (*.f64 im (/.f64 im (/.f64 re -1/2)))) (sqrt.f64 re))))
(+.f64 (log.f64 (+.f64 (sqrt.f64 re) (sqrt.f64 (*.f64 im (/.f64 im (/.f64 re -1/2)))))) (log.f64 (-.f64 (sqrt.f64 (*.f64 im (/.f64 im (/.f64 re -1/2)))) (sqrt.f64 re))))
(+.f64 (log.f64 (+.f64 (sqrt.f64 re) (sqrt.f64 (*.f64 im (*.f64 -1/2 (/.f64 im re)))))) (log.f64 (-.f64 (sqrt.f64 (*.f64 im (*.f64 -1/2 (/.f64 im re)))) (sqrt.f64 re))))
(-.f64 0 (log.f64 (/.f64 (fma.f64 re (fma.f64 im (*.f64 (/.f64 im re) -1/2) re) (*.f64 1/4 (pow.f64 (*.f64 im (/.f64 im re)) 2))) (-.f64 (*.f64 -1/8 (pow.f64 (*.f64 im (/.f64 im re)) 3)) (pow.f64 re 3)))))
(-.f64 (log.f64 (-.f64 (*.f64 -1/8 (pow.f64 (*.f64 im (/.f64 im re)) 3)) (pow.f64 re 3))) (log.f64 (fma.f64 re (fma.f64 im (/.f64 im (/.f64 re -1/2)) re) (*.f64 1/4 (pow.f64 (*.f64 im (/.f64 im re)) 2)))))
(-.f64 (log.f64 (-.f64 (*.f64 -1/8 (pow.f64 (/.f64 im (/.f64 re im)) 3)) (pow.f64 re 3))) (log.f64 (fma.f64 re (fma.f64 im (/.f64 im (/.f64 re -1/2)) re) (*.f64 1/4 (pow.f64 (/.f64 im (/.f64 re im)) 2)))))
(-.f64 (log.f64 (-.f64 (*.f64 -1/8 (pow.f64 (*.f64 im (/.f64 im re)) 3)) (pow.f64 re 3))) (log.f64 (fma.f64 re (fma.f64 im (*.f64 -1/2 (/.f64 im re)) re) (*.f64 1/4 (pow.f64 (*.f64 im (/.f64 im re)) 2)))))
(-.f64 0 (log.f64 (/.f64 (fma.f64 im (*.f64 (/.f64 im re) -1/2) re) (-.f64 (*.f64 1/4 (pow.f64 (*.f64 im (/.f64 im re)) 2)) (*.f64 re re)))))
(-.f64 (log.f64 (fma.f64 1/4 (pow.f64 (*.f64 im (/.f64 im re)) 2) (neg.f64 (*.f64 re re)))) (log.f64 (fma.f64 im (/.f64 im (/.f64 re -1/2)) re)))
(-.f64 (log.f64 (fma.f64 1/4 (pow.f64 (/.f64 im (/.f64 re im)) 2) (*.f64 re (neg.f64 re)))) (log.f64 (fma.f64 im (/.f64 im (/.f64 re -1/2)) re)))
(-.f64 (log.f64 (fma.f64 1/4 (pow.f64 (*.f64 im (/.f64 im re)) 2) (*.f64 re (neg.f64 re)))) (log.f64 (fma.f64 im (*.f64 -1/2 (/.f64 im re)) re)))
(-.f64 (log.f64 (-.f64 (*.f64 -1/8 (pow.f64 (*.f64 im (/.f64 im re)) 3)) (pow.f64 re 3))) (log.f64 (fma.f64 re (fma.f64 im (*.f64 (/.f64 im re) -1/2) re) (*.f64 1/4 (pow.f64 (*.f64 im (/.f64 im re)) 2)))))
(-.f64 (log.f64 (-.f64 (*.f64 -1/8 (pow.f64 (*.f64 im (/.f64 im re)) 3)) (pow.f64 re 3))) (log.f64 (fma.f64 re (fma.f64 im (/.f64 im (/.f64 re -1/2)) re) (*.f64 1/4 (pow.f64 (*.f64 im (/.f64 im re)) 2)))))
(-.f64 (log.f64 (-.f64 (*.f64 -1/8 (pow.f64 (/.f64 im (/.f64 re im)) 3)) (pow.f64 re 3))) (log.f64 (fma.f64 re (fma.f64 im (/.f64 im (/.f64 re -1/2)) re) (*.f64 1/4 (pow.f64 (/.f64 im (/.f64 re im)) 2)))))
(-.f64 (log.f64 (-.f64 (*.f64 -1/8 (pow.f64 (*.f64 im (/.f64 im re)) 3)) (pow.f64 re 3))) (log.f64 (fma.f64 re (fma.f64 im (*.f64 -1/2 (/.f64 im re)) re) (*.f64 1/4 (pow.f64 (*.f64 im (/.f64 im re)) 2)))))
(-.f64 (log.f64 (-.f64 (*.f64 1/4 (pow.f64 (*.f64 im (/.f64 im re)) 2)) (*.f64 re re))) (log.f64 (fma.f64 im (*.f64 (/.f64 im re) -1/2) re)))
(-.f64 (log.f64 (fma.f64 1/4 (pow.f64 (*.f64 im (/.f64 im re)) 2) (neg.f64 (*.f64 re re)))) (log.f64 (fma.f64 im (/.f64 im (/.f64 re -1/2)) re)))
(-.f64 (log.f64 (fma.f64 1/4 (pow.f64 (/.f64 im (/.f64 re im)) 2) (*.f64 re (neg.f64 re)))) (log.f64 (fma.f64 im (/.f64 im (/.f64 re -1/2)) re)))
(-.f64 (log.f64 (fma.f64 1/4 (pow.f64 (*.f64 im (/.f64 im re)) 2) (*.f64 re (neg.f64 re)))) (log.f64 (fma.f64 im (*.f64 -1/2 (/.f64 im re)) re)))
(-.f64 (exp.f64 (log1p.f64 (log.f64 (fma.f64 im (*.f64 (/.f64 im re) -1/2) (neg.f64 re))))) 1)
(log.f64 (fma.f64 im (/.f64 im (/.f64 re -1/2)) (neg.f64 re)))
(log.f64 (-.f64 (*.f64 im (/.f64 im (/.f64 re -1/2))) re))
(log.f64 (fma.f64 -1/2 (*.f64 im (/.f64 im re)) (neg.f64 re)))
(-.f64 (log.f64 (neg.f64 (-.f64 (*.f64 -1/8 (pow.f64 (*.f64 im (/.f64 im re)) 3)) (pow.f64 re 3)))) (log.f64 (neg.f64 (fma.f64 re (fma.f64 im (*.f64 (/.f64 im re) -1/2) re) (*.f64 1/4 (pow.f64 (*.f64 im (/.f64 im re)) 2))))))
(-.f64 (log.f64 (neg.f64 (-.f64 (*.f64 -1/8 (pow.f64 (*.f64 im (/.f64 im re)) 3)) (pow.f64 re 3)))) (log.f64 (neg.f64 (fma.f64 re (fma.f64 im (/.f64 im (/.f64 re -1/2)) re) (*.f64 1/4 (pow.f64 (*.f64 im (/.f64 im re)) 2))))))
(-.f64 (log.f64 (+.f64 (neg.f64 (*.f64 -1/8 (pow.f64 (/.f64 im (/.f64 re im)) 3))) (pow.f64 re 3))) (log.f64 (neg.f64 (fma.f64 re (fma.f64 im (/.f64 im (/.f64 re -1/2)) re) (*.f64 1/4 (pow.f64 (/.f64 im (/.f64 re im)) 2))))))
(-.f64 (log.f64 (+.f64 (pow.f64 re 3) (*.f64 (pow.f64 (*.f64 im (/.f64 im re)) 3) 1/8))) (log.f64 (neg.f64 (fma.f64 re (fma.f64 im (*.f64 -1/2 (/.f64 im re)) re) (*.f64 1/4 (pow.f64 (*.f64 im (/.f64 im re)) 2))))))
(-.f64 (log.f64 (neg.f64 (-.f64 (*.f64 1/4 (pow.f64 (*.f64 im (/.f64 im re)) 2)) (*.f64 re re)))) (log.f64 (neg.f64 (fma.f64 im (*.f64 (/.f64 im re) -1/2) re))))
(-.f64 (log.f64 (neg.f64 (fma.f64 1/4 (pow.f64 (*.f64 im (/.f64 im re)) 2) (neg.f64 (*.f64 re re))))) (log.f64 (neg.f64 (fma.f64 im (/.f64 im (/.f64 re -1/2)) re))))
(-.f64 (log.f64 (neg.f64 (fma.f64 1/4 (pow.f64 (/.f64 im (/.f64 re im)) 2) (*.f64 re (neg.f64 re))))) (log.f64 (-.f64 (*.f64 1/2 (/.f64 im (/.f64 re im))) re)))
(-.f64 (log.f64 (+.f64 (*.f64 re re) (*.f64 (pow.f64 (*.f64 im (/.f64 im re)) 2) -1/4))) (log.f64 (fma.f64 1/2 (*.f64 im (/.f64 im re)) (neg.f64 re))))
(-.f64 (log.f64 (fma.f64 -1/8 (pow.f64 (*.f64 im (/.f64 im re)) 3) (pow.f64 (neg.f64 re) 3))) (log.f64 (fma.f64 1/4 (pow.f64 (*.f64 im (/.f64 im re)) 2) (-.f64 (*.f64 (neg.f64 re) (neg.f64 re)) (*.f64 (*.f64 im (*.f64 (/.f64 im re) -1/2)) (neg.f64 re))))))
(-.f64 (log.f64 (-.f64 (*.f64 -1/8 (pow.f64 (*.f64 im (/.f64 im re)) 3)) (pow.f64 re 3))) (log.f64 (fma.f64 re (fma.f64 im (/.f64 im (/.f64 re -1/2)) re) (*.f64 1/4 (pow.f64 (*.f64 im (/.f64 im re)) 2)))))
(-.f64 (log.f64 (-.f64 (*.f64 -1/8 (pow.f64 (/.f64 im (/.f64 re im)) 3)) (pow.f64 re 3))) (log.f64 (fma.f64 re (fma.f64 im (/.f64 im (/.f64 re -1/2)) re) (*.f64 1/4 (pow.f64 (/.f64 im (/.f64 re im)) 2)))))
(-.f64 (log.f64 (-.f64 (*.f64 -1/8 (pow.f64 (*.f64 im (/.f64 im re)) 3)) (pow.f64 re 3))) (log.f64 (fma.f64 re (fma.f64 im (*.f64 -1/2 (/.f64 im re)) re) (*.f64 1/4 (pow.f64 (*.f64 im (/.f64 im re)) 2)))))
(-.f64 (log.f64 (-.f64 (*.f64 1/4 (pow.f64 (*.f64 im (/.f64 im re)) 2)) (*.f64 (neg.f64 re) (neg.f64 re)))) (log.f64 (fma.f64 (/.f64 im re) (*.f64 im -1/2) (neg.f64 (neg.f64 re)))))
(-.f64 (log.f64 (fma.f64 1/4 (pow.f64 (*.f64 im (/.f64 im re)) 2) (neg.f64 (*.f64 re re)))) (log.f64 (fma.f64 im (/.f64 im (/.f64 re -1/2)) re)))
(-.f64 (log.f64 (fma.f64 1/4 (pow.f64 (/.f64 im (/.f64 re im)) 2) (*.f64 re (neg.f64 re)))) (log.f64 (fma.f64 im (/.f64 im (/.f64 re -1/2)) re)))
(-.f64 (log.f64 (fma.f64 1/4 (pow.f64 (*.f64 im (/.f64 im re)) 2) (*.f64 re (neg.f64 re)))) (log.f64 (fma.f64 im (*.f64 -1/2 (/.f64 im re)) re)))
(*.f64 (log.f64 (fma.f64 im (*.f64 (/.f64 im re) -1/2) (neg.f64 re))) 1)
(log.f64 (fma.f64 im (/.f64 im (/.f64 re -1/2)) (neg.f64 re)))
(log.f64 (-.f64 (*.f64 im (/.f64 im (/.f64 re -1/2))) re))
(log.f64 (fma.f64 -1/2 (*.f64 im (/.f64 im re)) (neg.f64 re)))
(*.f64 1 (log.f64 (fma.f64 im (*.f64 (/.f64 im re) -1/2) (neg.f64 re))))
(log.f64 (fma.f64 im (/.f64 im (/.f64 re -1/2)) (neg.f64 re)))
(log.f64 (-.f64 (*.f64 im (/.f64 im (/.f64 re -1/2))) re))
(log.f64 (fma.f64 -1/2 (*.f64 im (/.f64 im re)) (neg.f64 re)))
(*.f64 (cbrt.f64 (log.f64 (fma.f64 im (*.f64 (/.f64 im re) -1/2) (neg.f64 re)))) (pow.f64 (cbrt.f64 (log.f64 (fma.f64 im (*.f64 (/.f64 im re) -1/2) (neg.f64 re)))) 2))
(log.f64 (fma.f64 im (/.f64 im (/.f64 re -1/2)) (neg.f64 re)))
(log.f64 (-.f64 (*.f64 im (/.f64 im (/.f64 re -1/2))) re))
(log.f64 (fma.f64 -1/2 (*.f64 im (/.f64 im re)) (neg.f64 re)))
(*.f64 (pow.f64 (cbrt.f64 (log.f64 (fma.f64 im (*.f64 (/.f64 im re) -1/2) (neg.f64 re)))) 2) (cbrt.f64 (log.f64 (fma.f64 im (*.f64 (/.f64 im re) -1/2) (neg.f64 re)))))
(log.f64 (fma.f64 im (/.f64 im (/.f64 re -1/2)) (neg.f64 re)))
(log.f64 (-.f64 (*.f64 im (/.f64 im (/.f64 re -1/2))) re))
(log.f64 (fma.f64 -1/2 (*.f64 im (/.f64 im re)) (neg.f64 re)))
(*.f64 (sqrt.f64 (log.f64 (fma.f64 im (*.f64 (/.f64 im re) -1/2) (neg.f64 re)))) (sqrt.f64 (log.f64 (fma.f64 im (*.f64 (/.f64 im re) -1/2) (neg.f64 re)))))
(log.f64 (fma.f64 im (/.f64 im (/.f64 re -1/2)) (neg.f64 re)))
(log.f64 (-.f64 (*.f64 im (/.f64 im (/.f64 re -1/2))) re))
(log.f64 (fma.f64 -1/2 (*.f64 im (/.f64 im re)) (neg.f64 re)))
(*.f64 3 (log.f64 (cbrt.f64 (fma.f64 im (*.f64 (/.f64 im re) -1/2) (neg.f64 re)))))
(*.f64 (log.f64 (cbrt.f64 (fma.f64 im (/.f64 im (/.f64 re -1/2)) (neg.f64 re)))) 3)
(*.f64 (log.f64 (cbrt.f64 (-.f64 (*.f64 im (/.f64 im (/.f64 re -1/2))) re))) 3)
(*.f64 (log.f64 (cbrt.f64 (fma.f64 -1/2 (*.f64 im (/.f64 im re)) (neg.f64 re)))) 3)
(*.f64 2 (log.f64 (sqrt.f64 (fma.f64 im (*.f64 (/.f64 im re) -1/2) (neg.f64 re)))))
(*.f64 2 (log.f64 (sqrt.f64 (fma.f64 im (/.f64 im (/.f64 re -1/2)) (neg.f64 re)))))
(*.f64 2 (log.f64 (sqrt.f64 (-.f64 (*.f64 im (/.f64 im (/.f64 re -1/2))) re))))
(*.f64 2 (log.f64 (sqrt.f64 (fma.f64 -1/2 (*.f64 im (/.f64 im re)) (neg.f64 re)))))
(*.f64 1/3 (*.f64 3 (log.f64 (fma.f64 im (*.f64 (/.f64 im re) -1/2) (neg.f64 re)))))
(log.f64 (fma.f64 im (/.f64 im (/.f64 re -1/2)) (neg.f64 re)))
(log.f64 (-.f64 (*.f64 im (/.f64 im (/.f64 re -1/2))) re))
(log.f64 (fma.f64 -1/2 (*.f64 im (/.f64 im re)) (neg.f64 re)))
(pow.f64 (log.f64 (fma.f64 im (*.f64 (/.f64 im re) -1/2) (neg.f64 re))) 1)
(log.f64 (fma.f64 im (/.f64 im (/.f64 re -1/2)) (neg.f64 re)))
(log.f64 (-.f64 (*.f64 im (/.f64 im (/.f64 re -1/2))) re))
(log.f64 (fma.f64 -1/2 (*.f64 im (/.f64 im re)) (neg.f64 re)))
(pow.f64 (cbrt.f64 (log.f64 (fma.f64 im (*.f64 (/.f64 im re) -1/2) (neg.f64 re)))) 3)
(log.f64 (fma.f64 im (/.f64 im (/.f64 re -1/2)) (neg.f64 re)))
(log.f64 (-.f64 (*.f64 im (/.f64 im (/.f64 re -1/2))) re))
(log.f64 (fma.f64 -1/2 (*.f64 im (/.f64 im re)) (neg.f64 re)))
(pow.f64 (pow.f64 (log.f64 (fma.f64 im (*.f64 (/.f64 im re) -1/2) (neg.f64 re))) 3) 1/3)
(log.f64 (fma.f64 im (/.f64 im (/.f64 re -1/2)) (neg.f64 re)))
(log.f64 (-.f64 (*.f64 im (/.f64 im (/.f64 re -1/2))) re))
(log.f64 (fma.f64 -1/2 (*.f64 im (/.f64 im re)) (neg.f64 re)))
(pow.f64 (sqrt.f64 (log.f64 (fma.f64 im (*.f64 (/.f64 im re) -1/2) (neg.f64 re)))) 2)
(log.f64 (fma.f64 im (/.f64 im (/.f64 re -1/2)) (neg.f64 re)))
(log.f64 (-.f64 (*.f64 im (/.f64 im (/.f64 re -1/2))) re))
(log.f64 (fma.f64 -1/2 (*.f64 im (/.f64 im re)) (neg.f64 re)))
(neg.f64 (log.f64 (/.f64 (fma.f64 re (fma.f64 im (*.f64 (/.f64 im re) -1/2) re) (*.f64 1/4 (pow.f64 (*.f64 im (/.f64 im re)) 2))) (-.f64 (*.f64 -1/8 (pow.f64 (*.f64 im (/.f64 im re)) 3)) (pow.f64 re 3)))))
(-.f64 (log.f64 (-.f64 (*.f64 -1/8 (pow.f64 (*.f64 im (/.f64 im re)) 3)) (pow.f64 re 3))) (log.f64 (fma.f64 re (fma.f64 im (/.f64 im (/.f64 re -1/2)) re) (*.f64 1/4 (pow.f64 (*.f64 im (/.f64 im re)) 2)))))
(-.f64 (log.f64 (-.f64 (*.f64 -1/8 (pow.f64 (/.f64 im (/.f64 re im)) 3)) (pow.f64 re 3))) (log.f64 (fma.f64 re (fma.f64 im (/.f64 im (/.f64 re -1/2)) re) (*.f64 1/4 (pow.f64 (/.f64 im (/.f64 re im)) 2)))))
(-.f64 (log.f64 (-.f64 (*.f64 -1/8 (pow.f64 (*.f64 im (/.f64 im re)) 3)) (pow.f64 re 3))) (log.f64 (fma.f64 re (fma.f64 im (*.f64 -1/2 (/.f64 im re)) re) (*.f64 1/4 (pow.f64 (*.f64 im (/.f64 im re)) 2)))))
(neg.f64 (log.f64 (/.f64 (fma.f64 im (*.f64 (/.f64 im re) -1/2) re) (-.f64 (*.f64 1/4 (pow.f64 (*.f64 im (/.f64 im re)) 2)) (*.f64 re re)))))
(-.f64 (log.f64 (fma.f64 1/4 (pow.f64 (*.f64 im (/.f64 im re)) 2) (neg.f64 (*.f64 re re)))) (log.f64 (fma.f64 im (/.f64 im (/.f64 re -1/2)) re)))
(-.f64 (log.f64 (fma.f64 1/4 (pow.f64 (/.f64 im (/.f64 re im)) 2) (*.f64 re (neg.f64 re)))) (log.f64 (fma.f64 im (/.f64 im (/.f64 re -1/2)) re)))
(-.f64 (log.f64 (fma.f64 1/4 (pow.f64 (*.f64 im (/.f64 im re)) 2) (*.f64 re (neg.f64 re)))) (log.f64 (fma.f64 im (*.f64 -1/2 (/.f64 im re)) re)))
(sqrt.f64 (pow.f64 (log.f64 (fma.f64 im (*.f64 (/.f64 im re) -1/2) (neg.f64 re))) 2))
(log.f64 (fma.f64 im (/.f64 im (/.f64 re -1/2)) (neg.f64 re)))
(log.f64 (-.f64 (*.f64 im (/.f64 im (/.f64 re -1/2))) re))
(log.f64 (fma.f64 -1/2 (*.f64 im (/.f64 im re)) (neg.f64 re)))
(cbrt.f64 (pow.f64 (log.f64 (fma.f64 im (*.f64 (/.f64 im re) -1/2) (neg.f64 re))) 3))
(log.f64 (fma.f64 im (/.f64 im (/.f64 re -1/2)) (neg.f64 re)))
(log.f64 (-.f64 (*.f64 im (/.f64 im (/.f64 re -1/2))) re))
(log.f64 (fma.f64 -1/2 (*.f64 im (/.f64 im re)) (neg.f64 re)))
(expm1.f64 (log1p.f64 (log.f64 (fma.f64 im (*.f64 (/.f64 im re) -1/2) (neg.f64 re)))))
(log.f64 (fma.f64 im (/.f64 im (/.f64 re -1/2)) (neg.f64 re)))
(log.f64 (-.f64 (*.f64 im (/.f64 im (/.f64 re -1/2))) re))
(log.f64 (fma.f64 -1/2 (*.f64 im (/.f64 im re)) (neg.f64 re)))
(exp.f64 (log.f64 (log.f64 (fma.f64 im (*.f64 (/.f64 im re) -1/2) (neg.f64 re)))))
(log.f64 (fma.f64 im (/.f64 im (/.f64 re -1/2)) (neg.f64 re)))
(log.f64 (-.f64 (*.f64 im (/.f64 im (/.f64 re -1/2))) re))
(log.f64 (fma.f64 -1/2 (*.f64 im (/.f64 im re)) (neg.f64 re)))
(exp.f64 (*.f64 (log.f64 (log.f64 (fma.f64 im (*.f64 (/.f64 im re) -1/2) (neg.f64 re)))) 1))
(log.f64 (fma.f64 im (/.f64 im (/.f64 re -1/2)) (neg.f64 re)))
(log.f64 (-.f64 (*.f64 im (/.f64 im (/.f64 re -1/2))) re))
(log.f64 (fma.f64 -1/2 (*.f64 im (/.f64 im re)) (neg.f64 re)))
(exp.f64 (*.f64 (*.f64 (log.f64 (log.f64 (fma.f64 im (*.f64 (/.f64 im re) -1/2) (neg.f64 re)))) 1) 1))
(log.f64 (fma.f64 im (/.f64 im (/.f64 re -1/2)) (neg.f64 re)))
(log.f64 (-.f64 (*.f64 im (/.f64 im (/.f64 re -1/2))) re))
(log.f64 (fma.f64 -1/2 (*.f64 im (/.f64 im re)) (neg.f64 re)))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (log.f64 (fma.f64 im (*.f64 (/.f64 im re) -1/2) (neg.f64 re))))) 3))
(log.f64 (fma.f64 im (/.f64 im (/.f64 re -1/2)) (neg.f64 re)))
(log.f64 (-.f64 (*.f64 im (/.f64 im (/.f64 re -1/2))) re))
(log.f64 (fma.f64 -1/2 (*.f64 im (/.f64 im re)) (neg.f64 re)))
(exp.f64 (*.f64 (*.f64 3 (log.f64 (log.f64 (fma.f64 im (*.f64 (/.f64 im re) -1/2) (neg.f64 re))))) 1/3))
(log.f64 (fma.f64 im (/.f64 im (/.f64 re -1/2)) (neg.f64 re)))
(log.f64 (-.f64 (*.f64 im (/.f64 im (/.f64 re -1/2))) re))
(log.f64 (fma.f64 -1/2 (*.f64 im (/.f64 im re)) (neg.f64 re)))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (log.f64 (fma.f64 im (*.f64 (/.f64 im re) -1/2) (neg.f64 re))))) 2))
(log.f64 (fma.f64 im (/.f64 im (/.f64 re -1/2)) (neg.f64 re)))
(log.f64 (-.f64 (*.f64 im (/.f64 im (/.f64 re -1/2))) re))
(log.f64 (fma.f64 -1/2 (*.f64 im (/.f64 im re)) (neg.f64 re)))
(log1p.f64 (-.f64 (fma.f64 im (*.f64 (/.f64 im re) -1/2) (neg.f64 re)) 1))
(log1p.f64 (+.f64 (fma.f64 im (/.f64 im (/.f64 re -1/2)) (neg.f64 re)) -1))
(log1p.f64 (+.f64 -1 (-.f64 (*.f64 im (/.f64 im (/.f64 re -1/2))) re)))
(log1p.f64 (+.f64 -1 (fma.f64 -1/2 (*.f64 im (/.f64 im re)) (neg.f64 re))))
(+.f64 0 (*.f64 im (/.f64 im re)))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 im) (/.f64 im re))) (cbrt.f64 (pow.f64 (exp.f64 im) (/.f64 im re))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 im) (/.f64 im re)))))
(+.f64 (*.f64 2 (log.f64 (cbrt.f64 (pow.f64 (exp.f64 im) (/.f64 im re))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 im) (/.f64 im re)))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 im) (/.f64 im re)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 im) (/.f64 im re)))))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(-.f64 (exp.f64 (log1p.f64 (*.f64 im (/.f64 im re)))) 1)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(*.f64 (*.f64 im (/.f64 im re)) 1)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(*.f64 1 (*.f64 im (/.f64 im re)))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 2) (cbrt.f64 (*.f64 im (/.f64 im re))))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(*.f64 (pow.f64 (cbrt.f64 im) 2) (*.f64 (cbrt.f64 im) (/.f64 im re)))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(*.f64 (sqrt.f64 (*.f64 im (/.f64 im re))) (sqrt.f64 (*.f64 im (/.f64 im re))))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(*.f64 (sqrt.f64 im) (*.f64 (sqrt.f64 im) (/.f64 im re)))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(*.f64 (neg.f64 im) (/.f64 1 (/.f64 (neg.f64 re) im)))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(*.f64 (/.f64 im 1) (/.f64 im re))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(*.f64 (/.f64 1 re) (/.f64 im (/.f64 1 im)))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 (/.f64 re im)) 2)) (/.f64 im (cbrt.f64 (/.f64 re im))))
(/.f64 (/.f64 im (cbrt.f64 (/.f64 re im))) (pow.f64 (cbrt.f64 (/.f64 re im)) 2))
(*.f64 (/.f64 1 (sqrt.f64 (/.f64 re im))) (/.f64 im (sqrt.f64 (/.f64 re im))))
(/.f64 (/.f64 im (sqrt.f64 (/.f64 re im))) (sqrt.f64 (/.f64 re im)))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 im) 2) re) (/.f64 (cbrt.f64 im) (/.f64 1 im)))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 im) 2) 1) (/.f64 (cbrt.f64 im) (/.f64 re im)))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 im) 2) (pow.f64 (cbrt.f64 (/.f64 re im)) 2)) (cbrt.f64 (*.f64 im (/.f64 im re))))
(*.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) (/.f64 (pow.f64 (cbrt.f64 im) 2) (pow.f64 (cbrt.f64 (/.f64 re im)) 2)))
(*.f64 (cbrt.f64 (/.f64 im (/.f64 re im))) (/.f64 (pow.f64 (cbrt.f64 im) 2) (pow.f64 (cbrt.f64 (/.f64 re im)) 2)))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 im) 2) (sqrt.f64 (/.f64 re im))) (/.f64 (cbrt.f64 im) (sqrt.f64 (/.f64 re im))))
(*.f64 (/.f64 1 (sqrt.f64 (/.f64 re im))) (/.f64 im (sqrt.f64 (/.f64 re im))))
(/.f64 (/.f64 im (sqrt.f64 (/.f64 re im))) (sqrt.f64 (/.f64 re im)))
(*.f64 (/.f64 (sqrt.f64 im) re) (/.f64 (sqrt.f64 im) (/.f64 1 im)))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(*.f64 (/.f64 (sqrt.f64 im) 1) (/.f64 (sqrt.f64 im) (/.f64 re im)))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(*.f64 (/.f64 (sqrt.f64 im) (pow.f64 (cbrt.f64 (/.f64 re im)) 2)) (/.f64 (sqrt.f64 im) (cbrt.f64 (/.f64 re im))))
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 (/.f64 re im)) 2)) (/.f64 im (cbrt.f64 (/.f64 re im))))
(/.f64 (/.f64 im (cbrt.f64 (/.f64 re im))) (pow.f64 (cbrt.f64 (/.f64 re im)) 2))
(*.f64 (*.f64 (/.f64 im re) 1) im)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(*.f64 (*.f64 (/.f64 im re) (pow.f64 (cbrt.f64 im) 2)) (cbrt.f64 im))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(*.f64 (*.f64 (/.f64 im re) (sqrt.f64 im)) (sqrt.f64 im))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(*.f64 (/.f64 im (neg.f64 re)) (neg.f64 im))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(pow.f64 (*.f64 im (/.f64 im re)) 1)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(pow.f64 (cbrt.f64 (*.f64 im (/.f64 im re))) 3)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(pow.f64 (pow.f64 (*.f64 im (/.f64 im re)) 3) 1/3)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(pow.f64 (sqrt.f64 (*.f64 im (/.f64 im re))) 2)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(pow.f64 (/.f64 (/.f64 re im) im) -1)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(pow.f64 (/.f64 (/.f64 (/.f64 re im) im) 1) -1)
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(neg.f64 (/.f64 im (/.f64 (neg.f64 re) im)))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(sqrt.f64 (pow.f64 (*.f64 im (/.f64 im re)) 2))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(log.f64 (pow.f64 (exp.f64 im) (/.f64 im re)))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 im (/.f64 im re)))))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(cbrt.f64 (pow.f64 (*.f64 im (/.f64 im re)) 3))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(cbrt.f64 (/.f64 (pow.f64 im 3) (pow.f64 (/.f64 re im) 3)))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(expm1.f64 (log1p.f64 (*.f64 im (/.f64 im re))))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(exp.f64 (log.f64 (*.f64 im (/.f64 im re))))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(exp.f64 (*.f64 (log.f64 (*.f64 im (/.f64 im re))) 1))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 im (/.f64 im re))) 1) 1))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 im (/.f64 im re)))) 3))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(exp.f64 (*.f64 (*.f64 3 (log.f64 (*.f64 im (/.f64 im re)))) 1/3))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 im (/.f64 im re)))) 2))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(exp.f64 (*.f64 (log.f64 (/.f64 (/.f64 re im) im)) -1))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(log1p.f64 (expm1.f64 (*.f64 im (/.f64 im re))))
(*.f64 im (/.f64 im re))
(/.f64 im (/.f64 re im))
(+.f64 0 (*.f64 im (*.f64 (/.f64 im re) -1/2)))
(*.f64 im (/.f64 im (/.f64 re -1/2)))
(*.f64 im (*.f64 -1/2 (/.f64 im re)))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 -1/2) (*.f64 im (/.f64 im re)))) (cbrt.f64 (pow.f64 (exp.f64 -1/2) (*.f64 im (/.f64 im re)))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 -1/2) (*.f64 im (/.f64 im re))))))
(+.f64 (*.f64 2 (log.f64 (cbrt.f64 (pow.f64 (exp.f64 -1/2) (/.f64 im (/.f64 re im)))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 -1/2) (/.f64 im (/.f64 re im))))))
(+.f64 (*.f64 2 (log.f64 (cbrt.f64 (pow.f64 (exp.f64 -1/2) (*.f64 im (/.f64 im re)))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 -1/2) (*.f64 im (/.f64 im re))))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 -1/2) (*.f64 im (/.f64 im re))))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 -1/2) (*.f64 im (/.f64 im re))))))
(*.f64 im (/.f64 im (/.f64 re -1/2)))
(*.f64 im (*.f64 -1/2 (/.f64 im re)))
(-.f64 (exp.f64 (log1p.f64 (*.f64 im (*.f64 (/.f64 im re) -1/2)))) 1)
(*.f64 im (/.f64 im (/.f64 re -1/2)))
(*.f64 im (*.f64 -1/2 (/.f64 im re)))
(/.f64 im (/.f64 (/.f64 re im) -1/2))
(*.f64 im (/.f64 im (/.f64 re -1/2)))
(*.f64 im (*.f64 -1/2 (/.f64 im re)))
(/.f64 -1/2 (/.f64 (/.f64 re im) im))
(*.f64 im (/.f64 im (/.f64 re -1/2)))
(*.f64 im (*.f64 -1/2 (/.f64 im re)))
(/.f64 1 (/.f64 (/.f64 re im) (*.f64 im -1/2)))
(*.f64 im (/.f64 im (/.f64 re -1/2)))
(*.f64 im (*.f64 -1/2 (/.f64 im re)))
(/.f64 (*.f64 im -1/2) (/.f64 re im))
(*.f64 im (/.f64 im (/.f64 re -1/2)))
(*.f64 im (*.f64 -1/2 (/.f64 im re)))
(/.f64 (neg.f64 (*.f64 im -1/2)) (/.f64 (neg.f64 re) im))
(*.f64 im (/.f64 im (/.f64 re -1/2)))
(*.f64 im (*.f64 -1/2 (/.f64 im re)))
(/.f64 (*.f64 -1/2 (neg.f64 im)) (/.f64 (neg.f64 re) im))
(*.f64 im (/.f64 im (/.f64 re -1/2)))
(*.f64 im (*.f64 -1/2 (/.f64 im re)))
(/.f64 (*.f64 (neg.f64 im) -1/2) (/.f64 (neg.f64 re) im))
(*.f64 im (/.f64 im (/.f64 re -1/2)))
(*.f64 im (*.f64 -1/2 (/.f64 im re)))
(/.f64 (/.f64 (*.f64 im -1/2) re) (/.f64 1 im))
(*.f64 im (/.f64 im (/.f64 re -1/2)))
(*.f64 im (*.f64 -1/2 (/.f64 im re)))
(/.f64 (/.f64 (*.f64 im -1/2) 1) (/.f64 re im))
(*.f64 im (/.f64 im (/.f64 re -1/2)))
(*.f64 im (*.f64 -1/2 (/.f64 im re)))
(/.f64 (/.f64 (*.f64 im -1/2) (pow.f64 (cbrt.f64 (/.f64 re im)) 2)) (cbrt.f64 (/.f64 re im)))
(*.f64 im (/.f64 im (/.f64 re -1/2)))
(*.f64 im (*.f64 -1/2 (/.f64 im re)))
(/.f64 (/.f64 (*.f64 im -1/2) (sqrt.f64 (/.f64 re im))) (sqrt.f64 (/.f64 re im)))
(*.f64 im (/.f64 im (/.f64 re -1/2)))
(*.f64 im (*.f64 -1/2 (/.f64 im re)))
(pow.f64 (*.f64 im (*.f64 (/.f64 im re) -1/2)) 1)
(*.f64 im (/.f64 im (/.f64 re -1/2)))
(*.f64 im (*.f64 -1/2 (/.f64 im re)))
(pow.f64 (cbrt.f64 (*.f64 im (*.f64 (/.f64 im re) -1/2))) 3)
(*.f64 im (/.f64 im (/.f64 re -1/2)))
(*.f64 im (*.f64 -1/2 (/.f64 im re)))
(pow.f64 (*.f64 -1/8 (pow.f64 (*.f64 im (/.f64 im re)) 3)) 1/3)
(*.f64 im (/.f64 im (/.f64 re -1/2)))
(*.f64 im (*.f64 -1/2 (/.f64 im re)))
(pow.f64 (sqrt.f64 (*.f64 im (*.f64 (/.f64 im re) -1/2))) 2)
(*.f64 im (/.f64 im (/.f64 re -1/2)))
(*.f64 im (*.f64 -1/2 (/.f64 im re)))
(pow.f64 (/.f64 (/.f64 re im) (*.f64 im -1/2)) -1)
(*.f64 im (/.f64 im (/.f64 re -1/2)))
(*.f64 im (*.f64 -1/2 (/.f64 im re)))
(sqrt.f64 (*.f64 1/4 (pow.f64 (*.f64 im (/.f64 im re)) 2)))
(sqrt.f64 (*.f64 1/4 (pow.f64 (/.f64 im (/.f64 re im)) 2)))
(log.f64 (pow.f64 (exp.f64 -1/2) (*.f64 im (/.f64 im re))))
(*.f64 im (/.f64 im (/.f64 re -1/2)))
(*.f64 im (*.f64 -1/2 (/.f64 im re)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 im (*.f64 (/.f64 im re) -1/2)))))
(*.f64 im (/.f64 im (/.f64 re -1/2)))
(*.f64 im (*.f64 -1/2 (/.f64 im re)))
(cbrt.f64 (*.f64 -1/8 (pow.f64 (*.f64 im (/.f64 im re)) 3)))
(*.f64 im (/.f64 im (/.f64 re -1/2)))
(*.f64 im (*.f64 -1/2 (/.f64 im re)))
(expm1.f64 (log1p.f64 (*.f64 im (*.f64 (/.f64 im re) -1/2))))
(*.f64 im (/.f64 im (/.f64 re -1/2)))
(*.f64 im (*.f64 -1/2 (/.f64 im re)))
(exp.f64 (log.f64 (*.f64 im (*.f64 (/.f64 im re) -1/2))))
(*.f64 im (/.f64 im (/.f64 re -1/2)))
(*.f64 im (*.f64 -1/2 (/.f64 im re)))
(exp.f64 (*.f64 (log.f64 (*.f64 im (*.f64 (/.f64 im re) -1/2))) 1))
(*.f64 im (/.f64 im (/.f64 re -1/2)))
(*.f64 im (*.f64 -1/2 (/.f64 im re)))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 im (*.f64 (/.f64 im re) -1/2))) 1) 1))
(*.f64 im (/.f64 im (/.f64 re -1/2)))
(*.f64 im (*.f64 -1/2 (/.f64 im re)))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 im (*.f64 (/.f64 im re) -1/2)))) 3))
(*.f64 im (/.f64 im (/.f64 re -1/2)))
(*.f64 im (*.f64 -1/2 (/.f64 im re)))
(exp.f64 (*.f64 (*.f64 3 (log.f64 (*.f64 im (*.f64 (/.f64 im re) -1/2)))) 1/3))
(*.f64 im (/.f64 im (/.f64 re -1/2)))
(*.f64 im (*.f64 -1/2 (/.f64 im re)))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 im (*.f64 (/.f64 im re) -1/2))) 3) 1/3))
(*.f64 im (/.f64 im (/.f64 re -1/2)))
(*.f64 im (*.f64 -1/2 (/.f64 im re)))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 im (*.f64 (/.f64 im re) -1/2)))) 2))
(*.f64 im (/.f64 im (/.f64 re -1/2)))
(*.f64 im (*.f64 -1/2 (/.f64 im re)))
(log1p.f64 (expm1.f64 (*.f64 im (*.f64 (/.f64 im re) -1/2))))
(*.f64 im (/.f64 im (/.f64 re -1/2)))
(*.f64 im (*.f64 -1/2 (/.f64 im re)))

eval71.0ms (3.5%)

Compiler

Compiled 4479 to 2568 computations (42.7% saved)

prune31.0ms (1.5%)

Pruning

4 alts after pruning (0 fresh and 4 done)

PrunedKeptTotal
New2310231
Fresh000
Picked044
Done000
Total2314235
Accurracy
100.0%
Counts
235 → 4
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(log.f64 (hypot.f64 re im))
52.1%
(log.f64 (-.f64 (*.f64 (/.f64 im (/.f64 re im)) -1/2) re))
52.3%
(log.f64 (neg.f64 re))
51.9%
(log.f64 im)
Compiler

Compiled 57 to 37 computations (35.1% saved)

regimes28.0ms (1.4%)

Counts
5 → 1
Calls
Call 1
Inputs
(log.f64 im)
(log.f64 (neg.f64 re))
(log.f64 (-.f64 (*.f64 (/.f64 im (/.f64 re im)) -1/2) re))
(log.f64 (hypot.f64 re im))
(log.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))
Outputs
(log.f64 (hypot.f64 re im))
Calls

7 calls:

5.0ms
(*.f64 im im)
4.0ms
re
4.0ms
im
4.0ms
(log.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))
4.0ms
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
Results
AccuracySegmentsBranch
100.0%1re
100.0%1im
100.0%1(log.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))
100.0%1(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
100.0%1(+.f64 (*.f64 re re) (*.f64 im im))
100.0%1(*.f64 re re)
100.0%1(*.f64 im im)
Compiler

Compiled 76 to 46 computations (39.5% saved)

regimes20.0ms (1%)

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

2 calls:

12.0ms
im
7.0ms
re
Results
AccuracySegmentsBranch
87.3%2re
86.0%4im
Compiler

Compiled 23 to 15 computations (34.8% saved)

regimes8.0ms (0.4%)

Accuracy

Total -0.0b remaining (-0%)

Threshold costs -0b (-0%)

Counts
1 → 1
Calls
Call 1
Inputs
(log.f64 im)
Outputs
(log.f64 im)
Calls

2 calls:

4.0ms
im
3.0ms
re
Results
AccuracySegmentsBranch
51.9%1im
51.9%1re
Compiler

Compiled 10 to 7 computations (30% saved)

bsearch20.0ms (1%)

Algorithm
binary-search
Stop Event
narrow-enough
Steps
TimeLeftRight
20.0ms
-3.503010246834482e-157
-1.9186199572926301e-162
Results
16.0ms144×body256valid
Compiler

Compiled 115 to 92 computations (20% saved)

simplify5.0ms (0.3%)

Algorithm
egg-herbie
Rules
sub-neg
neg-mul-1
+-commutative
*-commutative
neg-sub0
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01639
12039
22239
32339
Stop Event
done
saturated
Calls
Call 1
Inputs
(log.f64 (hypot.f64 re im))
(if (<=.f64 re -2705176266112081/7729075046034516689390703781863974688597854659412869997314470502903038284579120849072387533163845155924927232063004354354730157322085975311485817346934161497393961629646848) (log.f64 (neg.f64 re)) (log.f64 im))
(log.f64 im)
Outputs
(log.f64 (hypot.f64 re im))
(if (<=.f64 re -2705176266112081/7729075046034516689390703781863974688597854659412869997314470502903038284579120849072387533163845155924927232063004354354730157322085975311485817346934161497393961629646848) (log.f64 (neg.f64 re)) (log.f64 im))
(log.f64 im)
Compiler

Compiled 21 to 15 computations (28.6% saved)

soundness328.0ms (16.2%)

Rules
1818×pow1
1682×add-exp-log
1682×log1p-expm1-u
1682×expm1-log1p-u
1644×add-log-exp
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
097
11897
224337
01221432
13081280
29471154
349131154
01221432
13081280
29471154
349131154
Stop Event
node limit
node limit
node limit
Compiler

Compiled 116 to 61 computations (47.4% saved)

end31.0ms (1.5%)

Remove

(sort re im)

Compiler

Compiled 68 to 42 computations (38.2% saved)

Profiling

Loading profile data...