math.sin on complex, real part

Time bar (total: 8.0s)

analyze0.0ms (0%)

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

Compiled 15 to 12 computations (20% saved)

sample1.6s (20.1%)

Results
854.0ms4226×body256valid
732.0ms4029×body256infinite
1.0msbody1024valid
Bogosity

preprocess266.0ms (3.3%)

Algorithm
egg-herbie
Rules
2266×fma-def
1530×div-sub
1052×times-frac
898×distribute-lft-neg-in
784×distribute-rgt-neg-in
FPErrors
Click to see full error table
Ground TruthOverpredictionsExampleUnderpredictionsExampleSubexpression
10-0-(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (-.f64 0 im)) (exp.f64 im)))
00-0-(-.f64 0 im)
00-0-re
00-0-(*.f64 1/2 (sin.f64 re))
00-0-(exp.f64 (-.f64 0 im))
00-0-(sin.f64 re)
00-0-1/2
00-0-im
00-0-(+.f64 (exp.f64 (-.f64 0 im)) (exp.f64 im))
00-0-0
00-0-(exp.f64 im)
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
036316
1111308
2397308
31003298
42231294
55114294
67594294
Stop Event
node limit
Calls
Call 1
Inputs
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (-.f64 0 im)) (exp.f64 im)))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (-.f64 0 im)) (exp.f64 im)))
(*.f64 (*.f64 1/2 (sin.f64 (neg.f64 re))) (+.f64 (exp.f64 (-.f64 0 im)) (exp.f64 im)))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (-.f64 0 (neg.f64 im))) (exp.f64 (neg.f64 im))))
(neg.f64 (*.f64 (*.f64 1/2 (sin.f64 (neg.f64 re))) (+.f64 (exp.f64 (-.f64 0 im)) (exp.f64 im))))
(neg.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (-.f64 0 (neg.f64 im))) (exp.f64 (neg.f64 im)))))
(*.f64 (*.f64 1/2 (sin.f64 im)) (+.f64 (exp.f64 (-.f64 0 re)) (exp.f64 re)))
Outputs
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (-.f64 0 im)) (exp.f64 im)))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (-.f64 0 im)) (exp.f64 im)))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))))
(*.f64 (*.f64 1/2 (sin.f64 (neg.f64 re))) (+.f64 (exp.f64 (-.f64 0 im)) (exp.f64 im)))
(*.f64 1/2 (*.f64 (neg.f64 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))
(*.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (*.f64 (sin.f64 re) -1/2))
(*.f64 (sin.f64 re) (*.f64 -1/2 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))
(*.f64 (sin.f64 re) (fma.f64 (exp.f64 im) -1/2 (/.f64 -1/2 (exp.f64 im))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (-.f64 0 (neg.f64 im))) (exp.f64 (neg.f64 im))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))))
(neg.f64 (*.f64 (*.f64 1/2 (sin.f64 (neg.f64 re))) (+.f64 (exp.f64 (-.f64 0 im)) (exp.f64 im))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(*.f64 (sin.f64 re) (fma.f64 1/2 (exp.f64 im) (/.f64 1/2 (exp.f64 im))))
(neg.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (-.f64 0 (neg.f64 im))) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 (neg.f64 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))
(*.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (*.f64 (sin.f64 re) -1/2))
(*.f64 (sin.f64 re) (*.f64 -1/2 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))
(*.f64 (sin.f64 re) (fma.f64 (exp.f64 im) -1/2 (/.f64 -1/2 (exp.f64 im))))
(*.f64 (*.f64 1/2 (sin.f64 im)) (+.f64 (exp.f64 (-.f64 0 re)) (exp.f64 re)))
(*.f64 (*.f64 1/2 (sin.f64 im)) (+.f64 (exp.f64 (neg.f64 re)) (exp.f64 re)))
(*.f64 (sin.f64 im) (*.f64 1/2 (+.f64 (exp.f64 (neg.f64 re)) (exp.f64 re))))
(*.f64 (sin.f64 im) (fma.f64 1/2 (exp.f64 re) (/.f64 1/2 (exp.f64 re))))
Symmetry

(abs im)

(negabs re)

Compiler

Compiled 96 to 61 computations (36.5% saved)

eval1.0ms (0%)

Compiler

Compiled 24 to 15 computations (37.5% saved)

prune1.0ms (0%)

Alt Table
Click to see full alt table
StatusAccuracyProgram
99.6%
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
99.6%
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
Compiler

Compiled 26 to 20 computations (23.1% saved)

localize50.0ms (0.6%)

Localize:

Found 2 expressions with local error:

NewAccuracyProgram
100.0%
(+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
99.6%
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
Compiler

Compiled 36 to 14 computations (61.1% saved)

series6.0ms (0.1%)

Counts
2 → 36
Calls

9 calls:

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

rewrite141.0ms (1.8%)

Algorithm
batch-egg-rewrite
Rules
200×associate-*r*
128×associate-*l*
90×add-exp-log
90×add-log-exp
90×log1p-expm1-u
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01669
120269
2329669
Stop Event
unsound
Counts
2 → 28
Calls
Call 1
Inputs
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
Outputs
(+.f64 (sin.f64 re) (sin.f64 re))
(+.f64 (*.f64 (sin.f64 re) -2) (*.f64 (sin.f64 re) -2))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 re) -2))) 1)
(/.f64 (*.f64 (sin.f64 re) -2) -2)
(/.f64 (*.f64 (sin.f64 re) -2) 1)
(/.f64 (*.f64 (sin.f64 re) -2) (+.f64 (*.f64 (sin.f64 re) -2) (-.f64 (*.f64 (sin.f64 re) -2) (*.f64 (sin.f64 re) -2))))
(/.f64 (-.f64 (*.f64 (sin.f64 re) -2) (*.f64 (sin.f64 re) -2)) (-.f64 (*.f64 (sin.f64 re) -2) (*.f64 (sin.f64 re) -2)))
(pow.f64 (*.f64 (sin.f64 re) -2) -2)
(pow.f64 (*.f64 (sin.f64 re) -2) 1)
(pow.f64 (*.f64 (sin.f64 re) -2) 1/3)
(sqrt.f64 (*.f64 (sin.f64 re) -2))
(fabs.f64 (*.f64 (sin.f64 re) -2))
(log.f64 (pow.f64 1 (sin.f64 re)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 re) -2))))
(cbrt.f64 (*.f64 (sin.f64 re) -2))
(expm1.f64 (log1p.f64 (*.f64 (sin.f64 re) -2)))
(exp.f64 (log.f64 (*.f64 (sin.f64 re) -2)))
(exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) -2)) 1))
(exp.f64 (+.f64 (log.f64 (*.f64 (sin.f64 re) -2)) -2))
(log1p.f64 (expm1.f64 (*.f64 (sin.f64 re) -2)))
(fma.f64 1 (*.f64 (sin.f64 re) -2) (*.f64 (sin.f64 re) -2))
(fma.f64 (*.f64 (sin.f64 re) -2) 1 (*.f64 (sin.f64 re) -2))
-2
0
1/4
1/2
3/2
2

simplify76.0ms (1%)

Algorithm
egg-herbie
Rules
1092×fma-neg
910×fma-def
906×div-sub
880×cancel-sign-sub-inv
648×distribute-lft-out
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01121901
13261772
29881772
346611772
Stop Event
node limit
Counts
64 → 63
Calls
Call 1
Inputs
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(+.f64 (*.f64 -1/12 (*.f64 (pow.f64 re 3) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) (*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))))
(+.f64 (*.f64 -1/12 (*.f64 (pow.f64 re 3) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) (+.f64 (*.f64 1/240 (*.f64 (pow.f64 re 5) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) (*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))))
(+.f64 (*.f64 -1/12 (*.f64 (pow.f64 re 3) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) (+.f64 (*.f64 -1/10080 (*.f64 (pow.f64 re 7) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) (+.f64 (*.f64 1/240 (*.f64 (pow.f64 re 5) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) (*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(sin.f64 re)
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))))
(+.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re))) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re)))))
(+.f64 (sin.f64 re) (+.f64 (*.f64 1/720 (*.f64 (pow.f64 im 6) (sin.f64 re))) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re))) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))))
2
(+.f64 2 (pow.f64 im 2))
(+.f64 2 (+.f64 (*.f64 1/12 (pow.f64 im 4)) (pow.f64 im 2)))
(+.f64 2 (+.f64 (*.f64 1/360 (pow.f64 im 6)) (+.f64 (*.f64 1/12 (pow.f64 im 4)) (pow.f64 im 2))))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))
(+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))
(+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))
(+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))
(+.f64 (sin.f64 re) (sin.f64 re))
(+.f64 (*.f64 (sin.f64 re) -2) (*.f64 (sin.f64 re) -2))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 re) -2))) 1)
(/.f64 (*.f64 (sin.f64 re) -2) -2)
(/.f64 (*.f64 (sin.f64 re) -2) 1)
(/.f64 (*.f64 (sin.f64 re) -2) (+.f64 (*.f64 (sin.f64 re) -2) (-.f64 (*.f64 (sin.f64 re) -2) (*.f64 (sin.f64 re) -2))))
(/.f64 (-.f64 (*.f64 (sin.f64 re) -2) (*.f64 (sin.f64 re) -2)) (-.f64 (*.f64 (sin.f64 re) -2) (*.f64 (sin.f64 re) -2)))
(pow.f64 (*.f64 (sin.f64 re) -2) -2)
(pow.f64 (*.f64 (sin.f64 re) -2) 1)
(pow.f64 (*.f64 (sin.f64 re) -2) 1/3)
(sqrt.f64 (*.f64 (sin.f64 re) -2))
(fabs.f64 (*.f64 (sin.f64 re) -2))
(log.f64 (pow.f64 1 (sin.f64 re)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 re) -2))))
(cbrt.f64 (*.f64 (sin.f64 re) -2))
(expm1.f64 (log1p.f64 (*.f64 (sin.f64 re) -2)))
(exp.f64 (log.f64 (*.f64 (sin.f64 re) -2)))
(exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) -2)) 1))
(exp.f64 (+.f64 (log.f64 (*.f64 (sin.f64 re) -2)) -2))
(log1p.f64 (expm1.f64 (*.f64 (sin.f64 re) -2)))
(fma.f64 1 (*.f64 (sin.f64 re) -2) (*.f64 (sin.f64 re) -2))
(fma.f64 (*.f64 (sin.f64 re) -2) 1 (*.f64 (sin.f64 re) -2))
-2
0
1/4
1/2
3/2
2
Outputs
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (*.f64 1/2 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(+.f64 (*.f64 -1/12 (*.f64 (pow.f64 re 3) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) (*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))))
(fma.f64 -1/12 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (pow.f64 re 3)) (*.f64 (*.f64 1/2 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (+.f64 (*.f64 1/2 re) (*.f64 -1/12 (pow.f64 re 3))))
(+.f64 (*.f64 -1/12 (*.f64 (pow.f64 re 3) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) (+.f64 (*.f64 1/240 (*.f64 (pow.f64 re 5) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) (*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))))
(fma.f64 -1/12 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (pow.f64 re 3)) (fma.f64 1/240 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (pow.f64 re 5)) (*.f64 (*.f64 1/2 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))))
(fma.f64 (*.f64 -1/12 (pow.f64 re 3)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (+.f64 (*.f64 1/240 (pow.f64 re 5)) (*.f64 1/2 re))))
(+.f64 (*.f64 -1/12 (*.f64 (pow.f64 re 3) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) (+.f64 (*.f64 -1/10080 (*.f64 (pow.f64 re 7) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) (+.f64 (*.f64 1/240 (*.f64 (pow.f64 re 5) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) (*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))))))
(fma.f64 -1/12 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (pow.f64 re 3)) (fma.f64 -1/10080 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (pow.f64 re 7)) (fma.f64 1/240 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (pow.f64 re 5)) (*.f64 (*.f64 1/2 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))))
(+.f64 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (+.f64 (*.f64 1/240 (pow.f64 re 5)) (*.f64 1/2 re))) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (+.f64 (*.f64 -1/12 (pow.f64 re 3)) (*.f64 -1/10080 (pow.f64 re 7)))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 1/2 (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 1/2 (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 1/2 (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 1/2 (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 1/2 (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 1/2 (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 1/2 (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 1/2 (sin.f64 re)))
(sin.f64 re)
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))))
(+.f64 (sin.f64 re) (*.f64 (*.f64 1/2 (pow.f64 im 2)) (sin.f64 re)))
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) 1) (sin.f64 re))
(+.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re))) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re)))))
(+.f64 (sin.f64 re) (fma.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)) (*.f64 (*.f64 1/2 (pow.f64 im 2)) (sin.f64 re))))
(+.f64 (sin.f64 re) (*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))))
(+.f64 (sin.f64 re) (+.f64 (*.f64 1/720 (*.f64 (pow.f64 im 6) (sin.f64 re))) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re))) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))))))
(+.f64 (sin.f64 re) (fma.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6)) (fma.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)) (*.f64 (*.f64 1/2 (pow.f64 im 2)) (sin.f64 re)))))
(+.f64 (*.f64 (sin.f64 re) (+.f64 (*.f64 1/720 (pow.f64 im 6)) (*.f64 1/24 (pow.f64 im 4)))) (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) 1) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 1/2 (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 1/2 (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 1/2 (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 1/2 (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 1/2 (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 1/2 (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 1/2 (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 1/2 (sin.f64 re)))
2
(sin.f64 re)
(+.f64 2 (pow.f64 im 2))
(fma.f64 im im 2)
(+.f64 2 (+.f64 (*.f64 1/12 (pow.f64 im 4)) (pow.f64 im 2)))
(+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (pow.f64 im 2)))
(+.f64 2 (fma.f64 (pow.f64 im 4) 1/12 (pow.f64 im 2)))
(+.f64 2 (+.f64 (*.f64 1/360 (pow.f64 im 6)) (+.f64 (*.f64 1/12 (pow.f64 im 4)) (pow.f64 im 2))))
(+.f64 2 (fma.f64 1/360 (pow.f64 im 6) (fma.f64 1/12 (pow.f64 im 4) (pow.f64 im 2))))
(+.f64 2 (fma.f64 (pow.f64 im 6) 1/360 (fma.f64 (pow.f64 im 4) 1/12 (pow.f64 im 2))))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(+.f64 (sin.f64 re) (sin.f64 re))
(sin.f64 re)
(+.f64 (*.f64 (sin.f64 re) -2) (*.f64 (sin.f64 re) -2))
(sin.f64 re)
(-.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 re) -2))) 1)
(sin.f64 re)
(/.f64 (*.f64 (sin.f64 re) -2) -2)
(sin.f64 re)
(/.f64 (*.f64 (sin.f64 re) -2) 1)
(sin.f64 re)
(/.f64 (*.f64 (sin.f64 re) -2) (+.f64 (*.f64 (sin.f64 re) -2) (-.f64 (*.f64 (sin.f64 re) -2) (*.f64 (sin.f64 re) -2))))
(sin.f64 re)
(/.f64 (-.f64 (*.f64 (sin.f64 re) -2) (*.f64 (sin.f64 re) -2)) (-.f64 (*.f64 (sin.f64 re) -2) (*.f64 (sin.f64 re) -2)))
(sin.f64 re)
(pow.f64 (*.f64 (sin.f64 re) -2) -2)
(sin.f64 re)
(pow.f64 (*.f64 (sin.f64 re) -2) 1)
(sin.f64 re)
(pow.f64 (*.f64 (sin.f64 re) -2) 1/3)
(sin.f64 re)
(sqrt.f64 (*.f64 (sin.f64 re) -2))
(sin.f64 re)
(fabs.f64 (*.f64 (sin.f64 re) -2))
(sin.f64 re)
(log.f64 (pow.f64 1 (sin.f64 re)))
(sin.f64 re)
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 re) -2))))
(sin.f64 re)
(cbrt.f64 (*.f64 (sin.f64 re) -2))
(sin.f64 re)
(expm1.f64 (log1p.f64 (*.f64 (sin.f64 re) -2)))
(sin.f64 re)
(exp.f64 (log.f64 (*.f64 (sin.f64 re) -2)))
(sin.f64 re)
(exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) -2)) 1))
(sin.f64 re)
(exp.f64 (+.f64 (log.f64 (*.f64 (sin.f64 re) -2)) -2))
(sin.f64 re)
(log1p.f64 (expm1.f64 (*.f64 (sin.f64 re) -2)))
(sin.f64 re)
(fma.f64 1 (*.f64 (sin.f64 re) -2) (*.f64 (sin.f64 re) -2))
(sin.f64 re)
(fma.f64 (*.f64 (sin.f64 re) -2) 1 (*.f64 (sin.f64 re) -2))
(sin.f64 re)
-2
(sin.f64 re)
0
(sin.f64 re)
1/4
(sin.f64 re)
1/2
(sin.f64 re)
3/2
(sin.f64 re)
2
(sin.f64 re)

eval20.0ms (0.2%)

Compiler

Compiled 885 to 490 computations (44.6% saved)

prune26.0ms (0.3%)

Pruning

9 alts after pruning (8 fresh and 1 done)

PrunedKeptTotal
New55863
Fresh000
Picked011
Done000
Total55964
Accuracy
99.6%
Counts
64 → 9
Alt Table
Click to see full alt table
StatusAccuracyProgram
19.3%
(pow.f64 (*.f64 (sin.f64 re) -2) -2)
5.2%
(/.f64 (*.f64 (sin.f64 re) -2) (+.f64 (*.f64 (sin.f64 re) -2) (-.f64 (*.f64 (sin.f64 re) -2) (*.f64 (sin.f64 re) -2))))
90.8%
(+.f64 (*.f64 (sin.f64 re) (+.f64 (*.f64 1/720 (pow.f64 im 6)) (*.f64 1/24 (pow.f64 im 4)))) (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) 1) (sin.f64 re)))
71.0%
(+.f64 (sin.f64 re) (*.f64 (*.f64 1/2 (pow.f64 im 2)) (sin.f64 re)))
10.3%
(+.f64 (sin.f64 re) (sin.f64 re))
71.0%
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2))
99.6%
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
60.8%
(*.f64 (*.f64 1/2 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
48.5%
(sin.f64 re)
19.3%
(pow.f64 (*.f64 (sin.f64 re) -2) -2)
5.2%
(/.f64 (*.f64 (sin.f64 re) -2) (+.f64 (*.f64 (sin.f64 re) -2) (-.f64 (*.f64 (sin.f64 re) -2) (*.f64 (sin.f64 re) -2))))
90.8%
(+.f64 (*.f64 (sin.f64 re) (+.f64 (*.f64 1/720 (pow.f64 im 6)) (*.f64 1/24 (pow.f64 im 4)))) (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) 1) (sin.f64 re)))
71.0%
(+.f64 (sin.f64 re) (*.f64 (*.f64 1/2 (pow.f64 im 2)) (sin.f64 re)))
10.3%
(+.f64 (sin.f64 re) (sin.f64 re))
71.0%
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2))
99.6%
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
60.8%
(*.f64 (*.f64 1/2 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
48.5%
(sin.f64 re)
Compiler

Compiled 438 to 320 computations (26.9% saved)

localize746.0ms (9.4%)

Localize:

Found 7 expressions with local error:

NewAccuracyProgram
100.0%
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
99.6%
(*.f64 (*.f64 1/2 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
99.6%
(pow.f64 (*.f64 (sin.f64 re) -2) -2)
99.9%
(*.f64 1/720 (pow.f64 im 6))
99.8%
(*.f64 1/24 (pow.f64 im 4))
96.2%
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/720 (pow.f64 im 6)) (*.f64 1/24 (pow.f64 im 4))))
95.1%
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) 1) (sin.f64 re))
Compiler

Compiled 201 to 123 computations (38.8% saved)

series19.0ms (0.2%)

Counts
7 → 84
Calls

30 calls:

TimeVariablePointExpression
2.0ms
im
@inf
(*.f64 (*.f64 1/2 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
2.0ms
re
@0
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/720 (pow.f64 im 6)) (*.f64 1/24 (pow.f64 im 4))))
2.0ms
im
@inf
(*.f64 1/720 (pow.f64 im 6))
1.0ms
re
@inf
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/720 (pow.f64 im 6)) (*.f64 1/24 (pow.f64 im 4))))
1.0ms
re
@inf
(pow.f64 (*.f64 (sin.f64 re) -2) -2)

rewrite53.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
486×associate-*r*
318×associate-*l*
223×log1p-expm1-u
223×expm1-log1p-u
216×cbrt-prod
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
035217
1501217
Stop Event
node limit
Counts
7 → 399
Calls
Call 1
Inputs
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) 1) (sin.f64 re))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/720 (pow.f64 im 6)) (*.f64 1/24 (pow.f64 im 4))))
(*.f64 1/24 (pow.f64 im 4))
(*.f64 1/720 (pow.f64 im 6))
(pow.f64 (*.f64 (sin.f64 re) -2) -2)
(*.f64 (*.f64 1/2 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
Outputs
-4
-2
-1
-1/2
-31/720
-1/24
-53/17280
-1/576
-1/720
-1/3456
-1/17280
0
1/373248000
24389/5159780352000
148877/5159780352000
29/59719680
1/518400
29/12441600
1/414720
841/298598400
2809/298598400
1/17280
31/518400
5/82944
1/13824
1643/12441600
23/17280
413879/298598400
1/720
82973/59719680
29/17280
1/576
31/17280
53/17280
77/17280
1/31
29/720
1/24
721/17280
3461/82944
743/17280
31/720
149/3456
1/16
53/744
1/8
1/4
1/2
30/31
1
3/2
2
3
4
6
8
12
-4
-2
-1
-1/2
-31/720
-1/24
-53/17280
-1/576
-1/720
-1/3456
-1/17280
0
1/373248000
24389/5159780352000
148877/5159780352000
29/59719680
1/518400
29/12441600
1/414720
841/298598400
2809/298598400
1/17280
31/518400
5/82944
1/13824
1643/12441600
23/17280
413879/298598400
1/720
82973/59719680
29/17280
1/576
31/17280
53/17280
77/17280
1/31
29/720
1/24
721/17280
3461/82944
743/17280
31/720
149/3456
1/16
53/744
1/8
1/4
1/2
30/31
1
3/2
2
3
4
6
8
12
-4
-2
-1
-1/2
-31/720
-1/24
-53/17280
-1/576
-1/720
-1/3456
-1/17280
0
1/373248000
24389/5159780352000
148877/5159780352000
29/59719680
1/518400
29/12441600
1/414720
841/298598400
2809/298598400
1/17280
31/518400
5/82944
1/13824
1643/12441600
23/17280
413879/298598400
1/720
82973/59719680
29/17280
1/576
31/17280
53/17280
77/17280
1/31
29/720
1/24
721/17280
3461/82944
743/17280
31/720
149/3456
1/16
53/744
1/8
1/4
1/2
30/31
1
3/2
2
3
4
6
8
12
-4
-2
-1
-1/2
-31/720
-1/24
-53/17280
-1/576
-1/720
-1/3456
-1/17280
0
1/373248000
24389/5159780352000
148877/5159780352000
29/59719680
1/518400
29/12441600
1/414720
841/298598400
2809/298598400
1/17280
31/518400
5/82944
1/13824
1643/12441600
23/17280
413879/298598400
1/720
82973/59719680
29/17280
1/576
31/17280
53/17280
77/17280
1/31
29/720
1/24
721/17280
3461/82944
743/17280
31/720
149/3456
1/16
53/744
1/8
1/4
1/2
30/31
1
3/2
2
3
4
6
8
12
-4
-2
-1
-1/2
-31/720
-1/24
-53/17280
-1/576
-1/720
-1/3456
-1/17280
0
1/373248000
24389/5159780352000
148877/5159780352000
29/59719680
1/518400
29/12441600
1/414720
841/298598400
2809/298598400
1/17280
31/518400
5/82944
1/13824
1643/12441600
23/17280
413879/298598400
1/720
82973/59719680
29/17280
1/576
31/17280
53/17280
77/17280
1/31
29/720
1/24
721/17280
3461/82944
743/17280
31/720
149/3456
1/16
53/744
1/8
1/4
1/2
30/31
1
3/2
2
3
4
6
8
12
-4
-2
-1
-1/2
-31/720
-1/24
-53/17280
-1/576
-1/720
-1/3456
-1/17280
0
1/373248000
24389/5159780352000
148877/5159780352000
29/59719680
1/518400
29/12441600
1/414720
841/298598400
2809/298598400
1/17280
31/518400
5/82944
1/13824
1643/12441600
23/17280
413879/298598400
1/720
82973/59719680
29/17280
1/576
31/17280
53/17280
77/17280
1/31
29/720
1/24
721/17280
3461/82944
743/17280
31/720
149/3456
1/16
53/744
1/8
1/4
1/2
30/31
1
3/2
2
3
4
6
8
12
-4
-2
-1
-1/2
-31/720
-1/24
-53/17280
-1/576
-1/720
-1/3456
-1/17280
0
1/373248000
24389/5159780352000
148877/5159780352000
29/59719680
1/518400
29/12441600
1/414720
841/298598400
2809/298598400
1/17280
31/518400
5/82944
1/13824
1643/12441600
23/17280
413879/298598400
1/720
82973/59719680
29/17280
1/576
31/17280
53/17280
77/17280
1/31
29/720
1/24
721/17280
3461/82944
743/17280
31/720
149/3456
1/16
53/744
1/8
1/4
1/2
30/31
1
3/2
2
3
4
6
8
12

simplify148.0ms (1.9%)

Algorithm
egg-herbie
Rules
1612×fma-def
1160×+-commutative
812×unswap-sqr
770×associate-+r+
710×associate-+l+
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01624152
14013585
212563422
338243422
450343422
564003422
Stop Event
node limit
Counts
483 → 149
Calls
Call 1
Inputs
(sin.f64 re)
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re)))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re)))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))))
(*.f64 re (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))) (*.f64 re (+.f64 1 (*.f64 1/2 (pow.f64 im 2)))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 re 5) (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))) (*.f64 re (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))) (+.f64 (*.f64 -1/5040 (*.f64 (pow.f64 re 7) (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 re 5) (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))) (*.f64 re (+.f64 1 (*.f64 1/2 (pow.f64 im 2)))))))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))
(*.f64 re (+.f64 (*.f64 1/720 (pow.f64 im 6)) (*.f64 1/24 (pow.f64 im 4))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (+.f64 (*.f64 1/720 (pow.f64 im 6)) (*.f64 1/24 (pow.f64 im 4))))) (*.f64 re (+.f64 (*.f64 1/720 (pow.f64 im 6)) (*.f64 1/24 (pow.f64 im 4)))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (+.f64 (*.f64 1/720 (pow.f64 im 6)) (*.f64 1/24 (pow.f64 im 4))))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 re 5) (+.f64 (*.f64 1/720 (pow.f64 im 6)) (*.f64 1/24 (pow.f64 im 4))))) (*.f64 re (+.f64 (*.f64 1/720 (pow.f64 im 6)) (*.f64 1/24 (pow.f64 im 4))))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (+.f64 (*.f64 1/720 (pow.f64 im 6)) (*.f64 1/24 (pow.f64 im 4))))) (+.f64 (*.f64 -1/5040 (*.f64 (pow.f64 re 7) (+.f64 (*.f64 1/720 (pow.f64 im 6)) (*.f64 1/24 (pow.f64 im 4))))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 re 5) (+.f64 (*.f64 1/720 (pow.f64 im 6)) (*.f64 1/24 (pow.f64 im 4))))) (*.f64 re (+.f64 (*.f64 1/720 (pow.f64 im 6)) (*.f64 1/24 (pow.f64 im 4)))))))
(*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))
(+.f64 (*.f64 1/720 (*.f64 (pow.f64 im 6) (sin.f64 re))) (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re))))
(+.f64 (*.f64 1/720 (*.f64 (pow.f64 im 6) (sin.f64 re))) (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re))))
(+.f64 (*.f64 1/720 (*.f64 (pow.f64 im 6) (sin.f64 re))) (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re))))
(*.f64 1/720 (*.f64 (pow.f64 im 6) (sin.f64 re)))
(+.f64 (*.f64 1/720 (*.f64 (pow.f64 im 6) (sin.f64 re))) (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re))))
(+.f64 (*.f64 1/720 (*.f64 (pow.f64 im 6) (sin.f64 re))) (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re))))
(+.f64 (*.f64 1/720 (*.f64 (pow.f64 im 6) (sin.f64 re))) (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re))))
(*.f64 1/720 (*.f64 (pow.f64 im 6) (sin.f64 re)))
(+.f64 (*.f64 1/720 (*.f64 (pow.f64 im 6) (sin.f64 re))) (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re))))
(+.f64 (*.f64 1/720 (*.f64 (pow.f64 im 6) (sin.f64 re))) (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re))))
(+.f64 (*.f64 1/720 (*.f64 (pow.f64 im 6) (sin.f64 re))) (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re))))
(/.f64 1/4 (pow.f64 re 2))
(+.f64 1/12 (*.f64 1/4 (/.f64 1 (pow.f64 re 2))))
(+.f64 1/12 (+.f64 (*.f64 1/60 (pow.f64 re 2)) (*.f64 1/4 (/.f64 1 (pow.f64 re 2)))))
(+.f64 1/12 (+.f64 (*.f64 1/378 (pow.f64 re 4)) (+.f64 (*.f64 1/60 (pow.f64 re 2)) (*.f64 1/4 (/.f64 1 (pow.f64 re 2))))))
(/.f64 1/4 (pow.f64 (sin.f64 re) 2))
(/.f64 1/4 (pow.f64 (sin.f64 re) 2))
(/.f64 1/4 (pow.f64 (sin.f64 re) 2))
(/.f64 1/4 (pow.f64 (sin.f64 re) 2))
(/.f64 1/4 (pow.f64 (sin.f64 re) 2))
(/.f64 1/4 (pow.f64 (sin.f64 re) 2))
(/.f64 1/4 (pow.f64 (sin.f64 re) 2))
(/.f64 1/4 (pow.f64 (sin.f64 re) 2))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
re
(+.f64 re (*.f64 1/2 (*.f64 (pow.f64 im 2) re)))
(+.f64 re (+.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) re)) (*.f64 1/2 (*.f64 (pow.f64 im 2) re))))
(+.f64 re (+.f64 (*.f64 1/720 (*.f64 (pow.f64 im 6) re)) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) re)) (*.f64 1/2 (*.f64 (pow.f64 im 2) re)))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))))
2
(+.f64 2 (pow.f64 im 2))
(+.f64 2 (+.f64 (*.f64 1/12 (pow.f64 im 4)) (pow.f64 im 2)))
(+.f64 2 (+.f64 (*.f64 1/360 (pow.f64 im 6)) (+.f64 (*.f64 1/12 (pow.f64 im 4)) (pow.f64 im 2))))
(+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))
(+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))
(+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))
(+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))
-4
-2
-1
-1/2
-31/720
-1/24
-53/17280
-1/576
-1/720
-1/3456
-1/17280
0
1/373248000
24389/5159780352000
148877/5159780352000
29/59719680
1/518400
29/12441600
1/414720
841/298598400
2809/298598400
1/17280
31/518400
5/82944
1/13824
1643/12441600
23/17280
413879/298598400
1/720
82973/59719680
29/17280
1/576
31/17280
53/17280
77/17280
1/31
29/720
1/24
721/17280
3461/82944
743/17280
31/720
149/3456
1/16
53/744
1/8
1/4
1/2
30/31
1
3/2
2
3
4
6
8
12
-4
-2
-1
-1/2
-31/720
-1/24
-53/17280
-1/576
-1/720
-1/3456
-1/17280
0
1/373248000
24389/5159780352000
148877/5159780352000
29/59719680
1/518400
29/12441600
1/414720
841/298598400
2809/298598400
1/17280
31/518400
5/82944
1/13824
1643/12441600
23/17280
413879/298598400
1/720
82973/59719680
29/17280
1/576
31/17280
53/17280
77/17280
1/31
29/720
1/24
721/17280
3461/82944
743/17280
31/720
149/3456
1/16
53/744
1/8
1/4
1/2
30/31
1
3/2
2
3
4
6
8
12
-4
-2
-1
-1/2
-31/720
-1/24
-53/17280
-1/576
-1/720
-1/3456
-1/17280
0
1/373248000
24389/5159780352000
148877/5159780352000
29/59719680
1/518400
29/12441600
1/414720
841/298598400
2809/298598400
1/17280
31/518400
5/82944
1/13824
1643/12441600
23/17280
413879/298598400
1/720
82973/59719680
29/17280
1/576
31/17280
53/17280
77/17280
1/31
29/720
1/24
721/17280
3461/82944
743/17280
31/720
149/3456
1/16
53/744
1/8
1/4
1/2
30/31
1
3/2
2
3
4
6
8
12
-4
-2
-1
-1/2
-31/720
-1/24
-53/17280
-1/576
-1/720
-1/3456
-1/17280
0
1/373248000
24389/5159780352000
148877/5159780352000
29/59719680
1/518400
29/12441600
1/414720
841/298598400
2809/298598400
1/17280
31/518400
5/82944
1/13824
1643/12441600
23/17280
413879/298598400
1/720
82973/59719680
29/17280
1/576
31/17280
53/17280
77/17280
1/31
29/720
1/24
721/17280
3461/82944
743/17280
31/720
149/3456
1/16
53/744
1/8
1/4
1/2
30/31
1
3/2
2
3
4
6
8
12
-4
-2
-1
-1/2
-31/720
-1/24
-53/17280
-1/576
-1/720
-1/3456
-1/17280
0
1/373248000
24389/5159780352000
148877/5159780352000
29/59719680
1/518400
29/12441600
1/414720
841/298598400
2809/298598400
1/17280
31/518400
5/82944
1/13824
1643/12441600
23/17280
413879/298598400
1/720
82973/59719680
29/17280
1/576
31/17280
53/17280
77/17280
1/31
29/720
1/24
721/17280
3461/82944
743/17280
31/720
149/3456
1/16
53/744
1/8
1/4
1/2
30/31
1
3/2
2
3
4
6
8
12
-4
-2
-1
-1/2
-31/720
-1/24
-53/17280
-1/576
-1/720
-1/3456
-1/17280
0
1/373248000
24389/5159780352000
148877/5159780352000
29/59719680
1/518400
29/12441600
1/414720
841/298598400
2809/298598400
1/17280
31/518400
5/82944
1/13824
1643/12441600
23/17280
413879/298598400
1/720
82973/59719680
29/17280
1/576
31/17280
53/17280
77/17280
1/31
29/720
1/24
721/17280
3461/82944
743/17280
31/720
149/3456
1/16
53/744
1/8
1/4
1/2
30/31
1
3/2
2
3
4
6
8
12
-4
-2
-1
-1/2
-31/720
-1/24
-53/17280
-1/576
-1/720
-1/3456
-1/17280
0
1/373248000
24389/5159780352000
148877/5159780352000
29/59719680
1/518400
29/12441600
1/414720
841/298598400
2809/298598400
1/17280
31/518400
5/82944
1/13824
1643/12441600
23/17280
413879/298598400
1/720
82973/59719680
29/17280
1/576
31/17280
53/17280
77/17280
1/31
29/720
1/24
721/17280
3461/82944
743/17280
31/720
149/3456
1/16
53/744
1/8
1/4
1/2
30/31
1
3/2
2
3
4
6
8
12
Outputs
(sin.f64 re)
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(*.f64 (sin.f64 re) (fma.f64 1/2 (pow.f64 im 2) 1))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(*.f64 (sin.f64 re) (fma.f64 1/2 (pow.f64 im 2) 1))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(*.f64 (sin.f64 re) (fma.f64 1/2 (pow.f64 im 2) 1))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(*.f64 (sin.f64 re) (fma.f64 1/2 (pow.f64 im 2) 1))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(*.f64 (sin.f64 re) (fma.f64 1/2 (pow.f64 im 2) 1))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(*.f64 (sin.f64 re) (fma.f64 1/2 (pow.f64 im 2) 1))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(*.f64 (sin.f64 re) (fma.f64 1/2 (pow.f64 im 2) 1))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(*.f64 (sin.f64 re) (fma.f64 1/2 (pow.f64 im 2) 1))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(*.f64 (sin.f64 re) (fma.f64 1/2 (pow.f64 im 2) 1))
(*.f64 re (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))
(*.f64 re (fma.f64 1/2 (pow.f64 im 2) 1))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))) (*.f64 re (+.f64 1 (*.f64 1/2 (pow.f64 im 2)))))
(fma.f64 -1/6 (*.f64 (+.f64 1 (*.f64 1/2 (pow.f64 im 2))) (pow.f64 re 3)) (*.f64 re (+.f64 1 (*.f64 1/2 (pow.f64 im 2)))))
(*.f64 (fma.f64 1/2 (pow.f64 im 2) 1) (+.f64 re (*.f64 -1/6 (pow.f64 re 3))))
(*.f64 (fma.f64 1/2 (pow.f64 im 2) 1) (fma.f64 -1/6 (pow.f64 re 3) re))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 re 5) (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))) (*.f64 re (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))))
(fma.f64 -1/6 (*.f64 (+.f64 1 (*.f64 1/2 (pow.f64 im 2))) (pow.f64 re 3)) (fma.f64 1/120 (*.f64 (+.f64 1 (*.f64 1/2 (pow.f64 im 2))) (pow.f64 re 5)) (*.f64 re (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))))
(fma.f64 -1/6 (*.f64 (fma.f64 1/2 (pow.f64 im 2) 1) (pow.f64 re 3)) (*.f64 (fma.f64 1/2 (pow.f64 im 2) 1) (+.f64 re (*.f64 1/120 (pow.f64 re 5)))))
(*.f64 (fma.f64 1/2 (pow.f64 im 2) 1) (+.f64 re (fma.f64 -1/6 (pow.f64 re 3) (*.f64 1/120 (pow.f64 re 5)))))
(*.f64 (fma.f64 1/2 (pow.f64 im 2) 1) (+.f64 (*.f64 1/120 (pow.f64 re 5)) (fma.f64 -1/6 (pow.f64 re 3) re)))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))) (+.f64 (*.f64 -1/5040 (*.f64 (pow.f64 re 7) (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 re 5) (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))) (*.f64 re (+.f64 1 (*.f64 1/2 (pow.f64 im 2)))))))
(fma.f64 -1/6 (*.f64 (+.f64 1 (*.f64 1/2 (pow.f64 im 2))) (pow.f64 re 3)) (fma.f64 -1/5040 (*.f64 (+.f64 1 (*.f64 1/2 (pow.f64 im 2))) (pow.f64 re 7)) (fma.f64 1/120 (*.f64 (+.f64 1 (*.f64 1/2 (pow.f64 im 2))) (pow.f64 re 5)) (*.f64 re (+.f64 1 (*.f64 1/2 (pow.f64 im 2)))))))
(+.f64 (*.f64 (fma.f64 1/2 (pow.f64 im 2) 1) (+.f64 (*.f64 -1/5040 (pow.f64 re 7)) (*.f64 1/120 (pow.f64 re 5)))) (*.f64 (fma.f64 1/2 (pow.f64 im 2) 1) (+.f64 re (*.f64 -1/6 (pow.f64 re 3)))))
(*.f64 (fma.f64 1/2 (pow.f64 im 2) 1) (+.f64 (fma.f64 -1/5040 (pow.f64 re 7) (*.f64 1/120 (pow.f64 re 5))) (fma.f64 -1/6 (pow.f64 re 3) re)))
(*.f64 (fma.f64 1/2 (pow.f64 im 2) 1) (+.f64 (fma.f64 -1/6 (pow.f64 re 3) re) (fma.f64 -1/5040 (pow.f64 re 7) (*.f64 1/120 (pow.f64 re 5)))))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(*.f64 (sin.f64 re) (fma.f64 1/2 (pow.f64 im 2) 1))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(*.f64 (sin.f64 re) (fma.f64 1/2 (pow.f64 im 2) 1))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(*.f64 (sin.f64 re) (fma.f64 1/2 (pow.f64 im 2) 1))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(*.f64 (sin.f64 re) (fma.f64 1/2 (pow.f64 im 2) 1))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(*.f64 (sin.f64 re) (fma.f64 1/2 (pow.f64 im 2) 1))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(*.f64 (sin.f64 re) (fma.f64 1/2 (pow.f64 im 2) 1))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(*.f64 (sin.f64 re) (fma.f64 1/2 (pow.f64 im 2) 1))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(*.f64 (sin.f64 re) (fma.f64 1/2 (pow.f64 im 2) 1))
(*.f64 re (+.f64 (*.f64 1/720 (pow.f64 im 6)) (*.f64 1/24 (pow.f64 im 4))))
(*.f64 re (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4))))
(*.f64 re (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/720 (pow.f64 im 6))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (+.f64 (*.f64 1/720 (pow.f64 im 6)) (*.f64 1/24 (pow.f64 im 4))))) (*.f64 re (+.f64 (*.f64 1/720 (pow.f64 im 6)) (*.f64 1/24 (pow.f64 im 4)))))
(fma.f64 -1/6 (*.f64 (pow.f64 re 3) (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4)))) (*.f64 re (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4)))))
(*.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/720 (pow.f64 im 6))) (+.f64 re (*.f64 -1/6 (pow.f64 re 3))))
(*.f64 (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4))) (fma.f64 -1/6 (pow.f64 re 3) re))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (+.f64 (*.f64 1/720 (pow.f64 im 6)) (*.f64 1/24 (pow.f64 im 4))))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 re 5) (+.f64 (*.f64 1/720 (pow.f64 im 6)) (*.f64 1/24 (pow.f64 im 4))))) (*.f64 re (+.f64 (*.f64 1/720 (pow.f64 im 6)) (*.f64 1/24 (pow.f64 im 4))))))
(fma.f64 -1/6 (*.f64 (pow.f64 re 3) (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4)))) (fma.f64 1/120 (*.f64 (pow.f64 re 5) (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4)))) (*.f64 re (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4))))))
(fma.f64 -1/6 (*.f64 (pow.f64 re 3) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/720 (pow.f64 im 6)))) (*.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/720 (pow.f64 im 6))) (+.f64 re (*.f64 1/120 (pow.f64 re 5)))))
(*.f64 (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4))) (+.f64 re (fma.f64 -1/6 (pow.f64 re 3) (*.f64 1/120 (pow.f64 re 5)))))
(*.f64 (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4))) (+.f64 (*.f64 1/120 (pow.f64 re 5)) (fma.f64 -1/6 (pow.f64 re 3) re)))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (+.f64 (*.f64 1/720 (pow.f64 im 6)) (*.f64 1/24 (pow.f64 im 4))))) (+.f64 (*.f64 -1/5040 (*.f64 (pow.f64 re 7) (+.f64 (*.f64 1/720 (pow.f64 im 6)) (*.f64 1/24 (pow.f64 im 4))))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 re 5) (+.f64 (*.f64 1/720 (pow.f64 im 6)) (*.f64 1/24 (pow.f64 im 4))))) (*.f64 re (+.f64 (*.f64 1/720 (pow.f64 im 6)) (*.f64 1/24 (pow.f64 im 4)))))))
(fma.f64 -1/6 (*.f64 (pow.f64 re 3) (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4)))) (fma.f64 -1/5040 (*.f64 (pow.f64 re 7) (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4)))) (fma.f64 1/120 (*.f64 (pow.f64 re 5) (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4)))) (*.f64 re (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4)))))))
(+.f64 (*.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/720 (pow.f64 im 6))) (+.f64 re (*.f64 1/120 (pow.f64 re 5)))) (*.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/720 (pow.f64 im 6))) (+.f64 (*.f64 -1/6 (pow.f64 re 3)) (*.f64 -1/5040 (pow.f64 re 7)))))
(*.f64 (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4))) (+.f64 (fma.f64 -1/5040 (pow.f64 re 7) (*.f64 1/120 (pow.f64 re 5))) (fma.f64 -1/6 (pow.f64 re 3) re)))
(*.f64 (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4))) (+.f64 (fma.f64 -1/6 (pow.f64 re 3) re) (fma.f64 -1/5040 (pow.f64 re 7) (*.f64 1/120 (pow.f64 re 5)))))
(*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4)))
(+.f64 (*.f64 1/720 (*.f64 (pow.f64 im 6) (sin.f64 re))) (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re))))
(fma.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6)) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4))))
(*.f64 (sin.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/720 (pow.f64 im 6))))
(*.f64 (sin.f64 re) (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4))))
(+.f64 (*.f64 1/720 (*.f64 (pow.f64 im 6) (sin.f64 re))) (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re))))
(fma.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6)) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4))))
(*.f64 (sin.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/720 (pow.f64 im 6))))
(*.f64 (sin.f64 re) (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4))))
(+.f64 (*.f64 1/720 (*.f64 (pow.f64 im 6) (sin.f64 re))) (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re))))
(fma.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6)) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4))))
(*.f64 (sin.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/720 (pow.f64 im 6))))
(*.f64 (sin.f64 re) (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4))))
(*.f64 1/720 (*.f64 (pow.f64 im 6) (sin.f64 re)))
(*.f64 (*.f64 1/720 (pow.f64 im 6)) (sin.f64 re))
(*.f64 (sin.f64 re) (*.f64 1/720 (pow.f64 im 6)))
(+.f64 (*.f64 1/720 (*.f64 (pow.f64 im 6) (sin.f64 re))) (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re))))
(fma.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6)) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4))))
(*.f64 (sin.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/720 (pow.f64 im 6))))
(*.f64 (sin.f64 re) (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4))))
(+.f64 (*.f64 1/720 (*.f64 (pow.f64 im 6) (sin.f64 re))) (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re))))
(fma.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6)) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4))))
(*.f64 (sin.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/720 (pow.f64 im 6))))
(*.f64 (sin.f64 re) (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4))))
(+.f64 (*.f64 1/720 (*.f64 (pow.f64 im 6) (sin.f64 re))) (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re))))
(fma.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6)) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4))))
(*.f64 (sin.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/720 (pow.f64 im 6))))
(*.f64 (sin.f64 re) (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4))))
(*.f64 1/720 (*.f64 (pow.f64 im 6) (sin.f64 re)))
(*.f64 (*.f64 1/720 (pow.f64 im 6)) (sin.f64 re))
(*.f64 (sin.f64 re) (*.f64 1/720 (pow.f64 im 6)))
(+.f64 (*.f64 1/720 (*.f64 (pow.f64 im 6) (sin.f64 re))) (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re))))
(fma.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6)) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4))))
(*.f64 (sin.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/720 (pow.f64 im 6))))
(*.f64 (sin.f64 re) (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4))))
(+.f64 (*.f64 1/720 (*.f64 (pow.f64 im 6) (sin.f64 re))) (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re))))
(fma.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6)) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4))))
(*.f64 (sin.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/720 (pow.f64 im 6))))
(*.f64 (sin.f64 re) (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4))))
(+.f64 (*.f64 1/720 (*.f64 (pow.f64 im 6) (sin.f64 re))) (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re))))
(fma.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6)) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4))))
(*.f64 (sin.f64 re) (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/720 (pow.f64 im 6))))
(*.f64 (sin.f64 re) (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4))))
(/.f64 1/4 (pow.f64 re 2))
(+.f64 1/12 (*.f64 1/4 (/.f64 1 (pow.f64 re 2))))
(+.f64 1/12 (/.f64 1/4 (pow.f64 re 2)))
(+.f64 1/12 (+.f64 (*.f64 1/60 (pow.f64 re 2)) (*.f64 1/4 (/.f64 1 (pow.f64 re 2)))))
(+.f64 1/12 (fma.f64 1/60 (pow.f64 re 2) (/.f64 1/4 (pow.f64 re 2))))
(+.f64 1/12 (fma.f64 (pow.f64 re 2) 1/60 (/.f64 1/4 (pow.f64 re 2))))
(+.f64 (/.f64 1/4 (pow.f64 re 2)) (fma.f64 (pow.f64 re 2) 1/60 1/12))
(+.f64 1/12 (+.f64 (*.f64 1/378 (pow.f64 re 4)) (+.f64 (*.f64 1/60 (pow.f64 re 2)) (*.f64 1/4 (/.f64 1 (pow.f64 re 2))))))
(+.f64 1/12 (fma.f64 1/378 (pow.f64 re 4) (fma.f64 1/60 (pow.f64 re 2) (/.f64 1/4 (pow.f64 re 2)))))
(+.f64 1/12 (fma.f64 1/378 (pow.f64 re 4) (fma.f64 (pow.f64 re 2) 1/60 (/.f64 1/4 (pow.f64 re 2)))))
(+.f64 (fma.f64 (pow.f64 re 2) 1/60 1/12) (fma.f64 1/378 (pow.f64 re 4) (/.f64 1/4 (pow.f64 re 2))))
(/.f64 1/4 (pow.f64 (sin.f64 re) 2))
(/.f64 1/4 (pow.f64 (sin.f64 re) 2))
(/.f64 1/4 (pow.f64 (sin.f64 re) 2))
(/.f64 1/4 (pow.f64 (sin.f64 re) 2))
(/.f64 1/4 (pow.f64 (sin.f64 re) 2))
(/.f64 1/4 (pow.f64 (sin.f64 re) 2))
(/.f64 1/4 (pow.f64 (sin.f64 re) 2))
(/.f64 1/4 (pow.f64 (sin.f64 re) 2))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/2))
(*.f64 re (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/2))
(*.f64 re (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/2))
(*.f64 re (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/2))
(*.f64 re (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/2))
(*.f64 re (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/2))
(*.f64 re (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/2))
(*.f64 re (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/2))
(*.f64 re (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/2))
(*.f64 re (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/2))
(*.f64 re (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/2))
(*.f64 re (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/2))
(*.f64 re (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
re
(+.f64 re (*.f64 1/2 (*.f64 (pow.f64 im 2) re)))
(*.f64 re (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))
(*.f64 re (fma.f64 1/2 (pow.f64 im 2) 1))
(+.f64 re (+.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) re)) (*.f64 1/2 (*.f64 (pow.f64 im 2) re))))
(+.f64 re (fma.f64 1/24 (*.f64 re (pow.f64 im 4)) (*.f64 1/2 (*.f64 re (pow.f64 im 2)))))
(+.f64 re (*.f64 re (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))))
(fma.f64 re (fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4))) re)
(fma.f64 re (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))) re)
(+.f64 re (+.f64 (*.f64 1/720 (*.f64 (pow.f64 im 6) re)) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) re)) (*.f64 1/2 (*.f64 (pow.f64 im 2) re)))))
(+.f64 re (+.f64 (*.f64 re (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4)))) (*.f64 1/2 (*.f64 re (pow.f64 im 2)))))
(+.f64 re (*.f64 re (+.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/720 (pow.f64 im 6))) (*.f64 1/2 (pow.f64 im 2)))))
(*.f64 re (+.f64 (fma.f64 1/720 (pow.f64 im 6) (*.f64 1/24 (pow.f64 im 4))) (fma.f64 1/2 (pow.f64 im 2) 1)))
(*.f64 re (+.f64 (fma.f64 1/2 (pow.f64 im 2) (*.f64 1/24 (pow.f64 im 4))) (fma.f64 1/720 (pow.f64 im 6) 1)))
(*.f64 re (+.f64 (fma.f64 1/24 (pow.f64 im 4) (*.f64 1/2 (pow.f64 im 2))) (fma.f64 1/720 (pow.f64 im 6) 1)))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/2))
(*.f64 re (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/2))
(*.f64 re (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/2))
(*.f64 re (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/2))
(*.f64 re (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/2))
(*.f64 re (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/2))
(*.f64 re (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/2))
(*.f64 re (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/2))
(*.f64 re (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
2
(+.f64 2 (pow.f64 im 2))
(fma.f64 im im 2)
(+.f64 2 (+.f64 (*.f64 1/12 (pow.f64 im 4)) (pow.f64 im 2)))
(+.f64 2 (fma.f64 1/12 (pow.f64 im 4) (pow.f64 im 2)))
(+.f64 2 (fma.f64 (pow.f64 im 4) 1/12 (pow.f64 im 2)))
(fma.f64 im im (fma.f64 (pow.f64 im 4) 1/12 2))
(+.f64 2 (+.f64 (*.f64 1/360 (pow.f64 im 6)) (+.f64 (*.f64 1/12 (pow.f64 im 4)) (pow.f64 im 2))))
(+.f64 2 (fma.f64 1/360 (pow.f64 im 6) (fma.f64 1/12 (pow.f64 im 4) (pow.f64 im 2))))
(+.f64 2 (fma.f64 (pow.f64 im 6) 1/360 (fma.f64 (pow.f64 im 4) 1/12 (pow.f64 im 2))))
(fma.f64 (pow.f64 im 6) 1/360 (fma.f64 im im (fma.f64 (pow.f64 im 4) 1/12 2)))
(+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))
(+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
-4
-2
-1
-1/2
-31/720
-1/24
-53/17280
-1/576
-1/720
-1/3456
-1/17280
0
1/373248000
24389/5159780352000
148877/5159780352000
29/59719680
1/518400
29/12441600
1/414720
841/298598400
2809/298598400
1/17280
31/518400
5/82944
1/13824
1643/12441600
23/17280
413879/298598400
1/720
82973/59719680
29/17280
1/576
31/17280
53/17280
77/17280
1/31
29/720
1/24
721/17280
3461/82944
743/17280
31/720
149/3456
1/16
53/744
1/8
1/4
1/2
30/31
1
3/2
2
3
4
6
8
12
-4
-2
-1
-1/2
-31/720
-1/24
-53/17280
-1/576
-1/720
-1/3456
-1/17280
0
1/373248000
24389/5159780352000
148877/5159780352000
29/59719680
1/518400
29/12441600
1/414720
841/298598400
2809/298598400
1/17280
31/518400
5/82944
1/13824
1643/12441600
23/17280
413879/298598400
1/720
82973/59719680
29/17280
1/576
31/17280
53/17280
77/17280
1/31
29/720
1/24
721/17280
3461/82944
743/17280
31/720
149/3456
1/16
53/744
1/8
1/4
1/2
30/31
1
3/2
2
3
4
6
8
12
-4
-2
-1
-1/2
-31/720
-1/24
-53/17280
-1/576
-1/720
-1/3456
-1/17280
0
1/373248000
24389/5159780352000
148877/5159780352000
29/59719680
1/518400
29/12441600
1/414720
841/298598400
2809/298598400
1/17280
31/518400
5/82944
1/13824
1643/12441600
23/17280
413879/298598400
1/720
82973/59719680
29/17280
1/576
31/17280
53/17280
77/17280
1/31
29/720
1/24
721/17280
3461/82944
743/17280
31/720
149/3456
1/16
53/744
1/8
1/4
1/2
30/31
1
3/2
2
3
4
6
8
12
-4
-2
-1
-1/2
-31/720
-1/24
-53/17280
-1/576
-1/720
-1/3456
-1/17280
0
1/373248000
24389/5159780352000
148877/5159780352000
29/59719680
1/518400
29/12441600
1/414720
841/298598400
2809/298598400
1/17280
31/518400
5/82944
1/13824
1643/12441600
23/17280
413879/298598400
1/720
82973/59719680
29/17280
1/576
31/17280
53/17280
77/17280
1/31
29/720
1/24
721/17280
3461/82944
743/17280
31/720
149/3456
1/16
53/744
1/8
1/4
1/2
30/31
1
3/2
2
3
4
6
8
12
-4
-2
-1
-1/2
-31/720
-1/24
-53/17280
-1/576
-1/720
-1/3456
-1/17280
0
1/373248000
24389/5159780352000
148877/5159780352000
29/59719680
1/518400
29/12441600
1/414720
841/298598400
2809/298598400
1/17280
31/518400
5/82944
1/13824
1643/12441600
23/17280
413879/298598400
1/720
82973/59719680
29/17280
1/576
31/17280
53/17280
77/17280
1/31
29/720
1/24
721/17280
3461/82944
743/17280
31/720
149/3456
1/16
53/744
1/8
1/4
1/2
30/31
1
3/2
2
3
4
6
8
12
-4
-2
-1
-1/2
-31/720
-1/24
-53/17280
-1/576
-1/720
-1/3456
-1/17280
0
1/373248000
24389/5159780352000
148877/5159780352000
29/59719680
1/518400
29/12441600
1/414720
841/298598400
2809/298598400
1/17280
31/518400
5/82944
1/13824
1643/12441600
23/17280
413879/298598400
1/720
82973/59719680
29/17280
1/576
31/17280
53/17280
77/17280
1/31
29/720
1/24
721/17280
3461/82944
743/17280
31/720
149/3456
1/16
53/744
1/8
1/4
1/2
30/31
1
3/2
2
3
4
6
8
12
-4
-2
-1
-1/2
-31/720
-1/24
-53/17280
-1/576
-1/720
-1/3456
-1/17280
0
1/373248000
24389/5159780352000
148877/5159780352000
29/59719680
1/518400
29/12441600
1/414720
841/298598400
2809/298598400
1/17280
31/518400
5/82944
1/13824
1643/12441600
23/17280
413879/298598400
1/720
82973/59719680
29/17280
1/576
31/17280
53/17280
77/17280
1/31
29/720
1/24
721/17280
3461/82944
743/17280
31/720
149/3456
1/16
53/744
1/8
1/4
1/2
30/31
1
3/2
2
3
4
6
8
12

eval75.0ms (0.9%)

Compiler

Compiled 3237 to 2440 computations (24.6% saved)

prune36.0ms (0.5%)

Pruning

12 alts after pruning (8 fresh and 4 done)

PrunedKeptTotal
New1436149
Fresh123
Picked235
Done011
Total14612158
Accuracy
99.6%
Counts
158 → 12
Alt Table
Click to see full alt table
StatusAccuracyProgram
19.3%
(pow.f64 (*.f64 (sin.f64 re) -2) -2)
17.8%
(/.f64 1/4 (pow.f64 re 2))
46.4%
(+.f64 (*.f64 (sin.f64 re) (+.f64 (*.f64 1/720 (pow.f64 im 6)) (*.f64 1/24 (pow.f64 im 4)))) 12)
10.3%
(+.f64 (sin.f64 re) (sin.f64 re))
56.7%
(+.f64 re (+.f64 (*.f64 1/720 (*.f64 (pow.f64 im 6) re)) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) re)) (*.f64 1/2 (*.f64 (pow.f64 im 2) re)))))
43.0%
(+.f64 re (*.f64 1/2 (*.f64 (pow.f64 im 2) re)))
71.0%
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2))
99.6%
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
43.0%
(*.f64 (*.f64 1/2 re) (fma.f64 im im 2))
60.8%
(*.f64 (*.f64 1/2 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
48.5%
(sin.f64 re)
23.2%
re
19.3%
(pow.f64 (*.f64 (sin.f64 re) -2) -2)
17.8%
(/.f64 1/4 (pow.f64 re 2))
46.4%
(+.f64 (*.f64 (sin.f64 re) (+.f64 (*.f64 1/720 (pow.f64 im 6)) (*.f64 1/24 (pow.f64 im 4)))) 12)
10.3%
(+.f64 (sin.f64 re) (sin.f64 re))
56.7%
(+.f64 re (+.f64 (*.f64 1/720 (*.f64 (pow.f64 im 6) re)) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) re)) (*.f64 1/2 (*.f64 (pow.f64 im 2) re)))))
43.0%
(+.f64 re (*.f64 1/2 (*.f64 (pow.f64 im 2) re)))
71.0%
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2))
99.6%
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
43.0%
(*.f64 (*.f64 1/2 re) (fma.f64 im im 2))
60.8%
(*.f64 (*.f64 1/2 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
48.5%
(sin.f64 re)
23.2%
re
Compiler

Compiled 444 to 334 computations (24.8% saved)

localize119.0ms (1.5%)

Localize:

Found 5 expressions with local error:

NewAccuracyProgram
100.0%
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
90.5%
(*.f64 (pow.f64 im 2) re)
95.2%
(*.f64 (*.f64 1/2 re) (fma.f64 im im 2))
99.7%
(/.f64 1/4 (pow.f64 re 2))
95.1%
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2))
Compiler

Compiled 92 to 53 computations (42.4% saved)

series11.0ms (0.1%)

Counts
5 → 48
Calls

27 calls:

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

rewrite134.0ms (1.7%)

Algorithm
batch-egg-rewrite
Rules
1524×log-prod
713×log1p-expm1-u
713×expm1-log1p-u
468×expm1-udef
468×log1p-udef
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
023124
1285124
23424124
Stop Event
node limit
Counts
5 → 137
Calls
Call 1
Inputs
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2))
(/.f64 1/4 (pow.f64 re 2))
(*.f64 (*.f64 1/2 re) (fma.f64 im im 2))
(*.f64 (pow.f64 im 2) re)
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
Outputs
(+.f64 0 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2))))
(+.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (pow.f64 im 2)) (*.f64 (*.f64 1/2 (sin.f64 re)) 2))
(+.f64 (*.f64 (pow.f64 im 2) (*.f64 1/2 (sin.f64 re))) (*.f64 2 (*.f64 1/2 (sin.f64 re))))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 (fma.f64 im im 2)) (*.f64 1/2 (sin.f64 re)))) (cbrt.f64 (pow.f64 (exp.f64 (fma.f64 im im 2)) (*.f64 1/2 (sin.f64 re)))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (fma.f64 im im 2)) (*.f64 1/2 (sin.f64 re))))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (fma.f64 im im 2)) (*.f64 1/2 (sin.f64 re))))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (fma.f64 im im 2)) (*.f64 1/2 (sin.f64 re))))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2))))) 1)
(pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2))) 1)
(pow.f64 (cbrt.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2)))) 3)
(pow.f64 (pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2))) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2)))) 2)
(sqrt.f64 (pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2))) 2))
(log.f64 (pow.f64 (exp.f64 (fma.f64 im im 2)) (*.f64 1/2 (sin.f64 re))))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2))))))
(cbrt.f64 (pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2))) 3))
(cbrt.f64 (*.f64 (pow.f64 (*.f64 1/2 (sin.f64 re)) 3) (pow.f64 (fma.f64 im im 2) 3)))
(cbrt.f64 (*.f64 (pow.f64 (fma.f64 im im 2) 3) (pow.f64 (*.f64 1/2 (sin.f64 re)) 3)))
(expm1.f64 (log1p.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2)))))
(exp.f64 (log.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2)))))
(exp.f64 (*.f64 (log.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2)))) 1))
(log1p.f64 (expm1.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2)))))
(fma.f64 (*.f64 1/2 (sin.f64 re)) (pow.f64 im 2) (*.f64 (*.f64 1/2 (sin.f64 re)) 2))
(fma.f64 (pow.f64 im 2) (*.f64 1/2 (sin.f64 re)) (*.f64 2 (*.f64 1/2 (sin.f64 re))))
(+.f64 0 (*.f64 1/4 (pow.f64 re -2)))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 1/4) (pow.f64 re -2))) (cbrt.f64 (pow.f64 (exp.f64 1/4) (pow.f64 re -2))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 1/4) (pow.f64 re -2)))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 1/4) (pow.f64 re -2)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 1/4) (pow.f64 re -2)))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 1/4 (pow.f64 re -2)))) 1)
(*.f64 1/4 (pow.f64 re -2))
(*.f64 (*.f64 1/4 (pow.f64 re -2)) 1)
(*.f64 1 (*.f64 1/4 (pow.f64 re -2)))
(*.f64 (cbrt.f64 (*.f64 1/4 (pow.f64 re -2))) (cbrt.f64 (/.f64 1/16 (pow.f64 re 4))))
(*.f64 (cbrt.f64 (/.f64 1/16 (pow.f64 re 4))) (cbrt.f64 (*.f64 1/4 (pow.f64 re -2))))
(*.f64 (/.f64 1/2 re) (/.f64 1/2 re))
(*.f64 -1/4 (/.f64 1 (neg.f64 (pow.f64 re 2))))
(*.f64 (pow.f64 re -2) 1/4)
(pow.f64 (*.f64 1/4 (pow.f64 re -2)) 1)
(pow.f64 (cbrt.f64 (*.f64 1/4 (pow.f64 re -2))) 3)
(pow.f64 (pow.f64 (*.f64 1/4 (pow.f64 re -2)) 3) 1/3)
(pow.f64 (/.f64 1/2 re) 2)
(pow.f64 (*.f64 (pow.f64 re 2) 4) -1)
(sqrt.f64 (/.f64 1/16 (pow.f64 re 4)))
(log.f64 (pow.f64 (exp.f64 1/4) (pow.f64 re -2)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 1/4 (pow.f64 re -2)))))
(cbrt.f64 (pow.f64 (*.f64 1/4 (pow.f64 re -2)) 3))
(expm1.f64 (log1p.f64 (*.f64 1/4 (pow.f64 re -2))))
(exp.f64 (log.f64 (*.f64 1/4 (pow.f64 re -2))))
(exp.f64 (*.f64 (log.f64 (*.f64 1/4 (pow.f64 re -2))) 1))
(log1p.f64 (expm1.f64 (*.f64 1/4 (pow.f64 re -2))))
(+.f64 (*.f64 re (*.f64 1/2 (pow.f64 im 2))) (*.f64 (*.f64 1/2 re) 2))
(+.f64 (*.f64 re (*.f64 1/2 (pow.f64 im 2))) (*.f64 2 (*.f64 1/2 re)))
(+.f64 0 (*.f64 1/2 (*.f64 re (fma.f64 im im 2))))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 (fma.f64 im im 2)) (*.f64 1/2 re))) (cbrt.f64 (pow.f64 (exp.f64 (fma.f64 im im 2)) (*.f64 1/2 re))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (fma.f64 im im 2)) (*.f64 1/2 re)))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (fma.f64 im im 2)) (*.f64 1/2 re)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (fma.f64 im im 2)) (*.f64 1/2 re)))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 1/2 (*.f64 re (fma.f64 im im 2))))) 1)
(pow.f64 (*.f64 1/2 (*.f64 re (fma.f64 im im 2))) 1)
(pow.f64 (cbrt.f64 (*.f64 1/2 (*.f64 re (fma.f64 im im 2)))) 3)
(pow.f64 (pow.f64 (*.f64 1/2 (*.f64 re (fma.f64 im im 2))) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 1/2 (*.f64 re (fma.f64 im im 2)))) 2)
(sqrt.f64 (pow.f64 (*.f64 1/2 (*.f64 re (fma.f64 im im 2))) 2))
(log.f64 (pow.f64 (exp.f64 (fma.f64 im im 2)) (*.f64 1/2 re)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 1/2 (*.f64 re (fma.f64 im im 2))))))
(cbrt.f64 (pow.f64 (*.f64 1/2 (*.f64 re (fma.f64 im im 2))) 3))
(cbrt.f64 (*.f64 (pow.f64 (fma.f64 im im 2) 3) (pow.f64 (*.f64 1/2 re) 3)))
(cbrt.f64 (*.f64 (pow.f64 (*.f64 1/2 re) 3) (pow.f64 (fma.f64 im im 2) 3)))
(expm1.f64 (log1p.f64 (*.f64 1/2 (*.f64 re (fma.f64 im im 2)))))
(exp.f64 (log.f64 (*.f64 1/2 (*.f64 re (fma.f64 im im 2)))))
(exp.f64 (*.f64 (log.f64 (*.f64 1/2 (*.f64 re (fma.f64 im im 2)))) 1))
(log1p.f64 (expm1.f64 (*.f64 1/2 (*.f64 re (fma.f64 im im 2)))))
(fma.f64 1/2 (*.f64 re (pow.f64 im 2)) (*.f64 (*.f64 1/2 re) 2))
(fma.f64 1/2 (*.f64 re (pow.f64 im 2)) (*.f64 2 (*.f64 1/2 re)))
(fma.f64 re (*.f64 1/2 (pow.f64 im 2)) (*.f64 (*.f64 1/2 re) 2))
(fma.f64 re (*.f64 1/2 (pow.f64 im 2)) (*.f64 2 (*.f64 1/2 re)))
(fma.f64 (*.f64 1/2 re) (pow.f64 im 2) (*.f64 (*.f64 1/2 re) 2))
(fma.f64 (*.f64 1/2 re) (pow.f64 im 2) (*.f64 2 (*.f64 1/2 re)))
(fma.f64 (pow.f64 im 2) (*.f64 1/2 re) (*.f64 (*.f64 1/2 re) 2))
(fma.f64 (pow.f64 im 2) (*.f64 1/2 re) (*.f64 2 (*.f64 1/2 re)))
(fma.f64 (*.f64 re (pow.f64 im 2)) 1/2 (*.f64 (*.f64 1/2 re) 2))
(fma.f64 (*.f64 re (pow.f64 im 2)) 1/2 (*.f64 2 (*.f64 1/2 re)))
(fma.f64 (*.f64 re (*.f64 1/2 (pow.f64 im 2))) 1 (*.f64 (*.f64 1/2 re) 2))
(fma.f64 (*.f64 re (*.f64 1/2 (pow.f64 im 2))) 1 (*.f64 2 (*.f64 1/2 re)))
(fma.f64 1 (*.f64 re (*.f64 1/2 (pow.f64 im 2))) (*.f64 (*.f64 1/2 re) 2))
(fma.f64 1 (*.f64 re (*.f64 1/2 (pow.f64 im 2))) (*.f64 2 (*.f64 1/2 re)))
(fma.f64 (cbrt.f64 (*.f64 (pow.f64 re 2) (pow.f64 im 4))) (*.f64 (cbrt.f64 (*.f64 re (pow.f64 im 2))) 1/2) (*.f64 (*.f64 1/2 re) 2))
(fma.f64 (cbrt.f64 (*.f64 (pow.f64 re 2) (pow.f64 im 4))) (*.f64 (cbrt.f64 (*.f64 re (pow.f64 im 2))) 1/2) (*.f64 2 (*.f64 1/2 re)))
(fma.f64 (cbrt.f64 (*.f64 re (*.f64 1/2 (pow.f64 im 2)))) (pow.f64 (cbrt.f64 (*.f64 re (*.f64 1/2 (pow.f64 im 2)))) 2) (*.f64 (*.f64 1/2 re) 2))
(fma.f64 (cbrt.f64 (*.f64 re (*.f64 1/2 (pow.f64 im 2)))) (pow.f64 (cbrt.f64 (*.f64 re (*.f64 1/2 (pow.f64 im 2)))) 2) (*.f64 2 (*.f64 1/2 re)))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 re (*.f64 1/2 (pow.f64 im 2)))) 2) (cbrt.f64 (*.f64 re (*.f64 1/2 (pow.f64 im 2)))) (*.f64 (*.f64 1/2 re) 2))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 re (*.f64 1/2 (pow.f64 im 2)))) 2) (cbrt.f64 (*.f64 re (*.f64 1/2 (pow.f64 im 2)))) (*.f64 2 (*.f64 1/2 re)))
(fma.f64 (*.f64 im (sqrt.f64 re)) (*.f64 (*.f64 im (sqrt.f64 re)) 1/2) (*.f64 (*.f64 1/2 re) 2))
(fma.f64 (*.f64 im (sqrt.f64 re)) (*.f64 (*.f64 im (sqrt.f64 re)) 1/2) (*.f64 2 (*.f64 1/2 re)))
(fma.f64 (*.f64 (*.f64 im (sqrt.f64 re)) (sqrt.f64 1/2)) (*.f64 (*.f64 im (sqrt.f64 re)) (sqrt.f64 1/2)) (*.f64 (*.f64 1/2 re) 2))
(fma.f64 (*.f64 (*.f64 im (sqrt.f64 re)) (sqrt.f64 1/2)) (*.f64 (*.f64 im (sqrt.f64 re)) (sqrt.f64 1/2)) (*.f64 2 (*.f64 1/2 re)))
(fma.f64 (*.f64 1/2 (pow.f64 im 2)) re (*.f64 (*.f64 1/2 re) 2))
(fma.f64 (*.f64 1/2 (pow.f64 im 2)) re (*.f64 2 (*.f64 1/2 re)))
(fma.f64 (*.f64 1/2 (cbrt.f64 (*.f64 (pow.f64 re 2) (pow.f64 im 4)))) (cbrt.f64 (*.f64 re (pow.f64 im 2))) (*.f64 (*.f64 1/2 re) 2))
(fma.f64 (*.f64 1/2 (cbrt.f64 (*.f64 (pow.f64 re 2) (pow.f64 im 4)))) (cbrt.f64 (*.f64 re (pow.f64 im 2))) (*.f64 2 (*.f64 1/2 re)))
(fma.f64 (*.f64 1/2 (*.f64 im (sqrt.f64 re))) (*.f64 im (sqrt.f64 re)) (*.f64 (*.f64 1/2 re) 2))
(fma.f64 (*.f64 1/2 (*.f64 im (sqrt.f64 re))) (*.f64 im (sqrt.f64 re)) (*.f64 2 (*.f64 1/2 re)))
(fma.f64 (*.f64 (*.f64 1/2 (pow.f64 im 2)) 1) re (*.f64 (*.f64 1/2 re) 2))
(fma.f64 (*.f64 (*.f64 1/2 (pow.f64 im 2)) 1) re (*.f64 2 (*.f64 1/2 re)))
(fma.f64 (*.f64 (*.f64 1/2 (pow.f64 im 2)) (pow.f64 (cbrt.f64 re) 2)) (cbrt.f64 re) (*.f64 (*.f64 1/2 re) 2))
(fma.f64 (*.f64 (*.f64 1/2 (pow.f64 im 2)) (pow.f64 (cbrt.f64 re) 2)) (cbrt.f64 re) (*.f64 2 (*.f64 1/2 re)))
(fma.f64 (*.f64 (*.f64 1/2 (pow.f64 im 2)) (sqrt.f64 re)) (sqrt.f64 re) (*.f64 (*.f64 1/2 re) 2))
(fma.f64 (*.f64 (*.f64 1/2 (pow.f64 im 2)) (sqrt.f64 re)) (sqrt.f64 re) (*.f64 2 (*.f64 1/2 re)))
(+.f64 0 (*.f64 re (pow.f64 im 2)))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 re) (pow.f64 im 2))) (cbrt.f64 (pow.f64 (exp.f64 re) (pow.f64 im 2))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 re) (pow.f64 im 2)))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 re) (pow.f64 im 2)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 re) (pow.f64 im 2)))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 re (pow.f64 im 2)))) 1)
(pow.f64 (*.f64 re (pow.f64 im 2)) 1)
(pow.f64 (cbrt.f64 (*.f64 re (pow.f64 im 2))) 3)
(pow.f64 (pow.f64 (*.f64 re (pow.f64 im 2)) 3) 1/3)
(pow.f64 (*.f64 im (sqrt.f64 re)) 2)
(sqrt.f64 (*.f64 (pow.f64 re 2) (pow.f64 im 4)))
(log.f64 (pow.f64 (exp.f64 re) (pow.f64 im 2)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 re (pow.f64 im 2)))))
(cbrt.f64 (pow.f64 (*.f64 re (pow.f64 im 2)) 3))
(cbrt.f64 (*.f64 (pow.f64 re 3) (pow.f64 (pow.f64 im 2) 3)))
(cbrt.f64 (*.f64 (pow.f64 (pow.f64 im 2) 3) (pow.f64 re 3)))
(expm1.f64 (log1p.f64 (*.f64 re (pow.f64 im 2))))
(exp.f64 (fma.f64 2 (log.f64 im) (log.f64 re)))
(exp.f64 (*.f64 (fma.f64 2 (log.f64 im) (log.f64 re)) 1))
(log1p.f64 (expm1.f64 (*.f64 re (pow.f64 im 2))))
(+.f64 0 (*.f64 re (*.f64 1/2 (pow.f64 im 2))))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 1/2) (*.f64 re (pow.f64 im 2)))) (cbrt.f64 (pow.f64 (exp.f64 1/2) (*.f64 re (pow.f64 im 2)))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 1/2) (*.f64 re (pow.f64 im 2))))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 1/2) (*.f64 re (pow.f64 im 2))))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 1/2) (*.f64 re (pow.f64 im 2))))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 re (*.f64 1/2 (pow.f64 im 2))))) 1)
(pow.f64 (*.f64 re (*.f64 1/2 (pow.f64 im 2))) 1)
(pow.f64 (cbrt.f64 (*.f64 re (*.f64 1/2 (pow.f64 im 2)))) 3)
(pow.f64 (pow.f64 (*.f64 re (*.f64 1/2 (pow.f64 im 2))) 3) 1/3)
(pow.f64 (*.f64 (*.f64 im (sqrt.f64 re)) (sqrt.f64 1/2)) 2)
(sqrt.f64 (*.f64 1/4 (*.f64 (pow.f64 re 2) (pow.f64 im 4))))
(log.f64 (pow.f64 (exp.f64 1/2) (*.f64 re (pow.f64 im 2))))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 re (*.f64 1/2 (pow.f64 im 2))))))
(cbrt.f64 (pow.f64 (*.f64 re (*.f64 1/2 (pow.f64 im 2))) 3))
(expm1.f64 (log1p.f64 (*.f64 re (*.f64 1/2 (pow.f64 im 2)))))
(exp.f64 (log.f64 (*.f64 re (*.f64 1/2 (pow.f64 im 2)))))
(exp.f64 (*.f64 (log.f64 (*.f64 re (*.f64 1/2 (pow.f64 im 2)))) 1))
(log1p.f64 (expm1.f64 (*.f64 re (*.f64 1/2 (pow.f64 im 2)))))

simplify144.0ms (1.8%)

Algorithm
egg-herbie
Rules
1990×log-prod
664×associate-+r+
638×cube-prod
598×associate-+l+
462×associate-*r*
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
03285956
17665713
228925456
361835456
Stop Event
node limit
Counts
185 → 184
Calls
Call 1
Inputs
(*.f64 1/2 (*.f64 re (+.f64 2 (pow.f64 im 2))))
(+.f64 (*.f64 -1/12 (*.f64 (pow.f64 re 3) (+.f64 2 (pow.f64 im 2)))) (*.f64 1/2 (*.f64 re (+.f64 2 (pow.f64 im 2)))))
(+.f64 (*.f64 -1/12 (*.f64 (pow.f64 re 3) (+.f64 2 (pow.f64 im 2)))) (+.f64 (*.f64 1/240 (*.f64 (pow.f64 re 5) (+.f64 2 (pow.f64 im 2)))) (*.f64 1/2 (*.f64 re (+.f64 2 (pow.f64 im 2))))))
(+.f64 (*.f64 -1/12 (*.f64 (pow.f64 re 3) (+.f64 2 (pow.f64 im 2)))) (+.f64 (*.f64 -1/10080 (*.f64 (pow.f64 re 7) (+.f64 2 (pow.f64 im 2)))) (+.f64 (*.f64 1/240 (*.f64 (pow.f64 re 5) (+.f64 2 (pow.f64 im 2)))) (*.f64 1/2 (*.f64 re (+.f64 2 (pow.f64 im 2)))))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))))
(sin.f64 re)
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re)))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re)))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))))
(*.f64 1/2 (*.f64 re (+.f64 2 (pow.f64 im 2))))
(*.f64 1/2 (*.f64 re (+.f64 2 (pow.f64 im 2))))
(*.f64 1/2 (*.f64 re (+.f64 2 (pow.f64 im 2))))
(*.f64 1/2 (*.f64 re (+.f64 2 (pow.f64 im 2))))
(*.f64 1/2 (*.f64 re (+.f64 2 (pow.f64 im 2))))
(*.f64 1/2 (*.f64 re (+.f64 2 (pow.f64 im 2))))
(*.f64 1/2 (*.f64 re (+.f64 2 (pow.f64 im 2))))
(*.f64 1/2 (*.f64 re (+.f64 2 (pow.f64 im 2))))
(*.f64 1/2 (*.f64 re (+.f64 2 (pow.f64 im 2))))
(*.f64 1/2 (*.f64 re (+.f64 2 (pow.f64 im 2))))
(*.f64 1/2 (*.f64 re (+.f64 2 (pow.f64 im 2))))
(*.f64 1/2 (*.f64 re (+.f64 2 (pow.f64 im 2))))
re
(+.f64 re (*.f64 1/2 (*.f64 (pow.f64 im 2) re)))
(+.f64 re (*.f64 1/2 (*.f64 (pow.f64 im 2) re)))
(+.f64 re (*.f64 1/2 (*.f64 (pow.f64 im 2) re)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(+.f64 re (*.f64 1/2 (*.f64 (pow.f64 im 2) re)))
(+.f64 re (*.f64 1/2 (*.f64 (pow.f64 im 2) re)))
(+.f64 re (*.f64 1/2 (*.f64 (pow.f64 im 2) re)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(+.f64 re (*.f64 1/2 (*.f64 (pow.f64 im 2) re)))
(+.f64 re (*.f64 1/2 (*.f64 (pow.f64 im 2) re)))
(+.f64 re (*.f64 1/2 (*.f64 (pow.f64 im 2) re)))
(+.f64 0 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2))))
(+.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (pow.f64 im 2)) (*.f64 (*.f64 1/2 (sin.f64 re)) 2))
(+.f64 (*.f64 (pow.f64 im 2) (*.f64 1/2 (sin.f64 re))) (*.f64 2 (*.f64 1/2 (sin.f64 re))))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 (fma.f64 im im 2)) (*.f64 1/2 (sin.f64 re)))) (cbrt.f64 (pow.f64 (exp.f64 (fma.f64 im im 2)) (*.f64 1/2 (sin.f64 re)))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (fma.f64 im im 2)) (*.f64 1/2 (sin.f64 re))))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (fma.f64 im im 2)) (*.f64 1/2 (sin.f64 re))))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (fma.f64 im im 2)) (*.f64 1/2 (sin.f64 re))))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2))))) 1)
(pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2))) 1)
(pow.f64 (cbrt.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2)))) 3)
(pow.f64 (pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2))) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2)))) 2)
(sqrt.f64 (pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2))) 2))
(log.f64 (pow.f64 (exp.f64 (fma.f64 im im 2)) (*.f64 1/2 (sin.f64 re))))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2))))))
(cbrt.f64 (pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2))) 3))
(cbrt.f64 (*.f64 (pow.f64 (*.f64 1/2 (sin.f64 re)) 3) (pow.f64 (fma.f64 im im 2) 3)))
(cbrt.f64 (*.f64 (pow.f64 (fma.f64 im im 2) 3) (pow.f64 (*.f64 1/2 (sin.f64 re)) 3)))
(expm1.f64 (log1p.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2)))))
(exp.f64 (log.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2)))))
(exp.f64 (*.f64 (log.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2)))) 1))
(log1p.f64 (expm1.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2)))))
(fma.f64 (*.f64 1/2 (sin.f64 re)) (pow.f64 im 2) (*.f64 (*.f64 1/2 (sin.f64 re)) 2))
(fma.f64 (pow.f64 im 2) (*.f64 1/2 (sin.f64 re)) (*.f64 2 (*.f64 1/2 (sin.f64 re))))
(+.f64 0 (*.f64 1/4 (pow.f64 re -2)))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 1/4) (pow.f64 re -2))) (cbrt.f64 (pow.f64 (exp.f64 1/4) (pow.f64 re -2))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 1/4) (pow.f64 re -2)))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 1/4) (pow.f64 re -2)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 1/4) (pow.f64 re -2)))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 1/4 (pow.f64 re -2)))) 1)
(*.f64 1/4 (pow.f64 re -2))
(*.f64 (*.f64 1/4 (pow.f64 re -2)) 1)
(*.f64 1 (*.f64 1/4 (pow.f64 re -2)))
(*.f64 (cbrt.f64 (*.f64 1/4 (pow.f64 re -2))) (cbrt.f64 (/.f64 1/16 (pow.f64 re 4))))
(*.f64 (cbrt.f64 (/.f64 1/16 (pow.f64 re 4))) (cbrt.f64 (*.f64 1/4 (pow.f64 re -2))))
(*.f64 (/.f64 1/2 re) (/.f64 1/2 re))
(*.f64 -1/4 (/.f64 1 (neg.f64 (pow.f64 re 2))))
(*.f64 (pow.f64 re -2) 1/4)
(pow.f64 (*.f64 1/4 (pow.f64 re -2)) 1)
(pow.f64 (cbrt.f64 (*.f64 1/4 (pow.f64 re -2))) 3)
(pow.f64 (pow.f64 (*.f64 1/4 (pow.f64 re -2)) 3) 1/3)
(pow.f64 (/.f64 1/2 re) 2)
(pow.f64 (*.f64 (pow.f64 re 2) 4) -1)
(sqrt.f64 (/.f64 1/16 (pow.f64 re 4)))
(log.f64 (pow.f64 (exp.f64 1/4) (pow.f64 re -2)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 1/4 (pow.f64 re -2)))))
(cbrt.f64 (pow.f64 (*.f64 1/4 (pow.f64 re -2)) 3))
(expm1.f64 (log1p.f64 (*.f64 1/4 (pow.f64 re -2))))
(exp.f64 (log.f64 (*.f64 1/4 (pow.f64 re -2))))
(exp.f64 (*.f64 (log.f64 (*.f64 1/4 (pow.f64 re -2))) 1))
(log1p.f64 (expm1.f64 (*.f64 1/4 (pow.f64 re -2))))
(+.f64 (*.f64 re (*.f64 1/2 (pow.f64 im 2))) (*.f64 (*.f64 1/2 re) 2))
(+.f64 (*.f64 re (*.f64 1/2 (pow.f64 im 2))) (*.f64 2 (*.f64 1/2 re)))
(+.f64 0 (*.f64 1/2 (*.f64 re (fma.f64 im im 2))))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 (fma.f64 im im 2)) (*.f64 1/2 re))) (cbrt.f64 (pow.f64 (exp.f64 (fma.f64 im im 2)) (*.f64 1/2 re))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (fma.f64 im im 2)) (*.f64 1/2 re)))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (fma.f64 im im 2)) (*.f64 1/2 re)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (fma.f64 im im 2)) (*.f64 1/2 re)))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 1/2 (*.f64 re (fma.f64 im im 2))))) 1)
(pow.f64 (*.f64 1/2 (*.f64 re (fma.f64 im im 2))) 1)
(pow.f64 (cbrt.f64 (*.f64 1/2 (*.f64 re (fma.f64 im im 2)))) 3)
(pow.f64 (pow.f64 (*.f64 1/2 (*.f64 re (fma.f64 im im 2))) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 1/2 (*.f64 re (fma.f64 im im 2)))) 2)
(sqrt.f64 (pow.f64 (*.f64 1/2 (*.f64 re (fma.f64 im im 2))) 2))
(log.f64 (pow.f64 (exp.f64 (fma.f64 im im 2)) (*.f64 1/2 re)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 1/2 (*.f64 re (fma.f64 im im 2))))))
(cbrt.f64 (pow.f64 (*.f64 1/2 (*.f64 re (fma.f64 im im 2))) 3))
(cbrt.f64 (*.f64 (pow.f64 (fma.f64 im im 2) 3) (pow.f64 (*.f64 1/2 re) 3)))
(cbrt.f64 (*.f64 (pow.f64 (*.f64 1/2 re) 3) (pow.f64 (fma.f64 im im 2) 3)))
(expm1.f64 (log1p.f64 (*.f64 1/2 (*.f64 re (fma.f64 im im 2)))))
(exp.f64 (log.f64 (*.f64 1/2 (*.f64 re (fma.f64 im im 2)))))
(exp.f64 (*.f64 (log.f64 (*.f64 1/2 (*.f64 re (fma.f64 im im 2)))) 1))
(log1p.f64 (expm1.f64 (*.f64 1/2 (*.f64 re (fma.f64 im im 2)))))
(fma.f64 1/2 (*.f64 re (pow.f64 im 2)) (*.f64 (*.f64 1/2 re) 2))
(fma.f64 1/2 (*.f64 re (pow.f64 im 2)) (*.f64 2 (*.f64 1/2 re)))
(fma.f64 re (*.f64 1/2 (pow.f64 im 2)) (*.f64 (*.f64 1/2 re) 2))
(fma.f64 re (*.f64 1/2 (pow.f64 im 2)) (*.f64 2 (*.f64 1/2 re)))
(fma.f64 (*.f64 1/2 re) (pow.f64 im 2) (*.f64 (*.f64 1/2 re) 2))
(fma.f64 (*.f64 1/2 re) (pow.f64 im 2) (*.f64 2 (*.f64 1/2 re)))
(fma.f64 (pow.f64 im 2) (*.f64 1/2 re) (*.f64 (*.f64 1/2 re) 2))
(fma.f64 (pow.f64 im 2) (*.f64 1/2 re) (*.f64 2 (*.f64 1/2 re)))
(fma.f64 (*.f64 re (pow.f64 im 2)) 1/2 (*.f64 (*.f64 1/2 re) 2))
(fma.f64 (*.f64 re (pow.f64 im 2)) 1/2 (*.f64 2 (*.f64 1/2 re)))
(fma.f64 (*.f64 re (*.f64 1/2 (pow.f64 im 2))) 1 (*.f64 (*.f64 1/2 re) 2))
(fma.f64 (*.f64 re (*.f64 1/2 (pow.f64 im 2))) 1 (*.f64 2 (*.f64 1/2 re)))
(fma.f64 1 (*.f64 re (*.f64 1/2 (pow.f64 im 2))) (*.f64 (*.f64 1/2 re) 2))
(fma.f64 1 (*.f64 re (*.f64 1/2 (pow.f64 im 2))) (*.f64 2 (*.f64 1/2 re)))
(fma.f64 (cbrt.f64 (*.f64 (pow.f64 re 2) (pow.f64 im 4))) (*.f64 (cbrt.f64 (*.f64 re (pow.f64 im 2))) 1/2) (*.f64 (*.f64 1/2 re) 2))
(fma.f64 (cbrt.f64 (*.f64 (pow.f64 re 2) (pow.f64 im 4))) (*.f64 (cbrt.f64 (*.f64 re (pow.f64 im 2))) 1/2) (*.f64 2 (*.f64 1/2 re)))
(fma.f64 (cbrt.f64 (*.f64 re (*.f64 1/2 (pow.f64 im 2)))) (pow.f64 (cbrt.f64 (*.f64 re (*.f64 1/2 (pow.f64 im 2)))) 2) (*.f64 (*.f64 1/2 re) 2))
(fma.f64 (cbrt.f64 (*.f64 re (*.f64 1/2 (pow.f64 im 2)))) (pow.f64 (cbrt.f64 (*.f64 re (*.f64 1/2 (pow.f64 im 2)))) 2) (*.f64 2 (*.f64 1/2 re)))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 re (*.f64 1/2 (pow.f64 im 2)))) 2) (cbrt.f64 (*.f64 re (*.f64 1/2 (pow.f64 im 2)))) (*.f64 (*.f64 1/2 re) 2))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 re (*.f64 1/2 (pow.f64 im 2)))) 2) (cbrt.f64 (*.f64 re (*.f64 1/2 (pow.f64 im 2)))) (*.f64 2 (*.f64 1/2 re)))
(fma.f64 (*.f64 im (sqrt.f64 re)) (*.f64 (*.f64 im (sqrt.f64 re)) 1/2) (*.f64 (*.f64 1/2 re) 2))
(fma.f64 (*.f64 im (sqrt.f64 re)) (*.f64 (*.f64 im (sqrt.f64 re)) 1/2) (*.f64 2 (*.f64 1/2 re)))
(fma.f64 (*.f64 (*.f64 im (sqrt.f64 re)) (sqrt.f64 1/2)) (*.f64 (*.f64 im (sqrt.f64 re)) (sqrt.f64 1/2)) (*.f64 (*.f64 1/2 re) 2))
(fma.f64 (*.f64 (*.f64 im (sqrt.f64 re)) (sqrt.f64 1/2)) (*.f64 (*.f64 im (sqrt.f64 re)) (sqrt.f64 1/2)) (*.f64 2 (*.f64 1/2 re)))
(fma.f64 (*.f64 1/2 (pow.f64 im 2)) re (*.f64 (*.f64 1/2 re) 2))
(fma.f64 (*.f64 1/2 (pow.f64 im 2)) re (*.f64 2 (*.f64 1/2 re)))
(fma.f64 (*.f64 1/2 (cbrt.f64 (*.f64 (pow.f64 re 2) (pow.f64 im 4)))) (cbrt.f64 (*.f64 re (pow.f64 im 2))) (*.f64 (*.f64 1/2 re) 2))
(fma.f64 (*.f64 1/2 (cbrt.f64 (*.f64 (pow.f64 re 2) (pow.f64 im 4)))) (cbrt.f64 (*.f64 re (pow.f64 im 2))) (*.f64 2 (*.f64 1/2 re)))
(fma.f64 (*.f64 1/2 (*.f64 im (sqrt.f64 re))) (*.f64 im (sqrt.f64 re)) (*.f64 (*.f64 1/2 re) 2))
(fma.f64 (*.f64 1/2 (*.f64 im (sqrt.f64 re))) (*.f64 im (sqrt.f64 re)) (*.f64 2 (*.f64 1/2 re)))
(fma.f64 (*.f64 (*.f64 1/2 (pow.f64 im 2)) 1) re (*.f64 (*.f64 1/2 re) 2))
(fma.f64 (*.f64 (*.f64 1/2 (pow.f64 im 2)) 1) re (*.f64 2 (*.f64 1/2 re)))
(fma.f64 (*.f64 (*.f64 1/2 (pow.f64 im 2)) (pow.f64 (cbrt.f64 re) 2)) (cbrt.f64 re) (*.f64 (*.f64 1/2 re) 2))
(fma.f64 (*.f64 (*.f64 1/2 (pow.f64 im 2)) (pow.f64 (cbrt.f64 re) 2)) (cbrt.f64 re) (*.f64 2 (*.f64 1/2 re)))
(fma.f64 (*.f64 (*.f64 1/2 (pow.f64 im 2)) (sqrt.f64 re)) (sqrt.f64 re) (*.f64 (*.f64 1/2 re) 2))
(fma.f64 (*.f64 (*.f64 1/2 (pow.f64 im 2)) (sqrt.f64 re)) (sqrt.f64 re) (*.f64 2 (*.f64 1/2 re)))
(+.f64 0 (*.f64 re (pow.f64 im 2)))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 re) (pow.f64 im 2))) (cbrt.f64 (pow.f64 (exp.f64 re) (pow.f64 im 2))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 re) (pow.f64 im 2)))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 re) (pow.f64 im 2)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 re) (pow.f64 im 2)))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 re (pow.f64 im 2)))) 1)
(pow.f64 (*.f64 re (pow.f64 im 2)) 1)
(pow.f64 (cbrt.f64 (*.f64 re (pow.f64 im 2))) 3)
(pow.f64 (pow.f64 (*.f64 re (pow.f64 im 2)) 3) 1/3)
(pow.f64 (*.f64 im (sqrt.f64 re)) 2)
(sqrt.f64 (*.f64 (pow.f64 re 2) (pow.f64 im 4)))
(log.f64 (pow.f64 (exp.f64 re) (pow.f64 im 2)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 re (pow.f64 im 2)))))
(cbrt.f64 (pow.f64 (*.f64 re (pow.f64 im 2)) 3))
(cbrt.f64 (*.f64 (pow.f64 re 3) (pow.f64 (pow.f64 im 2) 3)))
(cbrt.f64 (*.f64 (pow.f64 (pow.f64 im 2) 3) (pow.f64 re 3)))
(expm1.f64 (log1p.f64 (*.f64 re (pow.f64 im 2))))
(exp.f64 (fma.f64 2 (log.f64 im) (log.f64 re)))
(exp.f64 (*.f64 (fma.f64 2 (log.f64 im) (log.f64 re)) 1))
(log1p.f64 (expm1.f64 (*.f64 re (pow.f64 im 2))))
(+.f64 0 (*.f64 re (*.f64 1/2 (pow.f64 im 2))))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 1/2) (*.f64 re (pow.f64 im 2)))) (cbrt.f64 (pow.f64 (exp.f64 1/2) (*.f64 re (pow.f64 im 2)))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 1/2) (*.f64 re (pow.f64 im 2))))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 1/2) (*.f64 re (pow.f64 im 2))))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 1/2) (*.f64 re (pow.f64 im 2))))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 re (*.f64 1/2 (pow.f64 im 2))))) 1)
(pow.f64 (*.f64 re (*.f64 1/2 (pow.f64 im 2))) 1)
(pow.f64 (cbrt.f64 (*.f64 re (*.f64 1/2 (pow.f64 im 2)))) 3)
(pow.f64 (pow.f64 (*.f64 re (*.f64 1/2 (pow.f64 im 2))) 3) 1/3)
(pow.f64 (*.f64 (*.f64 im (sqrt.f64 re)) (sqrt.f64 1/2)) 2)
(sqrt.f64 (*.f64 1/4 (*.f64 (pow.f64 re 2) (pow.f64 im 4))))
(log.f64 (pow.f64 (exp.f64 1/2) (*.f64 re (pow.f64 im 2))))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 re (*.f64 1/2 (pow.f64 im 2))))))
(cbrt.f64 (pow.f64 (*.f64 re (*.f64 1/2 (pow.f64 im 2))) 3))
(expm1.f64 (log1p.f64 (*.f64 re (*.f64 1/2 (pow.f64 im 2)))))
(exp.f64 (log.f64 (*.f64 re (*.f64 1/2 (pow.f64 im 2)))))
(exp.f64 (*.f64 (log.f64 (*.f64 re (*.f64 1/2 (pow.f64 im 2)))) 1))
(log1p.f64 (expm1.f64 (*.f64 re (*.f64 1/2 (pow.f64 im 2)))))
Outputs
(*.f64 1/2 (*.f64 re (+.f64 2 (pow.f64 im 2))))
(*.f64 1/2 (*.f64 re (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (fma.f64 im im 2) re))
(+.f64 (*.f64 -1/12 (*.f64 (pow.f64 re 3) (+.f64 2 (pow.f64 im 2)))) (*.f64 1/2 (*.f64 re (+.f64 2 (pow.f64 im 2)))))
(fma.f64 -1/12 (*.f64 (fma.f64 im im 2) (pow.f64 re 3)) (*.f64 1/2 (*.f64 re (fma.f64 im im 2))))
(*.f64 (fma.f64 im im 2) (+.f64 (*.f64 -1/12 (pow.f64 re 3)) (*.f64 1/2 re)))
(*.f64 (fma.f64 im im 2) (+.f64 (*.f64 1/2 re) (*.f64 -1/12 (pow.f64 re 3))))
(+.f64 (*.f64 -1/12 (*.f64 (pow.f64 re 3) (+.f64 2 (pow.f64 im 2)))) (+.f64 (*.f64 1/240 (*.f64 (pow.f64 re 5) (+.f64 2 (pow.f64 im 2)))) (*.f64 1/2 (*.f64 re (+.f64 2 (pow.f64 im 2))))))
(fma.f64 -1/12 (*.f64 (fma.f64 im im 2) (pow.f64 re 3)) (fma.f64 1/240 (*.f64 (fma.f64 im im 2) (pow.f64 re 5)) (*.f64 1/2 (*.f64 re (fma.f64 im im 2)))))
(fma.f64 -1/12 (*.f64 (fma.f64 im im 2) (pow.f64 re 3)) (*.f64 (fma.f64 im im 2) (+.f64 (*.f64 1/240 (pow.f64 re 5)) (*.f64 1/2 re))))
(*.f64 (fma.f64 im im 2) (+.f64 (*.f64 -1/12 (pow.f64 re 3)) (+.f64 (*.f64 1/2 re) (*.f64 1/240 (pow.f64 re 5)))))
(+.f64 (*.f64 -1/12 (*.f64 (pow.f64 re 3) (+.f64 2 (pow.f64 im 2)))) (+.f64 (*.f64 -1/10080 (*.f64 (pow.f64 re 7) (+.f64 2 (pow.f64 im 2)))) (+.f64 (*.f64 1/240 (*.f64 (pow.f64 re 5) (+.f64 2 (pow.f64 im 2)))) (*.f64 1/2 (*.f64 re (+.f64 2 (pow.f64 im 2)))))))
(fma.f64 -1/12 (*.f64 (fma.f64 im im 2) (pow.f64 re 3)) (fma.f64 -1/10080 (*.f64 (fma.f64 im im 2) (pow.f64 re 7)) (fma.f64 1/240 (*.f64 (fma.f64 im im 2) (pow.f64 re 5)) (*.f64 1/2 (*.f64 re (fma.f64 im im 2))))))
(+.f64 (*.f64 (fma.f64 im im 2) (+.f64 (*.f64 1/240 (pow.f64 re 5)) (*.f64 1/2 re))) (*.f64 (fma.f64 im im 2) (+.f64 (*.f64 -1/12 (pow.f64 re 3)) (*.f64 -1/10080 (pow.f64 re 7)))))
(*.f64 (fma.f64 im im 2) (+.f64 (+.f64 (*.f64 1/2 re) (*.f64 1/240 (pow.f64 re 5))) (+.f64 (*.f64 -1/12 (pow.f64 re 3)) (*.f64 -1/10080 (pow.f64 re 7)))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))))
(*.f64 1/2 (*.f64 (fma.f64 im im 2) (sin.f64 re)))
(*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))))
(*.f64 1/2 (*.f64 (fma.f64 im im 2) (sin.f64 re)))
(*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))))
(*.f64 1/2 (*.f64 (fma.f64 im im 2) (sin.f64 re)))
(*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))))
(*.f64 1/2 (*.f64 (fma.f64 im im 2) (sin.f64 re)))
(*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))))
(*.f64 1/2 (*.f64 (fma.f64 im im 2) (sin.f64 re)))
(*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))))
(*.f64 1/2 (*.f64 (fma.f64 im im 2) (sin.f64 re)))
(*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))))
(*.f64 1/2 (*.f64 (fma.f64 im im 2) (sin.f64 re)))
(*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))))
(*.f64 1/2 (*.f64 (fma.f64 im im 2) (sin.f64 re)))
(*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2)))
(sin.f64 re)
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))))
(*.f64 1/2 (*.f64 (fma.f64 im im 2) (sin.f64 re)))
(*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2)))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))))
(*.f64 1/2 (*.f64 (fma.f64 im im 2) (sin.f64 re)))
(*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2)))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))))
(*.f64 1/2 (*.f64 (fma.f64 im im 2) (sin.f64 re)))
(*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re)))
(*.f64 (pow.f64 im 2) (*.f64 1/2 (sin.f64 re)))
(*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))))
(*.f64 1/2 (*.f64 (fma.f64 im im 2) (sin.f64 re)))
(*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2)))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))))
(*.f64 1/2 (*.f64 (fma.f64 im im 2) (sin.f64 re)))
(*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2)))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))))
(*.f64 1/2 (*.f64 (fma.f64 im im 2) (sin.f64 re)))
(*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re)))
(*.f64 (pow.f64 im 2) (*.f64 1/2 (sin.f64 re)))
(*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))))
(*.f64 1/2 (*.f64 (fma.f64 im im 2) (sin.f64 re)))
(*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2)))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))))
(*.f64 1/2 (*.f64 (fma.f64 im im 2) (sin.f64 re)))
(*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2)))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))))
(*.f64 1/2 (*.f64 (fma.f64 im im 2) (sin.f64 re)))
(*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 re (+.f64 2 (pow.f64 im 2))))
(*.f64 1/2 (*.f64 re (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (fma.f64 im im 2) re))
(*.f64 1/2 (*.f64 re (+.f64 2 (pow.f64 im 2))))
(*.f64 1/2 (*.f64 re (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (fma.f64 im im 2) re))
(*.f64 1/2 (*.f64 re (+.f64 2 (pow.f64 im 2))))
(*.f64 1/2 (*.f64 re (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (fma.f64 im im 2) re))
(*.f64 1/2 (*.f64 re (+.f64 2 (pow.f64 im 2))))
(*.f64 1/2 (*.f64 re (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (fma.f64 im im 2) re))
(*.f64 1/2 (*.f64 re (+.f64 2 (pow.f64 im 2))))
(*.f64 1/2 (*.f64 re (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (fma.f64 im im 2) re))
(*.f64 1/2 (*.f64 re (+.f64 2 (pow.f64 im 2))))
(*.f64 1/2 (*.f64 re (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (fma.f64 im im 2) re))
(*.f64 1/2 (*.f64 re (+.f64 2 (pow.f64 im 2))))
(*.f64 1/2 (*.f64 re (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (fma.f64 im im 2) re))
(*.f64 1/2 (*.f64 re (+.f64 2 (pow.f64 im 2))))
(*.f64 1/2 (*.f64 re (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (fma.f64 im im 2) re))
(*.f64 1/2 (*.f64 re (+.f64 2 (pow.f64 im 2))))
(*.f64 1/2 (*.f64 re (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (fma.f64 im im 2) re))
(*.f64 1/2 (*.f64 re (+.f64 2 (pow.f64 im 2))))
(*.f64 1/2 (*.f64 re (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (fma.f64 im im 2) re))
(*.f64 1/2 (*.f64 re (+.f64 2 (pow.f64 im 2))))
(*.f64 1/2 (*.f64 re (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (fma.f64 im im 2) re))
(*.f64 1/2 (*.f64 re (+.f64 2 (pow.f64 im 2))))
(*.f64 1/2 (*.f64 re (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (fma.f64 im im 2) re))
re
(+.f64 re (*.f64 1/2 (*.f64 (pow.f64 im 2) re)))
(*.f64 1/2 (*.f64 re (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (fma.f64 im im 2) re))
(+.f64 re (*.f64 1/2 (*.f64 (pow.f64 im 2) re)))
(*.f64 1/2 (*.f64 re (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (fma.f64 im im 2) re))
(+.f64 re (*.f64 1/2 (*.f64 (pow.f64 im 2) re)))
(*.f64 1/2 (*.f64 re (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (fma.f64 im im 2) re))
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 (pow.f64 im 2) (*.f64 1/2 re))
(+.f64 re (*.f64 1/2 (*.f64 (pow.f64 im 2) re)))
(*.f64 1/2 (*.f64 re (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (fma.f64 im im 2) re))
(+.f64 re (*.f64 1/2 (*.f64 (pow.f64 im 2) re)))
(*.f64 1/2 (*.f64 re (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (fma.f64 im im 2) re))
(+.f64 re (*.f64 1/2 (*.f64 (pow.f64 im 2) re)))
(*.f64 1/2 (*.f64 re (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (fma.f64 im im 2) re))
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 (pow.f64 im 2) (*.f64 1/2 re))
(+.f64 re (*.f64 1/2 (*.f64 (pow.f64 im 2) re)))
(*.f64 1/2 (*.f64 re (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (fma.f64 im im 2) re))
(+.f64 re (*.f64 1/2 (*.f64 (pow.f64 im 2) re)))
(*.f64 1/2 (*.f64 re (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (fma.f64 im im 2) re))
(+.f64 re (*.f64 1/2 (*.f64 (pow.f64 im 2) re)))
(*.f64 1/2 (*.f64 re (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (fma.f64 im im 2) re))
(+.f64 0 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2))))
(*.f64 1/2 (*.f64 (fma.f64 im im 2) (sin.f64 re)))
(*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2)))
(+.f64 (*.f64 (*.f64 1/2 (sin.f64 re)) (pow.f64 im 2)) (*.f64 (*.f64 1/2 (sin.f64 re)) 2))
(*.f64 1/2 (*.f64 (fma.f64 im im 2) (sin.f64 re)))
(*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2)))
(+.f64 (*.f64 (pow.f64 im 2) (*.f64 1/2 (sin.f64 re))) (*.f64 2 (*.f64 1/2 (sin.f64 re))))
(*.f64 1/2 (*.f64 (fma.f64 im im 2) (sin.f64 re)))
(*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2)))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 (fma.f64 im im 2)) (*.f64 1/2 (sin.f64 re)))) (cbrt.f64 (pow.f64 (exp.f64 (fma.f64 im im 2)) (*.f64 1/2 (sin.f64 re)))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (fma.f64 im im 2)) (*.f64 1/2 (sin.f64 re))))))
(+.f64 (*.f64 2 (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (fma.f64 im im 2)) (*.f64 1/2 (sin.f64 re)))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (fma.f64 im im 2)) (*.f64 1/2 (sin.f64 re))))))
(*.f64 3 (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (fma.f64 im im 2)) (*.f64 1/2 (sin.f64 re))))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (fma.f64 im im 2)) (*.f64 1/2 (sin.f64 re))))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (fma.f64 im im 2)) (*.f64 1/2 (sin.f64 re))))))
(*.f64 1/2 (*.f64 (fma.f64 im im 2) (sin.f64 re)))
(*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2)))
(-.f64 (exp.f64 (log1p.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2))))) 1)
(*.f64 1/2 (*.f64 (fma.f64 im im 2) (sin.f64 re)))
(*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2)))
(pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2))) 1)
(*.f64 1/2 (*.f64 (fma.f64 im im 2) (sin.f64 re)))
(*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2)))
(pow.f64 (cbrt.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2)))) 3)
(*.f64 1/2 (*.f64 (fma.f64 im im 2) (sin.f64 re)))
(*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2)))
(pow.f64 (pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2))) 3) 1/3)
(*.f64 1/2 (*.f64 (fma.f64 im im 2) (sin.f64 re)))
(*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2)))
(pow.f64 (sqrt.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2)))) 2)
(*.f64 1/2 (*.f64 (fma.f64 im im 2) (sin.f64 re)))
(*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2)))
(sqrt.f64 (pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2))) 2))
(*.f64 1/2 (*.f64 (fma.f64 im im 2) (sin.f64 re)))
(*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2)))
(log.f64 (pow.f64 (exp.f64 (fma.f64 im im 2)) (*.f64 1/2 (sin.f64 re))))
(*.f64 1/2 (*.f64 (fma.f64 im im 2) (sin.f64 re)))
(*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2))))))
(*.f64 1/2 (*.f64 (fma.f64 im im 2) (sin.f64 re)))
(*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2)))
(cbrt.f64 (pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2))) 3))
(*.f64 1/2 (*.f64 (fma.f64 im im 2) (sin.f64 re)))
(*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2)))
(cbrt.f64 (*.f64 (pow.f64 (*.f64 1/2 (sin.f64 re)) 3) (pow.f64 (fma.f64 im im 2) 3)))
(*.f64 1/2 (*.f64 (fma.f64 im im 2) (sin.f64 re)))
(*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2)))
(cbrt.f64 (*.f64 (pow.f64 (fma.f64 im im 2) 3) (pow.f64 (*.f64 1/2 (sin.f64 re)) 3)))
(*.f64 1/2 (*.f64 (fma.f64 im im 2) (sin.f64 re)))
(*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2)))
(expm1.f64 (log1p.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2)))))
(*.f64 1/2 (*.f64 (fma.f64 im im 2) (sin.f64 re)))
(*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2)))
(exp.f64 (log.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2)))))
(*.f64 1/2 (*.f64 (fma.f64 im im 2) (sin.f64 re)))
(*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2)))
(exp.f64 (*.f64 (log.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2)))) 1))
(*.f64 1/2 (*.f64 (fma.f64 im im 2) (sin.f64 re)))
(*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2)))
(log1p.f64 (expm1.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (fma.f64 im im 2)))))
(*.f64 1/2 (*.f64 (fma.f64 im im 2) (sin.f64 re)))
(*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2)))
(fma.f64 (*.f64 1/2 (sin.f64 re)) (pow.f64 im 2) (*.f64 (*.f64 1/2 (sin.f64 re)) 2))
(*.f64 1/2 (*.f64 (fma.f64 im im 2) (sin.f64 re)))
(*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2)))
(fma.f64 (pow.f64 im 2) (*.f64 1/2 (sin.f64 re)) (*.f64 2 (*.f64 1/2 (sin.f64 re))))
(*.f64 1/2 (*.f64 (fma.f64 im im 2) (sin.f64 re)))
(*.f64 (sin.f64 re) (*.f64 1/2 (fma.f64 im im 2)))
(+.f64 0 (*.f64 1/4 (pow.f64 re -2)))
(*.f64 1/4 (pow.f64 re -2))
(/.f64 1/4 (pow.f64 re 2))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 1/4) (pow.f64 re -2))) (cbrt.f64 (pow.f64 (exp.f64 1/4) (pow.f64 re -2))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 1/4) (pow.f64 re -2)))))
(+.f64 (*.f64 2 (log.f64 (cbrt.f64 (pow.f64 (exp.f64 1/4) (pow.f64 re -2))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 1/4) (pow.f64 re -2)))))
(*.f64 3 (log.f64 (cbrt.f64 (pow.f64 (exp.f64 1/4) (pow.f64 re -2)))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 1/4) (pow.f64 re -2)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 1/4) (pow.f64 re -2)))))
(*.f64 1/4 (pow.f64 re -2))
(/.f64 1/4 (pow.f64 re 2))
(-.f64 (exp.f64 (log1p.f64 (*.f64 1/4 (pow.f64 re -2)))) 1)
(*.f64 1/4 (pow.f64 re -2))
(/.f64 1/4 (pow.f64 re 2))
(*.f64 1/4 (pow.f64 re -2))
(/.f64 1/4 (pow.f64 re 2))
(*.f64 (*.f64 1/4 (pow.f64 re -2)) 1)
(*.f64 1/4 (pow.f64 re -2))
(/.f64 1/4 (pow.f64 re 2))
(*.f64 1 (*.f64 1/4 (pow.f64 re -2)))
(*.f64 1/4 (pow.f64 re -2))
(/.f64 1/4 (pow.f64 re 2))
(*.f64 (cbrt.f64 (*.f64 1/4 (pow.f64 re -2))) (cbrt.f64 (/.f64 1/16 (pow.f64 re 4))))
(*.f64 (cbrt.f64 (/.f64 1/4 (pow.f64 re 2))) (cbrt.f64 (/.f64 1/16 (pow.f64 re 4))))
(*.f64 (cbrt.f64 (/.f64 1/16 (pow.f64 re 4))) (cbrt.f64 (*.f64 1/4 (pow.f64 re -2))))
(*.f64 (cbrt.f64 (*.f64 1/4 (pow.f64 re -2))) (cbrt.f64 (/.f64 1/16 (pow.f64 re 4))))
(*.f64 (cbrt.f64 (/.f64 1/4 (pow.f64 re 2))) (cbrt.f64 (/.f64 1/16 (pow.f64 re 4))))
(*.f64 (/.f64 1/2 re) (/.f64 1/2 re))
(*.f64 1/4 (pow.f64 re -2))
(/.f64 1/4 (pow.f64 re 2))
(*.f64 -1/4 (/.f64 1 (neg.f64 (pow.f64 re 2))))
(*.f64 1/4 (pow.f64 re -2))
(/.f64 1/4 (pow.f64 re 2))
(*.f64 (pow.f64 re -2) 1/4)
(*.f64 1/4 (pow.f64 re -2))
(/.f64 1/4 (pow.f64 re 2))
(pow.f64 (*.f64 1/4 (pow.f64 re -2)) 1)
(*.f64 1/4 (pow.f64 re -2))
(/.f64 1/4 (pow.f64 re 2))
(pow.f64 (cbrt.f64 (*.f64 1/4 (pow.f64 re -2))) 3)
(*.f64 1/4 (pow.f64 re -2))
(/.f64 1/4 (pow.f64 re 2))
(pow.f64 (pow.f64 (*.f64 1/4 (pow.f64 re -2)) 3) 1/3)
(*.f64 1/4 (pow.f64 re -2))
(/.f64 1/4 (pow.f64 re 2))
(pow.f64 (/.f64 1/2 re) 2)
(*.f64 1/4 (pow.f64 re -2))
(/.f64 1/4 (pow.f64 re 2))
(pow.f64 (*.f64 (pow.f64 re 2) 4) -1)
(*.f64 1/4 (pow.f64 re -2))
(/.f64 1/4 (pow.f64 re 2))
(sqrt.f64 (/.f64 1/16 (pow.f64 re 4)))
(log.f64 (pow.f64 (exp.f64 1/4) (pow.f64 re -2)))
(*.f64 1/4 (pow.f64 re -2))
(/.f64 1/4 (pow.f64 re 2))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 1/4 (pow.f64 re -2)))))
(*.f64 1/4 (pow.f64 re -2))
(/.f64 1/4 (pow.f64 re 2))
(cbrt.f64 (pow.f64 (*.f64 1/4 (pow.f64 re -2)) 3))
(*.f64 1/4 (pow.f64 re -2))
(/.f64 1/4 (pow.f64 re 2))
(expm1.f64 (log1p.f64 (*.f64 1/4 (pow.f64 re -2))))
(*.f64 1/4 (pow.f64 re -2))
(/.f64 1/4 (pow.f64 re 2))
(exp.f64 (log.f64 (*.f64 1/4 (pow.f64 re -2))))
(*.f64 1/4 (pow.f64 re -2))
(/.f64 1/4 (pow.f64 re 2))
(exp.f64 (*.f64 (log.f64 (*.f64 1/4 (pow.f64 re -2))) 1))
(*.f64 1/4 (pow.f64 re -2))
(/.f64 1/4 (pow.f64 re 2))
(log1p.f64 (expm1.f64 (*.f64 1/4 (pow.f64 re -2))))
(*.f64 1/4 (pow.f64 re -2))
(/.f64 1/4 (pow.f64 re 2))
(+.f64 (*.f64 re (*.f64 1/2 (pow.f64 im 2))) (*.f64 (*.f64 1/2 re) 2))
(*.f64 1/2 (*.f64 re (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (fma.f64 im im 2) re))
(+.f64 (*.f64 re (*.f64 1/2 (pow.f64 im 2))) (*.f64 2 (*.f64 1/2 re)))
(*.f64 1/2 (*.f64 re (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (fma.f64 im im 2) re))
(+.f64 0 (*.f64 1/2 (*.f64 re (fma.f64 im im 2))))
(*.f64 1/2 (*.f64 re (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (fma.f64 im im 2) re))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 (fma.f64 im im 2)) (*.f64 1/2 re))) (cbrt.f64 (pow.f64 (exp.f64 (fma.f64 im im 2)) (*.f64 1/2 re))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (fma.f64 im im 2)) (*.f64 1/2 re)))))
(+.f64 (*.f64 2 (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (fma.f64 im im 2)) (*.f64 1/2 re))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (fma.f64 im im 2)) (*.f64 1/2 re)))))
(*.f64 3 (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (fma.f64 im im 2)) (*.f64 1/2 re)))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (fma.f64 im im 2)) (*.f64 1/2 re)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (fma.f64 im im 2)) (*.f64 1/2 re)))))
(*.f64 1/2 (*.f64 re (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (fma.f64 im im 2) re))
(-.f64 (exp.f64 (log1p.f64 (*.f64 1/2 (*.f64 re (fma.f64 im im 2))))) 1)
(*.f64 1/2 (*.f64 re (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (fma.f64 im im 2) re))
(pow.f64 (*.f64 1/2 (*.f64 re (fma.f64 im im 2))) 1)
(*.f64 1/2 (*.f64 re (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (fma.f64 im im 2) re))
(pow.f64 (cbrt.f64 (*.f64 1/2 (*.f64 re (fma.f64 im im 2)))) 3)
(*.f64 1/2 (*.f64 re (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (fma.f64 im im 2) re))
(pow.f64 (pow.f64 (*.f64 1/2 (*.f64 re (fma.f64 im im 2))) 3) 1/3)
(*.f64 1/2 (*.f64 re (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (fma.f64 im im 2) re))
(pow.f64 (sqrt.f64 (*.f64 1/2 (*.f64 re (fma.f64 im im 2)))) 2)
(*.f64 1/2 (*.f64 re (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (fma.f64 im im 2) re))
(sqrt.f64 (pow.f64 (*.f64 1/2 (*.f64 re (fma.f64 im im 2))) 2))
(*.f64 1/2 (*.f64 re (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (fma.f64 im im 2) re))
(log.f64 (pow.f64 (exp.f64 (fma.f64 im im 2)) (*.f64 1/2 re)))
(*.f64 1/2 (*.f64 re (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (fma.f64 im im 2) re))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 1/2 (*.f64 re (fma.f64 im im 2))))))
(*.f64 1/2 (*.f64 re (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (fma.f64 im im 2) re))
(cbrt.f64 (pow.f64 (*.f64 1/2 (*.f64 re (fma.f64 im im 2))) 3))
(*.f64 1/2 (*.f64 re (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (fma.f64 im im 2) re))
(cbrt.f64 (*.f64 (pow.f64 (fma.f64 im im 2) 3) (pow.f64 (*.f64 1/2 re) 3)))
(*.f64 1/2 (*.f64 re (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (fma.f64 im im 2) re))
(cbrt.f64 (*.f64 (pow.f64 (*.f64 1/2 re) 3) (pow.f64 (fma.f64 im im 2) 3)))
(*.f64 1/2 (*.f64 re (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (fma.f64 im im 2) re))
(expm1.f64 (log1p.f64 (*.f64 1/2 (*.f64 re (fma.f64 im im 2)))))
(*.f64 1/2 (*.f64 re (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (fma.f64 im im 2) re))
(exp.f64 (log.f64 (*.f64 1/2 (*.f64 re (fma.f64 im im 2)))))
(*.f64 1/2 (*.f64 re (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (fma.f64 im im 2) re))
(exp.f64 (*.f64 (log.f64 (*.f64 1/2 (*.f64 re (fma.f64 im im 2)))) 1))
(*.f64 1/2 (*.f64 re (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (fma.f64 im im 2) re))
(log1p.f64 (expm1.f64 (*.f64 1/2 (*.f64 re (fma.f64 im im 2)))))
(*.f64 1/2 (*.f64 re (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (fma.f64 im im 2) re))
(fma.f64 1/2 (*.f64 re (pow.f64 im 2)) (*.f64 (*.f64 1/2 re) 2))
(*.f64 1/2 (*.f64 re (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (fma.f64 im im 2) re))
(fma.f64 1/2 (*.f64 re (pow.f64 im 2)) (*.f64 2 (*.f64 1/2 re)))
(*.f64 1/2 (*.f64 re (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (fma.f64 im im 2) re))
(fma.f64 re (*.f64 1/2 (pow.f64 im 2)) (*.f64 (*.f64 1/2 re) 2))
(*.f64 1/2 (*.f64 re (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (fma.f64 im im 2) re))
(fma.f64 re (*.f64 1/2 (pow.f64 im 2)) (*.f64 2 (*.f64 1/2 re)))
(*.f64 1/2 (*.f64 re (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (fma.f64 im im 2) re))
(fma.f64 (*.f64 1/2 re) (pow.f64 im 2) (*.f64 (*.f64 1/2 re) 2))
(*.f64 1/2 (*.f64 re (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (fma.f64 im im 2) re))
(fma.f64 (*.f64 1/2 re) (pow.f64 im 2) (*.f64 2 (*.f64 1/2 re)))
(*.f64 1/2 (*.f64 re (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (fma.f64 im im 2) re))
(fma.f64 (pow.f64 im 2) (*.f64 1/2 re) (*.f64 (*.f64 1/2 re) 2))
(*.f64 1/2 (*.f64 re (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (fma.f64 im im 2) re))
(fma.f64 (pow.f64 im 2) (*.f64 1/2 re) (*.f64 2 (*.f64 1/2 re)))
(*.f64 1/2 (*.f64 re (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (fma.f64 im im 2) re))
(fma.f64 (*.f64 re (pow.f64 im 2)) 1/2 (*.f64 (*.f64 1/2 re) 2))
(*.f64 1/2 (*.f64 re (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (fma.f64 im im 2) re))
(fma.f64 (*.f64 re (pow.f64 im 2)) 1/2 (*.f64 2 (*.f64 1/2 re)))
(*.f64 1/2 (*.f64 re (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (fma.f64 im im 2) re))
(fma.f64 (*.f64 re (*.f64 1/2 (pow.f64 im 2))) 1 (*.f64 (*.f64 1/2 re) 2))
(*.f64 1/2 (*.f64 re (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (fma.f64 im im 2) re))
(fma.f64 (*.f64 re (*.f64 1/2 (pow.f64 im 2))) 1 (*.f64 2 (*.f64 1/2 re)))
(*.f64 1/2 (*.f64 re (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (fma.f64 im im 2) re))
(fma.f64 1 (*.f64 re (*.f64 1/2 (pow.f64 im 2))) (*.f64 (*.f64 1/2 re) 2))
(*.f64 1/2 (*.f64 re (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (fma.f64 im im 2) re))
(fma.f64 1 (*.f64 re (*.f64 1/2 (pow.f64 im 2))) (*.f64 2 (*.f64 1/2 re)))
(*.f64 1/2 (*.f64 re (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (fma.f64 im im 2) re))
(fma.f64 (cbrt.f64 (*.f64 (pow.f64 re 2) (pow.f64 im 4))) (*.f64 (cbrt.f64 (*.f64 re (pow.f64 im 2))) 1/2) (*.f64 (*.f64 1/2 re) 2))
(fma.f64 (cbrt.f64 (*.f64 (pow.f64 re 2) (pow.f64 im 4))) (*.f64 1/2 (cbrt.f64 (*.f64 re (pow.f64 im 2)))) (*.f64 1 re))
(fma.f64 (cbrt.f64 (*.f64 (pow.f64 re 2) (pow.f64 im 4))) (*.f64 1/2 (cbrt.f64 (*.f64 (pow.f64 im 2) re))) re)
(fma.f64 (cbrt.f64 (*.f64 (pow.f64 re 2) (pow.f64 im 4))) (*.f64 (cbrt.f64 (*.f64 re (pow.f64 im 2))) 1/2) (*.f64 2 (*.f64 1/2 re)))
(fma.f64 (cbrt.f64 (*.f64 (pow.f64 re 2) (pow.f64 im 4))) (*.f64 1/2 (cbrt.f64 (*.f64 re (pow.f64 im 2)))) (*.f64 1 re))
(fma.f64 (cbrt.f64 (*.f64 (pow.f64 re 2) (pow.f64 im 4))) (*.f64 1/2 (cbrt.f64 (*.f64 (pow.f64 im 2) re))) re)
(fma.f64 (cbrt.f64 (*.f64 re (*.f64 1/2 (pow.f64 im 2)))) (pow.f64 (cbrt.f64 (*.f64 re (*.f64 1/2 (pow.f64 im 2)))) 2) (*.f64 (*.f64 1/2 re) 2))
(*.f64 1/2 (*.f64 re (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (fma.f64 im im 2) re))
(fma.f64 (cbrt.f64 (*.f64 re (*.f64 1/2 (pow.f64 im 2)))) (pow.f64 (cbrt.f64 (*.f64 re (*.f64 1/2 (pow.f64 im 2)))) 2) (*.f64 2 (*.f64 1/2 re)))
(*.f64 1/2 (*.f64 re (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (fma.f64 im im 2) re))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 re (*.f64 1/2 (pow.f64 im 2)))) 2) (cbrt.f64 (*.f64 re (*.f64 1/2 (pow.f64 im 2)))) (*.f64 (*.f64 1/2 re) 2))
(*.f64 1/2 (*.f64 re (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (fma.f64 im im 2) re))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 re (*.f64 1/2 (pow.f64 im 2)))) 2) (cbrt.f64 (*.f64 re (*.f64 1/2 (pow.f64 im 2)))) (*.f64 2 (*.f64 1/2 re)))
(*.f64 1/2 (*.f64 re (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (fma.f64 im im 2) re))
(fma.f64 (*.f64 im (sqrt.f64 re)) (*.f64 (*.f64 im (sqrt.f64 re)) 1/2) (*.f64 (*.f64 1/2 re) 2))
(*.f64 1/2 (*.f64 re (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (fma.f64 im im 2) re))
(fma.f64 (*.f64 im (sqrt.f64 re)) (*.f64 (*.f64 im (sqrt.f64 re)) 1/2) (*.f64 2 (*.f64 1/2 re)))
(*.f64 1/2 (*.f64 re (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (fma.f64 im im 2) re))
(fma.f64 (*.f64 (*.f64 im (sqrt.f64 re)) (sqrt.f64 1/2)) (*.f64 (*.f64 im (sqrt.f64 re)) (sqrt.f64 1/2)) (*.f64 (*.f64 1/2 re) 2))
(*.f64 1/2 (*.f64 re (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (fma.f64 im im 2) re))
(fma.f64 (*.f64 (*.f64 im (sqrt.f64 re)) (sqrt.f64 1/2)) (*.f64 (*.f64 im (sqrt.f64 re)) (sqrt.f64 1/2)) (*.f64 2 (*.f64 1/2 re)))
(*.f64 1/2 (*.f64 re (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (fma.f64 im im 2) re))
(fma.f64 (*.f64 1/2 (pow.f64 im 2)) re (*.f64 (*.f64 1/2 re) 2))
(*.f64 1/2 (*.f64 re (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (fma.f64 im im 2) re))
(fma.f64 (*.f64 1/2 (pow.f64 im 2)) re (*.f64 2 (*.f64 1/2 re)))
(*.f64 1/2 (*.f64 re (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (fma.f64 im im 2) re))
(fma.f64 (*.f64 1/2 (cbrt.f64 (*.f64 (pow.f64 re 2) (pow.f64 im 4)))) (cbrt.f64 (*.f64 re (pow.f64 im 2))) (*.f64 (*.f64 1/2 re) 2))
(fma.f64 (cbrt.f64 (*.f64 (pow.f64 re 2) (pow.f64 im 4))) (*.f64 1/2 (cbrt.f64 (*.f64 re (pow.f64 im 2)))) (*.f64 1 re))
(fma.f64 (cbrt.f64 (*.f64 (pow.f64 re 2) (pow.f64 im 4))) (*.f64 1/2 (cbrt.f64 (*.f64 (pow.f64 im 2) re))) re)
(fma.f64 (*.f64 1/2 (cbrt.f64 (*.f64 (pow.f64 re 2) (pow.f64 im 4)))) (cbrt.f64 (*.f64 re (pow.f64 im 2))) (*.f64 2 (*.f64 1/2 re)))
(fma.f64 (cbrt.f64 (*.f64 (pow.f64 re 2) (pow.f64 im 4))) (*.f64 1/2 (cbrt.f64 (*.f64 re (pow.f64 im 2)))) (*.f64 1 re))
(fma.f64 (cbrt.f64 (*.f64 (pow.f64 re 2) (pow.f64 im 4))) (*.f64 1/2 (cbrt.f64 (*.f64 (pow.f64 im 2) re))) re)
(fma.f64 (*.f64 1/2 (*.f64 im (sqrt.f64 re))) (*.f64 im (sqrt.f64 re)) (*.f64 (*.f64 1/2 re) 2))
(*.f64 1/2 (*.f64 re (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (fma.f64 im im 2) re))
(fma.f64 (*.f64 1/2 (*.f64 im (sqrt.f64 re))) (*.f64 im (sqrt.f64 re)) (*.f64 2 (*.f64 1/2 re)))
(*.f64 1/2 (*.f64 re (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (fma.f64 im im 2) re))
(fma.f64 (*.f64 (*.f64 1/2 (pow.f64 im 2)) 1) re (*.f64 (*.f64 1/2 re) 2))
(*.f64 1/2 (*.f64 re (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (fma.f64 im im 2) re))
(fma.f64 (*.f64 (*.f64 1/2 (pow.f64 im 2)) 1) re (*.f64 2 (*.f64 1/2 re)))
(*.f64 1/2 (*.f64 re (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (fma.f64 im im 2) re))
(fma.f64 (*.f64 (*.f64 1/2 (pow.f64 im 2)) (pow.f64 (cbrt.f64 re) 2)) (cbrt.f64 re) (*.f64 (*.f64 1/2 re) 2))
(*.f64 1/2 (*.f64 re (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (fma.f64 im im 2) re))
(fma.f64 (*.f64 (*.f64 1/2 (pow.f64 im 2)) (pow.f64 (cbrt.f64 re) 2)) (cbrt.f64 re) (*.f64 2 (*.f64 1/2 re)))
(*.f64 1/2 (*.f64 re (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (fma.f64 im im 2) re))
(fma.f64 (*.f64 (*.f64 1/2 (pow.f64 im 2)) (sqrt.f64 re)) (sqrt.f64 re) (*.f64 (*.f64 1/2 re) 2))
(*.f64 1/2 (*.f64 re (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (fma.f64 im im 2) re))
(fma.f64 (*.f64 (*.f64 1/2 (pow.f64 im 2)) (sqrt.f64 re)) (sqrt.f64 re) (*.f64 2 (*.f64 1/2 re)))
(*.f64 1/2 (*.f64 re (fma.f64 im im 2)))
(*.f64 1/2 (*.f64 (fma.f64 im im 2) re))
(+.f64 0 (*.f64 re (pow.f64 im 2)))
(*.f64 re (pow.f64 im 2))
(*.f64 (pow.f64 im 2) re)
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 re) (pow.f64 im 2))) (cbrt.f64 (pow.f64 (exp.f64 re) (pow.f64 im 2))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 re) (pow.f64 im 2)))))
(+.f64 (*.f64 2 (log.f64 (cbrt.f64 (pow.f64 (exp.f64 re) (pow.f64 im 2))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 re) (pow.f64 im 2)))))
(*.f64 3 (log.f64 (cbrt.f64 (pow.f64 (exp.f64 re) (pow.f64 im 2)))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 re) (pow.f64 im 2)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 re) (pow.f64 im 2)))))
(*.f64 re (pow.f64 im 2))
(*.f64 (pow.f64 im 2) re)
(-.f64 (exp.f64 (log1p.f64 (*.f64 re (pow.f64 im 2)))) 1)
(*.f64 re (pow.f64 im 2))
(*.f64 (pow.f64 im 2) re)
(pow.f64 (*.f64 re (pow.f64 im 2)) 1)
(*.f64 re (pow.f64 im 2))
(*.f64 (pow.f64 im 2) re)
(pow.f64 (cbrt.f64 (*.f64 re (pow.f64 im 2))) 3)
(*.f64 re (pow.f64 im 2))
(*.f64 (pow.f64 im 2) re)
(pow.f64 (pow.f64 (*.f64 re (pow.f64 im 2)) 3) 1/3)
(*.f64 re (pow.f64 im 2))
(*.f64 (pow.f64 im 2) re)
(pow.f64 (*.f64 im (sqrt.f64 re)) 2)
(*.f64 re (pow.f64 im 2))
(*.f64 (pow.f64 im 2) re)
(sqrt.f64 (*.f64 (pow.f64 re 2) (pow.f64 im 4)))
(fabs.f64 (*.f64 (pow.f64 im 2) re))
(log.f64 (pow.f64 (exp.f64 re) (pow.f64 im 2)))
(*.f64 re (pow.f64 im 2))
(*.f64 (pow.f64 im 2) re)
(log.f64 (+.f64 1 (expm1.f64 (*.f64 re (pow.f64 im 2)))))
(*.f64 re (pow.f64 im 2))
(*.f64 (pow.f64 im 2) re)
(cbrt.f64 (pow.f64 (*.f64 re (pow.f64 im 2)) 3))
(*.f64 re (pow.f64 im 2))
(*.f64 (pow.f64 im 2) re)
(cbrt.f64 (*.f64 (pow.f64 re 3) (pow.f64 (pow.f64 im 2) 3)))
(*.f64 re (pow.f64 im 2))
(*.f64 (pow.f64 im 2) re)
(cbrt.f64 (*.f64 (pow.f64 (pow.f64 im 2) 3) (pow.f64 re 3)))
(*.f64 re (pow.f64 im 2))
(*.f64 (pow.f64 im 2) re)
(expm1.f64 (log1p.f64 (*.f64 re (pow.f64 im 2))))
(*.f64 re (pow.f64 im 2))
(*.f64 (pow.f64 im 2) re)
(exp.f64 (fma.f64 2 (log.f64 im) (log.f64 re)))
(*.f64 re (pow.f64 im 2))
(*.f64 (pow.f64 im 2) re)
(exp.f64 (*.f64 (fma.f64 2 (log.f64 im) (log.f64 re)) 1))
(*.f64 re (pow.f64 im 2))
(*.f64 (pow.f64 im 2) re)
(log1p.f64 (expm1.f64 (*.f64 re (pow.f64 im 2))))
(*.f64 re (pow.f64 im 2))
(*.f64 (pow.f64 im 2) re)
(+.f64 0 (*.f64 re (*.f64 1/2 (pow.f64 im 2))))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 (pow.f64 im 2) (*.f64 1/2 re))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 1/2) (*.f64 re (pow.f64 im 2)))) (cbrt.f64 (pow.f64 (exp.f64 1/2) (*.f64 re (pow.f64 im 2)))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 1/2) (*.f64 re (pow.f64 im 2))))))
(+.f64 (*.f64 2 (log.f64 (cbrt.f64 (pow.f64 (exp.f64 1/2) (*.f64 (pow.f64 im 2) re))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 1/2) (*.f64 (pow.f64 im 2) re)))))
(*.f64 3 (log.f64 (cbrt.f64 (pow.f64 (exp.f64 1/2) (*.f64 (pow.f64 im 2) re)))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 1/2) (*.f64 re (pow.f64 im 2))))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 1/2) (*.f64 re (pow.f64 im 2))))))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 (pow.f64 im 2) (*.f64 1/2 re))
(-.f64 (exp.f64 (log1p.f64 (*.f64 re (*.f64 1/2 (pow.f64 im 2))))) 1)
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 (pow.f64 im 2) (*.f64 1/2 re))
(pow.f64 (*.f64 re (*.f64 1/2 (pow.f64 im 2))) 1)
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 (pow.f64 im 2) (*.f64 1/2 re))
(pow.f64 (cbrt.f64 (*.f64 re (*.f64 1/2 (pow.f64 im 2)))) 3)
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 (pow.f64 im 2) (*.f64 1/2 re))
(pow.f64 (pow.f64 (*.f64 re (*.f64 1/2 (pow.f64 im 2))) 3) 1/3)
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 (pow.f64 im 2) (*.f64 1/2 re))
(pow.f64 (*.f64 (*.f64 im (sqrt.f64 re)) (sqrt.f64 1/2)) 2)
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 (pow.f64 im 2) (*.f64 1/2 re))
(sqrt.f64 (*.f64 1/4 (*.f64 (pow.f64 re 2) (pow.f64 im 4))))
(sqrt.f64 (*.f64 (*.f64 1/4 (pow.f64 re 2)) (pow.f64 im 4)))
(fabs.f64 (*.f64 (pow.f64 im 2) (*.f64 1/2 re)))
(log.f64 (pow.f64 (exp.f64 1/2) (*.f64 re (pow.f64 im 2))))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 (pow.f64 im 2) (*.f64 1/2 re))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 re (*.f64 1/2 (pow.f64 im 2))))))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 (pow.f64 im 2) (*.f64 1/2 re))
(cbrt.f64 (pow.f64 (*.f64 re (*.f64 1/2 (pow.f64 im 2))) 3))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 (pow.f64 im 2) (*.f64 1/2 re))
(expm1.f64 (log1p.f64 (*.f64 re (*.f64 1/2 (pow.f64 im 2)))))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 (pow.f64 im 2) (*.f64 1/2 re))
(exp.f64 (log.f64 (*.f64 re (*.f64 1/2 (pow.f64 im 2)))))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 (pow.f64 im 2) (*.f64 1/2 re))
(exp.f64 (*.f64 (log.f64 (*.f64 re (*.f64 1/2 (pow.f64 im 2)))) 1))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 (pow.f64 im 2) (*.f64 1/2 re))
(log1p.f64 (expm1.f64 (*.f64 re (*.f64 1/2 (pow.f64 im 2)))))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 (pow.f64 im 2) (*.f64 1/2 re))

eval71.0ms (0.9%)

Compiler

Compiled 2566 to 1874 computations (27% saved)

prune49.0ms (0.6%)

Pruning

17 alts after pruning (9 fresh and 8 done)

PrunedKeptTotal
New1786184
Fresh033
Picked055
Done134
Total17917196
Accuracy
99.6%
Counts
196 → 17
Alt Table
Click to see full alt table
StatusAccuracyProgram
17.8%
(/.f64 1/4 (pow.f64 re 2))
46.4%
(+.f64 (*.f64 (sin.f64 re) (+.f64 (*.f64 1/720 (pow.f64 im 6)) (*.f64 1/24 (pow.f64 im 4)))) 12)
10.3%
(+.f64 (sin.f64 re) (sin.f64 re))
56.7%
(+.f64 re (+.f64 (*.f64 1/720 (*.f64 (pow.f64 im 6) re)) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) re)) (*.f64 1/2 (*.f64 (pow.f64 im 2) re)))))
43.0%
(+.f64 re (*.f64 1/2 (*.f64 (pow.f64 im 2) re)))
49.5%
(*.f64 (fma.f64 im im 2) (+.f64 (*.f64 1/2 re) (*.f64 -1/12 (pow.f64 re 3))))
18.1%
(*.f64 (pow.f64 re -2) 1/4)
26.0%
(*.f64 (pow.f64 im 2) (*.f64 1/2 (sin.f64 re)))
22.9%
(*.f64 (pow.f64 im 2) (*.f64 1/2 re))
17.8%
(*.f64 (/.f64 1/2 re) (/.f64 1/2 re))
71.0%
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2))
99.6%
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
43.0%
(*.f64 (*.f64 1/2 re) (fma.f64 im im 2))
60.8%
(*.f64 (*.f64 1/2 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
26.0%
(sqrt.f64 (/.f64 1/16 (pow.f64 re 4)))
48.5%
(sin.f64 re)
23.2%
re
17.8%
(/.f64 1/4 (pow.f64 re 2))
46.4%
(+.f64 (*.f64 (sin.f64 re) (+.f64 (*.f64 1/720 (pow.f64 im 6)) (*.f64 1/24 (pow.f64 im 4)))) 12)
10.3%
(+.f64 (sin.f64 re) (sin.f64 re))
56.7%
(+.f64 re (+.f64 (*.f64 1/720 (*.f64 (pow.f64 im 6) re)) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) re)) (*.f64 1/2 (*.f64 (pow.f64 im 2) re)))))
43.0%
(+.f64 re (*.f64 1/2 (*.f64 (pow.f64 im 2) re)))
49.5%
(*.f64 (fma.f64 im im 2) (+.f64 (*.f64 1/2 re) (*.f64 -1/12 (pow.f64 re 3))))
18.1%
(*.f64 (pow.f64 re -2) 1/4)
26.0%
(*.f64 (pow.f64 im 2) (*.f64 1/2 (sin.f64 re)))
22.9%
(*.f64 (pow.f64 im 2) (*.f64 1/2 re))
17.8%
(*.f64 (/.f64 1/2 re) (/.f64 1/2 re))
71.0%
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2))
99.6%
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
43.0%
(*.f64 (*.f64 1/2 re) (fma.f64 im im 2))
60.8%
(*.f64 (*.f64 1/2 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
26.0%
(sqrt.f64 (/.f64 1/16 (pow.f64 re 4)))
48.5%
(sin.f64 re)
23.2%
re
Compiler

Compiled 572 to 442 computations (22.7% saved)

localize300.0ms (3.8%)

Localize:

Found 10 expressions with local error:

NewAccuracyProgram
99.9%
(*.f64 1/720 (pow.f64 im 6))
99.8%
(*.f64 1/24 (pow.f64 im 4))
96.2%
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/720 (pow.f64 im 6)) (*.f64 1/24 (pow.f64 im 4))))
95.0%
(*.f64 (pow.f64 im 2) (*.f64 1/2 (sin.f64 re)))
90.5%
(*.f64 (pow.f64 im 2) (*.f64 1/2 re))
99.6%
(*.f64 (/.f64 1/2 re) (/.f64 1/2 re))
99.6%
(*.f64 1/720 (*.f64 (pow.f64 im 6) re))
93.8%
(*.f64 (pow.f64 im 6) re)
90.5%
(*.f64 (pow.f64 im 2) re)
90.4%
(*.f64 (pow.f64 im 4) re)
Compiler

Compiled 235 to 164 computations (30.2% saved)

series11.0ms (0.1%)

Counts
8 → 60
Calls

39 calls:

TimeVariablePointExpression
2.0ms
im
@-inf
(*.f64 1/720 (*.f64 (pow.f64 im 6) re))
1.0ms
re
@inf
(*.f64 (pow.f64 im 2) (*.f64 1/2 (sin.f64 re)))
1.0ms
re
@-inf
(*.f64 (pow.f64 im 2) (*.f64 1/2 (sin.f64 re)))
1.0ms
im
@inf
(*.f64 (pow.f64 im 2) (*.f64 1/2 (sin.f64 re)))
1.0ms
re
@0
(*.f64 (pow.f64 im 2) (*.f64 1/2 (sin.f64 re)))

rewrite154.0ms (1.9%)

Algorithm
batch-egg-rewrite
Rules
898×log1p-expm1-u
701×expm1-log1p-u
576×expm1-udef
576×log1p-udef
396×associate-*r*
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
029165
1377165
24563165
Stop Event
node limit
Counts
8 → 135
Calls
Call 1
Inputs
(*.f64 (pow.f64 im 4) re)
(*.f64 (pow.f64 im 6) re)
(*.f64 1/720 (*.f64 (pow.f64 im 6) re))
(*.f64 (/.f64 1/2 re) (/.f64 1/2 re))
(*.f64 (pow.f64 im 2) (*.f64 1/2 re))
(*.f64 (pow.f64 im 2) (*.f64 1/2 (sin.f64 re)))
(*.f64 1/24 (pow.f64 im 4))
(*.f64 1/720 (pow.f64 im 6))
Outputs
(-.f64 (exp.f64 (log1p.f64 (*.f64 (pow.f64 im 4) re))) 1)
(pow.f64 (*.f64 (pow.f64 im 4) re) 1)
(pow.f64 (cbrt.f64 (*.f64 (pow.f64 im 4) re)) 3)
(pow.f64 (pow.f64 (*.f64 (pow.f64 im 4) re) 3) 1/3)
(pow.f64 (*.f64 (pow.f64 im 2) (sqrt.f64 re)) 2)
(sqrt.f64 (*.f64 (pow.f64 im 8) (pow.f64 re 2)))
(log.f64 (pow.f64 (exp.f64 re) (pow.f64 im 4)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (pow.f64 im 4) re))))
(cbrt.f64 (pow.f64 (*.f64 (pow.f64 im 4) re) 3))
(cbrt.f64 (*.f64 (pow.f64 im 12) (pow.f64 re 3)))
(cbrt.f64 (*.f64 (pow.f64 re 3) (pow.f64 im 12)))
(expm1.f64 (log1p.f64 (*.f64 (pow.f64 im 4) re)))
(exp.f64 (log.f64 (*.f64 (pow.f64 im 4) re)))
(exp.f64 (*.f64 (log.f64 (*.f64 (pow.f64 im 4) re)) 1))
(log1p.f64 (expm1.f64 (*.f64 (pow.f64 im 4) re)))
(-.f64 (exp.f64 (log1p.f64 (*.f64 re (pow.f64 im 6)))) 1)
(pow.f64 (*.f64 re (pow.f64 im 6)) 1)
(pow.f64 (*.f64 (pow.f64 im 2) (cbrt.f64 re)) 3)
(pow.f64 (pow.f64 (*.f64 re (pow.f64 im 6)) 3) 1/3)
(pow.f64 (*.f64 (pow.f64 im 3) (sqrt.f64 re)) 2)
(sqrt.f64 (*.f64 (pow.f64 im 12) (pow.f64 re 2)))
(log.f64 (pow.f64 (exp.f64 re) (pow.f64 im 6)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 re (pow.f64 im 6)))))
(cbrt.f64 (pow.f64 (*.f64 re (pow.f64 im 6)) 3))
(cbrt.f64 (*.f64 (pow.f64 re 3) (pow.f64 (pow.f64 im 6) 3)))
(cbrt.f64 (*.f64 (pow.f64 (pow.f64 im 6) 3) (pow.f64 re 3)))
(expm1.f64 (log1p.f64 (*.f64 re (pow.f64 im 6))))
(exp.f64 (log.f64 (*.f64 re (pow.f64 im 6))))
(exp.f64 (*.f64 (log.f64 (*.f64 re (pow.f64 im 6))) 1))
(log1p.f64 (expm1.f64 (*.f64 re (pow.f64 im 6))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 re (*.f64 (pow.f64 im 6) 1/720)))) 1)
(pow.f64 (*.f64 re (*.f64 (pow.f64 im 6) 1/720)) 1)
(pow.f64 (cbrt.f64 (*.f64 re (*.f64 (pow.f64 im 6) 1/720))) 3)
(pow.f64 (pow.f64 (*.f64 re (*.f64 (pow.f64 im 6) 1/720)) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 re (*.f64 (pow.f64 im 6) 1/720))) 2)
(sqrt.f64 (*.f64 (*.f64 (pow.f64 im 12) 1/518400) (pow.f64 re 2)))
(log.f64 (pow.f64 (pow.f64 (exp.f64 1/720) (pow.f64 im 6)) re))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 re (*.f64 (pow.f64 im 6) 1/720)))))
(cbrt.f64 (pow.f64 (*.f64 re (*.f64 (pow.f64 im 6) 1/720)) 3))
(cbrt.f64 (*.f64 (pow.f64 (*.f64 (pow.f64 im 6) 1/720) 3) (pow.f64 re 3)))
(expm1.f64 (log1p.f64 (*.f64 re (*.f64 (pow.f64 im 6) 1/720))))
(exp.f64 (log.f64 (*.f64 re (*.f64 (pow.f64 im 6) 1/720))))
(exp.f64 (*.f64 (log.f64 (*.f64 re (*.f64 (pow.f64 im 6) 1/720))) 1))
(log1p.f64 (expm1.f64 (*.f64 re (*.f64 (pow.f64 im 6) 1/720))))
(-.f64 (exp.f64 (log1p.f64 (/.f64 1/4 (pow.f64 re 2)))) 1)
(/.f64 1/2 (*.f64 re (*.f64 re 2)))
(/.f64 1/2 (*.f64 (*.f64 re 2) re))
(/.f64 1/2 (/.f64 re (/.f64 1/2 re)))
(/.f64 (/.f64 1/2 re) (*.f64 re 2))
(/.f64 1 (*.f64 (*.f64 re 2) (*.f64 re 2)))
(/.f64 1 (/.f64 (pow.f64 re 2) 1/4))
(/.f64 1 (/.f64 re (/.f64 1/4 re)))
(/.f64 1/4 (pow.f64 re 2))
(/.f64 1/4 (*.f64 (neg.f64 re) (neg.f64 re)))
(/.f64 -1/2 (*.f64 (*.f64 re 2) (neg.f64 re)))
(/.f64 -1/2 (*.f64 (neg.f64 re) (*.f64 re 2)))
(/.f64 (/.f64 1/4 re) re)
(/.f64 -1/4 (*.f64 re (neg.f64 re)))
(/.f64 -1/4 (*.f64 (neg.f64 re) re))
(/.f64 -1/4 (neg.f64 (pow.f64 re 2)))
(/.f64 (neg.f64 (/.f64 1/4 re)) (neg.f64 re))
(/.f64 (*.f64 (/.f64 1/2 re) -1/2) (neg.f64 re))
(/.f64 (*.f64 -1/2 (/.f64 1/2 re)) (neg.f64 re))
(/.f64 (/.f64 (/.f64 1/4 re) 1) re)
(/.f64 (/.f64 (/.f64 1/4 re) (pow.f64 (cbrt.f64 re) 2)) (cbrt.f64 re))
(/.f64 (/.f64 (/.f64 1/4 re) (sqrt.f64 re)) (sqrt.f64 re))
(pow.f64 (/.f64 1/2 re) 2)
(pow.f64 (/.f64 1/4 (pow.f64 re 2)) 1)
(pow.f64 (pow.f64 (cbrt.f64 (/.f64 1/2 re)) 2) 3)
(pow.f64 (pow.f64 (/.f64 1/4 (pow.f64 re 2)) 3) 1/3)
(sqrt.f64 (pow.f64 (/.f64 1/2 re) 4))
(log.f64 (exp.f64 (/.f64 1/4 (pow.f64 re 2))))
(log.f64 (+.f64 1 (expm1.f64 (/.f64 1/4 (pow.f64 re 2)))))
(cbrt.f64 (pow.f64 (/.f64 1/4 (pow.f64 re 2)) 3))
(expm1.f64 (log1p.f64 (/.f64 1/4 (pow.f64 re 2))))
(exp.f64 (*.f64 2 (log.f64 (/.f64 1/2 re))))
(exp.f64 (*.f64 (log.f64 (/.f64 1/2 re)) 2))
(exp.f64 (*.f64 (*.f64 2 (log.f64 (/.f64 1/2 re))) 1))
(log1p.f64 (expm1.f64 (/.f64 1/4 (pow.f64 re 2))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 re (*.f64 1/2 (pow.f64 im 2))))) 1)
(pow.f64 (*.f64 re (*.f64 1/2 (pow.f64 im 2))) 1)
(pow.f64 (cbrt.f64 (*.f64 re (*.f64 1/2 (pow.f64 im 2)))) 3)
(pow.f64 (pow.f64 (*.f64 re (*.f64 1/2 (pow.f64 im 2))) 3) 1/3)
(pow.f64 (*.f64 im (sqrt.f64 (*.f64 re 1/2))) 2)
(sqrt.f64 (*.f64 (pow.f64 im 4) (*.f64 (pow.f64 re 2) 1/4)))
(log.f64 (pow.f64 (exp.f64 (pow.f64 im 2)) (*.f64 re 1/2)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 re (*.f64 1/2 (pow.f64 im 2))))))
(cbrt.f64 (pow.f64 (*.f64 re (*.f64 1/2 (pow.f64 im 2))) 3))
(cbrt.f64 (*.f64 (pow.f64 im 6) (pow.f64 (*.f64 re 1/2) 3)))
(cbrt.f64 (*.f64 (pow.f64 (*.f64 re 1/2) 3) (pow.f64 im 6)))
(expm1.f64 (log1p.f64 (*.f64 re (*.f64 1/2 (pow.f64 im 2)))))
(exp.f64 (log.f64 (*.f64 re (*.f64 1/2 (pow.f64 im 2)))))
(exp.f64 (*.f64 (log.f64 (*.f64 re (*.f64 1/2 (pow.f64 im 2)))) 1))
(log1p.f64 (expm1.f64 (*.f64 re (*.f64 1/2 (pow.f64 im 2)))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))) 1)
(pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) 1)
(pow.f64 (cbrt.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))) 3)
(pow.f64 (pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) 3) 1/3)
(pow.f64 (*.f64 im (sqrt.f64 (*.f64 1/2 (sin.f64 re)))) 2)
(sqrt.f64 (*.f64 (pow.f64 im 4) (*.f64 (pow.f64 (sin.f64 re) 2) 1/4)))
(log.f64 (pow.f64 (exp.f64 (pow.f64 im 2)) (*.f64 1/2 (sin.f64 re))))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))))
(cbrt.f64 (pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) 3))
(cbrt.f64 (*.f64 (pow.f64 im 6) (pow.f64 (*.f64 1/2 (sin.f64 re)) 3)))
(cbrt.f64 (*.f64 (pow.f64 (*.f64 1/2 (sin.f64 re)) 3) (pow.f64 im 6)))
(expm1.f64 (log1p.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))))
(exp.f64 (log.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))))
(exp.f64 (*.f64 (log.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))) 1))
(log1p.f64 (expm1.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (pow.f64 im 4) 1/24))) 1)
(pow.f64 (*.f64 (pow.f64 im 4) 1/24) 1)
(pow.f64 (cbrt.f64 (*.f64 (pow.f64 im 4) 1/24)) 3)
(pow.f64 (pow.f64 (*.f64 (pow.f64 im 4) 1/24) 3) 1/3)
(pow.f64 (*.f64 (pow.f64 im 2) (sqrt.f64 1/24)) 2)
(sqrt.f64 (*.f64 (pow.f64 im 8) 1/576))
(log.f64 (pow.f64 (exp.f64 1/24) (pow.f64 im 4)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (pow.f64 im 4) 1/24))))
(cbrt.f64 (pow.f64 (*.f64 (pow.f64 im 4) 1/24) 3))
(expm1.f64 (log1p.f64 (*.f64 (pow.f64 im 4) 1/24)))
(exp.f64 (log.f64 (*.f64 (pow.f64 im 4) 1/24)))
(exp.f64 (*.f64 (log.f64 (*.f64 (pow.f64 im 4) 1/24)) 1))
(log1p.f64 (expm1.f64 (*.f64 (pow.f64 im 4) 1/24)))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (pow.f64 im 6) 1/720))) 1)
(pow.f64 (*.f64 (pow.f64 im 6) 1/720) 1)
(pow.f64 (*.f64 (pow.f64 im 2) (cbrt.f64 1/720)) 3)
(pow.f64 (pow.f64 (*.f64 (pow.f64 im 6) 1/720) 3) 1/3)
(pow.f64 (*.f64 (pow.f64 im 3) (sqrt.f64 1/720)) 2)
(sqrt.f64 (*.f64 (pow.f64 im 12) 1/518400))
(log.f64 (pow.f64 (exp.f64 1/720) (pow.f64 im 6)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (pow.f64 im 6) 1/720))))
(cbrt.f64 (pow.f64 (*.f64 (pow.f64 im 6) 1/720) 3))
(expm1.f64 (log1p.f64 (*.f64 (pow.f64 im 6) 1/720)))
(exp.f64 (log.f64 (*.f64 (pow.f64 im 6) 1/720)))
(exp.f64 (*.f64 (log.f64 (*.f64 (pow.f64 im 6) 1/720)) 1))
(log1p.f64 (expm1.f64 (*.f64 (pow.f64 im 6) 1/720)))

simplify89.0ms (1.1%)

Algorithm
egg-herbie
Rules
1106×distribute-rgt-in
1102×distribute-lft-in
912×log-prod
590×fma-def
514×associate-*r*
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
03404428
17994428
229004398
Stop Event
node limit
Counts
195 → 167
Calls
Call 1
Inputs
(/.f64 1/4 (pow.f64 re 2))
(/.f64 1/4 (pow.f64 re 2))
(/.f64 1/4 (pow.f64 re 2))
(/.f64 1/4 (pow.f64 re 2))
(/.f64 1/4 (pow.f64 re 2))
(/.f64 1/4 (pow.f64 re 2))
(/.f64 1/4 (pow.f64 re 2))
(/.f64 1/4 (pow.f64 re 2))
(/.f64 1/4 (pow.f64 re 2))
(/.f64 1/4 (pow.f64 re 2))
(/.f64 1/4 (pow.f64 re 2))
(/.f64 1/4 (pow.f64 re 2))
(*.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 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(+.f64 (*.f64 -1/12 (*.f64 (pow.f64 im 2) (pow.f64 re 3))) (*.f64 1/2 (*.f64 (pow.f64 im 2) re)))
(+.f64 (*.f64 -1/12 (*.f64 (pow.f64 im 2) (pow.f64 re 3))) (+.f64 (*.f64 1/240 (*.f64 (pow.f64 im 2) (pow.f64 re 5))) (*.f64 1/2 (*.f64 (pow.f64 im 2) re))))
(+.f64 (*.f64 -1/12 (*.f64 (pow.f64 im 2) (pow.f64 re 3))) (+.f64 (*.f64 -1/10080 (*.f64 (pow.f64 im 2) (pow.f64 re 7))) (+.f64 (*.f64 1/240 (*.f64 (pow.f64 im 2) (pow.f64 re 5))) (*.f64 1/2 (*.f64 (pow.f64 im 2) re)))))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re)))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (pow.f64 im 4) re))) 1)
(pow.f64 (*.f64 (pow.f64 im 4) re) 1)
(pow.f64 (cbrt.f64 (*.f64 (pow.f64 im 4) re)) 3)
(pow.f64 (pow.f64 (*.f64 (pow.f64 im 4) re) 3) 1/3)
(pow.f64 (*.f64 (pow.f64 im 2) (sqrt.f64 re)) 2)
(sqrt.f64 (*.f64 (pow.f64 im 8) (pow.f64 re 2)))
(log.f64 (pow.f64 (exp.f64 re) (pow.f64 im 4)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (pow.f64 im 4) re))))
(cbrt.f64 (pow.f64 (*.f64 (pow.f64 im 4) re) 3))
(cbrt.f64 (*.f64 (pow.f64 im 12) (pow.f64 re 3)))
(cbrt.f64 (*.f64 (pow.f64 re 3) (pow.f64 im 12)))
(expm1.f64 (log1p.f64 (*.f64 (pow.f64 im 4) re)))
(exp.f64 (log.f64 (*.f64 (pow.f64 im 4) re)))
(exp.f64 (*.f64 (log.f64 (*.f64 (pow.f64 im 4) re)) 1))
(log1p.f64 (expm1.f64 (*.f64 (pow.f64 im 4) re)))
(-.f64 (exp.f64 (log1p.f64 (*.f64 re (pow.f64 im 6)))) 1)
(pow.f64 (*.f64 re (pow.f64 im 6)) 1)
(pow.f64 (*.f64 (pow.f64 im 2) (cbrt.f64 re)) 3)
(pow.f64 (pow.f64 (*.f64 re (pow.f64 im 6)) 3) 1/3)
(pow.f64 (*.f64 (pow.f64 im 3) (sqrt.f64 re)) 2)
(sqrt.f64 (*.f64 (pow.f64 im 12) (pow.f64 re 2)))
(log.f64 (pow.f64 (exp.f64 re) (pow.f64 im 6)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 re (pow.f64 im 6)))))
(cbrt.f64 (pow.f64 (*.f64 re (pow.f64 im 6)) 3))
(cbrt.f64 (*.f64 (pow.f64 re 3) (pow.f64 (pow.f64 im 6) 3)))
(cbrt.f64 (*.f64 (pow.f64 (pow.f64 im 6) 3) (pow.f64 re 3)))
(expm1.f64 (log1p.f64 (*.f64 re (pow.f64 im 6))))
(exp.f64 (log.f64 (*.f64 re (pow.f64 im 6))))
(exp.f64 (*.f64 (log.f64 (*.f64 re (pow.f64 im 6))) 1))
(log1p.f64 (expm1.f64 (*.f64 re (pow.f64 im 6))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 re (*.f64 (pow.f64 im 6) 1/720)))) 1)
(pow.f64 (*.f64 re (*.f64 (pow.f64 im 6) 1/720)) 1)
(pow.f64 (cbrt.f64 (*.f64 re (*.f64 (pow.f64 im 6) 1/720))) 3)
(pow.f64 (pow.f64 (*.f64 re (*.f64 (pow.f64 im 6) 1/720)) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 re (*.f64 (pow.f64 im 6) 1/720))) 2)
(sqrt.f64 (*.f64 (*.f64 (pow.f64 im 12) 1/518400) (pow.f64 re 2)))
(log.f64 (pow.f64 (pow.f64 (exp.f64 1/720) (pow.f64 im 6)) re))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 re (*.f64 (pow.f64 im 6) 1/720)))))
(cbrt.f64 (pow.f64 (*.f64 re (*.f64 (pow.f64 im 6) 1/720)) 3))
(cbrt.f64 (*.f64 (pow.f64 (*.f64 (pow.f64 im 6) 1/720) 3) (pow.f64 re 3)))
(expm1.f64 (log1p.f64 (*.f64 re (*.f64 (pow.f64 im 6) 1/720))))
(exp.f64 (log.f64 (*.f64 re (*.f64 (pow.f64 im 6) 1/720))))
(exp.f64 (*.f64 (log.f64 (*.f64 re (*.f64 (pow.f64 im 6) 1/720))) 1))
(log1p.f64 (expm1.f64 (*.f64 re (*.f64 (pow.f64 im 6) 1/720))))
(-.f64 (exp.f64 (log1p.f64 (/.f64 1/4 (pow.f64 re 2)))) 1)
(/.f64 1/2 (*.f64 re (*.f64 re 2)))
(/.f64 1/2 (*.f64 (*.f64 re 2) re))
(/.f64 1/2 (/.f64 re (/.f64 1/2 re)))
(/.f64 (/.f64 1/2 re) (*.f64 re 2))
(/.f64 1 (*.f64 (*.f64 re 2) (*.f64 re 2)))
(/.f64 1 (/.f64 (pow.f64 re 2) 1/4))
(/.f64 1 (/.f64 re (/.f64 1/4 re)))
(/.f64 1/4 (pow.f64 re 2))
(/.f64 1/4 (*.f64 (neg.f64 re) (neg.f64 re)))
(/.f64 -1/2 (*.f64 (*.f64 re 2) (neg.f64 re)))
(/.f64 -1/2 (*.f64 (neg.f64 re) (*.f64 re 2)))
(/.f64 (/.f64 1/4 re) re)
(/.f64 -1/4 (*.f64 re (neg.f64 re)))
(/.f64 -1/4 (*.f64 (neg.f64 re) re))
(/.f64 -1/4 (neg.f64 (pow.f64 re 2)))
(/.f64 (neg.f64 (/.f64 1/4 re)) (neg.f64 re))
(/.f64 (*.f64 (/.f64 1/2 re) -1/2) (neg.f64 re))
(/.f64 (*.f64 -1/2 (/.f64 1/2 re)) (neg.f64 re))
(/.f64 (/.f64 (/.f64 1/4 re) 1) re)
(/.f64 (/.f64 (/.f64 1/4 re) (pow.f64 (cbrt.f64 re) 2)) (cbrt.f64 re))
(/.f64 (/.f64 (/.f64 1/4 re) (sqrt.f64 re)) (sqrt.f64 re))
(pow.f64 (/.f64 1/2 re) 2)
(pow.f64 (/.f64 1/4 (pow.f64 re 2)) 1)
(pow.f64 (pow.f64 (cbrt.f64 (/.f64 1/2 re)) 2) 3)
(pow.f64 (pow.f64 (/.f64 1/4 (pow.f64 re 2)) 3) 1/3)
(sqrt.f64 (pow.f64 (/.f64 1/2 re) 4))
(log.f64 (exp.f64 (/.f64 1/4 (pow.f64 re 2))))
(log.f64 (+.f64 1 (expm1.f64 (/.f64 1/4 (pow.f64 re 2)))))
(cbrt.f64 (pow.f64 (/.f64 1/4 (pow.f64 re 2)) 3))
(expm1.f64 (log1p.f64 (/.f64 1/4 (pow.f64 re 2))))
(exp.f64 (*.f64 2 (log.f64 (/.f64 1/2 re))))
(exp.f64 (*.f64 (log.f64 (/.f64 1/2 re)) 2))
(exp.f64 (*.f64 (*.f64 2 (log.f64 (/.f64 1/2 re))) 1))
(log1p.f64 (expm1.f64 (/.f64 1/4 (pow.f64 re 2))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 re (*.f64 1/2 (pow.f64 im 2))))) 1)
(pow.f64 (*.f64 re (*.f64 1/2 (pow.f64 im 2))) 1)
(pow.f64 (cbrt.f64 (*.f64 re (*.f64 1/2 (pow.f64 im 2)))) 3)
(pow.f64 (pow.f64 (*.f64 re (*.f64 1/2 (pow.f64 im 2))) 3) 1/3)
(pow.f64 (*.f64 im (sqrt.f64 (*.f64 re 1/2))) 2)
(sqrt.f64 (*.f64 (pow.f64 im 4) (*.f64 (pow.f64 re 2) 1/4)))
(log.f64 (pow.f64 (exp.f64 (pow.f64 im 2)) (*.f64 re 1/2)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 re (*.f64 1/2 (pow.f64 im 2))))))
(cbrt.f64 (pow.f64 (*.f64 re (*.f64 1/2 (pow.f64 im 2))) 3))
(cbrt.f64 (*.f64 (pow.f64 im 6) (pow.f64 (*.f64 re 1/2) 3)))
(cbrt.f64 (*.f64 (pow.f64 (*.f64 re 1/2) 3) (pow.f64 im 6)))
(expm1.f64 (log1p.f64 (*.f64 re (*.f64 1/2 (pow.f64 im 2)))))
(exp.f64 (log.f64 (*.f64 re (*.f64 1/2 (pow.f64 im 2)))))
(exp.f64 (*.f64 (log.f64 (*.f64 re (*.f64 1/2 (pow.f64 im 2)))) 1))
(log1p.f64 (expm1.f64 (*.f64 re (*.f64 1/2 (pow.f64 im 2)))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))) 1)
(pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) 1)
(pow.f64 (cbrt.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))) 3)
(pow.f64 (pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) 3) 1/3)
(pow.f64 (*.f64 im (sqrt.f64 (*.f64 1/2 (sin.f64 re)))) 2)
(sqrt.f64 (*.f64 (pow.f64 im 4) (*.f64 (pow.f64 (sin.f64 re) 2) 1/4)))
(log.f64 (pow.f64 (exp.f64 (pow.f64 im 2)) (*.f64 1/2 (sin.f64 re))))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))))
(cbrt.f64 (pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) 3))
(cbrt.f64 (*.f64 (pow.f64 im 6) (pow.f64 (*.f64 1/2 (sin.f64 re)) 3)))
(cbrt.f64 (*.f64 (pow.f64 (*.f64 1/2 (sin.f64 re)) 3) (pow.f64 im 6)))
(expm1.f64 (log1p.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))))
(exp.f64 (log.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))))
(exp.f64 (*.f64 (log.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))) 1))
(log1p.f64 (expm1.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (pow.f64 im 4) 1/24))) 1)
(pow.f64 (*.f64 (pow.f64 im 4) 1/24) 1)
(pow.f64 (cbrt.f64 (*.f64 (pow.f64 im 4) 1/24)) 3)
(pow.f64 (pow.f64 (*.f64 (pow.f64 im 4) 1/24) 3) 1/3)
(pow.f64 (*.f64 (pow.f64 im 2) (sqrt.f64 1/24)) 2)
(sqrt.f64 (*.f64 (pow.f64 im 8) 1/576))
(log.f64 (pow.f64 (exp.f64 1/24) (pow.f64 im 4)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (pow.f64 im 4) 1/24))))
(cbrt.f64 (pow.f64 (*.f64 (pow.f64 im 4) 1/24) 3))
(expm1.f64 (log1p.f64 (*.f64 (pow.f64 im 4) 1/24)))
(exp.f64 (log.f64 (*.f64 (pow.f64 im 4) 1/24)))
(exp.f64 (*.f64 (log.f64 (*.f64 (pow.f64 im 4) 1/24)) 1))
(log1p.f64 (expm1.f64 (*.f64 (pow.f64 im 4) 1/24)))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (pow.f64 im 6) 1/720))) 1)
(pow.f64 (*.f64 (pow.f64 im 6) 1/720) 1)
(pow.f64 (*.f64 (pow.f64 im 2) (cbrt.f64 1/720)) 3)
(pow.f64 (pow.f64 (*.f64 (pow.f64 im 6) 1/720) 3) 1/3)
(pow.f64 (*.f64 (pow.f64 im 3) (sqrt.f64 1/720)) 2)
(sqrt.f64 (*.f64 (pow.f64 im 12) 1/518400))
(log.f64 (pow.f64 (exp.f64 1/720) (pow.f64 im 6)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (pow.f64 im 6) 1/720))))
(cbrt.f64 (pow.f64 (*.f64 (pow.f64 im 6) 1/720) 3))
(expm1.f64 (log1p.f64 (*.f64 (pow.f64 im 6) 1/720)))
(exp.f64 (log.f64 (*.f64 (pow.f64 im 6) 1/720)))
(exp.f64 (*.f64 (log.f64 (*.f64 (pow.f64 im 6) 1/720)) 1))
(log1p.f64 (expm1.f64 (*.f64 (pow.f64 im 6) 1/720)))
Outputs
(/.f64 1/4 (pow.f64 re 2))
(/.f64 1/4 (pow.f64 re 2))
(/.f64 1/4 (pow.f64 re 2))
(/.f64 1/4 (pow.f64 re 2))
(/.f64 1/4 (pow.f64 re 2))
(/.f64 1/4 (pow.f64 re 2))
(/.f64 1/4 (pow.f64 re 2))
(/.f64 1/4 (pow.f64 re 2))
(/.f64 1/4 (pow.f64 re 2))
(/.f64 1/4 (pow.f64 re 2))
(/.f64 1/4 (pow.f64 re 2))
(/.f64 1/4 (pow.f64 re 2))
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 re (*.f64 1/2 (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 re (*.f64 1/2 (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 re (*.f64 1/2 (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 re (*.f64 1/2 (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 re (*.f64 1/2 (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 re (*.f64 1/2 (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 re (*.f64 1/2 (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 re (*.f64 1/2 (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 re (*.f64 1/2 (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 re (*.f64 1/2 (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 re (*.f64 1/2 (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 re (*.f64 1/2 (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 re (*.f64 1/2 (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 re (*.f64 1/2 (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 re (*.f64 1/2 (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 re (*.f64 1/2 (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 re (*.f64 1/2 (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 re (*.f64 1/2 (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 re (*.f64 1/2 (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 re (*.f64 1/2 (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 re (*.f64 1/2 (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 re (*.f64 1/2 (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 re (*.f64 1/2 (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 re (*.f64 1/2 (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 re (*.f64 1/2 (pow.f64 im 2)))
(+.f64 (*.f64 -1/12 (*.f64 (pow.f64 im 2) (pow.f64 re 3))) (*.f64 1/2 (*.f64 (pow.f64 im 2) re)))
(fma.f64 -1/12 (*.f64 (pow.f64 im 2) (pow.f64 re 3)) (*.f64 re (*.f64 1/2 (pow.f64 im 2))))
(fma.f64 re (*.f64 1/2 (pow.f64 im 2)) (*.f64 (pow.f64 im 2) (*.f64 (pow.f64 re 3) -1/12)))
(+.f64 (*.f64 -1/12 (*.f64 (pow.f64 im 2) (pow.f64 re 3))) (+.f64 (*.f64 1/240 (*.f64 (pow.f64 im 2) (pow.f64 re 5))) (*.f64 1/2 (*.f64 (pow.f64 im 2) re))))
(fma.f64 -1/12 (*.f64 (pow.f64 im 2) (pow.f64 re 3)) (fma.f64 1/240 (*.f64 (pow.f64 im 2) (pow.f64 re 5)) (*.f64 re (*.f64 1/2 (pow.f64 im 2)))))
(fma.f64 -1/12 (*.f64 (pow.f64 im 2) (pow.f64 re 3)) (fma.f64 re (*.f64 1/2 (pow.f64 im 2)) (*.f64 (pow.f64 im 2) (*.f64 (pow.f64 re 5) 1/240))))
(fma.f64 re (*.f64 1/2 (pow.f64 im 2)) (fma.f64 (pow.f64 im 2) (*.f64 (pow.f64 re 3) -1/12) (*.f64 (pow.f64 im 2) (*.f64 (pow.f64 re 5) 1/240))))
(+.f64 (*.f64 -1/12 (*.f64 (pow.f64 im 2) (pow.f64 re 3))) (+.f64 (*.f64 -1/10080 (*.f64 (pow.f64 im 2) (pow.f64 re 7))) (+.f64 (*.f64 1/240 (*.f64 (pow.f64 im 2) (pow.f64 re 5))) (*.f64 1/2 (*.f64 (pow.f64 im 2) re)))))
(fma.f64 -1/12 (*.f64 (pow.f64 im 2) (pow.f64 re 3)) (fma.f64 -1/10080 (*.f64 (pow.f64 im 2) (pow.f64 re 7)) (fma.f64 1/240 (*.f64 (pow.f64 im 2) (pow.f64 re 5)) (*.f64 re (*.f64 1/2 (pow.f64 im 2))))))
(fma.f64 -1/12 (*.f64 (pow.f64 im 2) (pow.f64 re 3)) (fma.f64 -1/10080 (*.f64 (pow.f64 im 2) (pow.f64 re 7)) (fma.f64 re (*.f64 1/2 (pow.f64 im 2)) (*.f64 (pow.f64 im 2) (*.f64 (pow.f64 re 5) 1/240)))))
(fma.f64 (pow.f64 im 2) (*.f64 (pow.f64 re 3) -1/12) (fma.f64 (pow.f64 im 2) (*.f64 (pow.f64 re 7) -1/10080) (fma.f64 re (*.f64 1/2 (pow.f64 im 2)) (*.f64 (pow.f64 im 2) (*.f64 (pow.f64 re 5) 1/240)))))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re)))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (pow.f64 im 4) re))) 1)
(*.f64 re (pow.f64 im 4))
(pow.f64 (*.f64 (pow.f64 im 4) re) 1)
(*.f64 re (pow.f64 im 4))
(pow.f64 (cbrt.f64 (*.f64 (pow.f64 im 4) re)) 3)
(*.f64 re (pow.f64 im 4))
(pow.f64 (pow.f64 (*.f64 (pow.f64 im 4) re) 3) 1/3)
(*.f64 re (pow.f64 im 4))
(pow.f64 (*.f64 (pow.f64 im 2) (sqrt.f64 re)) 2)
(*.f64 re (pow.f64 im 4))
(sqrt.f64 (*.f64 (pow.f64 im 8) (pow.f64 re 2)))
(sqrt.f64 (*.f64 (pow.f64 re 2) (pow.f64 im 8)))
(fabs.f64 (*.f64 re (pow.f64 im 4)))
(log.f64 (pow.f64 (exp.f64 re) (pow.f64 im 4)))
(*.f64 re (pow.f64 im 4))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (pow.f64 im 4) re))))
(*.f64 re (pow.f64 im 4))
(cbrt.f64 (pow.f64 (*.f64 (pow.f64 im 4) re) 3))
(*.f64 re (pow.f64 im 4))
(cbrt.f64 (*.f64 (pow.f64 im 12) (pow.f64 re 3)))
(*.f64 re (pow.f64 im 4))
(cbrt.f64 (*.f64 (pow.f64 re 3) (pow.f64 im 12)))
(*.f64 re (pow.f64 im 4))
(expm1.f64 (log1p.f64 (*.f64 (pow.f64 im 4) re)))
(*.f64 re (pow.f64 im 4))
(exp.f64 (log.f64 (*.f64 (pow.f64 im 4) re)))
(*.f64 re (pow.f64 im 4))
(exp.f64 (*.f64 (log.f64 (*.f64 (pow.f64 im 4) re)) 1))
(*.f64 re (pow.f64 im 4))
(log1p.f64 (expm1.f64 (*.f64 (pow.f64 im 4) re)))
(*.f64 re (pow.f64 im 4))
(-.f64 (exp.f64 (log1p.f64 (*.f64 re (pow.f64 im 6)))) 1)
(*.f64 re (pow.f64 im 6))
(pow.f64 (*.f64 re (pow.f64 im 6)) 1)
(*.f64 re (pow.f64 im 6))
(pow.f64 (*.f64 (pow.f64 im 2) (cbrt.f64 re)) 3)
(*.f64 re (pow.f64 im 6))
(pow.f64 (pow.f64 (*.f64 re (pow.f64 im 6)) 3) 1/3)
(*.f64 re (pow.f64 im 6))
(pow.f64 (*.f64 (pow.f64 im 3) (sqrt.f64 re)) 2)
(*.f64 re (pow.f64 im 6))
(sqrt.f64 (*.f64 (pow.f64 im 12) (pow.f64 re 2)))
(sqrt.f64 (*.f64 (pow.f64 re 2) (pow.f64 im 12)))
(fabs.f64 (*.f64 re (pow.f64 im 6)))
(log.f64 (pow.f64 (exp.f64 re) (pow.f64 im 6)))
(*.f64 re (pow.f64 im 6))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 re (pow.f64 im 6)))))
(*.f64 re (pow.f64 im 6))
(cbrt.f64 (pow.f64 (*.f64 re (pow.f64 im 6)) 3))
(*.f64 re (pow.f64 im 6))
(cbrt.f64 (*.f64 (pow.f64 re 3) (pow.f64 (pow.f64 im 6) 3)))
(*.f64 re (pow.f64 im 6))
(cbrt.f64 (*.f64 (pow.f64 (pow.f64 im 6) 3) (pow.f64 re 3)))
(*.f64 re (pow.f64 im 6))
(expm1.f64 (log1p.f64 (*.f64 re (pow.f64 im 6))))
(*.f64 re (pow.f64 im 6))
(exp.f64 (log.f64 (*.f64 re (pow.f64 im 6))))
(*.f64 re (pow.f64 im 6))
(exp.f64 (*.f64 (log.f64 (*.f64 re (pow.f64 im 6))) 1))
(*.f64 re (pow.f64 im 6))
(log1p.f64 (expm1.f64 (*.f64 re (pow.f64 im 6))))
(*.f64 re (pow.f64 im 6))
(-.f64 (exp.f64 (log1p.f64 (*.f64 re (*.f64 (pow.f64 im 6) 1/720)))) 1)
(*.f64 re (*.f64 (pow.f64 im 6) 1/720))
(*.f64 (pow.f64 im 6) (*.f64 re 1/720))
(pow.f64 (*.f64 re (*.f64 (pow.f64 im 6) 1/720)) 1)
(*.f64 re (*.f64 (pow.f64 im 6) 1/720))
(*.f64 (pow.f64 im 6) (*.f64 re 1/720))
(pow.f64 (cbrt.f64 (*.f64 re (*.f64 (pow.f64 im 6) 1/720))) 3)
(*.f64 re (*.f64 (pow.f64 im 6) 1/720))
(*.f64 (pow.f64 im 6) (*.f64 re 1/720))
(pow.f64 (pow.f64 (*.f64 re (*.f64 (pow.f64 im 6) 1/720)) 3) 1/3)
(*.f64 re (*.f64 (pow.f64 im 6) 1/720))
(*.f64 (pow.f64 im 6) (*.f64 re 1/720))
(pow.f64 (sqrt.f64 (*.f64 re (*.f64 (pow.f64 im 6) 1/720))) 2)
(*.f64 re (*.f64 (pow.f64 im 6) 1/720))
(*.f64 (pow.f64 im 6) (*.f64 re 1/720))
(sqrt.f64 (*.f64 (*.f64 (pow.f64 im 12) 1/518400) (pow.f64 re 2)))
(sqrt.f64 (*.f64 (pow.f64 re 2) (*.f64 (pow.f64 im 12) 1/518400)))
(fabs.f64 (*.f64 re (*.f64 (pow.f64 im 6) 1/720)))
(log.f64 (pow.f64 (pow.f64 (exp.f64 1/720) (pow.f64 im 6)) re))
(*.f64 re (*.f64 (pow.f64 im 6) 1/720))
(*.f64 (pow.f64 im 6) (*.f64 re 1/720))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 re (*.f64 (pow.f64 im 6) 1/720)))))
(*.f64 re (*.f64 (pow.f64 im 6) 1/720))
(*.f64 (pow.f64 im 6) (*.f64 re 1/720))
(cbrt.f64 (pow.f64 (*.f64 re (*.f64 (pow.f64 im 6) 1/720)) 3))
(*.f64 re (*.f64 (pow.f64 im 6) 1/720))
(*.f64 (pow.f64 im 6) (*.f64 re 1/720))
(cbrt.f64 (*.f64 (pow.f64 (*.f64 (pow.f64 im 6) 1/720) 3) (pow.f64 re 3)))
(*.f64 re (*.f64 (pow.f64 im 6) 1/720))
(*.f64 (pow.f64 im 6) (*.f64 re 1/720))
(expm1.f64 (log1p.f64 (*.f64 re (*.f64 (pow.f64 im 6) 1/720))))
(*.f64 re (*.f64 (pow.f64 im 6) 1/720))
(*.f64 (pow.f64 im 6) (*.f64 re 1/720))
(exp.f64 (log.f64 (*.f64 re (*.f64 (pow.f64 im 6) 1/720))))
(*.f64 re (*.f64 (pow.f64 im 6) 1/720))
(*.f64 (pow.f64 im 6) (*.f64 re 1/720))
(exp.f64 (*.f64 (log.f64 (*.f64 re (*.f64 (pow.f64 im 6) 1/720))) 1))
(*.f64 re (*.f64 (pow.f64 im 6) 1/720))
(*.f64 (pow.f64 im 6) (*.f64 re 1/720))
(log1p.f64 (expm1.f64 (*.f64 re (*.f64 (pow.f64 im 6) 1/720))))
(*.f64 re (*.f64 (pow.f64 im 6) 1/720))
(*.f64 (pow.f64 im 6) (*.f64 re 1/720))
(-.f64 (exp.f64 (log1p.f64 (/.f64 1/4 (pow.f64 re 2)))) 1)
(/.f64 1/4 (pow.f64 re 2))
(/.f64 1/2 (*.f64 re (*.f64 re 2)))
(/.f64 1/4 (pow.f64 re 2))
(/.f64 1/2 (*.f64 (*.f64 re 2) re))
(/.f64 1/4 (pow.f64 re 2))
(/.f64 1/2 (/.f64 re (/.f64 1/2 re)))
(/.f64 1/4 (pow.f64 re 2))
(/.f64 (/.f64 1/2 re) (*.f64 re 2))
(/.f64 1/4 (pow.f64 re 2))
(/.f64 1 (*.f64 (*.f64 re 2) (*.f64 re 2)))
(/.f64 1/4 (pow.f64 re 2))
(/.f64 1 (/.f64 (pow.f64 re 2) 1/4))
(/.f64 1/4 (pow.f64 re 2))
(/.f64 1 (/.f64 re (/.f64 1/4 re)))
(/.f64 1/4 (pow.f64 re 2))
(/.f64 1/4 (pow.f64 re 2))
(/.f64 1/4 (*.f64 (neg.f64 re) (neg.f64 re)))
(/.f64 1/4 (pow.f64 re 2))
(/.f64 -1/2 (*.f64 (*.f64 re 2) (neg.f64 re)))
(/.f64 1/4 (pow.f64 re 2))
(/.f64 -1/2 (*.f64 (neg.f64 re) (*.f64 re 2)))
(/.f64 1/4 (pow.f64 re 2))
(/.f64 (/.f64 1/4 re) re)
(/.f64 1/4 (pow.f64 re 2))
(/.f64 -1/4 (*.f64 re (neg.f64 re)))
(/.f64 1/4 (pow.f64 re 2))
(/.f64 -1/4 (*.f64 (neg.f64 re) re))
(/.f64 1/4 (pow.f64 re 2))
(/.f64 -1/4 (neg.f64 (pow.f64 re 2)))
(/.f64 1/4 (pow.f64 re 2))
(/.f64 (neg.f64 (/.f64 1/4 re)) (neg.f64 re))
(/.f64 1/4 (pow.f64 re 2))
(/.f64 (*.f64 (/.f64 1/2 re) -1/2) (neg.f64 re))
(/.f64 1/4 (pow.f64 re 2))
(/.f64 (*.f64 -1/2 (/.f64 1/2 re)) (neg.f64 re))
(/.f64 1/4 (pow.f64 re 2))
(/.f64 (/.f64 (/.f64 1/4 re) 1) re)
(/.f64 1/4 (pow.f64 re 2))
(/.f64 (/.f64 (/.f64 1/4 re) (pow.f64 (cbrt.f64 re) 2)) (cbrt.f64 re))
(/.f64 1/4 (pow.f64 re 2))
(/.f64 (/.f64 (/.f64 1/4 re) (sqrt.f64 re)) (sqrt.f64 re))
(/.f64 1/4 (pow.f64 re 2))
(pow.f64 (/.f64 1/2 re) 2)
(/.f64 1/4 (pow.f64 re 2))
(pow.f64 (/.f64 1/4 (pow.f64 re 2)) 1)
(/.f64 1/4 (pow.f64 re 2))
(pow.f64 (pow.f64 (cbrt.f64 (/.f64 1/2 re)) 2) 3)
(/.f64 1/4 (pow.f64 re 2))
(pow.f64 (pow.f64 (/.f64 1/4 (pow.f64 re 2)) 3) 1/3)
(/.f64 1/4 (pow.f64 re 2))
(sqrt.f64 (pow.f64 (/.f64 1/2 re) 4))
(/.f64 1/4 (pow.f64 re 2))
(log.f64 (exp.f64 (/.f64 1/4 (pow.f64 re 2))))
(/.f64 1/4 (pow.f64 re 2))
(log.f64 (+.f64 1 (expm1.f64 (/.f64 1/4 (pow.f64 re 2)))))
(/.f64 1/4 (pow.f64 re 2))
(cbrt.f64 (pow.f64 (/.f64 1/4 (pow.f64 re 2)) 3))
(/.f64 1/4 (pow.f64 re 2))
(expm1.f64 (log1p.f64 (/.f64 1/4 (pow.f64 re 2))))
(/.f64 1/4 (pow.f64 re 2))
(exp.f64 (*.f64 2 (log.f64 (/.f64 1/2 re))))
(/.f64 1/4 (pow.f64 re 2))
(exp.f64 (*.f64 (log.f64 (/.f64 1/2 re)) 2))
(/.f64 1/4 (pow.f64 re 2))
(exp.f64 (*.f64 (*.f64 2 (log.f64 (/.f64 1/2 re))) 1))
(/.f64 1/4 (pow.f64 re 2))
(log1p.f64 (expm1.f64 (/.f64 1/4 (pow.f64 re 2))))
(/.f64 1/4 (pow.f64 re 2))
(-.f64 (exp.f64 (log1p.f64 (*.f64 re (*.f64 1/2 (pow.f64 im 2))))) 1)
(*.f64 re (*.f64 1/2 (pow.f64 im 2)))
(pow.f64 (*.f64 re (*.f64 1/2 (pow.f64 im 2))) 1)
(*.f64 re (*.f64 1/2 (pow.f64 im 2)))
(pow.f64 (cbrt.f64 (*.f64 re (*.f64 1/2 (pow.f64 im 2)))) 3)
(*.f64 re (*.f64 1/2 (pow.f64 im 2)))
(pow.f64 (pow.f64 (*.f64 re (*.f64 1/2 (pow.f64 im 2))) 3) 1/3)
(*.f64 re (*.f64 1/2 (pow.f64 im 2)))
(pow.f64 (*.f64 im (sqrt.f64 (*.f64 re 1/2))) 2)
(*.f64 re (*.f64 1/2 (pow.f64 im 2)))
(sqrt.f64 (*.f64 (pow.f64 im 4) (*.f64 (pow.f64 re 2) 1/4)))
(sqrt.f64 (*.f64 (pow.f64 im 4) (*.f64 1/4 (pow.f64 re 2))))
(sqrt.f64 (*.f64 1/4 (*.f64 (pow.f64 re 2) (pow.f64 im 4))))
(fabs.f64 (*.f64 re (*.f64 1/2 (pow.f64 im 2))))
(log.f64 (pow.f64 (exp.f64 (pow.f64 im 2)) (*.f64 re 1/2)))
(*.f64 re (*.f64 1/2 (pow.f64 im 2)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 re (*.f64 1/2 (pow.f64 im 2))))))
(*.f64 re (*.f64 1/2 (pow.f64 im 2)))
(cbrt.f64 (pow.f64 (*.f64 re (*.f64 1/2 (pow.f64 im 2))) 3))
(*.f64 re (*.f64 1/2 (pow.f64 im 2)))
(cbrt.f64 (*.f64 (pow.f64 im 6) (pow.f64 (*.f64 re 1/2) 3)))
(*.f64 re (*.f64 1/2 (pow.f64 im 2)))
(cbrt.f64 (*.f64 (pow.f64 (*.f64 re 1/2) 3) (pow.f64 im 6)))
(*.f64 re (*.f64 1/2 (pow.f64 im 2)))
(expm1.f64 (log1p.f64 (*.f64 re (*.f64 1/2 (pow.f64 im 2)))))
(*.f64 re (*.f64 1/2 (pow.f64 im 2)))
(exp.f64 (log.f64 (*.f64 re (*.f64 1/2 (pow.f64 im 2)))))
(*.f64 re (*.f64 1/2 (pow.f64 im 2)))
(exp.f64 (*.f64 (log.f64 (*.f64 re (*.f64 1/2 (pow.f64 im 2)))) 1))
(*.f64 re (*.f64 1/2 (pow.f64 im 2)))
(log1p.f64 (expm1.f64 (*.f64 re (*.f64 1/2 (pow.f64 im 2)))))
(*.f64 re (*.f64 1/2 (pow.f64 im 2)))
(-.f64 (exp.f64 (log1p.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))) 1)
(*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re)))
(pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) 1)
(*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re)))
(pow.f64 (cbrt.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))) 3)
(*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re)))
(pow.f64 (pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) 3) 1/3)
(*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re)))
(pow.f64 (*.f64 im (sqrt.f64 (*.f64 1/2 (sin.f64 re)))) 2)
(*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re)))
(sqrt.f64 (*.f64 (pow.f64 im 4) (*.f64 (pow.f64 (sin.f64 re) 2) 1/4)))
(sqrt.f64 (*.f64 (pow.f64 im 4) (*.f64 1/4 (pow.f64 (sin.f64 re) 2))))
(fabs.f64 (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))))
(log.f64 (pow.f64 (exp.f64 (pow.f64 im 2)) (*.f64 1/2 (sin.f64 re))))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re)))
(cbrt.f64 (pow.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) 3))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re)))
(cbrt.f64 (*.f64 (pow.f64 im 6) (pow.f64 (*.f64 1/2 (sin.f64 re)) 3)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re)))
(cbrt.f64 (*.f64 (pow.f64 (*.f64 1/2 (sin.f64 re)) 3) (pow.f64 im 6)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re)))
(expm1.f64 (log1p.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re)))
(exp.f64 (log.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re)))
(exp.f64 (*.f64 (log.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))) 1))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re)))
(log1p.f64 (expm1.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re)))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (pow.f64 im 4) 1/24))) 1)
(*.f64 (pow.f64 im 4) 1/24)
(pow.f64 (*.f64 (pow.f64 im 4) 1/24) 1)
(*.f64 (pow.f64 im 4) 1/24)
(pow.f64 (cbrt.f64 (*.f64 (pow.f64 im 4) 1/24)) 3)
(*.f64 (pow.f64 im 4) 1/24)
(pow.f64 (pow.f64 (*.f64 (pow.f64 im 4) 1/24) 3) 1/3)
(*.f64 (pow.f64 im 4) 1/24)
(pow.f64 (*.f64 (pow.f64 im 2) (sqrt.f64 1/24)) 2)
(*.f64 (pow.f64 im 4) 1/24)
(sqrt.f64 (*.f64 (pow.f64 im 8) 1/576))
(log.f64 (pow.f64 (exp.f64 1/24) (pow.f64 im 4)))
(*.f64 (pow.f64 im 4) 1/24)
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (pow.f64 im 4) 1/24))))
(*.f64 (pow.f64 im 4) 1/24)
(cbrt.f64 (pow.f64 (*.f64 (pow.f64 im 4) 1/24) 3))
(*.f64 (pow.f64 im 4) 1/24)
(expm1.f64 (log1p.f64 (*.f64 (pow.f64 im 4) 1/24)))
(*.f64 (pow.f64 im 4) 1/24)
(exp.f64 (log.f64 (*.f64 (pow.f64 im 4) 1/24)))
(*.f64 (pow.f64 im 4) 1/24)
(exp.f64 (*.f64 (log.f64 (*.f64 (pow.f64 im 4) 1/24)) 1))
(*.f64 (pow.f64 im 4) 1/24)
(log1p.f64 (expm1.f64 (*.f64 (pow.f64 im 4) 1/24)))
(*.f64 (pow.f64 im 4) 1/24)
(-.f64 (exp.f64 (log1p.f64 (*.f64 (pow.f64 im 6) 1/720))) 1)
(*.f64 (pow.f64 im 6) 1/720)
(pow.f64 (*.f64 (pow.f64 im 6) 1/720) 1)
(*.f64 (pow.f64 im 6) 1/720)
(pow.f64 (*.f64 (pow.f64 im 2) (cbrt.f64 1/720)) 3)
(*.f64 (pow.f64 im 6) 1/720)
(pow.f64 (pow.f64 (*.f64 (pow.f64 im 6) 1/720) 3) 1/3)
(*.f64 (pow.f64 im 6) 1/720)
(pow.f64 (*.f64 (pow.f64 im 3) (sqrt.f64 1/720)) 2)
(*.f64 (pow.f64 im 6) 1/720)
(sqrt.f64 (*.f64 (pow.f64 im 12) 1/518400))
(fabs.f64 (*.f64 (pow.f64 im 6) 1/720))
(log.f64 (pow.f64 (exp.f64 1/720) (pow.f64 im 6)))
(*.f64 (pow.f64 im 6) 1/720)
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (pow.f64 im 6) 1/720))))
(*.f64 (pow.f64 im 6) 1/720)
(cbrt.f64 (pow.f64 (*.f64 (pow.f64 im 6) 1/720) 3))
(*.f64 (pow.f64 im 6) 1/720)
(expm1.f64 (log1p.f64 (*.f64 (pow.f64 im 6) 1/720)))
(*.f64 (pow.f64 im 6) 1/720)
(exp.f64 (log.f64 (*.f64 (pow.f64 im 6) 1/720)))
(*.f64 (pow.f64 im 6) 1/720)
(exp.f64 (*.f64 (log.f64 (*.f64 (pow.f64 im 6) 1/720)) 1))
(*.f64 (pow.f64 im 6) 1/720)
(log1p.f64 (expm1.f64 (*.f64 (pow.f64 im 6) 1/720)))
(*.f64 (pow.f64 im 6) 1/720)

eval97.0ms (1.2%)

Compiler

Compiled 4326 to 3275 computations (24.3% saved)

prune50.0ms (0.6%)

Pruning

21 alts after pruning (10 fresh and 11 done)

PrunedKeptTotal
New2107217
Fresh134
Picked145
Done178
Total21321234
Accuracy
99.6%
Counts
234 → 21
Alt Table
Click to see full alt table
StatusAccuracyProgram
18.1%
(pow.f64 (*.f64 im (sqrt.f64 (*.f64 re 1/2))) 2)
17.8%
(/.f64 (/.f64 1/4 re) re)
17.8%
(/.f64 1 (/.f64 re (/.f64 1/4 re)))
17.8%
(/.f64 -1/4 (*.f64 (neg.f64 re) re))
46.4%
(+.f64 (*.f64 (*.f64 1/720 (pow.f64 im 6)) (sin.f64 re)) 12)
46.4%
(+.f64 (*.f64 1/720 (*.f64 (pow.f64 im 6) (sin.f64 re))) 12)
10.3%
(+.f64 (sin.f64 re) (sin.f64 re))
56.7%
(+.f64 re (+.f64 (*.f64 1/720 (*.f64 (pow.f64 im 6) re)) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) re)) (*.f64 1/2 (*.f64 (pow.f64 im 2) re)))))
43.0%
(+.f64 re (*.f64 1/2 (*.f64 (pow.f64 im 2) re)))
49.5%
(*.f64 (fma.f64 im im 2) (+.f64 (*.f64 1/2 re) (*.f64 -1/12 (pow.f64 re 3))))
18.1%
(*.f64 (pow.f64 re -2) 1/4)
26.0%
(*.f64 (pow.f64 im 2) (*.f64 1/2 (sin.f64 re)))
22.9%
(*.f64 (pow.f64 im 2) (*.f64 1/2 re))
17.8%
(*.f64 (/.f64 1/2 re) (/.f64 1/2 re))
71.0%
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2))
99.6%
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
43.0%
(*.f64 (*.f64 1/2 re) (fma.f64 im im 2))
60.8%
(*.f64 (*.f64 1/2 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
26.0%
(sqrt.f64 (pow.f64 (/.f64 1/2 re) 4))
48.5%
(sin.f64 re)
23.2%
re
Compiler

Compiled 490 to 346 computations (29.4% saved)

regimes162.0ms (2%)

Counts
29 → 1
Calls
Call 1
Inputs
re
(/.f64 (/.f64 1/4 re) re)
(/.f64 -1/4 (*.f64 (neg.f64 re) re))
(*.f64 (/.f64 1/2 re) (/.f64 1/2 re))
(/.f64 1 (/.f64 re (/.f64 1/4 re)))
(sin.f64 re)
(*.f64 (pow.f64 re -2) 1/4)
(/.f64 1/4 (pow.f64 re 2))
(*.f64 (pow.f64 im 2) (*.f64 1/2 re))
(*.f64 (*.f64 1/2 re) (fma.f64 im im 2))
(+.f64 re (*.f64 1/2 (*.f64 (pow.f64 im 2) re)))
(+.f64 (sin.f64 re) (sin.f64 re))
(sqrt.f64 (/.f64 1/16 (pow.f64 re 4)))
(sqrt.f64 (pow.f64 (/.f64 1/2 re) 4))
(pow.f64 (*.f64 (sin.f64 re) -2) -2)
(*.f64 (pow.f64 im 2) (*.f64 1/2 (sin.f64 re)))
(pow.f64 (*.f64 im (sqrt.f64 (*.f64 re 1/2))) 2)
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2))
(*.f64 (*.f64 1/2 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(+.f64 (*.f64 1/720 (*.f64 (pow.f64 im 6) (sin.f64 re))) 12)
(+.f64 (*.f64 (*.f64 1/720 (pow.f64 im 6)) (sin.f64 re)) 12)
(*.f64 (fma.f64 im im 2) (+.f64 (*.f64 1/2 re) (*.f64 -1/12 (pow.f64 re 3))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(+.f64 (sin.f64 re) (*.f64 (*.f64 1/2 (pow.f64 im 2)) (sin.f64 re)))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (-.f64 0 im)) (exp.f64 im)))
(+.f64 (*.f64 (sin.f64 re) (+.f64 (*.f64 1/720 (pow.f64 im 6)) (*.f64 1/24 (pow.f64 im 4)))) 12)
(+.f64 re (+.f64 (*.f64 1/720 (*.f64 (pow.f64 im 6) re)) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) re)) (*.f64 1/2 (*.f64 (pow.f64 im 2) re)))))
(/.f64 (*.f64 (sin.f64 re) -2) (+.f64 (*.f64 (sin.f64 re) -2) (-.f64 (*.f64 (sin.f64 re) -2) (*.f64 (sin.f64 re) -2))))
(+.f64 (*.f64 (sin.f64 re) (+.f64 (*.f64 1/720 (pow.f64 im 6)) (*.f64 1/24 (pow.f64 im 4)))) (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) 1) (sin.f64 re)))
Outputs
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
Calls

6 calls:

73.0ms
re
32.0ms
(sin.f64 re)
17.0ms
(*.f64 1/2 (sin.f64 re))
16.0ms
im
11.0ms
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (-.f64 0 im)) (exp.f64 im)))
Results
AccuracySegmentsBranch
99.6%1re
99.6%1im
99.6%1(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (-.f64 0 im)) (exp.f64 im)))
99.6%1(*.f64 1/2 (sin.f64 re))
99.6%1(sin.f64 re)
99.6%1(+.f64 (exp.f64 (-.f64 0 im)) (exp.f64 im))
Compiler

Compiled 314 to 212 computations (32.5% saved)

regimes208.0ms (2.6%)

Counts
22 → 3
Calls
Call 1
Inputs
re
(/.f64 (/.f64 1/4 re) re)
(/.f64 -1/4 (*.f64 (neg.f64 re) re))
(*.f64 (/.f64 1/2 re) (/.f64 1/2 re))
(/.f64 1 (/.f64 re (/.f64 1/4 re)))
(sin.f64 re)
(*.f64 (pow.f64 re -2) 1/4)
(/.f64 1/4 (pow.f64 re 2))
(*.f64 (pow.f64 im 2) (*.f64 1/2 re))
(*.f64 (*.f64 1/2 re) (fma.f64 im im 2))
(+.f64 re (*.f64 1/2 (*.f64 (pow.f64 im 2) re)))
(+.f64 (sin.f64 re) (sin.f64 re))
(sqrt.f64 (/.f64 1/16 (pow.f64 re 4)))
(sqrt.f64 (pow.f64 (/.f64 1/2 re) 4))
(pow.f64 (*.f64 (sin.f64 re) -2) -2)
(*.f64 (pow.f64 im 2) (*.f64 1/2 (sin.f64 re)))
(pow.f64 (*.f64 im (sqrt.f64 (*.f64 re 1/2))) 2)
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2))
(*.f64 (*.f64 1/2 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(+.f64 (*.f64 1/720 (*.f64 (pow.f64 im 6) (sin.f64 re))) 12)
(+.f64 (*.f64 (*.f64 1/720 (pow.f64 im 6)) (sin.f64 re)) 12)
(*.f64 (fma.f64 im im 2) (+.f64 (*.f64 1/2 re) (*.f64 -1/12 (pow.f64 re 3))))
Outputs
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2))
(*.f64 (*.f64 1/2 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(+.f64 (*.f64 1/720 (*.f64 (pow.f64 im 6) (sin.f64 re))) 12)
Calls

4 calls:

104.0ms
(sin.f64 re)
38.0ms
im
36.0ms
(*.f64 1/2 (sin.f64 re))
23.0ms
re
Results
AccuracySegmentsBranch
86.3%2re
95.4%3im
86.3%3(*.f64 1/2 (sin.f64 re))
86.3%3(sin.f64 re)
Compiler

Compiled 172 to 118 computations (31.4% saved)

regimes38.0ms (0.5%)

Counts
19 → 3
Calls
Call 1
Inputs
re
(/.f64 (/.f64 1/4 re) re)
(/.f64 -1/4 (*.f64 (neg.f64 re) re))
(*.f64 (/.f64 1/2 re) (/.f64 1/2 re))
(/.f64 1 (/.f64 re (/.f64 1/4 re)))
(sin.f64 re)
(*.f64 (pow.f64 re -2) 1/4)
(/.f64 1/4 (pow.f64 re 2))
(*.f64 (pow.f64 im 2) (*.f64 1/2 re))
(*.f64 (*.f64 1/2 re) (fma.f64 im im 2))
(+.f64 re (*.f64 1/2 (*.f64 (pow.f64 im 2) re)))
(+.f64 (sin.f64 re) (sin.f64 re))
(sqrt.f64 (/.f64 1/16 (pow.f64 re 4)))
(sqrt.f64 (pow.f64 (/.f64 1/2 re) 4))
(pow.f64 (*.f64 (sin.f64 re) -2) -2)
(*.f64 (pow.f64 im 2) (*.f64 1/2 (sin.f64 re)))
(pow.f64 (*.f64 im (sqrt.f64 (*.f64 re 1/2))) 2)
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2))
(*.f64 (*.f64 1/2 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
Outputs
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2))
(*.f64 (*.f64 1/2 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (pow.f64 im 2) (*.f64 1/2 (sin.f64 re)))
Calls

1 calls:

32.0ms
im
Results
AccuracySegmentsBranch
91.0%3im
Compiler

Compiled 125 to 84 computations (32.8% saved)

regimes123.0ms (1.5%)

Counts
18 → 3
Calls
Call 1
Inputs
re
(/.f64 (/.f64 1/4 re) re)
(/.f64 -1/4 (*.f64 (neg.f64 re) re))
(*.f64 (/.f64 1/2 re) (/.f64 1/2 re))
(/.f64 1 (/.f64 re (/.f64 1/4 re)))
(sin.f64 re)
(*.f64 (pow.f64 re -2) 1/4)
(/.f64 1/4 (pow.f64 re 2))
(*.f64 (pow.f64 im 2) (*.f64 1/2 re))
(*.f64 (*.f64 1/2 re) (fma.f64 im im 2))
(+.f64 re (*.f64 1/2 (*.f64 (pow.f64 im 2) re)))
(+.f64 (sin.f64 re) (sin.f64 re))
(sqrt.f64 (/.f64 1/16 (pow.f64 re 4)))
(sqrt.f64 (pow.f64 (/.f64 1/2 re) 4))
(pow.f64 (*.f64 (sin.f64 re) -2) -2)
(*.f64 (pow.f64 im 2) (*.f64 1/2 (sin.f64 re)))
(pow.f64 (*.f64 im (sqrt.f64 (*.f64 re 1/2))) 2)
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2))
Outputs
(*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2))
(sqrt.f64 (pow.f64 (/.f64 1/2 re) 4))
(*.f64 (pow.f64 im 2) (*.f64 1/2 (sin.f64 re)))
Calls

4 calls:

31.0ms
(sin.f64 re)
31.0ms
im
28.0ms
re
28.0ms
(*.f64 1/2 (sin.f64 re))
Results
AccuracySegmentsBranch
73.3%3(*.f64 1/2 (sin.f64 re))
73.3%3(sin.f64 re)
72.9%2re
84.1%3im
Compiler

Compiled 128 to 87 computations (32% saved)

regimes35.0ms (0.4%)

Counts
17 → 3
Calls
Call 1
Inputs
re
(/.f64 (/.f64 1/4 re) re)
(/.f64 -1/4 (*.f64 (neg.f64 re) re))
(*.f64 (/.f64 1/2 re) (/.f64 1/2 re))
(/.f64 1 (/.f64 re (/.f64 1/4 re)))
(sin.f64 re)
(*.f64 (pow.f64 re -2) 1/4)
(/.f64 1/4 (pow.f64 re 2))
(*.f64 (pow.f64 im 2) (*.f64 1/2 re))
(*.f64 (*.f64 1/2 re) (fma.f64 im im 2))
(+.f64 re (*.f64 1/2 (*.f64 (pow.f64 im 2) re)))
(+.f64 (sin.f64 re) (sin.f64 re))
(sqrt.f64 (/.f64 1/16 (pow.f64 re 4)))
(sqrt.f64 (pow.f64 (/.f64 1/2 re) 4))
(pow.f64 (*.f64 (sin.f64 re) -2) -2)
(*.f64 (pow.f64 im 2) (*.f64 1/2 (sin.f64 re)))
(pow.f64 (*.f64 im (sqrt.f64 (*.f64 re 1/2))) 2)
Outputs
(sin.f64 re)
(sqrt.f64 (pow.f64 (/.f64 1/2 re) 4))
(*.f64 (pow.f64 im 2) (*.f64 1/2 (sin.f64 re)))
Calls

1 calls:

27.0ms
im
Results
AccuracySegmentsBranch
83.7%3im
Compiler

Compiled 106 to 72 computations (32.1% saved)

regimes28.0ms (0.4%)

Counts
15 → 3
Calls
Call 1
Inputs
re
(/.f64 (/.f64 1/4 re) re)
(/.f64 -1/4 (*.f64 (neg.f64 re) re))
(*.f64 (/.f64 1/2 re) (/.f64 1/2 re))
(/.f64 1 (/.f64 re (/.f64 1/4 re)))
(sin.f64 re)
(*.f64 (pow.f64 re -2) 1/4)
(/.f64 1/4 (pow.f64 re 2))
(*.f64 (pow.f64 im 2) (*.f64 1/2 re))
(*.f64 (*.f64 1/2 re) (fma.f64 im im 2))
(+.f64 re (*.f64 1/2 (*.f64 (pow.f64 im 2) re)))
(+.f64 (sin.f64 re) (sin.f64 re))
(sqrt.f64 (/.f64 1/16 (pow.f64 re 4)))
(sqrt.f64 (pow.f64 (/.f64 1/2 re) 4))
(pow.f64 (*.f64 (sin.f64 re) -2) -2)
Outputs
(sin.f64 re)
(sqrt.f64 (pow.f64 (/.f64 1/2 re) 4))
(*.f64 (pow.f64 im 2) (*.f64 1/2 re))
Calls

1 calls:

25.0ms
im
Results
AccuracySegmentsBranch
78.7%3im
Compiler

Compiled 90 to 61 computations (32.2% saved)

regimes26.0ms (0.3%)

Counts
13 → 3
Calls
Call 1
Inputs
re
(/.f64 (/.f64 1/4 re) re)
(/.f64 -1/4 (*.f64 (neg.f64 re) re))
(*.f64 (/.f64 1/2 re) (/.f64 1/2 re))
(/.f64 1 (/.f64 re (/.f64 1/4 re)))
(sin.f64 re)
(*.f64 (pow.f64 re -2) 1/4)
(/.f64 1/4 (pow.f64 re 2))
(*.f64 (pow.f64 im 2) (*.f64 1/2 re))
(*.f64 (*.f64 1/2 re) (fma.f64 im im 2))
(+.f64 re (*.f64 1/2 (*.f64 (pow.f64 im 2) re)))
(+.f64 (sin.f64 re) (sin.f64 re))
(sqrt.f64 (/.f64 1/16 (pow.f64 re 4)))
Outputs
(sin.f64 re)
(sqrt.f64 (/.f64 1/16 (pow.f64 re 4)))
(*.f64 (pow.f64 im 2) (*.f64 1/2 re))
Calls

1 calls:

23.0ms
im
Results
AccuracySegmentsBranch
78.7%3im
Compiler

Compiled 78 to 52 computations (33.3% saved)

regimes51.0ms (0.6%)

Counts
12 → 3
Calls
Call 1
Inputs
re
(/.f64 (/.f64 1/4 re) re)
(/.f64 -1/4 (*.f64 (neg.f64 re) re))
(*.f64 (/.f64 1/2 re) (/.f64 1/2 re))
(/.f64 1 (/.f64 re (/.f64 1/4 re)))
(sin.f64 re)
(*.f64 (pow.f64 re -2) 1/4)
(/.f64 1/4 (pow.f64 re 2))
(*.f64 (pow.f64 im 2) (*.f64 1/2 re))
(*.f64 (*.f64 1/2 re) (fma.f64 im im 2))
(+.f64 re (*.f64 1/2 (*.f64 (pow.f64 im 2) re)))
(+.f64 (sin.f64 re) (sin.f64 re))
Outputs
(sin.f64 re)
(/.f64 (/.f64 1/4 re) re)
(*.f64 (pow.f64 im 2) (*.f64 1/2 re))
Calls

2 calls:

27.0ms
re
21.0ms
im
Results
AccuracySegmentsBranch
64.2%3re
74.0%3im
Compiler

Compiled 75 to 49 computations (34.7% saved)

regimes30.0ms (0.4%)

Counts
8 → 2
Calls
Call 1
Inputs
re
(/.f64 (/.f64 1/4 re) re)
(/.f64 -1/4 (*.f64 (neg.f64 re) re))
(*.f64 (/.f64 1/2 re) (/.f64 1/2 re))
(/.f64 1 (/.f64 re (/.f64 1/4 re)))
(sin.f64 re)
(*.f64 (pow.f64 re -2) 1/4)
(/.f64 1/4 (pow.f64 re 2))
Outputs
(sin.f64 re)
(*.f64 (pow.f64 re -2) 1/4)
Calls

2 calls:

16.0ms
(sin.f64 re)
11.0ms
im
Results
AccuracySegmentsBranch
53.7%3(sin.f64 re)
63.6%2im
Compiler

Compiled 47 to 33 computations (29.8% saved)

regimes11.0ms (0.1%)

Counts
6 → 2
Calls
Call 1
Inputs
re
(/.f64 (/.f64 1/4 re) re)
(/.f64 -1/4 (*.f64 (neg.f64 re) re))
(*.f64 (/.f64 1/2 re) (/.f64 1/2 re))
(/.f64 1 (/.f64 re (/.f64 1/4 re)))
(sin.f64 re)
Outputs
(sin.f64 re)
(/.f64 (/.f64 1/4 re) re)
Calls

1 calls:

9.0ms
im
Results
AccuracySegmentsBranch
63.3%2im
Compiler

Compiled 33 to 22 computations (33.3% saved)

regimes20.0ms (0.3%)

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

2 calls:

10.0ms
im
8.0ms
re
Results
AccuracySegmentsBranch
27.7%2re
38.2%2im
Compiler

Compiled 34 to 23 computations (32.4% saved)

regimes10.0ms (0.1%)

Accuracy

Total -0.0b remaining (-0%)

Threshold costs -0b (-0%)

Counts
1 → 1
Calls
Call 1
Inputs
re
Outputs
re
Calls

2 calls:

6.0ms
im
3.0ms
re
Results
AccuracySegmentsBranch
23.2%1re
23.2%1im
Compiler

Compiled 9 to 6 computations (33.3% saved)

bsearch37.0ms (0.5%)

Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
15.0ms
3.3936681417236246e+50
1.8179539677101247e+51
22.0ms
3.107135112534312e-7
1.4064679894641393e-5
Results
18.0ms112×body256valid
14.0ms96×body256infinite
Compiler

Compiled 350 to 274 computations (21.7% saved)

bsearch43.0ms (0.5%)

Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
21.0ms
2.7376322543004033e+153
6.574296138691106e+156
21.0ms
3.107135112534312e-7
1.4064679894641393e-5
Results
20.0ms128×body256infinite
19.0ms112×body256valid
Compiler

Compiled 386 to 300 computations (22.3% saved)

bsearch146.0ms (1.8%)

Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
116.0ms
2.7376322543004033e+153
6.574296138691106e+156
24.0ms
0.014158093171518171
886.5750784699289
Results
120.0ms157×body256infinite
15.0ms99×body256valid
Compiler

Compiled 347 to 287 computations (17.3% saved)

bsearch44.0ms (0.5%)

Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
21.0ms
2.7376322543004033e+153
6.574296138691106e+156
23.0ms
0.014158093171518171
886.5750784699289
Results
21.0ms140×body256infinite
19.0ms116×body256valid
Compiler

Compiled 291 to 247 computations (15.1% saved)

bsearch37.0ms (0.5%)

Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
13.0ms
1.9147762952683502e+164
6.71036520374277e+164
24.0ms
0.014158093171518171
886.5750784699289
Results
18.0ms100×body256valid
16.0ms108×body256infinite
Compiler

Compiled 226 to 191 computations (15.5% saved)

bsearch37.0ms (0.5%)

Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
14.0ms
1.9147762952683502e+164
6.71036520374277e+164
22.0ms
0.014158093171518171
886.5750784699289
Results
18.0ms106×body256infinite
16.0ms102×body256valid
Compiler

Compiled 226 to 191 computations (15.5% saved)

bsearch44.0ms (0.5%)

Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
21.0ms
2.7376322543004033e+153
6.574296138691106e+156
22.0ms
0.014158093171518171
886.5750784699289
Results
23.0ms147×body256infinite
17.0ms109×body256valid
Compiler

Compiled 267 to 207 computations (22.5% saved)

bsearch23.0ms (0.3%)

Algorithm
binary-search
Stop Event
narrow-enough
Steps
TimeLeftRight
23.0ms
0.014158093171518171
886.5750784699289
Results
20.0ms119×body256valid
2.0msbody256infinite
Compiler

Compiled 123 to 103 computations (16.3% saved)

bsearch22.0ms (0.3%)

Algorithm
binary-search
Stop Event
narrow-enough
Steps
TimeLeftRight
22.0ms
0.014158093171518171
886.5750784699289
Results
20.0ms128×body256valid
Compiler

Compiled 123 to 95 computations (22.8% saved)

bsearch64.0ms (0.8%)

Algorithm
binary-search
Stop Event
narrow-enough
Steps
TimeLeftRight
64.0ms
0.014158093171518171
886.5750784699289
Results
59.0ms114×body256valid
3.0ms14×body256infinite
Compiler

Compiled 115 to 87 computations (24.3% saved)

simplify17.0ms (0.2%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
088836
1104836
2106836
3107836
Stop Event
fuel
saturated
Calls
Call 1
Inputs
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(if (<=.f64 im 8264141345021879/590295810358705651712) (*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2)) (if (<=.f64 im 1800000000000000054259107403096724002821428209516544) (*.f64 (*.f64 1/2 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) (+.f64 (*.f64 1/720 (*.f64 (pow.f64 im 6) (sin.f64 re))) 12)))
(if (<=.f64 im 8264141345021879/590295810358705651712) (*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2)) (if (<=.f64 im 13500000000000000275507010685175621526490118987092636456657125042259125821644957267949903389666459196246900088209596760608108317076954234449082739494748160) (*.f64 (*.f64 1/2 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) (*.f64 (pow.f64 im 2) (*.f64 1/2 (sin.f64 re)))))
(if (<=.f64 im 850) (*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2)) (if (<=.f64 im 13500000000000000275507010685175621526490118987092636456657125042259125821644957267949903389666459196246900088209596760608108317076954234449082739494748160) (sqrt.f64 (pow.f64 (/.f64 1/2 re) 4)) (*.f64 (pow.f64 im 2) (*.f64 1/2 (sin.f64 re)))))
(if (<=.f64 im 700) (sin.f64 re) (if (<=.f64 im 13500000000000000275507010685175621526490118987092636456657125042259125821644957267949903389666459196246900088209596760608108317076954234449082739494748160) (sqrt.f64 (pow.f64 (/.f64 1/2 re) 4)) (*.f64 (pow.f64 im 2) (*.f64 1/2 (sin.f64 re)))))
(if (<=.f64 im 760) (sin.f64 re) (if (<=.f64 im 194999999999999992675744002718061573359985751052902202778113183738319430201726265470677812735148389387095670331793039237114758985792759387881873677923608753703223296) (sqrt.f64 (pow.f64 (/.f64 1/2 re) 4)) (*.f64 (pow.f64 im 2) (*.f64 1/2 re))))
(if (<=.f64 im 760) (sin.f64 re) (if (<=.f64 im 194999999999999992675744002718061573359985751052902202778113183738319430201726265470677812735148389387095670331793039237114758985792759387881873677923608753703223296) (sqrt.f64 (/.f64 1/16 (pow.f64 re 4))) (*.f64 (pow.f64 im 2) (*.f64 1/2 re))))
(if (<=.f64 im 750) (sin.f64 re) (if (<=.f64 im 6499999999999999719161049397287453370620661395276097269059678718228267768803517965508491801624883972626487488270977439799743564805626369953577577700392960) (/.f64 (/.f64 1/4 re) re) (*.f64 (pow.f64 im 2) (*.f64 1/2 re))))
(if (<=.f64 im 680) (sin.f64 re) (*.f64 (pow.f64 re -2) 1/4))
(if (<=.f64 im 550) (sin.f64 re) (/.f64 (/.f64 1/4 re) re))
(if (<=.f64 im 700) re (/.f64 (/.f64 1/4 re) re))
re
Outputs
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(if (<=.f64 im 8264141345021879/590295810358705651712) (*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2)) (if (<=.f64 im 1800000000000000054259107403096724002821428209516544) (*.f64 (*.f64 1/2 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) (+.f64 (*.f64 1/720 (*.f64 (pow.f64 im 6) (sin.f64 re))) 12)))
(if (<=.f64 im 8264141345021879/590295810358705651712) (*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2)) (if (<=.f64 im 1800000000000000054259107403096724002821428209516544) (*.f64 (*.f64 1/2 re) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) (+.f64 (*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6))) 12)))
(if (<=.f64 im 8264141345021879/590295810358705651712) (*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2)) (if (<=.f64 im 13500000000000000275507010685175621526490118987092636456657125042259125821644957267949903389666459196246900088209596760608108317076954234449082739494748160) (*.f64 (*.f64 1/2 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) (*.f64 (pow.f64 im 2) (*.f64 1/2 (sin.f64 re)))))
(if (<=.f64 im 8264141345021879/590295810358705651712) (*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2)) (if (<=.f64 im 13500000000000000275507010685175621526490118987092636456657125042259125821644957267949903389666459196246900088209596760608108317076954234449082739494748160) (*.f64 (*.f64 1/2 re) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) (*.f64 (*.f64 1/2 (sin.f64 re)) (pow.f64 im 2))))
(if (<=.f64 im 850) (*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2)) (if (<=.f64 im 13500000000000000275507010685175621526490118987092636456657125042259125821644957267949903389666459196246900088209596760608108317076954234449082739494748160) (sqrt.f64 (pow.f64 (/.f64 1/2 re) 4)) (*.f64 (pow.f64 im 2) (*.f64 1/2 (sin.f64 re)))))
(if (<=.f64 im 850) (*.f64 (*.f64 1/2 (sin.f64 re)) (fma.f64 im im 2)) (if (<=.f64 im 13500000000000000275507010685175621526490118987092636456657125042259125821644957267949903389666459196246900088209596760608108317076954234449082739494748160) (sqrt.f64 (pow.f64 (/.f64 1/2 re) 4)) (*.f64 (*.f64 1/2 (sin.f64 re)) (pow.f64 im 2))))
(if (<=.f64 im 700) (sin.f64 re) (if (<=.f64 im 13500000000000000275507010685175621526490118987092636456657125042259125821644957267949903389666459196246900088209596760608108317076954234449082739494748160) (sqrt.f64 (pow.f64 (/.f64 1/2 re) 4)) (*.f64 (pow.f64 im 2) (*.f64 1/2 (sin.f64 re)))))
(if (<=.f64 im 700) (sin.f64 re) (if (<=.f64 im 13500000000000000275507010685175621526490118987092636456657125042259125821644957267949903389666459196246900088209596760608108317076954234449082739494748160) (sqrt.f64 (pow.f64 (/.f64 1/2 re) 4)) (*.f64 (*.f64 1/2 (sin.f64 re)) (pow.f64 im 2))))
(if (<=.f64 im 760) (sin.f64 re) (if (<=.f64 im 194999999999999992675744002718061573359985751052902202778113183738319430201726265470677812735148389387095670331793039237114758985792759387881873677923608753703223296) (sqrt.f64 (pow.f64 (/.f64 1/2 re) 4)) (*.f64 (pow.f64 im 2) (*.f64 1/2 re))))
(if (<=.f64 im 760) (sin.f64 re) (if (<=.f64 im 194999999999999992675744002718061573359985751052902202778113183738319430201726265470677812735148389387095670331793039237114758985792759387881873677923608753703223296) (sqrt.f64 (pow.f64 (/.f64 1/2 re) 4)) (*.f64 (*.f64 1/2 re) (pow.f64 im 2))))
(if (<=.f64 im 760) (sin.f64 re) (if (<=.f64 im 194999999999999992675744002718061573359985751052902202778113183738319430201726265470677812735148389387095670331793039237114758985792759387881873677923608753703223296) (sqrt.f64 (/.f64 1/16 (pow.f64 re 4))) (*.f64 (pow.f64 im 2) (*.f64 1/2 re))))
(if (<=.f64 im 760) (sin.f64 re) (if (<=.f64 im 194999999999999992675744002718061573359985751052902202778113183738319430201726265470677812735148389387095670331793039237114758985792759387881873677923608753703223296) (sqrt.f64 (/.f64 1/16 (pow.f64 re 4))) (*.f64 (*.f64 1/2 re) (pow.f64 im 2))))
(if (<=.f64 im 750) (sin.f64 re) (if (<=.f64 im 6499999999999999719161049397287453370620661395276097269059678718228267768803517965508491801624883972626487488270977439799743564805626369953577577700392960) (/.f64 (/.f64 1/4 re) re) (*.f64 (pow.f64 im 2) (*.f64 1/2 re))))
(if (<=.f64 im 750) (sin.f64 re) (if (<=.f64 im 6499999999999999719161049397287453370620661395276097269059678718228267768803517965508491801624883972626487488270977439799743564805626369953577577700392960) (/.f64 (/.f64 1/4 re) re) (*.f64 (*.f64 1/2 re) (pow.f64 im 2))))
(if (<=.f64 im 680) (sin.f64 re) (*.f64 (pow.f64 re -2) 1/4))
(if (<=.f64 im 680) (sin.f64 re) (*.f64 1/4 (pow.f64 re -2)))
(if (<=.f64 im 550) (sin.f64 re) (/.f64 (/.f64 1/4 re) re))
(if (<=.f64 im 700) re (/.f64 (/.f64 1/4 re) re))
re
Compiler

Compiled 263 to 191 computations (27.4% saved)

soundness2.0s (25%)

Rules
2266×fma-def
1990×log-prod
1990×log-prod
1612×fma-def
1530×div-sub
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
036316
1111308
2397308
31003298
42231294
55114294
67594294
01121901
13261772
29881772
346611772
01669
120269
2329669
023124
1285124
23424124
029165
1377165
24563165
023124
1285124
23424124
01624152
14013585
212563422
338243422
450343422
564003422
03285956
17665713
228925456
361835456
023124
1285124
23424124
029165
1377165
24563165
01121901
13261772
29881772
346611772
03285956
17665713
228925456
361835456
01121901
13261772
29881772
346611772
035217
1501217
Stop Event
node limit
node limit
node limit
node limit
node limit
node limit
node limit
node limit
node limit
node limit
node limit
unsound
node limit
node limit
Compiler

Compiled 558 to 408 computations (26.9% saved)

end0.0ms (0%)

preprocess219.0ms (2.8%)

Remove

(negabs re)

(abs im)

Compiler

Compiled 666 to 446 computations (33% saved)

Profiling

Loading profile data...