math.sin on complex, real part

Time bar (total: 5.5s)

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

Precisions
Click to see histograms. Total time spent on operations: 0.0ms
ival-sub: 0.0ms (0% of total)
ival-exp: 0.0ms (0% of total)
ival-add: 0.0ms (0% of total)
ival-mult: 0.0ms (0% of total)
const: 0.0ms (0% of total)
ival-sin: 0.0ms (0% of total)

sample1.4s (24.9%)

Results
989.0ms8256×0valid
Precisions
Click to see histograms. Total time spent on operations: 748.0ms
ival-sin: 257.0ms (34.3% of total)
ival-exp: 150.0ms (20% of total)
ival-add: 141.0ms (18.8% of total)
ival-mult: 135.0ms (18% of total)
ival-sub: 46.0ms (6.1% of total)
const: 15.0ms (2% of total)
backward-pass: 4.0ms (0.5% of total)
Bogosity

preprocess316.0ms (5.8%)

Algorithm
egg-herbie
Rules
989×fma-neg
725×fma-define
264×times-frac
215×distribute-lft-neg-in
170×unsub-neg
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
036316
1111308
2397308
3986298
41988294
53213294
63708294
74185294
84839294
94992294
105009294
115009294
125041294
135070294
145070294
Stop Event
saturated
Calls
Call 1
Inputs
(*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) (+.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) (exp.f64 im)))
(*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) (+.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) (exp.f64 im)))
(*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 (neg.f64 re))) (+.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) (exp.f64 im)))
(*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) (+.f64 (exp.f64 (-.f64 #s(literal 0 binary64) (neg.f64 im))) (exp.f64 (neg.f64 im))))
(neg.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 (neg.f64 re))) (+.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) (exp.f64 im))))
(neg.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) (+.f64 (exp.f64 (-.f64 #s(literal 0 binary64) (neg.f64 im))) (exp.f64 (neg.f64 im)))))
(*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 im)) (+.f64 (exp.f64 (-.f64 #s(literal 0 binary64) re)) (exp.f64 re)))
Outputs
(*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) (+.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) (exp.f64 im)))
(*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(*.f64 (sin.f64 re) (fma.f64 #s(literal 1/2 binary64) (exp.f64 im) (/.f64 #s(literal 1/2 binary64) (exp.f64 im))))
(*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) (+.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) (exp.f64 im)))
(*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(*.f64 (sin.f64 re) (fma.f64 #s(literal 1/2 binary64) (exp.f64 im) (/.f64 #s(literal 1/2 binary64) (exp.f64 im))))
(*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 (neg.f64 re))) (+.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) (exp.f64 im)))
(*.f64 #s(literal 1/2 binary64) (*.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) #s(literal -1/2 binary64)))
(*.f64 (sin.f64 re) (*.f64 #s(literal -1/2 binary64) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))
(*.f64 (sin.f64 re) (fma.f64 (exp.f64 im) #s(literal -1/2 binary64) (/.f64 #s(literal -1/2 binary64) (exp.f64 im))))
(*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) (+.f64 (exp.f64 (-.f64 #s(literal 0 binary64) (neg.f64 im))) (exp.f64 (neg.f64 im))))
(*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(*.f64 (sin.f64 re) (fma.f64 #s(literal 1/2 binary64) (exp.f64 im) (/.f64 #s(literal 1/2 binary64) (exp.f64 im))))
(neg.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 (neg.f64 re))) (+.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) (exp.f64 im))))
(*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(*.f64 (sin.f64 re) (fma.f64 #s(literal 1/2 binary64) (exp.f64 im) (/.f64 #s(literal 1/2 binary64) (exp.f64 im))))
(neg.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) (+.f64 (exp.f64 (-.f64 #s(literal 0 binary64) (neg.f64 im))) (exp.f64 (neg.f64 im)))))
(*.f64 #s(literal 1/2 binary64) (*.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) #s(literal -1/2 binary64)))
(*.f64 (sin.f64 re) (*.f64 #s(literal -1/2 binary64) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))
(*.f64 (sin.f64 re) (fma.f64 (exp.f64 im) #s(literal -1/2 binary64) (/.f64 #s(literal -1/2 binary64) (exp.f64 im))))
(*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 im)) (+.f64 (exp.f64 (-.f64 #s(literal 0 binary64) re)) (exp.f64 re)))
(*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 im)) (+.f64 (exp.f64 (neg.f64 re)) (exp.f64 re)))
(*.f64 (sin.f64 im) (*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 (neg.f64 re)) (exp.f64 re))))
(*.f64 (sin.f64 im) (fma.f64 #s(literal 1/2 binary64) (exp.f64 re) (/.f64 #s(literal 1/2 binary64) (exp.f64 re))))
Symmetry

(abs im)

(negabs re)

explain281.0ms (5.1%)

FPErrors
Click to see full error table
Ground TruthOverpredictionsExampleUnderpredictionsExampleSubexpression
01(55643475373.940605 399.11616778090104)0-(exp.f64 (-.f64 #s(literal 0 binary64) im))
00-0-#s(literal 1/2 binary64)
00-0-re
00-0-(*.f64 #s(literal 1/2 binary64) (sin.f64 re))
00-0-(-.f64 #s(literal 0 binary64) im)
00-0-im
00-0-#s(literal 0 binary64)
00-0-(sin.f64 re)
00-0-(+.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) (exp.f64 im))
00-0-(exp.f64 im)
00-0-(*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) (+.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) (exp.f64 im)))
Results
235.0ms512×256valid
Compiler

Compiled 96 to 61 computations (36.5% saved)

Precisions
Click to see histograms. Total time spent on operations: 57.0ms
ival-exp: 14.0ms (24.5% of total)
ival-sin: 13.0ms (22.7% of total)
ival-sub: 12.0ms (21% of total)
ival-mult: 11.0ms (19.2% of total)
ival-add: 5.0ms (8.7% of total)
const: 2.0ms (3.5% of total)

eval1.0ms (0%)

Compiler

Compiled 24 to 15 computations (37.5% saved)

prune1.0ms (0%)

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

Compiled 13 to 10 computations (23.1% saved)

localize191.0ms (3.5%)

Localize:

Found 1 expressions with local error:

NewAccuracyProgram
100.0%
(*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
Results
42.0ms256×256valid
Compiler

Compiled 36 to 14 computations (61.1% saved)

Precisions
Click to see histograms. Total time spent on operations: 28.0ms
ival-sin: 16.0ms (56.5% of total)
ival-mult: 6.0ms (21.2% of total)
ival-exp: 3.0ms (10.6% of total)
ival-add: 1.0ms (3.5% of total)
const: 1.0ms (3.5% of total)
ival-neg: 1.0ms (3.5% of total)

series7.0ms (0.1%)

Counts
1 → 24
Calls
Call 1
Inputs
#<alt (*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))>
Outputs
#<alt (*.f64 #s(literal 1/2 binary64) (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))>
#<alt (*.f64 re (+.f64 (*.f64 #s(literal -1/12 binary64) (*.f64 (pow.f64 re #s(literal 2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) (*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))))>
#<alt (*.f64 re (+.f64 (*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) (*.f64 (pow.f64 re #s(literal 2 binary64)) (+.f64 (*.f64 #s(literal -1/12 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) (*.f64 #s(literal 1/240 binary64) (*.f64 (pow.f64 re #s(literal 2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))))))>
#<alt (*.f64 re (+.f64 (*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) (*.f64 (pow.f64 re #s(literal 2 binary64)) (+.f64 (*.f64 #s(literal -1/12 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) (*.f64 (pow.f64 re #s(literal 2 binary64)) (+.f64 (*.f64 #s(literal -1/10080 binary64) (*.f64 (pow.f64 re #s(literal 2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) (*.f64 #s(literal 1/240 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))))))))>
#<alt (*.f64 #s(literal 1/2 binary64) (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))>
#<alt (*.f64 #s(literal 1/2 binary64) (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))>
#<alt (*.f64 #s(literal 1/2 binary64) (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))>
#<alt (*.f64 #s(literal 1/2 binary64) (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))>
#<alt (*.f64 #s(literal 1/2 binary64) (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))>
#<alt (*.f64 #s(literal 1/2 binary64) (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))>
#<alt (*.f64 #s(literal 1/2 binary64) (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))>
#<alt (*.f64 #s(literal 1/2 binary64) (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))>
#<alt (sin.f64 re)>
#<alt (+.f64 (sin.f64 re) (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) (sin.f64 re))))>
#<alt (+.f64 (sin.f64 re) (*.f64 (pow.f64 im #s(literal 2 binary64)) (+.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) (sin.f64 re))) (*.f64 #s(literal 1/2 binary64) (sin.f64 re)))))>
#<alt (+.f64 (sin.f64 re) (*.f64 (pow.f64 im #s(literal 2 binary64)) (+.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) (*.f64 (pow.f64 im #s(literal 2 binary64)) (+.f64 (*.f64 #s(literal 1/720 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) (sin.f64 re))) (*.f64 #s(literal 1/24 binary64) (sin.f64 re)))))))>
#<alt (*.f64 #s(literal 1/2 binary64) (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))>
#<alt (*.f64 #s(literal 1/2 binary64) (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))>
#<alt (*.f64 #s(literal 1/2 binary64) (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))>
#<alt (*.f64 #s(literal 1/2 binary64) (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))>
#<alt (*.f64 #s(literal 1/2 binary64) (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (*.f64 #s(literal -1 binary64) im)))))>
#<alt (*.f64 #s(literal 1/2 binary64) (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (*.f64 #s(literal -1 binary64) im)))))>
#<alt (*.f64 #s(literal 1/2 binary64) (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (*.f64 #s(literal -1 binary64) im)))))>
#<alt (*.f64 #s(literal 1/2 binary64) (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (*.f64 #s(literal -1 binary64) im)))))>
Calls

6 calls:

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

rewrite174.0ms (3.2%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
01644
120244
2330644
Stop Event
unsound
Counts
1 → 22
Calls
Call 1
Inputs
(*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
Outputs
(+.f64 (sin.f64 re) (sin.f64 re))
(+.f64 (*.f64 (sin.f64 re) #s(literal -2 binary64)) (*.f64 (sin.f64 re) #s(literal -2 binary64)))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 re) #s(literal -2 binary64)))) #s(literal 1 binary64))
(/.f64 (*.f64 (sin.f64 re) #s(literal -2 binary64)) #s(literal -2 binary64))
(/.f64 (*.f64 (sin.f64 re) #s(literal -2 binary64)) #s(literal 1 binary64))
(/.f64 (*.f64 (sin.f64 re) #s(literal -2 binary64)) (+.f64 (*.f64 (sin.f64 re) #s(literal -2 binary64)) (-.f64 (*.f64 (sin.f64 re) #s(literal -2 binary64)) (*.f64 (sin.f64 re) #s(literal -2 binary64)))))
(/.f64 (-.f64 (*.f64 (sin.f64 re) #s(literal -2 binary64)) (*.f64 (sin.f64 re) #s(literal -2 binary64))) (-.f64 (*.f64 (sin.f64 re) #s(literal -2 binary64)) (*.f64 (sin.f64 re) #s(literal -2 binary64))))
(pow.f64 (*.f64 (sin.f64 re) #s(literal -2 binary64)) #s(literal -2 binary64))
(pow.f64 (*.f64 (sin.f64 re) #s(literal -2 binary64)) #s(literal 1 binary64))
(pow.f64 (*.f64 (sin.f64 re) #s(literal -2 binary64)) #s(literal 1/3 binary64))
(sqrt.f64 (*.f64 (sin.f64 re) #s(literal -2 binary64)))
(fabs.f64 (*.f64 (sin.f64 re) #s(literal -2 binary64)))
(log.f64 (pow.f64 #s(literal 1 binary64) (sin.f64 re)))
(log.f64 (+.f64 #s(literal 1 binary64) (expm1.f64 (*.f64 (sin.f64 re) #s(literal -2 binary64)))))
(cbrt.f64 (*.f64 (sin.f64 re) #s(literal -2 binary64)))
(expm1.f64 (log1p.f64 (*.f64 (sin.f64 re) #s(literal -2 binary64))))
(log1p.f64 (expm1.f64 (*.f64 (sin.f64 re) #s(literal -2 binary64))))
(exp.f64 (log.f64 (*.f64 (sin.f64 re) #s(literal -2 binary64))))
(exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) #s(literal -2 binary64))) #s(literal 1 binary64)))
(exp.f64 (+.f64 (log.f64 (*.f64 (sin.f64 re) #s(literal -2 binary64))) #s(literal -2 binary64)))
(fma.f64 #s(literal 1 binary64) (*.f64 (sin.f64 re) #s(literal -2 binary64)) (*.f64 (sin.f64 re) #s(literal -2 binary64)))
(fma.f64 (*.f64 (sin.f64 re) #s(literal -2 binary64)) #s(literal 1 binary64) (*.f64 (sin.f64 re) #s(literal -2 binary64)))

simplify60.0ms (1.1%)

Algorithm
egg-herbie
Rules
510×fma-define
395×associate-*r*
328×associate-*r/
324×associate-*l/
307×associate-*l*
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01031556
13201402
211021402
341771402
Stop Event
node limit
Counts
46 → 48
Calls
Call 1
Inputs
(*.f64 #s(literal 1/2 binary64) (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 re (+.f64 (*.f64 #s(literal -1/12 binary64) (*.f64 (pow.f64 re #s(literal 2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) (*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))))
(*.f64 re (+.f64 (*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) (*.f64 (pow.f64 re #s(literal 2 binary64)) (+.f64 (*.f64 #s(literal -1/12 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) (*.f64 #s(literal 1/240 binary64) (*.f64 (pow.f64 re #s(literal 2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))))))
(*.f64 re (+.f64 (*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) (*.f64 (pow.f64 re #s(literal 2 binary64)) (+.f64 (*.f64 #s(literal -1/12 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) (*.f64 (pow.f64 re #s(literal 2 binary64)) (+.f64 (*.f64 #s(literal -1/10080 binary64) (*.f64 (pow.f64 re #s(literal 2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) (*.f64 #s(literal 1/240 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))))))))
(*.f64 #s(literal 1/2 binary64) (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 #s(literal 1/2 binary64) (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 #s(literal 1/2 binary64) (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 #s(literal 1/2 binary64) (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 #s(literal 1/2 binary64) (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 #s(literal 1/2 binary64) (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 #s(literal 1/2 binary64) (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 #s(literal 1/2 binary64) (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(sin.f64 re)
(+.f64 (sin.f64 re) (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) (sin.f64 re))))
(+.f64 (sin.f64 re) (*.f64 (pow.f64 im #s(literal 2 binary64)) (+.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) (sin.f64 re))) (*.f64 #s(literal 1/2 binary64) (sin.f64 re)))))
(+.f64 (sin.f64 re) (*.f64 (pow.f64 im #s(literal 2 binary64)) (+.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) (*.f64 (pow.f64 im #s(literal 2 binary64)) (+.f64 (*.f64 #s(literal 1/720 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) (sin.f64 re))) (*.f64 #s(literal 1/24 binary64) (sin.f64 re)))))))
(*.f64 #s(literal 1/2 binary64) (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 #s(literal 1/2 binary64) (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 #s(literal 1/2 binary64) (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 #s(literal 1/2 binary64) (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 #s(literal 1/2 binary64) (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (*.f64 #s(literal -1 binary64) im)))))
(*.f64 #s(literal 1/2 binary64) (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (*.f64 #s(literal -1 binary64) im)))))
(*.f64 #s(literal 1/2 binary64) (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (*.f64 #s(literal -1 binary64) im)))))
(*.f64 #s(literal 1/2 binary64) (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (*.f64 #s(literal -1 binary64) im)))))
(+.f64 (sin.f64 re) (sin.f64 re))
(+.f64 (*.f64 (sin.f64 re) #s(literal -2 binary64)) (*.f64 (sin.f64 re) #s(literal -2 binary64)))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 re) #s(literal -2 binary64)))) #s(literal 1 binary64))
(/.f64 (*.f64 (sin.f64 re) #s(literal -2 binary64)) #s(literal -2 binary64))
(/.f64 (*.f64 (sin.f64 re) #s(literal -2 binary64)) #s(literal 1 binary64))
(/.f64 (*.f64 (sin.f64 re) #s(literal -2 binary64)) (+.f64 (*.f64 (sin.f64 re) #s(literal -2 binary64)) (-.f64 (*.f64 (sin.f64 re) #s(literal -2 binary64)) (*.f64 (sin.f64 re) #s(literal -2 binary64)))))
(/.f64 (-.f64 (*.f64 (sin.f64 re) #s(literal -2 binary64)) (*.f64 (sin.f64 re) #s(literal -2 binary64))) (-.f64 (*.f64 (sin.f64 re) #s(literal -2 binary64)) (*.f64 (sin.f64 re) #s(literal -2 binary64))))
(pow.f64 (*.f64 (sin.f64 re) #s(literal -2 binary64)) #s(literal -2 binary64))
(pow.f64 (*.f64 (sin.f64 re) #s(literal -2 binary64)) #s(literal 1 binary64))
(pow.f64 (*.f64 (sin.f64 re) #s(literal -2 binary64)) #s(literal 1/3 binary64))
(sqrt.f64 (*.f64 (sin.f64 re) #s(literal -2 binary64)))
(fabs.f64 (*.f64 (sin.f64 re) #s(literal -2 binary64)))
(log.f64 (pow.f64 #s(literal 1 binary64) (sin.f64 re)))
(log.f64 (+.f64 #s(literal 1 binary64) (expm1.f64 (*.f64 (sin.f64 re) #s(literal -2 binary64)))))
(cbrt.f64 (*.f64 (sin.f64 re) #s(literal -2 binary64)))
(expm1.f64 (log1p.f64 (*.f64 (sin.f64 re) #s(literal -2 binary64))))
(log1p.f64 (expm1.f64 (*.f64 (sin.f64 re) #s(literal -2 binary64))))
(exp.f64 (log.f64 (*.f64 (sin.f64 re) #s(literal -2 binary64))))
(exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) #s(literal -2 binary64))) #s(literal 1 binary64)))
(exp.f64 (+.f64 (log.f64 (*.f64 (sin.f64 re) #s(literal -2 binary64))) #s(literal -2 binary64)))
(fma.f64 #s(literal 1 binary64) (*.f64 (sin.f64 re) #s(literal -2 binary64)) (*.f64 (sin.f64 re) #s(literal -2 binary64)))
(fma.f64 (*.f64 (sin.f64 re) #s(literal -2 binary64)) #s(literal 1 binary64) (*.f64 (sin.f64 re) #s(literal -2 binary64)))
Outputs
(*.f64 #s(literal 1/2 binary64) (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (*.f64 #s(literal 1/2 binary64) re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 re (fma.f64 #s(literal 1/2 binary64) (exp.f64 im) (/.f64 #s(literal 1/2 binary64) (exp.f64 im))))
(*.f64 re (+.f64 (*.f64 #s(literal -1/12 binary64) (*.f64 (pow.f64 re #s(literal 2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) (*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))))
(*.f64 re (fma.f64 #s(literal -1/12 binary64) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (pow.f64 re #s(literal 2 binary64))) (*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))))
(*.f64 re (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (+.f64 (*.f64 #s(literal -1/12 binary64) (pow.f64 re #s(literal 2 binary64))) #s(literal 1/2 binary64))))
(*.f64 re (+.f64 (*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) (*.f64 (pow.f64 re #s(literal 2 binary64)) (+.f64 (*.f64 #s(literal -1/12 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) (*.f64 #s(literal 1/240 binary64) (*.f64 (pow.f64 re #s(literal 2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))))))
(*.f64 re (fma.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 (pow.f64 re #s(literal 2 binary64)) (fma.f64 #s(literal -1/12 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (pow.f64 re #s(literal 2 binary64))) #s(literal 1/240 binary64))))))
(*.f64 re (fma.f64 (pow.f64 re #s(literal 2 binary64)) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (+.f64 #s(literal -1/12 binary64) (*.f64 (pow.f64 re #s(literal 2 binary64)) #s(literal 1/240 binary64)))) (fma.f64 #s(literal 1/2 binary64) (exp.f64 im) (/.f64 #s(literal 1/2 binary64) (exp.f64 im)))))
(*.f64 re (+.f64 (*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) (*.f64 (pow.f64 re #s(literal 2 binary64)) (+.f64 (*.f64 #s(literal -1/12 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) (*.f64 (pow.f64 re #s(literal 2 binary64)) (+.f64 (*.f64 #s(literal -1/10080 binary64) (*.f64 (pow.f64 re #s(literal 2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) (*.f64 #s(literal 1/240 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))))))))
(*.f64 re (fma.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 (pow.f64 re #s(literal 2 binary64)) (fma.f64 #s(literal -1/12 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 (pow.f64 re #s(literal 2 binary64)) (fma.f64 #s(literal -1/10080 binary64) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (pow.f64 re #s(literal 2 binary64))) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) #s(literal 1/240 binary64))))))))
(*.f64 re (+.f64 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (+.f64 (*.f64 #s(literal -1/12 binary64) (pow.f64 re #s(literal 2 binary64))) #s(literal 1/2 binary64))) (*.f64 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (+.f64 (*.f64 (pow.f64 re #s(literal 2 binary64)) #s(literal -1/10080 binary64)) #s(literal 1/240 binary64))) (*.f64 (pow.f64 re #s(literal 2 binary64)) (pow.f64 re #s(literal 2 binary64))))))
(*.f64 #s(literal 1/2 binary64) (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 #s(literal 1/2 binary64) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re)))
(*.f64 (fma.f64 #s(literal 1/2 binary64) (exp.f64 im) (/.f64 #s(literal 1/2 binary64) (exp.f64 im))) (sin.f64 re))
(*.f64 #s(literal 1/2 binary64) (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 #s(literal 1/2 binary64) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re)))
(*.f64 (fma.f64 #s(literal 1/2 binary64) (exp.f64 im) (/.f64 #s(literal 1/2 binary64) (exp.f64 im))) (sin.f64 re))
(*.f64 #s(literal 1/2 binary64) (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 #s(literal 1/2 binary64) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re)))
(*.f64 (fma.f64 #s(literal 1/2 binary64) (exp.f64 im) (/.f64 #s(literal 1/2 binary64) (exp.f64 im))) (sin.f64 re))
(*.f64 #s(literal 1/2 binary64) (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 #s(literal 1/2 binary64) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re)))
(*.f64 (fma.f64 #s(literal 1/2 binary64) (exp.f64 im) (/.f64 #s(literal 1/2 binary64) (exp.f64 im))) (sin.f64 re))
(*.f64 #s(literal 1/2 binary64) (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 #s(literal 1/2 binary64) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re)))
(*.f64 (fma.f64 #s(literal 1/2 binary64) (exp.f64 im) (/.f64 #s(literal 1/2 binary64) (exp.f64 im))) (sin.f64 re))
(*.f64 #s(literal 1/2 binary64) (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 #s(literal 1/2 binary64) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re)))
(*.f64 (fma.f64 #s(literal 1/2 binary64) (exp.f64 im) (/.f64 #s(literal 1/2 binary64) (exp.f64 im))) (sin.f64 re))
(*.f64 #s(literal 1/2 binary64) (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 #s(literal 1/2 binary64) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re)))
(*.f64 (fma.f64 #s(literal 1/2 binary64) (exp.f64 im) (/.f64 #s(literal 1/2 binary64) (exp.f64 im))) (sin.f64 re))
(*.f64 #s(literal 1/2 binary64) (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 #s(literal 1/2 binary64) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re)))
(*.f64 (fma.f64 #s(literal 1/2 binary64) (exp.f64 im) (/.f64 #s(literal 1/2 binary64) (exp.f64 im))) (sin.f64 re))
(sin.f64 re)
(+.f64 (sin.f64 re) (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) (sin.f64 re))))
(+.f64 (sin.f64 re) (*.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64))) (sin.f64 re)))
(*.f64 (+.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64))) #s(literal 1 binary64)) (sin.f64 re))
(+.f64 (sin.f64 re) (*.f64 (pow.f64 im #s(literal 2 binary64)) (+.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) (sin.f64 re))) (*.f64 #s(literal 1/2 binary64) (sin.f64 re)))))
(+.f64 (sin.f64 re) (*.f64 (pow.f64 im #s(literal 2 binary64)) (fma.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 re) (pow.f64 im #s(literal 2 binary64))) (*.f64 #s(literal 1/2 binary64) (sin.f64 re)))))
(fma.f64 (pow.f64 im #s(literal 2 binary64)) (*.f64 (sin.f64 re) (+.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) #s(literal 1/24 binary64)))) (sin.f64 re))
(+.f64 (sin.f64 re) (*.f64 (pow.f64 im #s(literal 2 binary64)) (+.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) (*.f64 (pow.f64 im #s(literal 2 binary64)) (+.f64 (*.f64 #s(literal 1/720 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) (sin.f64 re))) (*.f64 #s(literal 1/24 binary64) (sin.f64 re)))))))
(+.f64 (sin.f64 re) (*.f64 (pow.f64 im #s(literal 2 binary64)) (fma.f64 #s(literal 1/2 binary64) (sin.f64 re) (*.f64 (pow.f64 im #s(literal 2 binary64)) (fma.f64 #s(literal 1/720 binary64) (*.f64 (sin.f64 re) (pow.f64 im #s(literal 2 binary64))) (*.f64 (sin.f64 re) #s(literal 1/24 binary64)))))))
(fma.f64 (pow.f64 im #s(literal 2 binary64)) (fma.f64 #s(literal 1/2 binary64) (sin.f64 re) (*.f64 (pow.f64 im #s(literal 2 binary64)) (*.f64 (sin.f64 re) (+.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) #s(literal 1/720 binary64)) #s(literal 1/24 binary64))))) (sin.f64 re))
(*.f64 #s(literal 1/2 binary64) (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 #s(literal 1/2 binary64) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re)))
(*.f64 (fma.f64 #s(literal 1/2 binary64) (exp.f64 im) (/.f64 #s(literal 1/2 binary64) (exp.f64 im))) (sin.f64 re))
(*.f64 #s(literal 1/2 binary64) (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 #s(literal 1/2 binary64) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re)))
(*.f64 (fma.f64 #s(literal 1/2 binary64) (exp.f64 im) (/.f64 #s(literal 1/2 binary64) (exp.f64 im))) (sin.f64 re))
(*.f64 #s(literal 1/2 binary64) (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 #s(literal 1/2 binary64) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re)))
(*.f64 (fma.f64 #s(literal 1/2 binary64) (exp.f64 im) (/.f64 #s(literal 1/2 binary64) (exp.f64 im))) (sin.f64 re))
(*.f64 #s(literal 1/2 binary64) (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 #s(literal 1/2 binary64) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re)))
(*.f64 (fma.f64 #s(literal 1/2 binary64) (exp.f64 im) (/.f64 #s(literal 1/2 binary64) (exp.f64 im))) (sin.f64 re))
(*.f64 #s(literal 1/2 binary64) (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (*.f64 #s(literal -1 binary64) im)))))
(*.f64 #s(literal 1/2 binary64) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re)))
(*.f64 (fma.f64 #s(literal 1/2 binary64) (exp.f64 im) (/.f64 #s(literal 1/2 binary64) (exp.f64 im))) (sin.f64 re))
(*.f64 #s(literal 1/2 binary64) (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (*.f64 #s(literal -1 binary64) im)))))
(*.f64 #s(literal 1/2 binary64) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re)))
(*.f64 (fma.f64 #s(literal 1/2 binary64) (exp.f64 im) (/.f64 #s(literal 1/2 binary64) (exp.f64 im))) (sin.f64 re))
(*.f64 #s(literal 1/2 binary64) (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (*.f64 #s(literal -1 binary64) im)))))
(*.f64 #s(literal 1/2 binary64) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re)))
(*.f64 (fma.f64 #s(literal 1/2 binary64) (exp.f64 im) (/.f64 #s(literal 1/2 binary64) (exp.f64 im))) (sin.f64 re))
(*.f64 #s(literal 1/2 binary64) (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (*.f64 #s(literal -1 binary64) im)))))
(*.f64 #s(literal 1/2 binary64) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re)))
(*.f64 (fma.f64 #s(literal 1/2 binary64) (exp.f64 im) (/.f64 #s(literal 1/2 binary64) (exp.f64 im))) (sin.f64 re))
(+.f64 (sin.f64 re) (sin.f64 re))
(sin.f64 re)
(+.f64 (*.f64 (sin.f64 re) #s(literal -2 binary64)) (*.f64 (sin.f64 re) #s(literal -2 binary64)))
(sin.f64 re)
(-.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 re) #s(literal -2 binary64)))) #s(literal 1 binary64))
(sin.f64 re)
(/.f64 (*.f64 (sin.f64 re) #s(literal -2 binary64)) #s(literal -2 binary64))
(sin.f64 re)
(/.f64 (*.f64 (sin.f64 re) #s(literal -2 binary64)) #s(literal 1 binary64))
(sin.f64 re)
(/.f64 (*.f64 (sin.f64 re) #s(literal -2 binary64)) (+.f64 (*.f64 (sin.f64 re) #s(literal -2 binary64)) (-.f64 (*.f64 (sin.f64 re) #s(literal -2 binary64)) (*.f64 (sin.f64 re) #s(literal -2 binary64)))))
(sin.f64 re)
(/.f64 (-.f64 (*.f64 (sin.f64 re) #s(literal -2 binary64)) (*.f64 (sin.f64 re) #s(literal -2 binary64))) (-.f64 (*.f64 (sin.f64 re) #s(literal -2 binary64)) (*.f64 (sin.f64 re) #s(literal -2 binary64))))
(sin.f64 re)
(pow.f64 (*.f64 (sin.f64 re) #s(literal -2 binary64)) #s(literal -2 binary64))
(sin.f64 re)
(pow.f64 (*.f64 (sin.f64 re) #s(literal -2 binary64)) #s(literal 1 binary64))
(sin.f64 re)
(pow.f64 (*.f64 (sin.f64 re) #s(literal -2 binary64)) #s(literal 1/3 binary64))
(sin.f64 re)
(sqrt.f64 (*.f64 (sin.f64 re) #s(literal -2 binary64)))
(fabs.f64 (*.f64 (sin.f64 re) #s(literal -2 binary64)))
(sin.f64 re)
(log.f64 (pow.f64 #s(literal 1 binary64) (sin.f64 re)))
(sin.f64 re)
(log.f64 (+.f64 #s(literal 1 binary64) (expm1.f64 (*.f64 (sin.f64 re) #s(literal -2 binary64)))))
(sin.f64 re)
(cbrt.f64 (*.f64 (sin.f64 re) #s(literal -2 binary64)))
(sin.f64 re)
(expm1.f64 (log1p.f64 (*.f64 (sin.f64 re) #s(literal -2 binary64))))
(sin.f64 re)
(log1p.f64 (expm1.f64 (*.f64 (sin.f64 re) #s(literal -2 binary64))))
(sin.f64 re)
(exp.f64 (log.f64 (*.f64 (sin.f64 re) #s(literal -2 binary64))))
(sin.f64 re)
(exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 re) #s(literal -2 binary64))) #s(literal 1 binary64)))
(sin.f64 re)
(exp.f64 (+.f64 (log.f64 (*.f64 (sin.f64 re) #s(literal -2 binary64))) #s(literal -2 binary64)))
(sin.f64 re)
(fma.f64 #s(literal 1 binary64) (*.f64 (sin.f64 re) #s(literal -2 binary64)) (*.f64 (sin.f64 re) #s(literal -2 binary64)))
(sin.f64 re)
(fma.f64 (*.f64 (sin.f64 re) #s(literal -2 binary64)) #s(literal 1 binary64) (*.f64 (sin.f64 re) #s(literal -2 binary64)))
(sin.f64 re)

eval11.0ms (0.2%)

Compiler

Compiled 711 to 374 computations (47.4% saved)

prune14.0ms (0.3%)

Pruning

6 alts after pruning (5 fresh and 1 done)

PrunedKeptTotal
New43548
Fresh000
Picked011
Done000
Total43649
Accuracy
100.0%
Counts
49 → 6
Alt Table
Click to see full alt table
StatusAccuracyProgram
18.0%
(pow.f64 (*.f64 (sin.f64 re) #s(literal -2 binary64)) #s(literal -2 binary64))
10.3%
(+.f64 (sin.f64 re) (sin.f64 re))
71.1%
(*.f64 (+.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64))) #s(literal 1 binary64)) (sin.f64 re))
100.0%
(*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
62.3%
(*.f64 (*.f64 #s(literal 1/2 binary64) re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
47.6%
(sin.f64 re)
Compiler

Compiled 99 to 76 computations (23.2% saved)

localize266.0ms (4.9%)

Localize:

Found 4 expressions with local error:

NewAccuracyProgram
100.0%
(*.f64 (*.f64 #s(literal 1/2 binary64) re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
99.6%
(pow.f64 (*.f64 (sin.f64 re) #s(literal -2 binary64)) #s(literal -2 binary64))
100.0%
(*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)))
93.6%
(*.f64 (+.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64))) #s(literal 1 binary64)) (sin.f64 re))
Results
232.0ms256×256valid
Compiler

Compiled 89 to 44 computations (50.6% saved)

Precisions
Click to see histograms. Total time spent on operations: 62.0ms
ival-pow: 25.0ms (40.5% of total)
ival-mult: 15.0ms (24.3% of total)
ival-sin: 9.0ms (14.6% of total)
ival-add: 5.0ms (8.1% of total)
ival-exp: 4.0ms (6.5% of total)
const: 2.0ms (3.2% of total)
ival-neg: 1.0ms (1.6% of total)

series17.0ms (0.3%)

Counts
4 → 60
Calls
Call 1
Inputs
#<alt (*.f64 (+.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64))) #s(literal 1 binary64)) (sin.f64 re))>
#<alt (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)))>
#<alt (pow.f64 (*.f64 (sin.f64 re) #s(literal -2 binary64)) #s(literal -2 binary64))>
#<alt (*.f64 (*.f64 #s(literal 1/2 binary64) re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))>
Outputs
#<alt (sin.f64 re)>
#<alt (+.f64 (sin.f64 re) (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) (sin.f64 re))))>
#<alt (+.f64 (sin.f64 re) (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) (sin.f64 re))))>
#<alt (+.f64 (sin.f64 re) (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) (sin.f64 re))))>
#<alt (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) (sin.f64 re)))>
#<alt (*.f64 (pow.f64 im #s(literal 2 binary64)) (+.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) (/.f64 (sin.f64 re) (pow.f64 im #s(literal 2 binary64)))))>
#<alt (*.f64 (pow.f64 im #s(literal 2 binary64)) (+.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) (/.f64 (sin.f64 re) (pow.f64 im #s(literal 2 binary64)))))>
#<alt (*.f64 (pow.f64 im #s(literal 2 binary64)) (+.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) (/.f64 (sin.f64 re) (pow.f64 im #s(literal 2 binary64)))))>
#<alt (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) (sin.f64 re)))>
#<alt (*.f64 (pow.f64 im #s(literal 2 binary64)) (+.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) (/.f64 (sin.f64 re) (pow.f64 im #s(literal 2 binary64)))))>
#<alt (*.f64 (pow.f64 im #s(literal 2 binary64)) (+.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) (/.f64 (sin.f64 re) (pow.f64 im #s(literal 2 binary64)))))>
#<alt (*.f64 (pow.f64 im #s(literal 2 binary64)) (+.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) (/.f64 (sin.f64 re) (pow.f64 im #s(literal 2 binary64)))))>
#<alt (*.f64 re (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)))))>
#<alt (*.f64 re (+.f64 #s(literal 1 binary64) (+.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 (pow.f64 re #s(literal 2 binary64)) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)))))) (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64))))))>
#<alt (*.f64 re (+.f64 #s(literal 1 binary64) (+.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64))) (*.f64 (pow.f64 re #s(literal 2 binary64)) (+.f64 (*.f64 #s(literal -1/6 binary64) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64))))) (*.f64 #s(literal 1/120 binary64) (*.f64 (pow.f64 re #s(literal 2 binary64)) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)))))))))))>
#<alt (*.f64 re (+.f64 #s(literal 1 binary64) (+.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64))) (*.f64 (pow.f64 re #s(literal 2 binary64)) (+.f64 (*.f64 #s(literal -1/6 binary64) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64))))) (*.f64 (pow.f64 re #s(literal 2 binary64)) (+.f64 (*.f64 #s(literal -1/5040 binary64) (*.f64 (pow.f64 re #s(literal 2 binary64)) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)))))) (*.f64 #s(literal 1/120 binary64) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64))))))))))))>
#<alt (*.f64 (sin.f64 re) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)))))>
#<alt (*.f64 (sin.f64 re) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)))))>
#<alt (*.f64 (sin.f64 re) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)))))>
#<alt (*.f64 (sin.f64 re) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)))))>
#<alt (*.f64 (sin.f64 re) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)))))>
#<alt (*.f64 (sin.f64 re) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)))))>
#<alt (*.f64 (sin.f64 re) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)))))>
#<alt (*.f64 (sin.f64 re) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)))))>
#<alt (/.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal 2 binary64)))>
#<alt (/.f64 (+.f64 #s(literal 1/4 binary64) (*.f64 #s(literal 1/12 binary64) (pow.f64 re #s(literal 2 binary64)))) (pow.f64 re #s(literal 2 binary64)))>
#<alt (/.f64 (+.f64 #s(literal 1/4 binary64) (*.f64 (pow.f64 re #s(literal 2 binary64)) (+.f64 #s(literal 1/12 binary64) (*.f64 #s(literal 1/60 binary64) (pow.f64 re #s(literal 2 binary64)))))) (pow.f64 re #s(literal 2 binary64)))>
#<alt (/.f64 (+.f64 #s(literal 1/4 binary64) (*.f64 (pow.f64 re #s(literal 2 binary64)) (+.f64 #s(literal 1/12 binary64) (*.f64 (pow.f64 re #s(literal 2 binary64)) (+.f64 #s(literal 1/60 binary64) (*.f64 #s(literal 1/378 binary64) (pow.f64 re #s(literal 2 binary64)))))))) (pow.f64 re #s(literal 2 binary64)))>
#<alt (/.f64 #s(literal 1/4 binary64) (pow.f64 (sin.f64 re) #s(literal 2 binary64)))>
#<alt (/.f64 #s(literal 1/4 binary64) (pow.f64 (sin.f64 re) #s(literal 2 binary64)))>
#<alt (/.f64 #s(literal 1/4 binary64) (pow.f64 (sin.f64 re) #s(literal 2 binary64)))>
#<alt (/.f64 #s(literal 1/4 binary64) (pow.f64 (sin.f64 re) #s(literal 2 binary64)))>
#<alt (/.f64 #s(literal 1/4 binary64) (pow.f64 (sin.f64 re) #s(literal 2 binary64)))>
#<alt (/.f64 #s(literal 1/4 binary64) (pow.f64 (sin.f64 re) #s(literal 2 binary64)))>
#<alt (/.f64 #s(literal 1/4 binary64) (pow.f64 (sin.f64 re) #s(literal 2 binary64)))>
#<alt (/.f64 #s(literal 1/4 binary64) (pow.f64 (sin.f64 re) #s(literal 2 binary64)))>
#<alt (*.f64 #s(literal 1/2 binary64) (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))>
#<alt (*.f64 #s(literal 1/2 binary64) (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))>
#<alt (*.f64 #s(literal 1/2 binary64) (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))>
#<alt (*.f64 #s(literal 1/2 binary64) (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))>
#<alt (*.f64 #s(literal 1/2 binary64) (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))>
#<alt (*.f64 #s(literal 1/2 binary64) (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))>
#<alt (*.f64 #s(literal 1/2 binary64) (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))>
#<alt (*.f64 #s(literal 1/2 binary64) (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))>
#<alt (*.f64 #s(literal 1/2 binary64) (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))>
#<alt (*.f64 #s(literal 1/2 binary64) (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))>
#<alt (*.f64 #s(literal 1/2 binary64) (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))>
#<alt (*.f64 #s(literal 1/2 binary64) (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))>
#<alt re>
#<alt (+.f64 re (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) re)))>
#<alt (+.f64 re (*.f64 (pow.f64 im #s(literal 2 binary64)) (+.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) re)) (*.f64 #s(literal 1/2 binary64) re))))>
#<alt (+.f64 re (*.f64 (pow.f64 im #s(literal 2 binary64)) (+.f64 (*.f64 #s(literal 1/2 binary64) re) (*.f64 (pow.f64 im #s(literal 2 binary64)) (+.f64 (*.f64 #s(literal 1/720 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) re)) (*.f64 #s(literal 1/24 binary64) re))))))>
#<alt (*.f64 #s(literal 1/2 binary64) (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))>
#<alt (*.f64 #s(literal 1/2 binary64) (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))>
#<alt (*.f64 #s(literal 1/2 binary64) (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))>
#<alt (*.f64 #s(literal 1/2 binary64) (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))>
#<alt (*.f64 #s(literal 1/2 binary64) (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (*.f64 #s(literal -1 binary64) im)))))>
#<alt (*.f64 #s(literal 1/2 binary64) (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (*.f64 #s(literal -1 binary64) im)))))>
#<alt (*.f64 #s(literal 1/2 binary64) (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (*.f64 #s(literal -1 binary64) im)))))>
#<alt (*.f64 #s(literal 1/2 binary64) (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (*.f64 #s(literal -1 binary64) im)))))>
Calls

18 calls:

TimeVariablePointExpression
3.0ms
re
@0
(pow (* (sin re) -2) -2)
1.0ms
im
@inf
(* 1/2 (pow im 2))
1.0ms
re
@-inf
(pow (* (sin re) -2) -2)
1.0ms
re
@inf
(pow (* (sin re) -2) -2)
1.0ms
re
@inf
(* (+ (* 1/2 (pow im 2)) 1) (sin re))

rewrite43.0ms (0.8%)

Algorithm
batch-egg-rewrite
Rules
163×associate-*r*
155×log1p-expm1-u
155×expm1-log1p-u
152×add-exp-log
152×add-log-exp
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
025124
1353124
25692124
Stop Event
unsound
Counts
4 → 56
Calls
Call 1
Inputs
(*.f64 (+.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64))) #s(literal 1 binary64)) (sin.f64 re))
(*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)))
(pow.f64 (*.f64 (sin.f64 re) #s(literal -2 binary64)) #s(literal -2 binary64))
(*.f64 (*.f64 #s(literal 1/2 binary64) re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
Outputs
#s(literal -4 binary64)
#s(literal -2 binary64)
#s(literal -1 binary64)
#s(literal -1/2 binary64)
#s(literal 0 binary64)
#s(literal 1/16 binary64)
#s(literal 1/8 binary64)
#s(literal 1/4 binary64)
#s(literal 1/2 binary64)
#s(literal 1 binary64)
#s(literal 3/2 binary64)
#s(literal 2 binary64)
#s(literal 3 binary64)
#s(literal 4 binary64)
#s(literal -4 binary64)
#s(literal -2 binary64)
#s(literal -1 binary64)
#s(literal -1/2 binary64)
#s(literal 0 binary64)
#s(literal 1/16 binary64)
#s(literal 1/8 binary64)
#s(literal 1/4 binary64)
#s(literal 1/2 binary64)
#s(literal 1 binary64)
#s(literal 3/2 binary64)
#s(literal 2 binary64)
#s(literal 3 binary64)
#s(literal 4 binary64)
#s(literal -4 binary64)
#s(literal -2 binary64)
#s(literal -1 binary64)
#s(literal -1/2 binary64)
#s(literal 0 binary64)
#s(literal 1/16 binary64)
#s(literal 1/8 binary64)
#s(literal 1/4 binary64)
#s(literal 1/2 binary64)
#s(literal 1 binary64)
#s(literal 3/2 binary64)
#s(literal 2 binary64)
#s(literal 3 binary64)
#s(literal 4 binary64)
#s(literal -4 binary64)
#s(literal -2 binary64)
#s(literal -1 binary64)
#s(literal -1/2 binary64)
#s(literal 0 binary64)
#s(literal 1/16 binary64)
#s(literal 1/8 binary64)
#s(literal 1/4 binary64)
#s(literal 1/2 binary64)
#s(literal 1 binary64)
#s(literal 3/2 binary64)
#s(literal 2 binary64)
#s(literal 3 binary64)
#s(literal 4 binary64)

simplify177.0ms (3.2%)

Algorithm
egg-herbie
Rules
807×associate-+r+
722×associate-+l+
659×fma-define
527×associate-*r*
452×distribute-rgt-out
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01092555
13192252
210772203
340782179
466592179
575832179
Stop Event
node limit
Counts
116 → 68
Calls
Call 1
Inputs
(sin.f64 re)
(+.f64 (sin.f64 re) (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) (sin.f64 re))))
(+.f64 (sin.f64 re) (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) (sin.f64 re))))
(+.f64 (sin.f64 re) (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) (sin.f64 re))))
(*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) (sin.f64 re)))
(*.f64 (pow.f64 im #s(literal 2 binary64)) (+.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) (/.f64 (sin.f64 re) (pow.f64 im #s(literal 2 binary64)))))
(*.f64 (pow.f64 im #s(literal 2 binary64)) (+.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) (/.f64 (sin.f64 re) (pow.f64 im #s(literal 2 binary64)))))
(*.f64 (pow.f64 im #s(literal 2 binary64)) (+.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) (/.f64 (sin.f64 re) (pow.f64 im #s(literal 2 binary64)))))
(*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) (sin.f64 re)))
(*.f64 (pow.f64 im #s(literal 2 binary64)) (+.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) (/.f64 (sin.f64 re) (pow.f64 im #s(literal 2 binary64)))))
(*.f64 (pow.f64 im #s(literal 2 binary64)) (+.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) (/.f64 (sin.f64 re) (pow.f64 im #s(literal 2 binary64)))))
(*.f64 (pow.f64 im #s(literal 2 binary64)) (+.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) (/.f64 (sin.f64 re) (pow.f64 im #s(literal 2 binary64)))))
(*.f64 re (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)))))
(*.f64 re (+.f64 #s(literal 1 binary64) (+.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 (pow.f64 re #s(literal 2 binary64)) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)))))) (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64))))))
(*.f64 re (+.f64 #s(literal 1 binary64) (+.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64))) (*.f64 (pow.f64 re #s(literal 2 binary64)) (+.f64 (*.f64 #s(literal -1/6 binary64) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64))))) (*.f64 #s(literal 1/120 binary64) (*.f64 (pow.f64 re #s(literal 2 binary64)) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)))))))))))
(*.f64 re (+.f64 #s(literal 1 binary64) (+.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64))) (*.f64 (pow.f64 re #s(literal 2 binary64)) (+.f64 (*.f64 #s(literal -1/6 binary64) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64))))) (*.f64 (pow.f64 re #s(literal 2 binary64)) (+.f64 (*.f64 #s(literal -1/5040 binary64) (*.f64 (pow.f64 re #s(literal 2 binary64)) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)))))) (*.f64 #s(literal 1/120 binary64) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64))))))))))))
(*.f64 (sin.f64 re) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)))))
(*.f64 (sin.f64 re) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)))))
(*.f64 (sin.f64 re) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)))))
(*.f64 (sin.f64 re) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)))))
(*.f64 (sin.f64 re) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)))))
(*.f64 (sin.f64 re) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)))))
(*.f64 (sin.f64 re) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)))))
(*.f64 (sin.f64 re) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)))))
(/.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal 2 binary64)))
(/.f64 (+.f64 #s(literal 1/4 binary64) (*.f64 #s(literal 1/12 binary64) (pow.f64 re #s(literal 2 binary64)))) (pow.f64 re #s(literal 2 binary64)))
(/.f64 (+.f64 #s(literal 1/4 binary64) (*.f64 (pow.f64 re #s(literal 2 binary64)) (+.f64 #s(literal 1/12 binary64) (*.f64 #s(literal 1/60 binary64) (pow.f64 re #s(literal 2 binary64)))))) (pow.f64 re #s(literal 2 binary64)))
(/.f64 (+.f64 #s(literal 1/4 binary64) (*.f64 (pow.f64 re #s(literal 2 binary64)) (+.f64 #s(literal 1/12 binary64) (*.f64 (pow.f64 re #s(literal 2 binary64)) (+.f64 #s(literal 1/60 binary64) (*.f64 #s(literal 1/378 binary64) (pow.f64 re #s(literal 2 binary64)))))))) (pow.f64 re #s(literal 2 binary64)))
(/.f64 #s(literal 1/4 binary64) (pow.f64 (sin.f64 re) #s(literal 2 binary64)))
(/.f64 #s(literal 1/4 binary64) (pow.f64 (sin.f64 re) #s(literal 2 binary64)))
(/.f64 #s(literal 1/4 binary64) (pow.f64 (sin.f64 re) #s(literal 2 binary64)))
(/.f64 #s(literal 1/4 binary64) (pow.f64 (sin.f64 re) #s(literal 2 binary64)))
(/.f64 #s(literal 1/4 binary64) (pow.f64 (sin.f64 re) #s(literal 2 binary64)))
(/.f64 #s(literal 1/4 binary64) (pow.f64 (sin.f64 re) #s(literal 2 binary64)))
(/.f64 #s(literal 1/4 binary64) (pow.f64 (sin.f64 re) #s(literal 2 binary64)))
(/.f64 #s(literal 1/4 binary64) (pow.f64 (sin.f64 re) #s(literal 2 binary64)))
(*.f64 #s(literal 1/2 binary64) (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 #s(literal 1/2 binary64) (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 #s(literal 1/2 binary64) (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 #s(literal 1/2 binary64) (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 #s(literal 1/2 binary64) (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 #s(literal 1/2 binary64) (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 #s(literal 1/2 binary64) (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 #s(literal 1/2 binary64) (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 #s(literal 1/2 binary64) (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 #s(literal 1/2 binary64) (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 #s(literal 1/2 binary64) (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 #s(literal 1/2 binary64) (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
re
(+.f64 re (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) re)))
(+.f64 re (*.f64 (pow.f64 im #s(literal 2 binary64)) (+.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) re)) (*.f64 #s(literal 1/2 binary64) re))))
(+.f64 re (*.f64 (pow.f64 im #s(literal 2 binary64)) (+.f64 (*.f64 #s(literal 1/2 binary64) re) (*.f64 (pow.f64 im #s(literal 2 binary64)) (+.f64 (*.f64 #s(literal 1/720 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) re)) (*.f64 #s(literal 1/24 binary64) re))))))
(*.f64 #s(literal 1/2 binary64) (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 #s(literal 1/2 binary64) (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 #s(literal 1/2 binary64) (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 #s(literal 1/2 binary64) (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 #s(literal 1/2 binary64) (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (*.f64 #s(literal -1 binary64) im)))))
(*.f64 #s(literal 1/2 binary64) (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (*.f64 #s(literal -1 binary64) im)))))
(*.f64 #s(literal 1/2 binary64) (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (*.f64 #s(literal -1 binary64) im)))))
(*.f64 #s(literal 1/2 binary64) (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (*.f64 #s(literal -1 binary64) im)))))
#s(literal -4 binary64)
#s(literal -2 binary64)
#s(literal -1 binary64)
#s(literal -1/2 binary64)
#s(literal 0 binary64)
#s(literal 1/16 binary64)
#s(literal 1/8 binary64)
#s(literal 1/4 binary64)
#s(literal 1/2 binary64)
#s(literal 1 binary64)
#s(literal 3/2 binary64)
#s(literal 2 binary64)
#s(literal 3 binary64)
#s(literal 4 binary64)
#s(literal -4 binary64)
#s(literal -2 binary64)
#s(literal -1 binary64)
#s(literal -1/2 binary64)
#s(literal 0 binary64)
#s(literal 1/16 binary64)
#s(literal 1/8 binary64)
#s(literal 1/4 binary64)
#s(literal 1/2 binary64)
#s(literal 1 binary64)
#s(literal 3/2 binary64)
#s(literal 2 binary64)
#s(literal 3 binary64)
#s(literal 4 binary64)
#s(literal -4 binary64)
#s(literal -2 binary64)
#s(literal -1 binary64)
#s(literal -1/2 binary64)
#s(literal 0 binary64)
#s(literal 1/16 binary64)
#s(literal 1/8 binary64)
#s(literal 1/4 binary64)
#s(literal 1/2 binary64)
#s(literal 1 binary64)
#s(literal 3/2 binary64)
#s(literal 2 binary64)
#s(literal 3 binary64)
#s(literal 4 binary64)
#s(literal -4 binary64)
#s(literal -2 binary64)
#s(literal -1 binary64)
#s(literal -1/2 binary64)
#s(literal 0 binary64)
#s(literal 1/16 binary64)
#s(literal 1/8 binary64)
#s(literal 1/4 binary64)
#s(literal 1/2 binary64)
#s(literal 1 binary64)
#s(literal 3/2 binary64)
#s(literal 2 binary64)
#s(literal 3 binary64)
#s(literal 4 binary64)
Outputs
(sin.f64 re)
(+.f64 (sin.f64 re) (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) (sin.f64 re))))
(+.f64 (sin.f64 re) (*.f64 #s(literal 1/2 binary64) (*.f64 (sin.f64 re) (pow.f64 im #s(literal 2 binary64)))))
(*.f64 (sin.f64 re) (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64)))
(+.f64 (sin.f64 re) (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) (sin.f64 re))))
(+.f64 (sin.f64 re) (*.f64 #s(literal 1/2 binary64) (*.f64 (sin.f64 re) (pow.f64 im #s(literal 2 binary64)))))
(*.f64 (sin.f64 re) (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64)))
(+.f64 (sin.f64 re) (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) (sin.f64 re))))
(+.f64 (sin.f64 re) (*.f64 #s(literal 1/2 binary64) (*.f64 (sin.f64 re) (pow.f64 im #s(literal 2 binary64)))))
(*.f64 (sin.f64 re) (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64)))
(*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) (sin.f64 re)))
(*.f64 #s(literal 1/2 binary64) (*.f64 (sin.f64 re) (pow.f64 im #s(literal 2 binary64))))
(*.f64 (pow.f64 im #s(literal 2 binary64)) (+.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) (/.f64 (sin.f64 re) (pow.f64 im #s(literal 2 binary64)))))
(+.f64 (sin.f64 re) (*.f64 #s(literal 1/2 binary64) (*.f64 (sin.f64 re) (pow.f64 im #s(literal 2 binary64)))))
(*.f64 (sin.f64 re) (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64)))
(*.f64 (pow.f64 im #s(literal 2 binary64)) (+.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) (/.f64 (sin.f64 re) (pow.f64 im #s(literal 2 binary64)))))
(+.f64 (sin.f64 re) (*.f64 #s(literal 1/2 binary64) (*.f64 (sin.f64 re) (pow.f64 im #s(literal 2 binary64)))))
(*.f64 (sin.f64 re) (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64)))
(*.f64 (pow.f64 im #s(literal 2 binary64)) (+.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) (/.f64 (sin.f64 re) (pow.f64 im #s(literal 2 binary64)))))
(+.f64 (sin.f64 re) (*.f64 #s(literal 1/2 binary64) (*.f64 (sin.f64 re) (pow.f64 im #s(literal 2 binary64)))))
(*.f64 (sin.f64 re) (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64)))
(*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) (sin.f64 re)))
(*.f64 #s(literal 1/2 binary64) (*.f64 (sin.f64 re) (pow.f64 im #s(literal 2 binary64))))
(*.f64 (pow.f64 im #s(literal 2 binary64)) (+.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) (/.f64 (sin.f64 re) (pow.f64 im #s(literal 2 binary64)))))
(+.f64 (sin.f64 re) (*.f64 #s(literal 1/2 binary64) (*.f64 (sin.f64 re) (pow.f64 im #s(literal 2 binary64)))))
(*.f64 (sin.f64 re) (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64)))
(*.f64 (pow.f64 im #s(literal 2 binary64)) (+.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) (/.f64 (sin.f64 re) (pow.f64 im #s(literal 2 binary64)))))
(+.f64 (sin.f64 re) (*.f64 #s(literal 1/2 binary64) (*.f64 (sin.f64 re) (pow.f64 im #s(literal 2 binary64)))))
(*.f64 (sin.f64 re) (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64)))
(*.f64 (pow.f64 im #s(literal 2 binary64)) (+.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) (/.f64 (sin.f64 re) (pow.f64 im #s(literal 2 binary64)))))
(+.f64 (sin.f64 re) (*.f64 #s(literal 1/2 binary64) (*.f64 (sin.f64 re) (pow.f64 im #s(literal 2 binary64)))))
(*.f64 (sin.f64 re) (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64)))
(*.f64 re (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)))))
(*.f64 re (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64)))
(*.f64 re (+.f64 #s(literal 1 binary64) (+.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 (pow.f64 re #s(literal 2 binary64)) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)))))) (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64))))))
(*.f64 re (+.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/6 binary64) (*.f64 (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)))) (pow.f64 re #s(literal 2 binary64))) (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64))))))
(*.f64 re (+.f64 #s(literal 1 binary64) (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) (*.f64 (pow.f64 re #s(literal 2 binary64)) (+.f64 #s(literal -1/6 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) #s(literal -1/12 binary64)))))))
(*.f64 re (*.f64 (+.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 re #s(literal 2 binary64))) #s(literal 1 binary64)) (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64))))
(*.f64 re (*.f64 (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 re #s(literal 2 binary64)))) (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64))))
(*.f64 re (*.f64 (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64)) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 re #s(literal 2 binary64))))))
(*.f64 re (+.f64 #s(literal 1 binary64) (+.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64))) (*.f64 (pow.f64 re #s(literal 2 binary64)) (+.f64 (*.f64 #s(literal -1/6 binary64) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64))))) (*.f64 #s(literal 1/120 binary64) (*.f64 (pow.f64 re #s(literal 2 binary64)) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)))))))))))
(*.f64 re (+.f64 #s(literal 1 binary64) (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) (*.f64 (pow.f64 re #s(literal 2 binary64)) (fma.f64 #s(literal -1/6 binary64) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)))) (*.f64 (*.f64 (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)))) (pow.f64 re #s(literal 2 binary64))) #s(literal 1/120 binary64)))))))
(*.f64 re (+.f64 #s(literal 1 binary64) (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) (*.f64 (pow.f64 re #s(literal 2 binary64)) (*.f64 (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64)) (+.f64 #s(literal -1/6 binary64) (*.f64 (pow.f64 re #s(literal 2 binary64)) #s(literal 1/120 binary64))))))))
(*.f64 re (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) (fma.f64 (pow.f64 re #s(literal 2 binary64)) (*.f64 (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64)) (fma.f64 (pow.f64 re #s(literal 2 binary64)) #s(literal 1/120 binary64) #s(literal -1/6 binary64))) #s(literal 1 binary64))))
(*.f64 re (*.f64 (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64)) (+.f64 (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 re #s(literal 2 binary64)))) (*.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/120 binary64)))))
(*.f64 re (+.f64 #s(literal 1 binary64) (+.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64))) (*.f64 (pow.f64 re #s(literal 2 binary64)) (+.f64 (*.f64 #s(literal -1/6 binary64) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64))))) (*.f64 (pow.f64 re #s(literal 2 binary64)) (+.f64 (*.f64 #s(literal -1/5040 binary64) (*.f64 (pow.f64 re #s(literal 2 binary64)) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)))))) (*.f64 #s(literal 1/120 binary64) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64))))))))))))
(*.f64 re (+.f64 #s(literal 1 binary64) (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) (*.f64 (pow.f64 re #s(literal 2 binary64)) (fma.f64 #s(literal -1/6 binary64) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)))) (*.f64 (pow.f64 re #s(literal 2 binary64)) (fma.f64 #s(literal -1/5040 binary64) (*.f64 (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)))) (pow.f64 re #s(literal 2 binary64))) (+.f64 #s(literal 1/120 binary64) (*.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64))) #s(literal 1/120 binary64))))))))))
(*.f64 re (+.f64 #s(literal 1 binary64) (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) (*.f64 (pow.f64 re #s(literal 2 binary64)) (fma.f64 (pow.f64 re #s(literal 2 binary64)) (*.f64 (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64)) (+.f64 (*.f64 (pow.f64 re #s(literal 2 binary64)) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64))) (+.f64 #s(literal -1/6 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) #s(literal -1/12 binary64))))))))
(*.f64 re (+.f64 (*.f64 (+.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 re #s(literal 2 binary64))) #s(literal 1 binary64)) (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64))) (*.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64)) (fma.f64 (pow.f64 re #s(literal 2 binary64)) #s(literal -1/5040 binary64) #s(literal 1/120 binary64))) (pow.f64 re #s(literal 4 binary64)))))
(*.f64 re (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) (fma.f64 (pow.f64 re #s(literal 2 binary64)) (*.f64 (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64)) (+.f64 #s(literal -1/6 binary64) (*.f64 (pow.f64 re #s(literal 2 binary64)) (fma.f64 (pow.f64 re #s(literal 2 binary64)) #s(literal -1/5040 binary64) #s(literal 1/120 binary64))))) #s(literal 1 binary64))))
(*.f64 (sin.f64 re) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)))))
(+.f64 (sin.f64 re) (*.f64 #s(literal 1/2 binary64) (*.f64 (sin.f64 re) (pow.f64 im #s(literal 2 binary64)))))
(*.f64 (sin.f64 re) (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64)))
(*.f64 (sin.f64 re) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)))))
(+.f64 (sin.f64 re) (*.f64 #s(literal 1/2 binary64) (*.f64 (sin.f64 re) (pow.f64 im #s(literal 2 binary64)))))
(*.f64 (sin.f64 re) (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64)))
(*.f64 (sin.f64 re) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)))))
(+.f64 (sin.f64 re) (*.f64 #s(literal 1/2 binary64) (*.f64 (sin.f64 re) (pow.f64 im #s(literal 2 binary64)))))
(*.f64 (sin.f64 re) (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64)))
(*.f64 (sin.f64 re) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)))))
(+.f64 (sin.f64 re) (*.f64 #s(literal 1/2 binary64) (*.f64 (sin.f64 re) (pow.f64 im #s(literal 2 binary64)))))
(*.f64 (sin.f64 re) (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64)))
(*.f64 (sin.f64 re) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)))))
(+.f64 (sin.f64 re) (*.f64 #s(literal 1/2 binary64) (*.f64 (sin.f64 re) (pow.f64 im #s(literal 2 binary64)))))
(*.f64 (sin.f64 re) (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64)))
(*.f64 (sin.f64 re) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)))))
(+.f64 (sin.f64 re) (*.f64 #s(literal 1/2 binary64) (*.f64 (sin.f64 re) (pow.f64 im #s(literal 2 binary64)))))
(*.f64 (sin.f64 re) (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64)))
(*.f64 (sin.f64 re) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)))))
(+.f64 (sin.f64 re) (*.f64 #s(literal 1/2 binary64) (*.f64 (sin.f64 re) (pow.f64 im #s(literal 2 binary64)))))
(*.f64 (sin.f64 re) (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64)))
(*.f64 (sin.f64 re) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)))))
(+.f64 (sin.f64 re) (*.f64 #s(literal 1/2 binary64) (*.f64 (sin.f64 re) (pow.f64 im #s(literal 2 binary64)))))
(*.f64 (sin.f64 re) (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64)))
(/.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal 2 binary64)))
(/.f64 (+.f64 #s(literal 1/4 binary64) (*.f64 #s(literal 1/12 binary64) (pow.f64 re #s(literal 2 binary64)))) (pow.f64 re #s(literal 2 binary64)))
(/.f64 (+.f64 #s(literal 1/4 binary64) (*.f64 (pow.f64 re #s(literal 2 binary64)) #s(literal 1/12 binary64))) (pow.f64 re #s(literal 2 binary64)))
(/.f64 (fma.f64 (pow.f64 re #s(literal 2 binary64)) #s(literal 1/12 binary64) #s(literal 1/4 binary64)) (pow.f64 re #s(literal 2 binary64)))
(/.f64 (+.f64 #s(literal 1/4 binary64) (*.f64 (pow.f64 re #s(literal 2 binary64)) (+.f64 #s(literal 1/12 binary64) (*.f64 #s(literal 1/60 binary64) (pow.f64 re #s(literal 2 binary64)))))) (pow.f64 re #s(literal 2 binary64)))
(/.f64 (+.f64 #s(literal 1/4 binary64) (*.f64 (pow.f64 re #s(literal 2 binary64)) (+.f64 #s(literal 1/12 binary64) (*.f64 (pow.f64 re #s(literal 2 binary64)) #s(literal 1/60 binary64))))) (pow.f64 re #s(literal 2 binary64)))
(/.f64 (fma.f64 (pow.f64 re #s(literal 2 binary64)) (fma.f64 (pow.f64 re #s(literal 2 binary64)) #s(literal 1/60 binary64) #s(literal 1/12 binary64)) #s(literal 1/4 binary64)) (pow.f64 re #s(literal 2 binary64)))
(/.f64 (fma.f64 (pow.f64 re #s(literal 2 binary64)) #s(literal 1/12 binary64) (fma.f64 #s(literal 1/60 binary64) (pow.f64 re #s(literal 4 binary64)) #s(literal 1/4 binary64))) (pow.f64 re #s(literal 2 binary64)))
(/.f64 (+.f64 #s(literal 1/4 binary64) (*.f64 (pow.f64 re #s(literal 2 binary64)) (+.f64 #s(literal 1/12 binary64) (*.f64 (pow.f64 re #s(literal 2 binary64)) (+.f64 #s(literal 1/60 binary64) (*.f64 #s(literal 1/378 binary64) (pow.f64 re #s(literal 2 binary64)))))))) (pow.f64 re #s(literal 2 binary64)))
(/.f64 (+.f64 #s(literal 1/4 binary64) (*.f64 (pow.f64 re #s(literal 2 binary64)) (+.f64 #s(literal 1/12 binary64) (*.f64 (pow.f64 re #s(literal 2 binary64)) (+.f64 #s(literal 1/60 binary64) (*.f64 (pow.f64 re #s(literal 2 binary64)) #s(literal 1/378 binary64))))))) (pow.f64 re #s(literal 2 binary64)))
(/.f64 (fma.f64 (pow.f64 re #s(literal 2 binary64)) (fma.f64 (pow.f64 re #s(literal 2 binary64)) (fma.f64 (pow.f64 re #s(literal 2 binary64)) #s(literal 1/378 binary64) #s(literal 1/60 binary64)) #s(literal 1/12 binary64)) #s(literal 1/4 binary64)) (pow.f64 re #s(literal 2 binary64)))
(/.f64 (fma.f64 (pow.f64 re #s(literal 2 binary64)) #s(literal 1/12 binary64) (fma.f64 (fma.f64 (pow.f64 re #s(literal 2 binary64)) #s(literal 1/378 binary64) #s(literal 1/60 binary64)) (pow.f64 re #s(literal 4 binary64)) #s(literal 1/4 binary64))) (pow.f64 re #s(literal 2 binary64)))
(/.f64 #s(literal 1/4 binary64) (pow.f64 (sin.f64 re) #s(literal 2 binary64)))
(/.f64 #s(literal 1/4 binary64) (pow.f64 (sin.f64 re) #s(literal 2 binary64)))
(/.f64 #s(literal 1/4 binary64) (pow.f64 (sin.f64 re) #s(literal 2 binary64)))
(/.f64 #s(literal 1/4 binary64) (pow.f64 (sin.f64 re) #s(literal 2 binary64)))
(/.f64 #s(literal 1/4 binary64) (pow.f64 (sin.f64 re) #s(literal 2 binary64)))
(/.f64 #s(literal 1/4 binary64) (pow.f64 (sin.f64 re) #s(literal 2 binary64)))
(/.f64 #s(literal 1/4 binary64) (pow.f64 (sin.f64 re) #s(literal 2 binary64)))
(/.f64 #s(literal 1/4 binary64) (pow.f64 (sin.f64 re) #s(literal 2 binary64)))
(*.f64 #s(literal 1/2 binary64) (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (*.f64 re #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 re (*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 #s(literal 1/2 binary64) (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (*.f64 re #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 re (*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 #s(literal 1/2 binary64) (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (*.f64 re #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 re (*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 #s(literal 1/2 binary64) (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (*.f64 re #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 re (*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 #s(literal 1/2 binary64) (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (*.f64 re #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 re (*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 #s(literal 1/2 binary64) (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (*.f64 re #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 re (*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 #s(literal 1/2 binary64) (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (*.f64 re #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 re (*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 #s(literal 1/2 binary64) (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (*.f64 re #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 re (*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 #s(literal 1/2 binary64) (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (*.f64 re #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 re (*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 #s(literal 1/2 binary64) (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (*.f64 re #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 re (*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 #s(literal 1/2 binary64) (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (*.f64 re #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 re (*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 #s(literal 1/2 binary64) (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (*.f64 re #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 re (*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
re
(+.f64 re (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) re)))
(*.f64 re (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)))))
(*.f64 re (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64)))
(+.f64 re (*.f64 (pow.f64 im #s(literal 2 binary64)) (+.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) re)) (*.f64 #s(literal 1/2 binary64) re))))
(+.f64 re (*.f64 (pow.f64 im #s(literal 2 binary64)) (fma.f64 #s(literal 1/24 binary64) (*.f64 re (pow.f64 im #s(literal 2 binary64))) (*.f64 re #s(literal 1/2 binary64)))))
(fma.f64 (pow.f64 im #s(literal 2 binary64)) (*.f64 re (+.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) #s(literal 1/24 binary64)) #s(literal 1/2 binary64))) re)
(fma.f64 (pow.f64 im #s(literal 2 binary64)) (*.f64 re (fma.f64 (pow.f64 im #s(literal 2 binary64)) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) re)
(+.f64 re (*.f64 (pow.f64 im #s(literal 2 binary64)) (+.f64 (*.f64 #s(literal 1/2 binary64) re) (*.f64 (pow.f64 im #s(literal 2 binary64)) (+.f64 (*.f64 #s(literal 1/720 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) re)) (*.f64 #s(literal 1/24 binary64) re))))))
(+.f64 re (*.f64 (pow.f64 im #s(literal 2 binary64)) (fma.f64 #s(literal 1/2 binary64) re (*.f64 (pow.f64 im #s(literal 2 binary64)) (fma.f64 #s(literal 1/720 binary64) (*.f64 re (pow.f64 im #s(literal 2 binary64))) (*.f64 re #s(literal 1/24 binary64)))))))
(fma.f64 (pow.f64 im #s(literal 2 binary64)) (fma.f64 re #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) (*.f64 re (+.f64 #s(literal 1/24 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) #s(literal 1/720 binary64)))))) re)
(fma.f64 re (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 re (*.f64 (fma.f64 (pow.f64 im #s(literal 2 binary64)) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (pow.f64 im #s(literal 4 binary64)))))
(*.f64 re (+.f64 (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 (fma.f64 (pow.f64 im #s(literal 2 binary64)) #s(literal 1/720 binary64) #s(literal 1/24 binary64)) (pow.f64 im #s(literal 4 binary64)))))
(*.f64 #s(literal 1/2 binary64) (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (*.f64 re #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 re (*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 #s(literal 1/2 binary64) (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (*.f64 re #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 re (*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 #s(literal 1/2 binary64) (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (*.f64 re #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 re (*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 #s(literal 1/2 binary64) (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (*.f64 re #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 re (*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 #s(literal 1/2 binary64) (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (*.f64 #s(literal -1 binary64) im)))))
(*.f64 (*.f64 re #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 re (*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 #s(literal 1/2 binary64) (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 #s(literal 1/2 binary64) (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (*.f64 #s(literal -1 binary64) im)))))
(*.f64 (*.f64 re #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 re (*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 #s(literal 1/2 binary64) (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 #s(literal 1/2 binary64) (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (*.f64 #s(literal -1 binary64) im)))))
(*.f64 (*.f64 re #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 re (*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 #s(literal 1/2 binary64) (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 #s(literal 1/2 binary64) (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (*.f64 #s(literal -1 binary64) im)))))
(*.f64 (*.f64 re #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 re (*.f64 #s(literal 1/2 binary64) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 #s(literal 1/2 binary64) (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
#s(literal -4 binary64)
#s(literal -2 binary64)
#s(literal -1 binary64)
#s(literal -1/2 binary64)
#s(literal 0 binary64)
#s(literal 1/16 binary64)
#s(literal 1/8 binary64)
#s(literal 1/4 binary64)
#s(literal 1/2 binary64)
#s(literal 1 binary64)
#s(literal 3/2 binary64)
#s(literal 2 binary64)
#s(literal 3 binary64)
#s(literal 4 binary64)
#s(literal -4 binary64)
#s(literal -2 binary64)
#s(literal -1 binary64)
#s(literal -1/2 binary64)
#s(literal 0 binary64)
#s(literal 1/16 binary64)
#s(literal 1/8 binary64)
#s(literal 1/4 binary64)
#s(literal 1/2 binary64)
#s(literal 1 binary64)
#s(literal 3/2 binary64)
#s(literal 2 binary64)
#s(literal 3 binary64)
#s(literal 4 binary64)
#s(literal -4 binary64)
#s(literal -2 binary64)
#s(literal -1 binary64)
#s(literal -1/2 binary64)
#s(literal 0 binary64)
#s(literal 1/16 binary64)
#s(literal 1/8 binary64)
#s(literal 1/4 binary64)
#s(literal 1/2 binary64)
#s(literal 1 binary64)
#s(literal 3/2 binary64)
#s(literal 2 binary64)
#s(literal 3 binary64)
#s(literal 4 binary64)
#s(literal -4 binary64)
#s(literal -2 binary64)
#s(literal -1 binary64)
#s(literal -1/2 binary64)
#s(literal 0 binary64)
#s(literal 1/16 binary64)
#s(literal 1/8 binary64)
#s(literal 1/4 binary64)
#s(literal 1/2 binary64)
#s(literal 1 binary64)
#s(literal 3/2 binary64)
#s(literal 2 binary64)
#s(literal 3 binary64)
#s(literal 4 binary64)

eval30.0ms (0.5%)

Compiler

Compiled 980 to 756 computations (22.9% saved)

prune21.0ms (0.4%)

Pruning

18 alts after pruning (13 fresh and 5 done)

PrunedKeptTotal
New551368
Fresh000
Picked145
Done011
Total561874
Accuracy
100.0%
Counts
74 → 18
Alt Table
Click to see full alt table
StatusAccuracyProgram
18.0%
(pow.f64 (*.f64 (sin.f64 re) #s(literal -2 binary64)) #s(literal -2 binary64))
16.3%
(/.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal 2 binary64)))
71.1%
(*.f64 (+.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64))) #s(literal 1 binary64)) (sin.f64 re))
100.0%
(*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
62.3%
(*.f64 (*.f64 #s(literal 1/2 binary64) re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
43.9%
(*.f64 re (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)))))
27.1%
(*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) (sin.f64 re)))
47.6%
(sin.f64 re)
24.6%
re
4.7%
#s(literal 4 binary64)
5.2%
#s(literal 1 binary64)
5.1%
#s(literal 1/2 binary64)
4.9%
#s(literal 1/4 binary64)
4.8%
#s(literal 1/8 binary64)
4.7%
#s(literal 1/16 binary64)
3.7%
#s(literal -1/2 binary64)
3.9%
#s(literal -1 binary64)
3.4%
#s(literal -4 binary64)
Compiler

Compiled 165 to 143 computations (13.3% saved)

localize65.0ms (1.2%)

Localize:

Found 2 expressions with local error:

NewAccuracyProgram
100.0%
(*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)))
93.6%
(*.f64 re (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)))))
Results
48.0ms256×256valid
Compiler

Compiled 36 to 28 computations (22.2% saved)

Precisions
Click to see histograms. Total time spent on operations: 31.0ms
ival-pow: 11.0ms (35.5% of total)
ival-add: 9.0ms (29% of total)
ival-mult: 9.0ms (29% of total)
const: 2.0ms (6.5% of total)

series5.0ms (0.1%)

Counts
2 → 12
Calls
Call 1
Inputs
#<alt (*.f64 re (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)))))>
#<alt (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)))>
Outputs
#<alt re>
#<alt (+.f64 re (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) re)))>
#<alt (+.f64 re (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) re)))>
#<alt (+.f64 re (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) re)))>
#<alt (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) re))>
#<alt (*.f64 (pow.f64 im #s(literal 2 binary64)) (+.f64 (*.f64 #s(literal 1/2 binary64) re) (/.f64 re (pow.f64 im #s(literal 2 binary64)))))>
#<alt (*.f64 (pow.f64 im #s(literal 2 binary64)) (+.f64 (*.f64 #s(literal 1/2 binary64) re) (/.f64 re (pow.f64 im #s(literal 2 binary64)))))>
#<alt (*.f64 (pow.f64 im #s(literal 2 binary64)) (+.f64 (*.f64 #s(literal 1/2 binary64) re) (/.f64 re (pow.f64 im #s(literal 2 binary64)))))>
#<alt (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) re))>
#<alt (*.f64 (pow.f64 im #s(literal 2 binary64)) (+.f64 (*.f64 #s(literal 1/2 binary64) re) (/.f64 re (pow.f64 im #s(literal 2 binary64)))))>
#<alt (*.f64 (pow.f64 im #s(literal 2 binary64)) (+.f64 (*.f64 #s(literal 1/2 binary64) re) (/.f64 re (pow.f64 im #s(literal 2 binary64)))))>
#<alt (*.f64 (pow.f64 im #s(literal 2 binary64)) (+.f64 (*.f64 #s(literal 1/2 binary64) re) (/.f64 re (pow.f64 im #s(literal 2 binary64)))))>
Calls

9 calls:

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

rewrite87.0ms (1.6%)

Algorithm
batch-egg-rewrite
Rules
637×log1p-expm1-u
637×expm1-log1p-u
612×unpow-prod-down
383×prod-diff
339×log-prod
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01447
115143
2186543
Stop Event
node limit
Counts
2 → 89
Calls
Call 1
Inputs
(*.f64 re (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)))))
(*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)))
Outputs
(+.f64 re (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) re)))
(+.f64 re (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) re)) #s(literal 1 binary64)))
(+.f64 #s(literal 0 binary64) (*.f64 re (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64))))
(+.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) re)) re)
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64))) re)) (cbrt.f64 (pow.f64 (exp.f64 (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64))) re)))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64))) re))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64))) re))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64))) re))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 re (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64))))) #s(literal 1 binary64))
(/.f64 (+.f64 (pow.f64 re #s(literal 3 binary64)) (*.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 (*.f64 #s(literal 1/2 binary64) re) #s(literal 3 binary64)))) (fma.f64 re re (-.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) re)) (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) re))) (*.f64 re (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) re))))))
(/.f64 (-.f64 (pow.f64 re #s(literal 2 binary64)) (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) re)) (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) re)))) (-.f64 re (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) re))))
(/.f64 (*.f64 re (fma.f64 (pow.f64 im #s(literal 6 binary64)) #s(literal 1/8 binary64) #s(literal 1 binary64))) (+.f64 #s(literal 1 binary64) (fma.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal 1/4 binary64) (*.f64 #s(literal -1/2 binary64) (pow.f64 im #s(literal 2 binary64))))))
(/.f64 (*.f64 re (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal 1/4 binary64)))) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (pow.f64 im #s(literal 2 binary64)))))
(/.f64 (*.f64 (fma.f64 (pow.f64 im #s(literal 6 binary64)) #s(literal 1/8 binary64) #s(literal 1 binary64)) re) (+.f64 #s(literal 1 binary64) (fma.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal 1/4 binary64) (*.f64 #s(literal -1/2 binary64) (pow.f64 im #s(literal 2 binary64))))))
(/.f64 (*.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal 1/4 binary64))) re) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (pow.f64 im #s(literal 2 binary64)))))
(pow.f64 (*.f64 re (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64))) #s(literal 1 binary64))
(pow.f64 (cbrt.f64 (*.f64 re (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64)))) #s(literal 3 binary64))
(pow.f64 (pow.f64 (*.f64 re (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64))) #s(literal 3 binary64)) #s(literal 1/3 binary64))
(pow.f64 (sqrt.f64 (*.f64 re (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64)))) #s(literal 2 binary64))
(sqrt.f64 (pow.f64 (*.f64 re (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64))) #s(literal 2 binary64)))
(log.f64 (pow.f64 (exp.f64 (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64))) re))
(log.f64 (+.f64 #s(literal 1 binary64) (expm1.f64 (*.f64 re (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64))))))
(log.f64 (*.f64 (+.f64 #s(literal 1 binary64) (expm1.f64 re)) (exp.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) re)))))
(log.f64 (*.f64 (exp.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) re))) (exp.f64 re)))
(log.f64 (*.f64 (exp.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) re))) (+.f64 #s(literal 1 binary64) (expm1.f64 re))))
(cbrt.f64 (pow.f64 (*.f64 re (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64))) #s(literal 3 binary64)))
(expm1.f64 (log1p.f64 (*.f64 re (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64)))))
(log1p.f64 (expm1.f64 (*.f64 re (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64)))))
(exp.f64 (log.f64 (*.f64 re (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64)))))
(exp.f64 (*.f64 (log.f64 (*.f64 re (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64)))) #s(literal 1 binary64)))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 re (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64))))) #s(literal 3 binary64)))
(exp.f64 (*.f64 (*.f64 #s(literal 3 binary64) (log.f64 (*.f64 re (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64))))) #s(literal 1/3 binary64)))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 re (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64))))) #s(literal 2 binary64)))
(fma.f64 re #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) re)))
(fma.f64 re #s(literal 1 binary64) (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) re)) #s(literal 1 binary64)))
(fma.f64 re (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64))) re)
(fma.f64 #s(literal 1 binary64) re (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) re)))
(fma.f64 #s(literal 1 binary64) re (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) re)) #s(literal 1 binary64)))
(fma.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) re)) re)
(fma.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) re) re)
(fma.f64 (pow.f64 im #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) re) re)
(fma.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64))) re re)
(fma.f64 (cbrt.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal 1/4 binary64))) (*.f64 (cbrt.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)))) re) re)
(fma.f64 (cbrt.f64 re) (pow.f64 (cbrt.f64 re) #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) re)))
(fma.f64 (cbrt.f64 re) (pow.f64 (cbrt.f64 re) #s(literal 2 binary64)) (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) re)) #s(literal 1 binary64)))
(fma.f64 (pow.f64 (cbrt.f64 re) #s(literal 2 binary64)) (cbrt.f64 re) (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) re)))
(fma.f64 (pow.f64 (cbrt.f64 re) #s(literal 2 binary64)) (cbrt.f64 re) (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) re)) #s(literal 1 binary64)))
(fma.f64 (pow.f64 (cbrt.f64 re) #s(literal 2 binary64)) (*.f64 (cbrt.f64 re) #s(literal 1 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) re)))
(fma.f64 (pow.f64 (cbrt.f64 re) #s(literal 2 binary64)) (*.f64 (cbrt.f64 re) #s(literal 1 binary64)) (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) re)) #s(literal 1 binary64)))
(fma.f64 (pow.f64 (cbrt.f64 re) #s(literal 2 binary64)) (*.f64 (cbrt.f64 re) (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)))) re)
(fma.f64 (*.f64 im (sqrt.f64 #s(literal 1/2 binary64))) (*.f64 (*.f64 im (sqrt.f64 #s(literal 1/2 binary64))) re) re)
(fma.f64 (sqrt.f64 re) (sqrt.f64 re) (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) re)))
(fma.f64 (sqrt.f64 re) (sqrt.f64 re) (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) re)) #s(literal 1 binary64)))
(fma.f64 (sqrt.f64 re) (*.f64 (sqrt.f64 re) #s(literal 1 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) re)))
(fma.f64 (sqrt.f64 re) (*.f64 (sqrt.f64 re) #s(literal 1 binary64)) (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) re)) #s(literal 1 binary64)))
(fma.f64 (sqrt.f64 re) (*.f64 (sqrt.f64 re) (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)))) re)
(fma.f64 (*.f64 (cbrt.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) re))) (cbrt.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) re)))) (cbrt.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) re))) re)
(fma.f64 (sqrt.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) re))) (sqrt.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) re))) re)
(fma.f64 (*.f64 (*.f64 im (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 re)) (*.f64 (*.f64 im (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 re)) re)
(fma.f64 (*.f64 (sqrt.f64 re) (*.f64 im (sqrt.f64 #s(literal 1/2 binary64)))) (*.f64 (sqrt.f64 re) (*.f64 im (sqrt.f64 #s(literal 1/2 binary64)))) re)
(fma.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64))) (pow.f64 (cbrt.f64 re) #s(literal 2 binary64))) (cbrt.f64 re) re)
(fma.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64))) (sqrt.f64 re)) (sqrt.f64 re) re)
(fma.f64 (*.f64 re #s(literal 1/2 binary64)) (pow.f64 im #s(literal 2 binary64)) re)
(fma.f64 (*.f64 re (pow.f64 im #s(literal 2 binary64))) #s(literal 1/2 binary64) re)
(fma.f64 (*.f64 re (cbrt.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal 1/4 binary64)))) (cbrt.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)))) re)
(fma.f64 (*.f64 re (*.f64 im (sqrt.f64 #s(literal 1/2 binary64)))) (*.f64 im (sqrt.f64 #s(literal 1/2 binary64))) re)
(+.f64 #s(literal 0 binary64) (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64))))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 #s(literal 1/2 binary64)) (pow.f64 im #s(literal 2 binary64)))) (cbrt.f64 (pow.f64 (exp.f64 #s(literal 1/2 binary64)) (pow.f64 im #s(literal 2 binary64)))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 #s(literal 1/2 binary64)) (pow.f64 im #s(literal 2 binary64))))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 #s(literal 1/2 binary64)) (pow.f64 im #s(literal 2 binary64))))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 #s(literal 1/2 binary64)) (pow.f64 im #s(literal 2 binary64))))))
(-.f64 (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64)) #s(literal 1 binary64))
(pow.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64))) #s(literal 1 binary64))
(pow.f64 (cbrt.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)))) #s(literal 3 binary64))
(pow.f64 (*.f64 (pow.f64 im #s(literal 6 binary64)) #s(literal 1/8 binary64)) #s(literal 1/3 binary64))
(pow.f64 (*.f64 im (sqrt.f64 #s(literal 1/2 binary64))) #s(literal 2 binary64))
(sqrt.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal 1/4 binary64)))
(log.f64 (pow.f64 (exp.f64 #s(literal 1/2 binary64)) (pow.f64 im #s(literal 2 binary64))))
(log.f64 (+.f64 #s(literal 1 binary64) (expm1.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64))))))
(cbrt.f64 (*.f64 (pow.f64 im #s(literal 6 binary64)) #s(literal 1/8 binary64)))
(expm1.f64 (log1p.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)))))
(log1p.f64 (expm1.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)))))
(exp.f64 (log.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)))))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64))))) #s(literal 3 binary64)))
(exp.f64 (*.f64 (log.f64 (*.f64 (pow.f64 im #s(literal 6 binary64)) #s(literal 1/8 binary64))) #s(literal 1/3 binary64)))
(exp.f64 (*.f64 (log.f64 (*.f64 im (sqrt.f64 #s(literal 1/2 binary64)))) #s(literal 2 binary64)))
(fma.f64 #s(literal 1 binary64) (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64)) #s(literal -1 binary64))
(fma.f64 (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64)) #s(literal 1 binary64) #s(literal -1 binary64))
(fma.f64 (cbrt.f64 (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64))) (pow.f64 (cbrt.f64 (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64))) #s(literal 2 binary64)) #s(literal -1 binary64))
(fma.f64 (pow.f64 (cbrt.f64 (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64))) #s(literal 2 binary64)) (cbrt.f64 (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64))) #s(literal -1 binary64))
(fma.f64 (hypot.f64 #s(literal 1 binary64) (*.f64 im (sqrt.f64 #s(literal 1/2 binary64)))) (hypot.f64 #s(literal 1 binary64) (*.f64 im (sqrt.f64 #s(literal 1/2 binary64)))) #s(literal -1 binary64))
(fma.f64 (fma.f64 (pow.f64 im #s(literal 6 binary64)) #s(literal 1/8 binary64) #s(literal 1 binary64)) (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (fma.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal 1/4 binary64) (*.f64 #s(literal -1/2 binary64) (pow.f64 im #s(literal 2 binary64)))))) #s(literal -1 binary64))
(fma.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal 1/4 binary64))) (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (pow.f64 im #s(literal 2 binary64))))) #s(literal -1 binary64))

simplify99.0ms (1.8%)

Algorithm
egg-herbie
Rules
465×cancel-sign-sub-inv
453×fma-neg
443×fma-define
414×associate-/l*
368×distribute-rgt-neg-in
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
02243250
14813042
211652985
335062969
Stop Event
node limit
Counts
101 → 120
Calls
Call 1
Inputs
re
(+.f64 re (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) re)))
(+.f64 re (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) re)))
(+.f64 re (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) re)))
(*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) re))
(*.f64 (pow.f64 im #s(literal 2 binary64)) (+.f64 (*.f64 #s(literal 1/2 binary64) re) (/.f64 re (pow.f64 im #s(literal 2 binary64)))))
(*.f64 (pow.f64 im #s(literal 2 binary64)) (+.f64 (*.f64 #s(literal 1/2 binary64) re) (/.f64 re (pow.f64 im #s(literal 2 binary64)))))
(*.f64 (pow.f64 im #s(literal 2 binary64)) (+.f64 (*.f64 #s(literal 1/2 binary64) re) (/.f64 re (pow.f64 im #s(literal 2 binary64)))))
(*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) re))
(*.f64 (pow.f64 im #s(literal 2 binary64)) (+.f64 (*.f64 #s(literal 1/2 binary64) re) (/.f64 re (pow.f64 im #s(literal 2 binary64)))))
(*.f64 (pow.f64 im #s(literal 2 binary64)) (+.f64 (*.f64 #s(literal 1/2 binary64) re) (/.f64 re (pow.f64 im #s(literal 2 binary64)))))
(*.f64 (pow.f64 im #s(literal 2 binary64)) (+.f64 (*.f64 #s(literal 1/2 binary64) re) (/.f64 re (pow.f64 im #s(literal 2 binary64)))))
(+.f64 re (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) re)))
(+.f64 re (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) re)) #s(literal 1 binary64)))
(+.f64 #s(literal 0 binary64) (*.f64 re (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64))))
(+.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) re)) re)
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64))) re)) (cbrt.f64 (pow.f64 (exp.f64 (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64))) re)))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64))) re))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64))) re))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64))) re))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 re (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64))))) #s(literal 1 binary64))
(/.f64 (+.f64 (pow.f64 re #s(literal 3 binary64)) (*.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 (*.f64 #s(literal 1/2 binary64) re) #s(literal 3 binary64)))) (fma.f64 re re (-.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) re)) (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) re))) (*.f64 re (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) re))))))
(/.f64 (-.f64 (pow.f64 re #s(literal 2 binary64)) (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) re)) (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) re)))) (-.f64 re (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) re))))
(/.f64 (*.f64 re (fma.f64 (pow.f64 im #s(literal 6 binary64)) #s(literal 1/8 binary64) #s(literal 1 binary64))) (+.f64 #s(literal 1 binary64) (fma.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal 1/4 binary64) (*.f64 #s(literal -1/2 binary64) (pow.f64 im #s(literal 2 binary64))))))
(/.f64 (*.f64 re (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal 1/4 binary64)))) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (pow.f64 im #s(literal 2 binary64)))))
(/.f64 (*.f64 (fma.f64 (pow.f64 im #s(literal 6 binary64)) #s(literal 1/8 binary64) #s(literal 1 binary64)) re) (+.f64 #s(literal 1 binary64) (fma.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal 1/4 binary64) (*.f64 #s(literal -1/2 binary64) (pow.f64 im #s(literal 2 binary64))))))
(/.f64 (*.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal 1/4 binary64))) re) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (pow.f64 im #s(literal 2 binary64)))))
(pow.f64 (*.f64 re (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64))) #s(literal 1 binary64))
(pow.f64 (cbrt.f64 (*.f64 re (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64)))) #s(literal 3 binary64))
(pow.f64 (pow.f64 (*.f64 re (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64))) #s(literal 3 binary64)) #s(literal 1/3 binary64))
(pow.f64 (sqrt.f64 (*.f64 re (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64)))) #s(literal 2 binary64))
(sqrt.f64 (pow.f64 (*.f64 re (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64))) #s(literal 2 binary64)))
(log.f64 (pow.f64 (exp.f64 (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64))) re))
(log.f64 (+.f64 #s(literal 1 binary64) (expm1.f64 (*.f64 re (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64))))))
(log.f64 (*.f64 (+.f64 #s(literal 1 binary64) (expm1.f64 re)) (exp.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) re)))))
(log.f64 (*.f64 (exp.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) re))) (exp.f64 re)))
(log.f64 (*.f64 (exp.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) re))) (+.f64 #s(literal 1 binary64) (expm1.f64 re))))
(cbrt.f64 (pow.f64 (*.f64 re (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64))) #s(literal 3 binary64)))
(expm1.f64 (log1p.f64 (*.f64 re (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64)))))
(log1p.f64 (expm1.f64 (*.f64 re (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64)))))
(exp.f64 (log.f64 (*.f64 re (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64)))))
(exp.f64 (*.f64 (log.f64 (*.f64 re (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64)))) #s(literal 1 binary64)))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 re (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64))))) #s(literal 3 binary64)))
(exp.f64 (*.f64 (*.f64 #s(literal 3 binary64) (log.f64 (*.f64 re (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64))))) #s(literal 1/3 binary64)))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 re (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64))))) #s(literal 2 binary64)))
(fma.f64 re #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) re)))
(fma.f64 re #s(literal 1 binary64) (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) re)) #s(literal 1 binary64)))
(fma.f64 re (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64))) re)
(fma.f64 #s(literal 1 binary64) re (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) re)))
(fma.f64 #s(literal 1 binary64) re (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) re)) #s(literal 1 binary64)))
(fma.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) re)) re)
(fma.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) re) re)
(fma.f64 (pow.f64 im #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) re) re)
(fma.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64))) re re)
(fma.f64 (cbrt.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal 1/4 binary64))) (*.f64 (cbrt.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)))) re) re)
(fma.f64 (cbrt.f64 re) (pow.f64 (cbrt.f64 re) #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) re)))
(fma.f64 (cbrt.f64 re) (pow.f64 (cbrt.f64 re) #s(literal 2 binary64)) (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) re)) #s(literal 1 binary64)))
(fma.f64 (pow.f64 (cbrt.f64 re) #s(literal 2 binary64)) (cbrt.f64 re) (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) re)))
(fma.f64 (pow.f64 (cbrt.f64 re) #s(literal 2 binary64)) (cbrt.f64 re) (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) re)) #s(literal 1 binary64)))
(fma.f64 (pow.f64 (cbrt.f64 re) #s(literal 2 binary64)) (*.f64 (cbrt.f64 re) #s(literal 1 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) re)))
(fma.f64 (pow.f64 (cbrt.f64 re) #s(literal 2 binary64)) (*.f64 (cbrt.f64 re) #s(literal 1 binary64)) (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) re)) #s(literal 1 binary64)))
(fma.f64 (pow.f64 (cbrt.f64 re) #s(literal 2 binary64)) (*.f64 (cbrt.f64 re) (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)))) re)
(fma.f64 (*.f64 im (sqrt.f64 #s(literal 1/2 binary64))) (*.f64 (*.f64 im (sqrt.f64 #s(literal 1/2 binary64))) re) re)
(fma.f64 (sqrt.f64 re) (sqrt.f64 re) (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) re)))
(fma.f64 (sqrt.f64 re) (sqrt.f64 re) (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) re)) #s(literal 1 binary64)))
(fma.f64 (sqrt.f64 re) (*.f64 (sqrt.f64 re) #s(literal 1 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) re)))
(fma.f64 (sqrt.f64 re) (*.f64 (sqrt.f64 re) #s(literal 1 binary64)) (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) re)) #s(literal 1 binary64)))
(fma.f64 (sqrt.f64 re) (*.f64 (sqrt.f64 re) (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)))) re)
(fma.f64 (*.f64 (cbrt.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) re))) (cbrt.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) re)))) (cbrt.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) re))) re)
(fma.f64 (sqrt.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) re))) (sqrt.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) re))) re)
(fma.f64 (*.f64 (*.f64 im (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 re)) (*.f64 (*.f64 im (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 re)) re)
(fma.f64 (*.f64 (sqrt.f64 re) (*.f64 im (sqrt.f64 #s(literal 1/2 binary64)))) (*.f64 (sqrt.f64 re) (*.f64 im (sqrt.f64 #s(literal 1/2 binary64)))) re)
(fma.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64))) (pow.f64 (cbrt.f64 re) #s(literal 2 binary64))) (cbrt.f64 re) re)
(fma.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64))) (sqrt.f64 re)) (sqrt.f64 re) re)
(fma.f64 (*.f64 re #s(literal 1/2 binary64)) (pow.f64 im #s(literal 2 binary64)) re)
(fma.f64 (*.f64 re (pow.f64 im #s(literal 2 binary64))) #s(literal 1/2 binary64) re)
(fma.f64 (*.f64 re (cbrt.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal 1/4 binary64)))) (cbrt.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)))) re)
(fma.f64 (*.f64 re (*.f64 im (sqrt.f64 #s(literal 1/2 binary64)))) (*.f64 im (sqrt.f64 #s(literal 1/2 binary64))) re)
(+.f64 #s(literal 0 binary64) (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64))))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 #s(literal 1/2 binary64)) (pow.f64 im #s(literal 2 binary64)))) (cbrt.f64 (pow.f64 (exp.f64 #s(literal 1/2 binary64)) (pow.f64 im #s(literal 2 binary64)))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 #s(literal 1/2 binary64)) (pow.f64 im #s(literal 2 binary64))))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 #s(literal 1/2 binary64)) (pow.f64 im #s(literal 2 binary64))))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 #s(literal 1/2 binary64)) (pow.f64 im #s(literal 2 binary64))))))
(-.f64 (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64)) #s(literal 1 binary64))
(pow.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64))) #s(literal 1 binary64))
(pow.f64 (cbrt.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)))) #s(literal 3 binary64))
(pow.f64 (*.f64 (pow.f64 im #s(literal 6 binary64)) #s(literal 1/8 binary64)) #s(literal 1/3 binary64))
(pow.f64 (*.f64 im (sqrt.f64 #s(literal 1/2 binary64))) #s(literal 2 binary64))
(sqrt.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal 1/4 binary64)))
(log.f64 (pow.f64 (exp.f64 #s(literal 1/2 binary64)) (pow.f64 im #s(literal 2 binary64))))
(log.f64 (+.f64 #s(literal 1 binary64) (expm1.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64))))))
(cbrt.f64 (*.f64 (pow.f64 im #s(literal 6 binary64)) #s(literal 1/8 binary64)))
(expm1.f64 (log1p.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)))))
(log1p.f64 (expm1.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)))))
(exp.f64 (log.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)))))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64))))) #s(literal 3 binary64)))
(exp.f64 (*.f64 (log.f64 (*.f64 (pow.f64 im #s(literal 6 binary64)) #s(literal 1/8 binary64))) #s(literal 1/3 binary64)))
(exp.f64 (*.f64 (log.f64 (*.f64 im (sqrt.f64 #s(literal 1/2 binary64)))) #s(literal 2 binary64)))
(fma.f64 #s(literal 1 binary64) (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64)) #s(literal -1 binary64))
(fma.f64 (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64)) #s(literal 1 binary64) #s(literal -1 binary64))
(fma.f64 (cbrt.f64 (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64))) (pow.f64 (cbrt.f64 (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64))) #s(literal 2 binary64)) #s(literal -1 binary64))
(fma.f64 (pow.f64 (cbrt.f64 (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64))) #s(literal 2 binary64)) (cbrt.f64 (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64))) #s(literal -1 binary64))
(fma.f64 (hypot.f64 #s(literal 1 binary64) (*.f64 im (sqrt.f64 #s(literal 1/2 binary64)))) (hypot.f64 #s(literal 1 binary64) (*.f64 im (sqrt.f64 #s(literal 1/2 binary64)))) #s(literal -1 binary64))
(fma.f64 (fma.f64 (pow.f64 im #s(literal 6 binary64)) #s(literal 1/8 binary64) #s(literal 1 binary64)) (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (fma.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal 1/4 binary64) (*.f64 #s(literal -1/2 binary64) (pow.f64 im #s(literal 2 binary64)))))) #s(literal -1 binary64))
(fma.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal 1/4 binary64))) (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (pow.f64 im #s(literal 2 binary64))))) #s(literal -1 binary64))
Outputs
re
(+.f64 re (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) re)))
(fma.f64 #s(literal 1/2 binary64) (*.f64 re (pow.f64 im #s(literal 2 binary64))) re)
(*.f64 re (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64)))
(+.f64 re (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) re)))
(fma.f64 #s(literal 1/2 binary64) (*.f64 re (pow.f64 im #s(literal 2 binary64))) re)
(*.f64 re (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64)))
(+.f64 re (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) re)))
(fma.f64 #s(literal 1/2 binary64) (*.f64 re (pow.f64 im #s(literal 2 binary64))) re)
(*.f64 re (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64)))
(*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) re))
(*.f64 #s(literal 1/2 binary64) (*.f64 re (pow.f64 im #s(literal 2 binary64))))
(*.f64 (pow.f64 im #s(literal 2 binary64)) (*.f64 re #s(literal 1/2 binary64)))
(*.f64 re (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64))))
(*.f64 (pow.f64 im #s(literal 2 binary64)) (+.f64 (*.f64 #s(literal 1/2 binary64) re) (/.f64 re (pow.f64 im #s(literal 2 binary64)))))
(fma.f64 #s(literal 1/2 binary64) (*.f64 re (pow.f64 im #s(literal 2 binary64))) re)
(*.f64 re (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64)))
(*.f64 (pow.f64 im #s(literal 2 binary64)) (+.f64 (*.f64 #s(literal 1/2 binary64) re) (/.f64 re (pow.f64 im #s(literal 2 binary64)))))
(fma.f64 #s(literal 1/2 binary64) (*.f64 re (pow.f64 im #s(literal 2 binary64))) re)
(*.f64 re (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64)))
(*.f64 (pow.f64 im #s(literal 2 binary64)) (+.f64 (*.f64 #s(literal 1/2 binary64) re) (/.f64 re (pow.f64 im #s(literal 2 binary64)))))
(fma.f64 #s(literal 1/2 binary64) (*.f64 re (pow.f64 im #s(literal 2 binary64))) re)
(*.f64 re (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64)))
(*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) re))
(*.f64 #s(literal 1/2 binary64) (*.f64 re (pow.f64 im #s(literal 2 binary64))))
(*.f64 (pow.f64 im #s(literal 2 binary64)) (*.f64 re #s(literal 1/2 binary64)))
(*.f64 re (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64))))
(*.f64 (pow.f64 im #s(literal 2 binary64)) (+.f64 (*.f64 #s(literal 1/2 binary64) re) (/.f64 re (pow.f64 im #s(literal 2 binary64)))))
(fma.f64 #s(literal 1/2 binary64) (*.f64 re (pow.f64 im #s(literal 2 binary64))) re)
(*.f64 re (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64)))
(*.f64 (pow.f64 im #s(literal 2 binary64)) (+.f64 (*.f64 #s(literal 1/2 binary64) re) (/.f64 re (pow.f64 im #s(literal 2 binary64)))))
(fma.f64 #s(literal 1/2 binary64) (*.f64 re (pow.f64 im #s(literal 2 binary64))) re)
(*.f64 re (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64)))
(*.f64 (pow.f64 im #s(literal 2 binary64)) (+.f64 (*.f64 #s(literal 1/2 binary64) re) (/.f64 re (pow.f64 im #s(literal 2 binary64)))))
(fma.f64 #s(literal 1/2 binary64) (*.f64 re (pow.f64 im #s(literal 2 binary64))) re)
(*.f64 re (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64)))
(+.f64 re (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) re)))
(fma.f64 #s(literal 1/2 binary64) (*.f64 re (pow.f64 im #s(literal 2 binary64))) re)
(*.f64 re (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64)))
(+.f64 re (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) re)) #s(literal 1 binary64)))
(fma.f64 #s(literal 1/2 binary64) (*.f64 re (pow.f64 im #s(literal 2 binary64))) re)
(*.f64 re (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64)))
(+.f64 #s(literal 0 binary64) (*.f64 re (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64))))
(fma.f64 #s(literal 1/2 binary64) (*.f64 re (pow.f64 im #s(literal 2 binary64))) re)
(*.f64 re (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64)))
(+.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) re)) re)
(fma.f64 #s(literal 1/2 binary64) (*.f64 re (pow.f64 im #s(literal 2 binary64))) re)
(*.f64 re (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64)))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64))) re)) (cbrt.f64 (pow.f64 (exp.f64 (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64))) re)))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64))) re))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64))) re))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64))) re))))
(*.f64 #s(literal 2 binary64) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64))) re))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 re (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64))))) #s(literal 1 binary64))
(fma.f64 #s(literal 1/2 binary64) (*.f64 re (pow.f64 im #s(literal 2 binary64))) re)
(*.f64 re (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64)))
(/.f64 (+.f64 (pow.f64 re #s(literal 3 binary64)) (*.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 (*.f64 #s(literal 1/2 binary64) re) #s(literal 3 binary64)))) (fma.f64 re re (-.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) re)) (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) re))) (*.f64 re (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) re))))))
(/.f64 (+.f64 (pow.f64 re #s(literal 3 binary64)) (*.f64 (pow.f64 im #s(literal 6 binary64)) (*.f64 #s(literal 1/8 binary64) (pow.f64 re #s(literal 3 binary64))))) (fma.f64 re re (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 re (pow.f64 im #s(literal 2 binary64)))) (-.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 re (pow.f64 im #s(literal 2 binary64)))) re))))
(/.f64 (fma.f64 (pow.f64 im #s(literal 6 binary64)) (*.f64 (pow.f64 re #s(literal 3 binary64)) #s(literal 1/8 binary64)) (pow.f64 re #s(literal 3 binary64))) (fma.f64 re re (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 re (pow.f64 im #s(literal 2 binary64)))) (fma.f64 #s(literal 1/2 binary64) (*.f64 re (pow.f64 im #s(literal 2 binary64))) (neg.f64 re)))))
(/.f64 (*.f64 (fma.f64 (pow.f64 im #s(literal 6 binary64)) #s(literal 1/8 binary64) #s(literal 1 binary64)) (pow.f64 re #s(literal 3 binary64))) (fma.f64 re re (*.f64 (pow.f64 re #s(literal 2 binary64)) (-.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal 1/4 binary64)) (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)))))))
(*.f64 (fma.f64 (pow.f64 im #s(literal 6 binary64)) #s(literal 1/8 binary64) #s(literal 1 binary64)) (/.f64 (pow.f64 re #s(literal 3 binary64)) (*.f64 (pow.f64 re #s(literal 2 binary64)) (fma.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal 1/4 binary64) (fma.f64 (pow.f64 im #s(literal 2 binary64)) #s(literal -1/2 binary64) #s(literal 1 binary64))))))
(/.f64 (-.f64 (pow.f64 re #s(literal 2 binary64)) (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) re)) (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) re)))) (-.f64 re (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) re))))
(fma.f64 #s(literal 1/2 binary64) (*.f64 re (pow.f64 im #s(literal 2 binary64))) re)
(*.f64 re (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64)))
(/.f64 (*.f64 re (fma.f64 (pow.f64 im #s(literal 6 binary64)) #s(literal 1/8 binary64) #s(literal 1 binary64))) (+.f64 #s(literal 1 binary64) (fma.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal 1/4 binary64) (*.f64 #s(literal -1/2 binary64) (pow.f64 im #s(literal 2 binary64))))))
(/.f64 (*.f64 re (fma.f64 (pow.f64 im #s(literal 6 binary64)) #s(literal 1/8 binary64) #s(literal 1 binary64))) (+.f64 #s(literal 1 binary64) (fma.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal 1/4 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) #s(literal -1/2 binary64)))))
(*.f64 (fma.f64 (pow.f64 im #s(literal 6 binary64)) #s(literal 1/8 binary64) #s(literal 1 binary64)) (/.f64 re (fma.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal 1/4 binary64) (fma.f64 (pow.f64 im #s(literal 2 binary64)) #s(literal -1/2 binary64) #s(literal 1 binary64)))))
(/.f64 (*.f64 re (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal 1/4 binary64)))) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (pow.f64 im #s(literal 2 binary64)))))
(*.f64 re (/.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal 1/4 binary64))) (+.f64 #s(literal 1 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) #s(literal -1/2 binary64)))))
(*.f64 re (/.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal 1/4 binary64))) (fma.f64 (pow.f64 im #s(literal 2 binary64)) #s(literal -1/2 binary64) #s(literal 1 binary64))))
(*.f64 re (/.f64 (fma.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal -1/4 binary64) #s(literal 1 binary64)) (fma.f64 (pow.f64 im #s(literal 2 binary64)) #s(literal -1/2 binary64) #s(literal 1 binary64))))
(*.f64 (fma.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal -1/4 binary64) #s(literal 1 binary64)) (/.f64 re (fma.f64 (pow.f64 im #s(literal 2 binary64)) #s(literal -1/2 binary64) #s(literal 1 binary64))))
(/.f64 (*.f64 (fma.f64 (pow.f64 im #s(literal 6 binary64)) #s(literal 1/8 binary64) #s(literal 1 binary64)) re) (+.f64 #s(literal 1 binary64) (fma.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal 1/4 binary64) (*.f64 #s(literal -1/2 binary64) (pow.f64 im #s(literal 2 binary64))))))
(/.f64 (*.f64 re (fma.f64 (pow.f64 im #s(literal 6 binary64)) #s(literal 1/8 binary64) #s(literal 1 binary64))) (+.f64 #s(literal 1 binary64) (fma.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal 1/4 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) #s(literal -1/2 binary64)))))
(*.f64 (fma.f64 (pow.f64 im #s(literal 6 binary64)) #s(literal 1/8 binary64) #s(literal 1 binary64)) (/.f64 re (fma.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal 1/4 binary64) (fma.f64 (pow.f64 im #s(literal 2 binary64)) #s(literal -1/2 binary64) #s(literal 1 binary64)))))
(/.f64 (*.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal 1/4 binary64))) re) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (pow.f64 im #s(literal 2 binary64)))))
(*.f64 re (/.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal 1/4 binary64))) (+.f64 #s(literal 1 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) #s(literal -1/2 binary64)))))
(*.f64 re (/.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal 1/4 binary64))) (fma.f64 (pow.f64 im #s(literal 2 binary64)) #s(literal -1/2 binary64) #s(literal 1 binary64))))
(*.f64 re (/.f64 (fma.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal -1/4 binary64) #s(literal 1 binary64)) (fma.f64 (pow.f64 im #s(literal 2 binary64)) #s(literal -1/2 binary64) #s(literal 1 binary64))))
(*.f64 (fma.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal -1/4 binary64) #s(literal 1 binary64)) (/.f64 re (fma.f64 (pow.f64 im #s(literal 2 binary64)) #s(literal -1/2 binary64) #s(literal 1 binary64))))
(pow.f64 (*.f64 re (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64))) #s(literal 1 binary64))
(fma.f64 #s(literal 1/2 binary64) (*.f64 re (pow.f64 im #s(literal 2 binary64))) re)
(*.f64 re (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64)))
(pow.f64 (cbrt.f64 (*.f64 re (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64)))) #s(literal 3 binary64))
(fma.f64 #s(literal 1/2 binary64) (*.f64 re (pow.f64 im #s(literal 2 binary64))) re)
(*.f64 re (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64)))
(pow.f64 (pow.f64 (*.f64 re (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64))) #s(literal 3 binary64)) #s(literal 1/3 binary64))
(fma.f64 #s(literal 1/2 binary64) (*.f64 re (pow.f64 im #s(literal 2 binary64))) re)
(*.f64 re (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64)))
(pow.f64 (sqrt.f64 (*.f64 re (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64)))) #s(literal 2 binary64))
(fma.f64 #s(literal 1/2 binary64) (*.f64 re (pow.f64 im #s(literal 2 binary64))) re)
(*.f64 re (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64)))
(sqrt.f64 (pow.f64 (*.f64 re (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64))) #s(literal 2 binary64)))
(fma.f64 #s(literal 1/2 binary64) (*.f64 re (pow.f64 im #s(literal 2 binary64))) re)
(*.f64 re (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64)))
(log.f64 (pow.f64 (exp.f64 (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64))) re))
(fma.f64 #s(literal 1/2 binary64) (*.f64 re (pow.f64 im #s(literal 2 binary64))) re)
(*.f64 re (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64)))
(log.f64 (+.f64 #s(literal 1 binary64) (expm1.f64 (*.f64 re (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64))))))
(fma.f64 #s(literal 1/2 binary64) (*.f64 re (pow.f64 im #s(literal 2 binary64))) re)
(*.f64 re (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64)))
(log.f64 (*.f64 (+.f64 #s(literal 1 binary64) (expm1.f64 re)) (exp.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) re)))))
(fma.f64 #s(literal 1/2 binary64) (*.f64 re (pow.f64 im #s(literal 2 binary64))) re)
(*.f64 re (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64)))
(log.f64 (*.f64 (exp.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) re))) (exp.f64 re)))
(fma.f64 #s(literal 1/2 binary64) (*.f64 re (pow.f64 im #s(literal 2 binary64))) re)
(*.f64 re (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64)))
(log.f64 (*.f64 (exp.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) re))) (+.f64 #s(literal 1 binary64) (expm1.f64 re))))
(fma.f64 #s(literal 1/2 binary64) (*.f64 re (pow.f64 im #s(literal 2 binary64))) re)
(*.f64 re (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64)))
(cbrt.f64 (pow.f64 (*.f64 re (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64))) #s(literal 3 binary64)))
(fma.f64 #s(literal 1/2 binary64) (*.f64 re (pow.f64 im #s(literal 2 binary64))) re)
(*.f64 re (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64)))
(expm1.f64 (log1p.f64 (*.f64 re (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64)))))
(fma.f64 #s(literal 1/2 binary64) (*.f64 re (pow.f64 im #s(literal 2 binary64))) re)
(*.f64 re (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64)))
(log1p.f64 (expm1.f64 (*.f64 re (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64)))))
(fma.f64 #s(literal 1/2 binary64) (*.f64 re (pow.f64 im #s(literal 2 binary64))) re)
(*.f64 re (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64)))
(exp.f64 (log.f64 (*.f64 re (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64)))))
(fma.f64 #s(literal 1/2 binary64) (*.f64 re (pow.f64 im #s(literal 2 binary64))) re)
(*.f64 re (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64)))
(exp.f64 (*.f64 (log.f64 (*.f64 re (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64)))) #s(literal 1 binary64)))
(fma.f64 #s(literal 1/2 binary64) (*.f64 re (pow.f64 im #s(literal 2 binary64))) re)
(*.f64 re (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64)))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 re (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64))))) #s(literal 3 binary64)))
(fma.f64 #s(literal 1/2 binary64) (*.f64 re (pow.f64 im #s(literal 2 binary64))) re)
(*.f64 re (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64)))
(exp.f64 (*.f64 (*.f64 #s(literal 3 binary64) (log.f64 (*.f64 re (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64))))) #s(literal 1/3 binary64)))
(fma.f64 #s(literal 1/2 binary64) (*.f64 re (pow.f64 im #s(literal 2 binary64))) re)
(*.f64 re (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64)))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 re (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64))))) #s(literal 2 binary64)))
(fma.f64 #s(literal 1/2 binary64) (*.f64 re (pow.f64 im #s(literal 2 binary64))) re)
(*.f64 re (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64)))
(fma.f64 re #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) re)))
(fma.f64 #s(literal 1/2 binary64) (*.f64 re (pow.f64 im #s(literal 2 binary64))) re)
(*.f64 re (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64)))
(fma.f64 re #s(literal 1 binary64) (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) re)) #s(literal 1 binary64)))
(fma.f64 #s(literal 1/2 binary64) (*.f64 re (pow.f64 im #s(literal 2 binary64))) re)
(*.f64 re (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64)))
(fma.f64 re (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64))) re)
(fma.f64 #s(literal 1/2 binary64) (*.f64 re (pow.f64 im #s(literal 2 binary64))) re)
(*.f64 re (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64)))
(fma.f64 #s(literal 1 binary64) re (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) re)))
(fma.f64 #s(literal 1/2 binary64) (*.f64 re (pow.f64 im #s(literal 2 binary64))) re)
(*.f64 re (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64)))
(fma.f64 #s(literal 1 binary64) re (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) re)) #s(literal 1 binary64)))
(fma.f64 #s(literal 1/2 binary64) (*.f64 re (pow.f64 im #s(literal 2 binary64))) re)
(*.f64 re (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64)))
(fma.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) re)) re)
(fma.f64 #s(literal 1/2 binary64) (*.f64 re (pow.f64 im #s(literal 2 binary64))) re)
(*.f64 re (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64)))
(fma.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) re) re)
(fma.f64 #s(literal 1/2 binary64) (*.f64 re (pow.f64 im #s(literal 2 binary64))) re)
(*.f64 re (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64)))
(fma.f64 (pow.f64 im #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) re) re)
(fma.f64 #s(literal 1/2 binary64) (*.f64 re (pow.f64 im #s(literal 2 binary64))) re)
(*.f64 re (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64)))
(fma.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64))) re re)
(fma.f64 #s(literal 1/2 binary64) (*.f64 re (pow.f64 im #s(literal 2 binary64))) re)
(*.f64 re (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64)))
(fma.f64 (cbrt.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal 1/4 binary64))) (*.f64 (cbrt.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)))) re) re)
(fma.f64 (cbrt.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal 1/4 binary64))) (*.f64 re (cbrt.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64))))) re)
(fma.f64 (cbrt.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)))) (*.f64 re (cbrt.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal 1/4 binary64)))) re)
(fma.f64 re (*.f64 (cbrt.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal 1/4 binary64))) (cbrt.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64))))) re)
(fma.f64 (cbrt.f64 re) (pow.f64 (cbrt.f64 re) #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) re)))
(fma.f64 #s(literal 1/2 binary64) (*.f64 re (pow.f64 im #s(literal 2 binary64))) re)
(*.f64 re (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64)))
(fma.f64 (cbrt.f64 re) (pow.f64 (cbrt.f64 re) #s(literal 2 binary64)) (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) re)) #s(literal 1 binary64)))
(fma.f64 #s(literal 1/2 binary64) (*.f64 re (pow.f64 im #s(literal 2 binary64))) re)
(*.f64 re (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64)))
(fma.f64 (pow.f64 (cbrt.f64 re) #s(literal 2 binary64)) (cbrt.f64 re) (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) re)))
(fma.f64 #s(literal 1/2 binary64) (*.f64 re (pow.f64 im #s(literal 2 binary64))) re)
(*.f64 re (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64)))
(fma.f64 (pow.f64 (cbrt.f64 re) #s(literal 2 binary64)) (cbrt.f64 re) (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) re)) #s(literal 1 binary64)))
(fma.f64 #s(literal 1/2 binary64) (*.f64 re (pow.f64 im #s(literal 2 binary64))) re)
(*.f64 re (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64)))
(fma.f64 (pow.f64 (cbrt.f64 re) #s(literal 2 binary64)) (*.f64 (cbrt.f64 re) #s(literal 1 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) re)))
(fma.f64 #s(literal 1/2 binary64) (*.f64 re (pow.f64 im #s(literal 2 binary64))) re)
(*.f64 re (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64)))
(fma.f64 (pow.f64 (cbrt.f64 re) #s(literal 2 binary64)) (*.f64 (cbrt.f64 re) #s(literal 1 binary64)) (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) re)) #s(literal 1 binary64)))
(fma.f64 #s(literal 1/2 binary64) (*.f64 re (pow.f64 im #s(literal 2 binary64))) re)
(*.f64 re (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64)))
(fma.f64 (pow.f64 (cbrt.f64 re) #s(literal 2 binary64)) (*.f64 (cbrt.f64 re) (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)))) re)
(fma.f64 #s(literal 1/2 binary64) (*.f64 re (pow.f64 im #s(literal 2 binary64))) re)
(*.f64 re (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64)))
(fma.f64 (*.f64 im (sqrt.f64 #s(literal 1/2 binary64))) (*.f64 (*.f64 im (sqrt.f64 #s(literal 1/2 binary64))) re) re)
(fma.f64 #s(literal 1/2 binary64) (*.f64 re (pow.f64 im #s(literal 2 binary64))) re)
(*.f64 re (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64)))
(fma.f64 (sqrt.f64 re) (sqrt.f64 re) (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) re)))
(fma.f64 #s(literal 1/2 binary64) (*.f64 re (pow.f64 im #s(literal 2 binary64))) re)
(*.f64 re (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64)))
(fma.f64 (sqrt.f64 re) (sqrt.f64 re) (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) re)) #s(literal 1 binary64)))
(fma.f64 #s(literal 1/2 binary64) (*.f64 re (pow.f64 im #s(literal 2 binary64))) re)
(*.f64 re (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64)))
(fma.f64 (sqrt.f64 re) (*.f64 (sqrt.f64 re) #s(literal 1 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) re)))
(fma.f64 #s(literal 1/2 binary64) (*.f64 re (pow.f64 im #s(literal 2 binary64))) re)
(*.f64 re (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64)))
(fma.f64 (sqrt.f64 re) (*.f64 (sqrt.f64 re) #s(literal 1 binary64)) (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) re)) #s(literal 1 binary64)))
(fma.f64 #s(literal 1/2 binary64) (*.f64 re (pow.f64 im #s(literal 2 binary64))) re)
(*.f64 re (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64)))
(fma.f64 (sqrt.f64 re) (*.f64 (sqrt.f64 re) (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)))) re)
(fma.f64 #s(literal 1/2 binary64) (*.f64 re (pow.f64 im #s(literal 2 binary64))) re)
(*.f64 re (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64)))
(fma.f64 (*.f64 (cbrt.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) re))) (cbrt.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) re)))) (cbrt.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) re))) re)
(fma.f64 #s(literal 1/2 binary64) (*.f64 re (pow.f64 im #s(literal 2 binary64))) re)
(*.f64 re (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64)))
(fma.f64 (sqrt.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) re))) (sqrt.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) re))) re)
(fma.f64 #s(literal 1/2 binary64) (*.f64 re (pow.f64 im #s(literal 2 binary64))) re)
(*.f64 re (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64)))
(fma.f64 (*.f64 (*.f64 im (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 re)) (*.f64 (*.f64 im (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 re)) re)
(fma.f64 #s(literal 1/2 binary64) (*.f64 re (pow.f64 im #s(literal 2 binary64))) re)
(*.f64 re (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64)))
(fma.f64 (*.f64 (sqrt.f64 re) (*.f64 im (sqrt.f64 #s(literal 1/2 binary64)))) (*.f64 (sqrt.f64 re) (*.f64 im (sqrt.f64 #s(literal 1/2 binary64)))) re)
(fma.f64 #s(literal 1/2 binary64) (*.f64 re (pow.f64 im #s(literal 2 binary64))) re)
(*.f64 re (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64)))
(fma.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64))) (pow.f64 (cbrt.f64 re) #s(literal 2 binary64))) (cbrt.f64 re) re)
(fma.f64 #s(literal 1/2 binary64) (*.f64 re (pow.f64 im #s(literal 2 binary64))) re)
(*.f64 re (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64)))
(fma.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64))) (sqrt.f64 re)) (sqrt.f64 re) re)
(fma.f64 #s(literal 1/2 binary64) (*.f64 re (pow.f64 im #s(literal 2 binary64))) re)
(*.f64 re (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64)))
(fma.f64 (*.f64 re #s(literal 1/2 binary64)) (pow.f64 im #s(literal 2 binary64)) re)
(fma.f64 #s(literal 1/2 binary64) (*.f64 re (pow.f64 im #s(literal 2 binary64))) re)
(*.f64 re (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64)))
(fma.f64 (*.f64 re (pow.f64 im #s(literal 2 binary64))) #s(literal 1/2 binary64) re)
(fma.f64 #s(literal 1/2 binary64) (*.f64 re (pow.f64 im #s(literal 2 binary64))) re)
(*.f64 re (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64)))
(fma.f64 (*.f64 re (cbrt.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal 1/4 binary64)))) (cbrt.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)))) re)
(fma.f64 (cbrt.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal 1/4 binary64))) (*.f64 re (cbrt.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64))))) re)
(fma.f64 (cbrt.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)))) (*.f64 re (cbrt.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal 1/4 binary64)))) re)
(fma.f64 re (*.f64 (cbrt.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal 1/4 binary64))) (cbrt.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64))))) re)
(fma.f64 (*.f64 re (*.f64 im (sqrt.f64 #s(literal 1/2 binary64)))) (*.f64 im (sqrt.f64 #s(literal 1/2 binary64))) re)
(fma.f64 #s(literal 1/2 binary64) (*.f64 re (pow.f64 im #s(literal 2 binary64))) re)
(*.f64 re (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64)))
(+.f64 #s(literal 0 binary64) (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64))))
(*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 #s(literal 1/2 binary64)) (pow.f64 im #s(literal 2 binary64)))) (cbrt.f64 (pow.f64 (exp.f64 #s(literal 1/2 binary64)) (pow.f64 im #s(literal 2 binary64)))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 #s(literal 1/2 binary64)) (pow.f64 im #s(literal 2 binary64))))))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (sqrt.f64 (exp.f64 (pow.f64 im #s(literal 2 binary64))))) (cbrt.f64 (sqrt.f64 (exp.f64 (pow.f64 im #s(literal 2 binary64))))))) (log.f64 (cbrt.f64 (sqrt.f64 (exp.f64 (pow.f64 im #s(literal 2 binary64)))))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 #s(literal 1/2 binary64)) (pow.f64 im #s(literal 2 binary64))))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 #s(literal 1/2 binary64)) (pow.f64 im #s(literal 2 binary64))))))
(*.f64 #s(literal 2 binary64) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 #s(literal 1/2 binary64)) (pow.f64 im #s(literal 2 binary64))))))
(*.f64 #s(literal 2 binary64) (log.f64 (sqrt.f64 (sqrt.f64 (exp.f64 (pow.f64 im #s(literal 2 binary64)))))))
(-.f64 (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64)) #s(literal 1 binary64))
(*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)))
(pow.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64))) #s(literal 1 binary64))
(*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)))
(pow.f64 (cbrt.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)))) #s(literal 3 binary64))
(*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)))
(pow.f64 (*.f64 (pow.f64 im #s(literal 6 binary64)) #s(literal 1/8 binary64)) #s(literal 1/3 binary64))
(cbrt.f64 (*.f64 (pow.f64 im #s(literal 6 binary64)) #s(literal 1/8 binary64)))
(pow.f64 (*.f64 im (sqrt.f64 #s(literal 1/2 binary64))) #s(literal 2 binary64))
(*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)))
(sqrt.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal 1/4 binary64)))
(log.f64 (pow.f64 (exp.f64 #s(literal 1/2 binary64)) (pow.f64 im #s(literal 2 binary64))))
(*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)))
(log.f64 (+.f64 #s(literal 1 binary64) (expm1.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64))))))
(*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)))
(cbrt.f64 (*.f64 (pow.f64 im #s(literal 6 binary64)) #s(literal 1/8 binary64)))
(expm1.f64 (log1p.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)))))
(*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)))
(log1p.f64 (expm1.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)))))
(*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)))
(exp.f64 (log.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)))))
(*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64))))) #s(literal 3 binary64)))
(*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (*.f64 (pow.f64 im #s(literal 6 binary64)) #s(literal 1/8 binary64))) #s(literal 1/3 binary64)))
(cbrt.f64 (*.f64 (pow.f64 im #s(literal 6 binary64)) #s(literal 1/8 binary64)))
(exp.f64 (*.f64 (log.f64 (*.f64 im (sqrt.f64 #s(literal 1/2 binary64)))) #s(literal 2 binary64)))
(*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)))
(fma.f64 #s(literal 1 binary64) (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64)) #s(literal -1 binary64))
(*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)))
(fma.f64 (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64)) #s(literal 1 binary64) #s(literal -1 binary64))
(*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)))
(fma.f64 (cbrt.f64 (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64))) (pow.f64 (cbrt.f64 (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64))) #s(literal 2 binary64)) #s(literal -1 binary64))
(*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)))
(fma.f64 (pow.f64 (cbrt.f64 (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64))) #s(literal 2 binary64)) (cbrt.f64 (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) #s(literal 1 binary64))) #s(literal -1 binary64))
(*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)))
(fma.f64 (hypot.f64 #s(literal 1 binary64) (*.f64 im (sqrt.f64 #s(literal 1/2 binary64)))) (hypot.f64 #s(literal 1 binary64) (*.f64 im (sqrt.f64 #s(literal 1/2 binary64)))) #s(literal -1 binary64))
(*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)))
(fma.f64 (fma.f64 (pow.f64 im #s(literal 6 binary64)) #s(literal 1/8 binary64) #s(literal 1 binary64)) (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (fma.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal 1/4 binary64) (*.f64 #s(literal -1/2 binary64) (pow.f64 im #s(literal 2 binary64)))))) #s(literal -1 binary64))
(fma.f64 (fma.f64 (pow.f64 im #s(literal 6 binary64)) #s(literal 1/8 binary64) #s(literal 1 binary64)) (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (fma.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal 1/4 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) #s(literal -1/2 binary64))))) #s(literal -1 binary64))
(+.f64 #s(literal -1 binary64) (/.f64 (fma.f64 (pow.f64 im #s(literal 6 binary64)) #s(literal 1/8 binary64) #s(literal 1 binary64)) (fma.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal 1/4 binary64) (fma.f64 (pow.f64 im #s(literal 2 binary64)) #s(literal -1/2 binary64) #s(literal 1 binary64)))))
(fma.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal 1/4 binary64))) (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (pow.f64 im #s(literal 2 binary64))))) #s(literal -1 binary64))
(fma.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal 1/4 binary64))) (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) #s(literal -1/2 binary64)))) #s(literal -1 binary64))
(fma.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal 1/4 binary64))) (/.f64 #s(literal 1 binary64) (fma.f64 (pow.f64 im #s(literal 2 binary64)) #s(literal -1/2 binary64) #s(literal 1 binary64))) #s(literal -1 binary64))
(+.f64 #s(literal -1 binary64) (/.f64 (fma.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal -1/4 binary64) #s(literal 1 binary64)) (fma.f64 (pow.f64 im #s(literal 2 binary64)) #s(literal -1/2 binary64) #s(literal 1 binary64))))

eval40.0ms (0.7%)

Compiler

Compiled 1792 to 1368 computations (23.7% saved)

prune30.0ms (0.5%)

Pruning

19 alts after pruning (9 fresh and 10 done)

PrunedKeptTotal
New1191120
Fresh088
Picked055
Done055
Total11919138
Accuracy
100.0%
Counts
138 → 19
Alt Table
Click to see full alt table
StatusAccuracyProgram
18.0%
(pow.f64 (*.f64 (sin.f64 re) #s(literal -2 binary64)) #s(literal -2 binary64))
16.3%
(/.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal 2 binary64)))
22.9%
(*.f64 (pow.f64 im #s(literal 2 binary64)) (*.f64 re #s(literal 1/2 binary64)))
71.1%
(*.f64 (+.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64))) #s(literal 1 binary64)) (sin.f64 re))
100.0%
(*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
62.3%
(*.f64 (*.f64 #s(literal 1/2 binary64) re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
43.9%
(*.f64 re (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)))))
27.1%
(*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) (sin.f64 re)))
47.6%
(sin.f64 re)
24.6%
re
4.7%
#s(literal 4 binary64)
5.2%
#s(literal 1 binary64)
5.1%
#s(literal 1/2 binary64)
4.9%
#s(literal 1/4 binary64)
4.8%
#s(literal 1/8 binary64)
4.7%
#s(literal 1/16 binary64)
3.7%
#s(literal -1/2 binary64)
3.9%
#s(literal -1 binary64)
3.4%
#s(literal -4 binary64)
Compiler

Compiled 160 to 137 computations (14.4% saved)

localize78.0ms (1.4%)

Localize:

Found 3 expressions with local error:

NewAccuracyProgram
98.8%
(/.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal 2 binary64)))
100.0%
(*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) (sin.f64 re)))
93.5%
(*.f64 (pow.f64 im #s(literal 2 binary64)) (sin.f64 re))
Results
57.0ms256×256valid
Compiler

Compiled 40 to 27 computations (32.5% saved)

Precisions
Click to see histograms. Total time spent on operations: 29.0ms
ival-pow: 14.0ms (48.4% of total)
ival-sin: 6.0ms (20.7% of total)
ival-mult: 5.0ms (17.3% of total)
ival-div: 2.0ms (6.9% of total)
const: 2.0ms (6.9% of total)

series10.0ms (0.2%)

Counts
3 → 8
Calls
Call 1
Inputs
#<alt (*.f64 (pow.f64 im #s(literal 2 binary64)) (sin.f64 re))>
#<alt (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) (sin.f64 re)))>
#<alt (/.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal 2 binary64)))>
Outputs
#<alt (*.f64 (pow.f64 im #s(literal 2 binary64)) re)>
#<alt (*.f64 re (+.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) (pow.f64 re #s(literal 2 binary64)))) (pow.f64 im #s(literal 2 binary64))))>
#<alt (*.f64 re (+.f64 (*.f64 (pow.f64 re #s(literal 2 binary64)) (+.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 im #s(literal 2 binary64))) (*.f64 #s(literal 1/120 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) (pow.f64 re #s(literal 2 binary64)))))) (pow.f64 im #s(literal 2 binary64))))>
#<alt (*.f64 re (+.f64 (*.f64 (pow.f64 re #s(literal 2 binary64)) (+.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 im #s(literal 2 binary64))) (*.f64 (pow.f64 re #s(literal 2 binary64)) (+.f64 (*.f64 #s(literal -1/5040 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) (pow.f64 re #s(literal 2 binary64)))) (*.f64 #s(literal 1/120 binary64) (pow.f64 im #s(literal 2 binary64))))))) (pow.f64 im #s(literal 2 binary64))))>
#<alt (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) re))>
#<alt (*.f64 re (+.f64 (*.f64 #s(literal -1/12 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) (pow.f64 re #s(literal 2 binary64)))) (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)))))>
#<alt (*.f64 re (+.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64))) (*.f64 (pow.f64 re #s(literal 2 binary64)) (+.f64 (*.f64 #s(literal -1/12 binary64) (pow.f64 im #s(literal 2 binary64))) (*.f64 #s(literal 1/240 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) (pow.f64 re #s(literal 2 binary64))))))))>
#<alt (*.f64 re (+.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64))) (*.f64 (pow.f64 re #s(literal 2 binary64)) (+.f64 (*.f64 #s(literal -1/12 binary64) (pow.f64 im #s(literal 2 binary64))) (*.f64 (pow.f64 re #s(literal 2 binary64)) (+.f64 (*.f64 #s(literal -1/10080 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) (pow.f64 re #s(literal 2 binary64)))) (*.f64 #s(literal 1/240 binary64) (pow.f64 im #s(literal 2 binary64)))))))))>
Calls

15 calls:

TimeVariablePointExpression
3.0ms
re
@-inf
(* 1/2 (* (pow im 2) (sin re)))
1.0ms
re
@0
(* 1/2 (* (pow im 2) (sin re)))
0.0ms
re
@0
(/ 1/4 (pow re 2))
0.0ms
re
@0
(* (pow im 2) (sin re))
0.0ms
im
@inf
(* (pow im 2) (sin re))

rewrite104.0ms (1.9%)

Algorithm
batch-egg-rewrite
Rules
721×unpow-prod-down
705×log1p-expm1-u
705×expm1-log1p-u
425×log-prod
175×pow-unpow
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01768
117968
2206868
Stop Event
node limit
Counts
3 → 92
Calls
Call 1
Inputs
(*.f64 (pow.f64 im #s(literal 2 binary64)) (sin.f64 re))
(*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) (sin.f64 re)))
(/.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal 2 binary64)))
Outputs
(+.f64 #s(literal 0 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) (sin.f64 re)))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) (pow.f64 im #s(literal 2 binary64)))) (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) (pow.f64 im #s(literal 2 binary64)))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) (pow.f64 im #s(literal 2 binary64))))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) (pow.f64 im #s(literal 2 binary64))))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) (pow.f64 im #s(literal 2 binary64))))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) (sin.f64 re)))) #s(literal 1 binary64))
(pow.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) (sin.f64 re)) #s(literal 1 binary64))
(pow.f64 (cbrt.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) (sin.f64 re))) #s(literal 3 binary64))
(pow.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) #s(literal 6 binary64)) #s(literal 1/3 binary64))
(pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) #s(literal 2 binary64))
(sqrt.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) #s(literal 4 binary64)))
(log.f64 (pow.f64 (exp.f64 (sin.f64 re)) (pow.f64 im #s(literal 2 binary64))))
(log.f64 (+.f64 #s(literal 1 binary64) (expm1.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) (sin.f64 re)))))
(cbrt.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) #s(literal 6 binary64)))
(expm1.f64 (log1p.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) (sin.f64 re))))
(log1p.f64 (expm1.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) (sin.f64 re))))
(exp.f64 (log.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) (sin.f64 re))))
(exp.f64 (*.f64 (log.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) (sin.f64 re))) #s(literal 1 binary64)))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) (sin.f64 re)))) #s(literal 3 binary64)))
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) #s(literal 6 binary64))) #s(literal 1/3 binary64)))
(exp.f64 (*.f64 (log.f64 (*.f64 im (sqrt.f64 (sin.f64 re)))) #s(literal 2 binary64)))
(+.f64 #s(literal 0 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) (*.f64 (sin.f64 re) #s(literal 1/2 binary64))))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) (*.f64 (pow.f64 im #s(literal 2 binary64)) #s(literal 1/2 binary64)))) (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) (*.f64 (pow.f64 im #s(literal 2 binary64)) #s(literal 1/2 binary64)))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) (*.f64 (pow.f64 im #s(literal 2 binary64)) #s(literal 1/2 binary64))))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) (*.f64 (pow.f64 im #s(literal 2 binary64)) #s(literal 1/2 binary64))))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) (*.f64 (pow.f64 im #s(literal 2 binary64)) #s(literal 1/2 binary64))))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) (*.f64 (sin.f64 re) #s(literal 1/2 binary64))))) #s(literal 1 binary64))
(pow.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) (*.f64 (sin.f64 re) #s(literal 1/2 binary64))) #s(literal 1 binary64))
(pow.f64 (cbrt.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) (*.f64 (sin.f64 re) #s(literal 1/2 binary64)))) #s(literal 3 binary64))
(pow.f64 (*.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) #s(literal 6 binary64)) #s(literal 1/8 binary64)) #s(literal 1/3 binary64))
(pow.f64 (*.f64 im (pow.f64 (*.f64 (sin.f64 re) #s(literal 1/2 binary64)) #s(literal 1/2 binary64))) #s(literal 2 binary64))
(sqrt.f64 (*.f64 #s(literal 1/4 binary64) (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) #s(literal 4 binary64))))
(log.f64 (pow.f64 (exp.f64 (sin.f64 re)) (*.f64 (pow.f64 im #s(literal 2 binary64)) #s(literal 1/2 binary64))))
(log.f64 (+.f64 #s(literal 1 binary64) (expm1.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) (*.f64 (sin.f64 re) #s(literal 1/2 binary64))))))
(cbrt.f64 (*.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) #s(literal 6 binary64)) #s(literal 1/8 binary64)))
(expm1.f64 (log1p.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) (*.f64 (sin.f64 re) #s(literal 1/2 binary64)))))
(log1p.f64 (expm1.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) (*.f64 (sin.f64 re) #s(literal 1/2 binary64)))))
(exp.f64 (log.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) (*.f64 (sin.f64 re) #s(literal 1/2 binary64)))))
(exp.f64 (*.f64 (log.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) (*.f64 (sin.f64 re) #s(literal 1/2 binary64)))) #s(literal 1 binary64)))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) (*.f64 (sin.f64 re) #s(literal 1/2 binary64))))) #s(literal 3 binary64)))
(exp.f64 (*.f64 (log.f64 (*.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) #s(literal 6 binary64)) #s(literal 1/8 binary64))) #s(literal 1/3 binary64)))
(exp.f64 (*.f64 (log.f64 (*.f64 im (pow.f64 (*.f64 (sin.f64 re) #s(literal 1/2 binary64)) #s(literal 1/2 binary64)))) #s(literal 2 binary64)))
(+.f64 #s(literal 0 binary64) (*.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal -2 binary64))))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 #s(literal 1/4 binary64)) (pow.f64 re #s(literal -2 binary64)))) (cbrt.f64 (pow.f64 (exp.f64 #s(literal 1/4 binary64)) (pow.f64 re #s(literal -2 binary64)))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 #s(literal 1/4 binary64)) (pow.f64 re #s(literal -2 binary64))))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 #s(literal 1/4 binary64)) (pow.f64 re #s(literal -2 binary64))))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 #s(literal 1/4 binary64)) (pow.f64 re #s(literal -2 binary64))))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal -2 binary64))))) #s(literal 1 binary64))
(*.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal -2 binary64)))
(*.f64 #s(literal 1/4 binary64) (pow.f64 (sqrt.f64 (pow.f64 re #s(literal -2 binary64))) #s(literal 2 binary64)))
(*.f64 (*.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal -2 binary64))) #s(literal 1 binary64))
(*.f64 (*.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal -2 binary64))) (log.f64 (exp.f64 #s(literal 1 binary64))))
(*.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal -2 binary64))))
(*.f64 (cbrt.f64 (*.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal -2 binary64)))) (cbrt.f64 (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 4 binary64)))))
(*.f64 (cbrt.f64 (*.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal -2 binary64)))) (pow.f64 (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 4 binary64))) #s(literal 1/3 binary64)))
(*.f64 (cbrt.f64 (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 4 binary64)))) (cbrt.f64 (*.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal -2 binary64)))))
(*.f64 (cbrt.f64 (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 4 binary64)))) (pow.f64 (cbrt.f64 (/.f64 #s(literal 1/2 binary64) re)) #s(literal 2 binary64)))
(*.f64 (/.f64 #s(literal 1/2 binary64) re) (/.f64 #s(literal 1/2 binary64) re))
(*.f64 #s(literal -1/4 binary64) (/.f64 #s(literal 1 binary64) (neg.f64 (pow.f64 re #s(literal 2 binary64)))))
(*.f64 #s(literal -1/4 binary64) (pow.f64 (/.f64 #s(literal 1 binary64) (neg.f64 (pow.f64 re #s(literal 2 binary64)))) #s(literal 1 binary64)))
(*.f64 (pow.f64 re #s(literal -2 binary64)) #s(literal 1/4 binary64))
(*.f64 (pow.f64 re #s(literal -2 binary64)) (log.f64 (exp.f64 #s(literal 1/4 binary64))))
(*.f64 (/.f64 #s(literal 1 binary64) re) (pow.f64 (/.f64 re #s(literal 1/4 binary64)) #s(literal -1 binary64)))
(*.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (cbrt.f64 re) #s(literal 4 binary64))) (pow.f64 (/.f64 (pow.f64 (cbrt.f64 re) #s(literal 2 binary64)) #s(literal 1/4 binary64)) #s(literal -1 binary64)))
(*.f64 (pow.f64 #s(literal 1 binary64) #s(literal 1/3 binary64)) (*.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal -2 binary64))))
(*.f64 (pow.f64 (cbrt.f64 #s(literal 1/4 binary64)) #s(literal 3 binary64)) (pow.f64 (cbrt.f64 (pow.f64 re #s(literal -2 binary64))) #s(literal 3 binary64)))
(*.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 4 binary64))))) #s(literal 3 binary64)) (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal -2 binary64))))) #s(literal 3 binary64)))
(*.f64 (pow.f64 (cbrt.f64 (/.f64 #s(literal 1/2 binary64) re)) #s(literal 3 binary64)) (pow.f64 (cbrt.f64 (/.f64 #s(literal 1/2 binary64) re)) #s(literal 3 binary64)))
(*.f64 (pow.f64 (*.f64 (cbrt.f64 (cbrt.f64 (*.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal -2 binary64))))) (cbrt.f64 (cbrt.f64 (*.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal -2 binary64)))))) #s(literal 3 binary64)) (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal -2 binary64))))) #s(literal 3 binary64)))
(*.f64 (pow.f64 (sqrt.f64 (cbrt.f64 (*.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal -2 binary64))))) #s(literal 3 binary64)) (pow.f64 (sqrt.f64 (cbrt.f64 (*.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal -2 binary64))))) #s(literal 3 binary64)))
(*.f64 (pow.f64 (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 4 binary64))) #s(literal 1/3 binary64)) (cbrt.f64 (*.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal -2 binary64)))))
(*.f64 (pow.f64 (*.f64 (*.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal -2 binary64))) (/.f64 #s(literal 1/2 binary64) re)) #s(literal 1/3 binary64)) (pow.f64 (*.f64 (*.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal -2 binary64))) (/.f64 #s(literal 1/2 binary64) re)) #s(literal 1/3 binary64)))
(*.f64 (pow.f64 (sqrt.f64 (pow.f64 (/.f64 #s(literal 1/2 binary64) re) #s(literal 6 binary64))) #s(literal 1/3 binary64)) (pow.f64 (sqrt.f64 (pow.f64 (/.f64 #s(literal 1/2 binary64) re) #s(literal 6 binary64))) #s(literal 1/3 binary64)))
(*.f64 (pow.f64 (*.f64 (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 4 binary64))) #s(literal 1/4 binary64)) #s(literal 1/3 binary64)) (pow.f64 (pow.f64 re #s(literal -2 binary64)) #s(literal 1/3 binary64)))
(*.f64 (pow.f64 (*.f64 (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 4 binary64))) (cbrt.f64 (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 4 binary64))))) #s(literal 1/3 binary64)) (pow.f64 (cbrt.f64 (*.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal -2 binary64)))) #s(literal 1/3 binary64)))
(*.f64 (pow.f64 (*.f64 (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 4 binary64))) (/.f64 #s(literal 1/2 binary64) re)) #s(literal 1/3 binary64)) (pow.f64 (/.f64 #s(literal 1/2 binary64) re) #s(literal 1/3 binary64)))
(*.f64 (pow.f64 (sqrt.f64 (cbrt.f64 (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 4 binary64))))) #s(literal 2 binary64)) (pow.f64 (sqrt.f64 (cbrt.f64 (*.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal -2 binary64))))) #s(literal 2 binary64)))
(*.f64 (pow.f64 (sqrt.f64 (/.f64 #s(literal 1/2 binary64) re)) #s(literal 2 binary64)) (pow.f64 (sqrt.f64 (/.f64 #s(literal 1/2 binary64) re)) #s(literal 2 binary64)))
(*.f64 (pow.f64 (*.f64 (cbrt.f64 (*.f64 (pow.f64 re #s(literal 2 binary64)) #s(literal 4 binary64))) (cbrt.f64 (*.f64 (pow.f64 re #s(literal 2 binary64)) #s(literal 4 binary64)))) #s(literal -1 binary64)) (cbrt.f64 (*.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal -2 binary64)))))
(pow.f64 (*.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal -2 binary64))) #s(literal 1 binary64))
(pow.f64 (cbrt.f64 (*.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal -2 binary64)))) #s(literal 3 binary64))
(pow.f64 (pow.f64 (/.f64 #s(literal 1/2 binary64) re) #s(literal 6 binary64)) #s(literal 1/3 binary64))
(pow.f64 (/.f64 #s(literal 1/2 binary64) re) #s(literal 2 binary64))
(pow.f64 (*.f64 (pow.f64 re #s(literal 2 binary64)) #s(literal 4 binary64)) #s(literal -1 binary64))
(pow.f64 (/.f64 (*.f64 (pow.f64 re #s(literal 2 binary64)) #s(literal 4 binary64)) #s(literal 1 binary64)) #s(literal -1 binary64))
(neg.f64 (/.f64 #s(literal -1/4 binary64) (pow.f64 re #s(literal 2 binary64))))
(sqrt.f64 (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 4 binary64))))
(log.f64 (pow.f64 (exp.f64 #s(literal 1/4 binary64)) (pow.f64 re #s(literal -2 binary64))))
(log.f64 (+.f64 #s(literal 1 binary64) (expm1.f64 (*.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal -2 binary64))))))
(cbrt.f64 (pow.f64 (/.f64 #s(literal 1/2 binary64) re) #s(literal 6 binary64)))
(expm1.f64 (log1p.f64 (*.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal -2 binary64)))))
(log1p.f64 (expm1.f64 (*.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal -2 binary64)))))
(exp.f64 (*.f64 #s(literal 2 binary64) (log.f64 (/.f64 #s(literal 1/2 binary64) re))))
(exp.f64 (*.f64 (*.f64 #s(literal 2 binary64) (log.f64 (/.f64 #s(literal 1/2 binary64) re))) #s(literal 1 binary64)))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal -2 binary64))))) #s(literal 3 binary64)))
(exp.f64 (*.f64 (log.f64 (pow.f64 (/.f64 #s(literal 1/2 binary64) re) #s(literal 6 binary64))) #s(literal 1/3 binary64)))
(exp.f64 (*.f64 (log.f64 (/.f64 #s(literal 1/2 binary64) re)) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (*.f64 (pow.f64 re #s(literal 2 binary64)) #s(literal 4 binary64))) #s(literal -1 binary64)))

simplify144.0ms (2.6%)

Algorithm
egg-herbie
Rules
639×fma-neg
601×fma-define
498×distribute-lft-in
427×*-commutative
426×distribute-rgt-in
Iterations

Useful iterations: 5 (0.0ms)

IterNodesCost
03013303
16203279
215523191
332093182
447723182
572483176
Stop Event
node limit
Counts
100 → 153
Calls
Call 1
Inputs
(*.f64 (pow.f64 im #s(literal 2 binary64)) re)
(*.f64 re (+.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) (pow.f64 re #s(literal 2 binary64)))) (pow.f64 im #s(literal 2 binary64))))
(*.f64 re (+.f64 (*.f64 (pow.f64 re #s(literal 2 binary64)) (+.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 im #s(literal 2 binary64))) (*.f64 #s(literal 1/120 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) (pow.f64 re #s(literal 2 binary64)))))) (pow.f64 im #s(literal 2 binary64))))
(*.f64 re (+.f64 (*.f64 (pow.f64 re #s(literal 2 binary64)) (+.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 im #s(literal 2 binary64))) (*.f64 (pow.f64 re #s(literal 2 binary64)) (+.f64 (*.f64 #s(literal -1/5040 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) (pow.f64 re #s(literal 2 binary64)))) (*.f64 #s(literal 1/120 binary64) (pow.f64 im #s(literal 2 binary64))))))) (pow.f64 im #s(literal 2 binary64))))
(*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) re))
(*.f64 re (+.f64 (*.f64 #s(literal -1/12 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) (pow.f64 re #s(literal 2 binary64)))) (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)))))
(*.f64 re (+.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64))) (*.f64 (pow.f64 re #s(literal 2 binary64)) (+.f64 (*.f64 #s(literal -1/12 binary64) (pow.f64 im #s(literal 2 binary64))) (*.f64 #s(literal 1/240 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) (pow.f64 re #s(literal 2 binary64))))))))
(*.f64 re (+.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64))) (*.f64 (pow.f64 re #s(literal 2 binary64)) (+.f64 (*.f64 #s(literal -1/12 binary64) (pow.f64 im #s(literal 2 binary64))) (*.f64 (pow.f64 re #s(literal 2 binary64)) (+.f64 (*.f64 #s(literal -1/10080 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) (pow.f64 re #s(literal 2 binary64)))) (*.f64 #s(literal 1/240 binary64) (pow.f64 im #s(literal 2 binary64)))))))))
(+.f64 #s(literal 0 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) (sin.f64 re)))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) (pow.f64 im #s(literal 2 binary64)))) (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) (pow.f64 im #s(literal 2 binary64)))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) (pow.f64 im #s(literal 2 binary64))))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) (pow.f64 im #s(literal 2 binary64))))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) (pow.f64 im #s(literal 2 binary64))))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) (sin.f64 re)))) #s(literal 1 binary64))
(pow.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) (sin.f64 re)) #s(literal 1 binary64))
(pow.f64 (cbrt.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) (sin.f64 re))) #s(literal 3 binary64))
(pow.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) #s(literal 6 binary64)) #s(literal 1/3 binary64))
(pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) #s(literal 2 binary64))
(sqrt.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) #s(literal 4 binary64)))
(log.f64 (pow.f64 (exp.f64 (sin.f64 re)) (pow.f64 im #s(literal 2 binary64))))
(log.f64 (+.f64 #s(literal 1 binary64) (expm1.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) (sin.f64 re)))))
(cbrt.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) #s(literal 6 binary64)))
(expm1.f64 (log1p.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) (sin.f64 re))))
(log1p.f64 (expm1.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) (sin.f64 re))))
(exp.f64 (log.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) (sin.f64 re))))
(exp.f64 (*.f64 (log.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) (sin.f64 re))) #s(literal 1 binary64)))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) (sin.f64 re)))) #s(literal 3 binary64)))
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) #s(literal 6 binary64))) #s(literal 1/3 binary64)))
(exp.f64 (*.f64 (log.f64 (*.f64 im (sqrt.f64 (sin.f64 re)))) #s(literal 2 binary64)))
(+.f64 #s(literal 0 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) (*.f64 (sin.f64 re) #s(literal 1/2 binary64))))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) (*.f64 (pow.f64 im #s(literal 2 binary64)) #s(literal 1/2 binary64)))) (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) (*.f64 (pow.f64 im #s(literal 2 binary64)) #s(literal 1/2 binary64)))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) (*.f64 (pow.f64 im #s(literal 2 binary64)) #s(literal 1/2 binary64))))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) (*.f64 (pow.f64 im #s(literal 2 binary64)) #s(literal 1/2 binary64))))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) (*.f64 (pow.f64 im #s(literal 2 binary64)) #s(literal 1/2 binary64))))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) (*.f64 (sin.f64 re) #s(literal 1/2 binary64))))) #s(literal 1 binary64))
(pow.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) (*.f64 (sin.f64 re) #s(literal 1/2 binary64))) #s(literal 1 binary64))
(pow.f64 (cbrt.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) (*.f64 (sin.f64 re) #s(literal 1/2 binary64)))) #s(literal 3 binary64))
(pow.f64 (*.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) #s(literal 6 binary64)) #s(literal 1/8 binary64)) #s(literal 1/3 binary64))
(pow.f64 (*.f64 im (pow.f64 (*.f64 (sin.f64 re) #s(literal 1/2 binary64)) #s(literal 1/2 binary64))) #s(literal 2 binary64))
(sqrt.f64 (*.f64 #s(literal 1/4 binary64) (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) #s(literal 4 binary64))))
(log.f64 (pow.f64 (exp.f64 (sin.f64 re)) (*.f64 (pow.f64 im #s(literal 2 binary64)) #s(literal 1/2 binary64))))
(log.f64 (+.f64 #s(literal 1 binary64) (expm1.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) (*.f64 (sin.f64 re) #s(literal 1/2 binary64))))))
(cbrt.f64 (*.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) #s(literal 6 binary64)) #s(literal 1/8 binary64)))
(expm1.f64 (log1p.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) (*.f64 (sin.f64 re) #s(literal 1/2 binary64)))))
(log1p.f64 (expm1.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) (*.f64 (sin.f64 re) #s(literal 1/2 binary64)))))
(exp.f64 (log.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) (*.f64 (sin.f64 re) #s(literal 1/2 binary64)))))
(exp.f64 (*.f64 (log.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) (*.f64 (sin.f64 re) #s(literal 1/2 binary64)))) #s(literal 1 binary64)))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) (*.f64 (sin.f64 re) #s(literal 1/2 binary64))))) #s(literal 3 binary64)))
(exp.f64 (*.f64 (log.f64 (*.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) #s(literal 6 binary64)) #s(literal 1/8 binary64))) #s(literal 1/3 binary64)))
(exp.f64 (*.f64 (log.f64 (*.f64 im (pow.f64 (*.f64 (sin.f64 re) #s(literal 1/2 binary64)) #s(literal 1/2 binary64)))) #s(literal 2 binary64)))
(+.f64 #s(literal 0 binary64) (*.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal -2 binary64))))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 #s(literal 1/4 binary64)) (pow.f64 re #s(literal -2 binary64)))) (cbrt.f64 (pow.f64 (exp.f64 #s(literal 1/4 binary64)) (pow.f64 re #s(literal -2 binary64)))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 #s(literal 1/4 binary64)) (pow.f64 re #s(literal -2 binary64))))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 #s(literal 1/4 binary64)) (pow.f64 re #s(literal -2 binary64))))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 #s(literal 1/4 binary64)) (pow.f64 re #s(literal -2 binary64))))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal -2 binary64))))) #s(literal 1 binary64))
(*.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal -2 binary64)))
(*.f64 #s(literal 1/4 binary64) (pow.f64 (sqrt.f64 (pow.f64 re #s(literal -2 binary64))) #s(literal 2 binary64)))
(*.f64 (*.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal -2 binary64))) #s(literal 1 binary64))
(*.f64 (*.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal -2 binary64))) (log.f64 (exp.f64 #s(literal 1 binary64))))
(*.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal -2 binary64))))
(*.f64 (cbrt.f64 (*.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal -2 binary64)))) (cbrt.f64 (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 4 binary64)))))
(*.f64 (cbrt.f64 (*.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal -2 binary64)))) (pow.f64 (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 4 binary64))) #s(literal 1/3 binary64)))
(*.f64 (cbrt.f64 (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 4 binary64)))) (cbrt.f64 (*.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal -2 binary64)))))
(*.f64 (cbrt.f64 (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 4 binary64)))) (pow.f64 (cbrt.f64 (/.f64 #s(literal 1/2 binary64) re)) #s(literal 2 binary64)))
(*.f64 (/.f64 #s(literal 1/2 binary64) re) (/.f64 #s(literal 1/2 binary64) re))
(*.f64 #s(literal -1/4 binary64) (/.f64 #s(literal 1 binary64) (neg.f64 (pow.f64 re #s(literal 2 binary64)))))
(*.f64 #s(literal -1/4 binary64) (pow.f64 (/.f64 #s(literal 1 binary64) (neg.f64 (pow.f64 re #s(literal 2 binary64)))) #s(literal 1 binary64)))
(*.f64 (pow.f64 re #s(literal -2 binary64)) #s(literal 1/4 binary64))
(*.f64 (pow.f64 re #s(literal -2 binary64)) (log.f64 (exp.f64 #s(literal 1/4 binary64))))
(*.f64 (/.f64 #s(literal 1 binary64) re) (pow.f64 (/.f64 re #s(literal 1/4 binary64)) #s(literal -1 binary64)))
(*.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (cbrt.f64 re) #s(literal 4 binary64))) (pow.f64 (/.f64 (pow.f64 (cbrt.f64 re) #s(literal 2 binary64)) #s(literal 1/4 binary64)) #s(literal -1 binary64)))
(*.f64 (pow.f64 #s(literal 1 binary64) #s(literal 1/3 binary64)) (*.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal -2 binary64))))
(*.f64 (pow.f64 (cbrt.f64 #s(literal 1/4 binary64)) #s(literal 3 binary64)) (pow.f64 (cbrt.f64 (pow.f64 re #s(literal -2 binary64))) #s(literal 3 binary64)))
(*.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 4 binary64))))) #s(literal 3 binary64)) (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal -2 binary64))))) #s(literal 3 binary64)))
(*.f64 (pow.f64 (cbrt.f64 (/.f64 #s(literal 1/2 binary64) re)) #s(literal 3 binary64)) (pow.f64 (cbrt.f64 (/.f64 #s(literal 1/2 binary64) re)) #s(literal 3 binary64)))
(*.f64 (pow.f64 (*.f64 (cbrt.f64 (cbrt.f64 (*.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal -2 binary64))))) (cbrt.f64 (cbrt.f64 (*.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal -2 binary64)))))) #s(literal 3 binary64)) (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal -2 binary64))))) #s(literal 3 binary64)))
(*.f64 (pow.f64 (sqrt.f64 (cbrt.f64 (*.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal -2 binary64))))) #s(literal 3 binary64)) (pow.f64 (sqrt.f64 (cbrt.f64 (*.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal -2 binary64))))) #s(literal 3 binary64)))
(*.f64 (pow.f64 (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 4 binary64))) #s(literal 1/3 binary64)) (cbrt.f64 (*.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal -2 binary64)))))
(*.f64 (pow.f64 (*.f64 (*.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal -2 binary64))) (/.f64 #s(literal 1/2 binary64) re)) #s(literal 1/3 binary64)) (pow.f64 (*.f64 (*.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal -2 binary64))) (/.f64 #s(literal 1/2 binary64) re)) #s(literal 1/3 binary64)))
(*.f64 (pow.f64 (sqrt.f64 (pow.f64 (/.f64 #s(literal 1/2 binary64) re) #s(literal 6 binary64))) #s(literal 1/3 binary64)) (pow.f64 (sqrt.f64 (pow.f64 (/.f64 #s(literal 1/2 binary64) re) #s(literal 6 binary64))) #s(literal 1/3 binary64)))
(*.f64 (pow.f64 (*.f64 (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 4 binary64))) #s(literal 1/4 binary64)) #s(literal 1/3 binary64)) (pow.f64 (pow.f64 re #s(literal -2 binary64)) #s(literal 1/3 binary64)))
(*.f64 (pow.f64 (*.f64 (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 4 binary64))) (cbrt.f64 (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 4 binary64))))) #s(literal 1/3 binary64)) (pow.f64 (cbrt.f64 (*.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal -2 binary64)))) #s(literal 1/3 binary64)))
(*.f64 (pow.f64 (*.f64 (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 4 binary64))) (/.f64 #s(literal 1/2 binary64) re)) #s(literal 1/3 binary64)) (pow.f64 (/.f64 #s(literal 1/2 binary64) re) #s(literal 1/3 binary64)))
(*.f64 (pow.f64 (sqrt.f64 (cbrt.f64 (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 4 binary64))))) #s(literal 2 binary64)) (pow.f64 (sqrt.f64 (cbrt.f64 (*.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal -2 binary64))))) #s(literal 2 binary64)))
(*.f64 (pow.f64 (sqrt.f64 (/.f64 #s(literal 1/2 binary64) re)) #s(literal 2 binary64)) (pow.f64 (sqrt.f64 (/.f64 #s(literal 1/2 binary64) re)) #s(literal 2 binary64)))
(*.f64 (pow.f64 (*.f64 (cbrt.f64 (*.f64 (pow.f64 re #s(literal 2 binary64)) #s(literal 4 binary64))) (cbrt.f64 (*.f64 (pow.f64 re #s(literal 2 binary64)) #s(literal 4 binary64)))) #s(literal -1 binary64)) (cbrt.f64 (*.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal -2 binary64)))))
(pow.f64 (*.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal -2 binary64))) #s(literal 1 binary64))
(pow.f64 (cbrt.f64 (*.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal -2 binary64)))) #s(literal 3 binary64))
(pow.f64 (pow.f64 (/.f64 #s(literal 1/2 binary64) re) #s(literal 6 binary64)) #s(literal 1/3 binary64))
(pow.f64 (/.f64 #s(literal 1/2 binary64) re) #s(literal 2 binary64))
(pow.f64 (*.f64 (pow.f64 re #s(literal 2 binary64)) #s(literal 4 binary64)) #s(literal -1 binary64))
(pow.f64 (/.f64 (*.f64 (pow.f64 re #s(literal 2 binary64)) #s(literal 4 binary64)) #s(literal 1 binary64)) #s(literal -1 binary64))
(neg.f64 (/.f64 #s(literal -1/4 binary64) (pow.f64 re #s(literal 2 binary64))))
(sqrt.f64 (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 4 binary64))))
(log.f64 (pow.f64 (exp.f64 #s(literal 1/4 binary64)) (pow.f64 re #s(literal -2 binary64))))
(log.f64 (+.f64 #s(literal 1 binary64) (expm1.f64 (*.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal -2 binary64))))))
(cbrt.f64 (pow.f64 (/.f64 #s(literal 1/2 binary64) re) #s(literal 6 binary64)))
(expm1.f64 (log1p.f64 (*.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal -2 binary64)))))
(log1p.f64 (expm1.f64 (*.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal -2 binary64)))))
(exp.f64 (*.f64 #s(literal 2 binary64) (log.f64 (/.f64 #s(literal 1/2 binary64) re))))
(exp.f64 (*.f64 (*.f64 #s(literal 2 binary64) (log.f64 (/.f64 #s(literal 1/2 binary64) re))) #s(literal 1 binary64)))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal -2 binary64))))) #s(literal 3 binary64)))
(exp.f64 (*.f64 (log.f64 (pow.f64 (/.f64 #s(literal 1/2 binary64) re) #s(literal 6 binary64))) #s(literal 1/3 binary64)))
(exp.f64 (*.f64 (log.f64 (/.f64 #s(literal 1/2 binary64) re)) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (*.f64 (pow.f64 re #s(literal 2 binary64)) #s(literal 4 binary64))) #s(literal -1 binary64)))
Outputs
(*.f64 (pow.f64 im #s(literal 2 binary64)) re)
(*.f64 re (+.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) (pow.f64 re #s(literal 2 binary64)))) (pow.f64 im #s(literal 2 binary64))))
(*.f64 re (fma.f64 #s(literal -1/6 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) (pow.f64 re #s(literal 2 binary64))) (pow.f64 im #s(literal 2 binary64))))
(*.f64 re (*.f64 (+.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 re #s(literal 2 binary64))) #s(literal 1 binary64)) (pow.f64 im #s(literal 2 binary64))))
(*.f64 re (*.f64 (pow.f64 im #s(literal 2 binary64)) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 re #s(literal 2 binary64))))))
(*.f64 re (+.f64 (*.f64 (pow.f64 re #s(literal 2 binary64)) (+.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 im #s(literal 2 binary64))) (*.f64 #s(literal 1/120 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) (pow.f64 re #s(literal 2 binary64)))))) (pow.f64 im #s(literal 2 binary64))))
(*.f64 re (fma.f64 (pow.f64 re #s(literal 2 binary64)) (fma.f64 #s(literal -1/6 binary64) (pow.f64 im #s(literal 2 binary64)) (*.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) (pow.f64 re #s(literal 2 binary64))) #s(literal 1/120 binary64))) (pow.f64 im #s(literal 2 binary64))))
(*.f64 re (fma.f64 (pow.f64 re #s(literal 2 binary64)) (fma.f64 (pow.f64 im #s(literal 2 binary64)) #s(literal -1/6 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) (*.f64 #s(literal 1/120 binary64) (pow.f64 re #s(literal 2 binary64))))) (pow.f64 im #s(literal 2 binary64))))
(*.f64 re (fma.f64 (pow.f64 re #s(literal 2 binary64)) (*.f64 (pow.f64 im #s(literal 2 binary64)) (+.f64 #s(literal -1/6 binary64) (*.f64 (pow.f64 re #s(literal 2 binary64)) #s(literal 1/120 binary64)))) (pow.f64 im #s(literal 2 binary64))))
(*.f64 re (+.f64 (*.f64 (pow.f64 re #s(literal 2 binary64)) (+.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 im #s(literal 2 binary64))) (*.f64 (pow.f64 re #s(literal 2 binary64)) (+.f64 (*.f64 #s(literal -1/5040 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) (pow.f64 re #s(literal 2 binary64)))) (*.f64 #s(literal 1/120 binary64) (pow.f64 im #s(literal 2 binary64))))))) (pow.f64 im #s(literal 2 binary64))))
(*.f64 re (fma.f64 (pow.f64 re #s(literal 2 binary64)) (fma.f64 #s(literal -1/6 binary64) (pow.f64 im #s(literal 2 binary64)) (*.f64 (pow.f64 re #s(literal 2 binary64)) (fma.f64 #s(literal -1/5040 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) (pow.f64 re #s(literal 2 binary64))) (*.f64 (pow.f64 im #s(literal 2 binary64)) #s(literal 1/120 binary64))))) (pow.f64 im #s(literal 2 binary64))))
(*.f64 re (fma.f64 (pow.f64 re #s(literal 2 binary64)) (fma.f64 (pow.f64 re #s(literal 2 binary64)) (fma.f64 (pow.f64 im #s(literal 2 binary64)) #s(literal 1/120 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) (*.f64 (pow.f64 re #s(literal 2 binary64)) #s(literal -1/5040 binary64)))) (*.f64 (pow.f64 im #s(literal 2 binary64)) #s(literal -1/6 binary64))) (pow.f64 im #s(literal 2 binary64))))
(*.f64 re (+.f64 (*.f64 (+.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 re #s(literal 2 binary64))) #s(literal 1 binary64)) (pow.f64 im #s(literal 2 binary64))) (*.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) (+.f64 #s(literal 1/120 binary64) (*.f64 (pow.f64 re #s(literal 2 binary64)) #s(literal -1/5040 binary64)))) (pow.f64 re #s(literal 4 binary64)))))
(*.f64 re (+.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 re #s(literal 2 binary64))))) (*.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) (+.f64 #s(literal 1/120 binary64) (*.f64 (pow.f64 re #s(literal 2 binary64)) #s(literal -1/5040 binary64)))) (pow.f64 re #s(literal 4 binary64)))))
(*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) re))
(*.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) re) #s(literal 1/2 binary64))
(*.f64 (pow.f64 im #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) re))
(*.f64 (pow.f64 im #s(literal 2 binary64)) (*.f64 re #s(literal 1/2 binary64)))
(*.f64 re (+.f64 (*.f64 #s(literal -1/12 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) (pow.f64 re #s(literal 2 binary64)))) (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)))))
(*.f64 re (fma.f64 #s(literal -1/12 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) (pow.f64 re #s(literal 2 binary64))) (*.f64 (pow.f64 im #s(literal 2 binary64)) #s(literal 1/2 binary64))))
(*.f64 re (fma.f64 (pow.f64 im #s(literal 2 binary64)) #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) (*.f64 (pow.f64 re #s(literal 2 binary64)) #s(literal -1/12 binary64)))))
(*.f64 re (*.f64 (pow.f64 im #s(literal 2 binary64)) (+.f64 (*.f64 (pow.f64 re #s(literal 2 binary64)) #s(literal -1/12 binary64)) #s(literal 1/2 binary64))))
(*.f64 re (*.f64 (pow.f64 im #s(literal 2 binary64)) (+.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 re #s(literal 2 binary64)) #s(literal -1/12 binary64)))))
(*.f64 re (+.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64))) (*.f64 (pow.f64 re #s(literal 2 binary64)) (+.f64 (*.f64 #s(literal -1/12 binary64) (pow.f64 im #s(literal 2 binary64))) (*.f64 #s(literal 1/240 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) (pow.f64 re #s(literal 2 binary64))))))))
(*.f64 re (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) (*.f64 (pow.f64 re #s(literal 2 binary64)) (fma.f64 #s(literal -1/12 binary64) (pow.f64 im #s(literal 2 binary64)) (*.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) (pow.f64 re #s(literal 2 binary64))) #s(literal 1/240 binary64))))))
(*.f64 re (fma.f64 (pow.f64 re #s(literal 2 binary64)) (fma.f64 (pow.f64 im #s(literal 2 binary64)) #s(literal -1/12 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) (*.f64 #s(literal 1/240 binary64) (pow.f64 re #s(literal 2 binary64))))) (*.f64 (pow.f64 im #s(literal 2 binary64)) #s(literal 1/2 binary64))))
(fma.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) (+.f64 #s(literal -1/12 binary64) (*.f64 (pow.f64 re #s(literal 2 binary64)) #s(literal 1/240 binary64)))) (pow.f64 re #s(literal 3 binary64)) (*.f64 (pow.f64 im #s(literal 2 binary64)) (*.f64 re #s(literal 1/2 binary64))))
(*.f64 re (+.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64))) (*.f64 (pow.f64 re #s(literal 2 binary64)) (+.f64 (*.f64 #s(literal -1/12 binary64) (pow.f64 im #s(literal 2 binary64))) (*.f64 (pow.f64 re #s(literal 2 binary64)) (+.f64 (*.f64 #s(literal -1/10080 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) (pow.f64 re #s(literal 2 binary64)))) (*.f64 #s(literal 1/240 binary64) (pow.f64 im #s(literal 2 binary64)))))))))
(*.f64 re (fma.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)) (*.f64 (pow.f64 re #s(literal 2 binary64)) (fma.f64 #s(literal -1/12 binary64) (pow.f64 im #s(literal 2 binary64)) (*.f64 (pow.f64 re #s(literal 2 binary64)) (fma.f64 #s(literal -1/10080 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) (pow.f64 re #s(literal 2 binary64))) (*.f64 (pow.f64 im #s(literal 2 binary64)) #s(literal 1/240 binary64))))))))
(*.f64 re (fma.f64 (pow.f64 re #s(literal 2 binary64)) (fma.f64 (pow.f64 re #s(literal 2 binary64)) (fma.f64 (pow.f64 im #s(literal 2 binary64)) #s(literal 1/240 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) (*.f64 (pow.f64 re #s(literal 2 binary64)) #s(literal -1/10080 binary64)))) (*.f64 (pow.f64 im #s(literal 2 binary64)) #s(literal -1/12 binary64))) (*.f64 (pow.f64 im #s(literal 2 binary64)) #s(literal 1/2 binary64))))
(*.f64 re (+.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) (+.f64 (*.f64 (pow.f64 re #s(literal 2 binary64)) #s(literal -1/12 binary64)) #s(literal 1/2 binary64))) (*.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) (+.f64 (*.f64 (pow.f64 re #s(literal 2 binary64)) #s(literal -1/10080 binary64)) #s(literal 1/240 binary64))) (pow.f64 re #s(literal 4 binary64)))))
(*.f64 re (+.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) (+.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 re #s(literal 2 binary64)) #s(literal -1/12 binary64)))) (*.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) (+.f64 #s(literal 1/240 binary64) (*.f64 (pow.f64 re #s(literal 2 binary64)) #s(literal -1/10080 binary64)))) (pow.f64 re #s(literal 4 binary64)))))
(+.f64 #s(literal 0 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) (sin.f64 re)))
(*.f64 (pow.f64 im #s(literal 2 binary64)) (sin.f64 re))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) (pow.f64 im #s(literal 2 binary64)))) (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) (pow.f64 im #s(literal 2 binary64)))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) (pow.f64 im #s(literal 2 binary64))))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) (pow.f64 im #s(literal 2 binary64))))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) (pow.f64 im #s(literal 2 binary64))))))
(*.f64 (pow.f64 im #s(literal 2 binary64)) (sin.f64 re))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) (sin.f64 re)))) #s(literal 1 binary64))
(*.f64 (pow.f64 im #s(literal 2 binary64)) (sin.f64 re))
(pow.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) (sin.f64 re)) #s(literal 1 binary64))
(*.f64 (pow.f64 im #s(literal 2 binary64)) (sin.f64 re))
(pow.f64 (cbrt.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) (sin.f64 re))) #s(literal 3 binary64))
(*.f64 (pow.f64 im #s(literal 2 binary64)) (sin.f64 re))
(pow.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) #s(literal 6 binary64)) #s(literal 1/3 binary64))
(cbrt.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) #s(literal 6 binary64)))
(pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) #s(literal 2 binary64))
(*.f64 (pow.f64 im #s(literal 2 binary64)) (sin.f64 re))
(sqrt.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) #s(literal 4 binary64)))
(log.f64 (pow.f64 (exp.f64 (sin.f64 re)) (pow.f64 im #s(literal 2 binary64))))
(*.f64 (pow.f64 im #s(literal 2 binary64)) (sin.f64 re))
(log.f64 (+.f64 #s(literal 1 binary64) (expm1.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) (sin.f64 re)))))
(*.f64 (pow.f64 im #s(literal 2 binary64)) (sin.f64 re))
(cbrt.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) #s(literal 6 binary64)))
(expm1.f64 (log1p.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) (sin.f64 re))))
(*.f64 (pow.f64 im #s(literal 2 binary64)) (sin.f64 re))
(log1p.f64 (expm1.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) (sin.f64 re))))
(*.f64 (pow.f64 im #s(literal 2 binary64)) (sin.f64 re))
(exp.f64 (log.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) (sin.f64 re))))
(*.f64 (pow.f64 im #s(literal 2 binary64)) (sin.f64 re))
(exp.f64 (*.f64 (log.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) (sin.f64 re))) #s(literal 1 binary64)))
(*.f64 (pow.f64 im #s(literal 2 binary64)) (sin.f64 re))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) (sin.f64 re)))) #s(literal 3 binary64)))
(*.f64 (pow.f64 im #s(literal 2 binary64)) (sin.f64 re))
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) #s(literal 6 binary64))) #s(literal 1/3 binary64)))
(cbrt.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) #s(literal 6 binary64)))
(exp.f64 (*.f64 (log.f64 (*.f64 im (sqrt.f64 (sin.f64 re)))) #s(literal 2 binary64)))
(*.f64 (pow.f64 im #s(literal 2 binary64)) (sin.f64 re))
(+.f64 #s(literal 0 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) (*.f64 (sin.f64 re) #s(literal 1/2 binary64))))
(*.f64 (pow.f64 im #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) (sin.f64 re)))
(*.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) #s(literal 1/2 binary64)) (sin.f64 re))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) (*.f64 (pow.f64 im #s(literal 2 binary64)) #s(literal 1/2 binary64)))) (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) (*.f64 (pow.f64 im #s(literal 2 binary64)) #s(literal 1/2 binary64)))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) (*.f64 (pow.f64 im #s(literal 2 binary64)) #s(literal 1/2 binary64))))))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) (pow.f64 im #s(literal 2 binary64))))) (cbrt.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) (pow.f64 im #s(literal 2 binary64))))))) (log.f64 (cbrt.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) (pow.f64 im #s(literal 2 binary64)))))))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (sqrt.f64 (exp.f64 (sin.f64 re))) (pow.f64 im #s(literal 2 binary64)))) (cbrt.f64 (pow.f64 (sqrt.f64 (exp.f64 (sin.f64 re))) (pow.f64 im #s(literal 2 binary64)))))) (log.f64 (cbrt.f64 (pow.f64 (sqrt.f64 (exp.f64 (sin.f64 re))) (pow.f64 im #s(literal 2 binary64))))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) (*.f64 (pow.f64 im #s(literal 2 binary64)) #s(literal 1/2 binary64))))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) (*.f64 (pow.f64 im #s(literal 2 binary64)) #s(literal 1/2 binary64))))))
(*.f64 #s(literal 2 binary64) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) (*.f64 (pow.f64 im #s(literal 2 binary64)) #s(literal 1/2 binary64))))))
(*.f64 #s(literal 2 binary64) (log.f64 (sqrt.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 re)) (pow.f64 im #s(literal 2 binary64)))))))
(*.f64 #s(literal 2 binary64) (log.f64 (sqrt.f64 (pow.f64 (sqrt.f64 (exp.f64 (sin.f64 re))) (pow.f64 im #s(literal 2 binary64))))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) (*.f64 (sin.f64 re) #s(literal 1/2 binary64))))) #s(literal 1 binary64))
(*.f64 (pow.f64 im #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) (sin.f64 re)))
(*.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) #s(literal 1/2 binary64)) (sin.f64 re))
(pow.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) (*.f64 (sin.f64 re) #s(literal 1/2 binary64))) #s(literal 1 binary64))
(*.f64 (pow.f64 im #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) (sin.f64 re)))
(*.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) #s(literal 1/2 binary64)) (sin.f64 re))
(pow.f64 (cbrt.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) (*.f64 (sin.f64 re) #s(literal 1/2 binary64)))) #s(literal 3 binary64))
(*.f64 (pow.f64 im #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) (sin.f64 re)))
(*.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) #s(literal 1/2 binary64)) (sin.f64 re))
(pow.f64 (*.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) #s(literal 6 binary64)) #s(literal 1/8 binary64)) #s(literal 1/3 binary64))
(cbrt.f64 (*.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) #s(literal 6 binary64)) #s(literal 1/8 binary64)))
(pow.f64 (*.f64 im (pow.f64 (*.f64 (sin.f64 re) #s(literal 1/2 binary64)) #s(literal 1/2 binary64))) #s(literal 2 binary64))
(*.f64 (pow.f64 im #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) (sin.f64 re)))
(*.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) #s(literal 1/2 binary64)) (sin.f64 re))
(sqrt.f64 (*.f64 #s(literal 1/4 binary64) (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) #s(literal 4 binary64))))
(sqrt.f64 (*.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) #s(literal 4 binary64)) #s(literal 1/4 binary64)))
(log.f64 (pow.f64 (exp.f64 (sin.f64 re)) (*.f64 (pow.f64 im #s(literal 2 binary64)) #s(literal 1/2 binary64))))
(*.f64 (pow.f64 im #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) (sin.f64 re)))
(*.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) #s(literal 1/2 binary64)) (sin.f64 re))
(log.f64 (+.f64 #s(literal 1 binary64) (expm1.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) (*.f64 (sin.f64 re) #s(literal 1/2 binary64))))))
(*.f64 (pow.f64 im #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) (sin.f64 re)))
(*.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) #s(literal 1/2 binary64)) (sin.f64 re))
(cbrt.f64 (*.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) #s(literal 6 binary64)) #s(literal 1/8 binary64)))
(expm1.f64 (log1p.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) (*.f64 (sin.f64 re) #s(literal 1/2 binary64)))))
(*.f64 (pow.f64 im #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) (sin.f64 re)))
(*.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) #s(literal 1/2 binary64)) (sin.f64 re))
(log1p.f64 (expm1.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) (*.f64 (sin.f64 re) #s(literal 1/2 binary64)))))
(*.f64 (pow.f64 im #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) (sin.f64 re)))
(*.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) #s(literal 1/2 binary64)) (sin.f64 re))
(exp.f64 (log.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) (*.f64 (sin.f64 re) #s(literal 1/2 binary64)))))
(*.f64 (pow.f64 im #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) (sin.f64 re)))
(*.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) #s(literal 1/2 binary64)) (sin.f64 re))
(exp.f64 (*.f64 (log.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) (*.f64 (sin.f64 re) #s(literal 1/2 binary64)))) #s(literal 1 binary64)))
(*.f64 (pow.f64 im #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) (sin.f64 re)))
(*.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) #s(literal 1/2 binary64)) (sin.f64 re))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) (*.f64 (sin.f64 re) #s(literal 1/2 binary64))))) #s(literal 3 binary64)))
(*.f64 (pow.f64 im #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) (sin.f64 re)))
(*.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) #s(literal 1/2 binary64)) (sin.f64 re))
(exp.f64 (*.f64 (log.f64 (*.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) #s(literal 6 binary64)) #s(literal 1/8 binary64))) #s(literal 1/3 binary64)))
(cbrt.f64 (*.f64 (pow.f64 (*.f64 im (sqrt.f64 (sin.f64 re))) #s(literal 6 binary64)) #s(literal 1/8 binary64)))
(exp.f64 (*.f64 (log.f64 (*.f64 im (pow.f64 (*.f64 (sin.f64 re) #s(literal 1/2 binary64)) #s(literal 1/2 binary64)))) #s(literal 2 binary64)))
(*.f64 (pow.f64 im #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) (sin.f64 re)))
(*.f64 (*.f64 (pow.f64 im #s(literal 2 binary64)) #s(literal 1/2 binary64)) (sin.f64 re))
(+.f64 #s(literal 0 binary64) (*.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal -2 binary64))))
(*.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal -2 binary64)))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 #s(literal 1/4 binary64)) (pow.f64 re #s(literal -2 binary64)))) (cbrt.f64 (pow.f64 (exp.f64 #s(literal 1/4 binary64)) (pow.f64 re #s(literal -2 binary64)))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 #s(literal 1/4 binary64)) (pow.f64 re #s(literal -2 binary64))))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 #s(literal 1/4 binary64)) (pow.f64 re #s(literal -2 binary64))))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 #s(literal 1/4 binary64)) (pow.f64 re #s(literal -2 binary64))))))
(*.f64 #s(literal 2 binary64) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 #s(literal 1/4 binary64)) (pow.f64 re #s(literal -2 binary64))))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal -2 binary64))))) #s(literal 1 binary64))
(*.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal -2 binary64)))
(*.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal -2 binary64)))
(*.f64 #s(literal 1/4 binary64) (pow.f64 (sqrt.f64 (pow.f64 re #s(literal -2 binary64))) #s(literal 2 binary64)))
(*.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal -2 binary64)))
(*.f64 (*.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal -2 binary64))) #s(literal 1 binary64))
(*.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal -2 binary64)))
(*.f64 (*.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal -2 binary64))) (log.f64 (exp.f64 #s(literal 1 binary64))))
(*.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal -2 binary64)))
(*.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal -2 binary64))))
(*.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal -2 binary64)))
(*.f64 (cbrt.f64 (*.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal -2 binary64)))) (cbrt.f64 (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 4 binary64)))))
(*.f64 (cbrt.f64 (*.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal -2 binary64)))) (pow.f64 (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 4 binary64))) #s(literal 1/3 binary64)))
(*.f64 (cbrt.f64 (*.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal -2 binary64)))) (cbrt.f64 (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 4 binary64)))))
(*.f64 (cbrt.f64 (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 4 binary64)))) (cbrt.f64 (*.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal -2 binary64)))))
(*.f64 (cbrt.f64 (*.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal -2 binary64)))) (cbrt.f64 (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 4 binary64)))))
(*.f64 (cbrt.f64 (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 4 binary64)))) (pow.f64 (cbrt.f64 (/.f64 #s(literal 1/2 binary64) re)) #s(literal 2 binary64)))
(*.f64 (/.f64 #s(literal 1/2 binary64) re) (/.f64 #s(literal 1/2 binary64) re))
(pow.f64 (/.f64 #s(literal 1/2 binary64) re) #s(literal 2 binary64))
(/.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal 2 binary64)))
(*.f64 #s(literal -1/4 binary64) (/.f64 #s(literal 1 binary64) (neg.f64 (pow.f64 re #s(literal 2 binary64)))))
(pow.f64 (/.f64 #s(literal 1/2 binary64) re) #s(literal 2 binary64))
(/.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal 2 binary64)))
(*.f64 #s(literal -1/4 binary64) (pow.f64 (/.f64 #s(literal 1 binary64) (neg.f64 (pow.f64 re #s(literal 2 binary64)))) #s(literal 1 binary64)))
(pow.f64 (/.f64 #s(literal 1/2 binary64) re) #s(literal 2 binary64))
(/.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal 2 binary64)))
(*.f64 (pow.f64 re #s(literal -2 binary64)) #s(literal 1/4 binary64))
(*.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal -2 binary64)))
(*.f64 (pow.f64 re #s(literal -2 binary64)) (log.f64 (exp.f64 #s(literal 1/4 binary64))))
(*.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal -2 binary64)))
(*.f64 (/.f64 #s(literal 1 binary64) re) (pow.f64 (/.f64 re #s(literal 1/4 binary64)) #s(literal -1 binary64)))
(pow.f64 (/.f64 #s(literal 1/2 binary64) re) #s(literal 2 binary64))
(/.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal 2 binary64)))
(*.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (cbrt.f64 re) #s(literal 4 binary64))) (pow.f64 (/.f64 (pow.f64 (cbrt.f64 re) #s(literal 2 binary64)) #s(literal 1/4 binary64)) #s(literal -1 binary64)))
(*.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (cbrt.f64 re) #s(literal 4 binary64))) (/.f64 #s(literal 1 binary64) (/.f64 (pow.f64 (cbrt.f64 re) #s(literal 2 binary64)) #s(literal 1/4 binary64))))
(/.f64 (*.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (cbrt.f64 re) #s(literal 2 binary64))) #s(literal 1/4 binary64)) (pow.f64 (cbrt.f64 re) #s(literal 4 binary64)))
(/.f64 (/.f64 #s(literal 1/4 binary64) (pow.f64 (cbrt.f64 re) #s(literal 2 binary64))) (pow.f64 (cbrt.f64 re) #s(literal 4 binary64)))
(/.f64 #s(literal 1/4 binary64) (*.f64 (pow.f64 (cbrt.f64 re) #s(literal 4 binary64)) (pow.f64 (cbrt.f64 re) #s(literal 2 binary64))))
(/.f64 (/.f64 #s(literal 1/4 binary64) (cbrt.f64 re)) (pow.f64 (cbrt.f64 re) #s(literal 5 binary64)))
(*.f64 (pow.f64 #s(literal 1 binary64) #s(literal 1/3 binary64)) (*.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal -2 binary64))))
(*.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal -2 binary64)))
(*.f64 (pow.f64 (cbrt.f64 #s(literal 1/4 binary64)) #s(literal 3 binary64)) (pow.f64 (cbrt.f64 (pow.f64 re #s(literal -2 binary64))) #s(literal 3 binary64)))
(*.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal -2 binary64)))
(*.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 4 binary64))))) #s(literal 3 binary64)) (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal -2 binary64))))) #s(literal 3 binary64)))
(*.f64 (cbrt.f64 (*.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal -2 binary64)))) (cbrt.f64 (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 4 binary64)))))
(*.f64 (pow.f64 (cbrt.f64 (/.f64 #s(literal 1/2 binary64) re)) #s(literal 3 binary64)) (pow.f64 (cbrt.f64 (/.f64 #s(literal 1/2 binary64) re)) #s(literal 3 binary64)))
(pow.f64 (/.f64 #s(literal 1/2 binary64) re) #s(literal 2 binary64))
(/.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal 2 binary64)))
(*.f64 (pow.f64 (*.f64 (cbrt.f64 (cbrt.f64 (*.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal -2 binary64))))) (cbrt.f64 (cbrt.f64 (*.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal -2 binary64)))))) #s(literal 3 binary64)) (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal -2 binary64))))) #s(literal 3 binary64)))
(*.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal -2 binary64)))
(*.f64 (pow.f64 (sqrt.f64 (cbrt.f64 (*.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal -2 binary64))))) #s(literal 3 binary64)) (pow.f64 (sqrt.f64 (cbrt.f64 (*.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal -2 binary64))))) #s(literal 3 binary64)))
(*.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal -2 binary64)))
(*.f64 (pow.f64 (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 4 binary64))) #s(literal 1/3 binary64)) (cbrt.f64 (*.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal -2 binary64)))))
(*.f64 (cbrt.f64 (*.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal -2 binary64)))) (cbrt.f64 (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 4 binary64)))))
(*.f64 (pow.f64 (*.f64 (*.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal -2 binary64))) (/.f64 #s(literal 1/2 binary64) re)) #s(literal 1/3 binary64)) (pow.f64 (*.f64 (*.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal -2 binary64))) (/.f64 #s(literal 1/2 binary64) re)) #s(literal 1/3 binary64)))
(*.f64 (cbrt.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 (pow.f64 re #s(literal -2 binary64)) (/.f64 #s(literal 1/2 binary64) re)))) (cbrt.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 (pow.f64 re #s(literal -2 binary64)) (/.f64 #s(literal 1/2 binary64) re)))))
(*.f64 (cbrt.f64 (/.f64 (*.f64 (pow.f64 re #s(literal -2 binary64)) #s(literal 1/8 binary64)) re)) (cbrt.f64 (/.f64 (*.f64 (pow.f64 re #s(literal -2 binary64)) #s(literal 1/8 binary64)) re)))
(*.f64 (cbrt.f64 (/.f64 (*.f64 #s(literal 1/8 binary64) (pow.f64 re #s(literal -2 binary64))) re)) (cbrt.f64 (/.f64 (*.f64 #s(literal 1/8 binary64) (pow.f64 re #s(literal -2 binary64))) re)))
(*.f64 (cbrt.f64 (*.f64 #s(literal 1/8 binary64) (/.f64 (pow.f64 re #s(literal -2 binary64)) re))) (cbrt.f64 (*.f64 #s(literal 1/8 binary64) (/.f64 (pow.f64 re #s(literal -2 binary64)) re))))
(*.f64 (pow.f64 (sqrt.f64 (pow.f64 (/.f64 #s(literal 1/2 binary64) re) #s(literal 6 binary64))) #s(literal 1/3 binary64)) (pow.f64 (sqrt.f64 (pow.f64 (/.f64 #s(literal 1/2 binary64) re) #s(literal 6 binary64))) #s(literal 1/3 binary64)))
(*.f64 (cbrt.f64 (sqrt.f64 (pow.f64 (/.f64 #s(literal 1/2 binary64) re) #s(literal 6 binary64)))) (cbrt.f64 (sqrt.f64 (pow.f64 (/.f64 #s(literal 1/2 binary64) re) #s(literal 6 binary64)))))
(*.f64 (pow.f64 (*.f64 (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 4 binary64))) #s(literal 1/4 binary64)) #s(literal 1/3 binary64)) (pow.f64 (pow.f64 re #s(literal -2 binary64)) #s(literal 1/3 binary64)))
(*.f64 (cbrt.f64 (pow.f64 re #s(literal -2 binary64))) (cbrt.f64 (/.f64 #s(literal 1/64 binary64) (pow.f64 re #s(literal 4 binary64)))))
(*.f64 (pow.f64 (*.f64 (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 4 binary64))) (cbrt.f64 (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 4 binary64))))) #s(literal 1/3 binary64)) (pow.f64 (cbrt.f64 (*.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal -2 binary64)))) #s(literal 1/3 binary64)))
(*.f64 (cbrt.f64 (cbrt.f64 (*.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal -2 binary64))))) (cbrt.f64 (*.f64 (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 4 binary64))) (cbrt.f64 (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 4 binary64)))))))
(*.f64 (pow.f64 (*.f64 (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 4 binary64))) (/.f64 #s(literal 1/2 binary64) re)) #s(literal 1/3 binary64)) (pow.f64 (/.f64 #s(literal 1/2 binary64) re) #s(literal 1/3 binary64)))
(*.f64 (cbrt.f64 (/.f64 #s(literal 1/2 binary64) re)) (cbrt.f64 (*.f64 (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 4 binary64))) (/.f64 #s(literal 1/2 binary64) re))))
(*.f64 (cbrt.f64 (/.f64 #s(literal 1/2 binary64) re)) (cbrt.f64 (/.f64 (/.f64 #s(literal 1/32 binary64) (pow.f64 re #s(literal 4 binary64))) re)))
(*.f64 (cbrt.f64 (/.f64 #s(literal 1/2 binary64) re)) (cbrt.f64 (/.f64 #s(literal 1/32 binary64) (pow.f64 re #s(literal 5 binary64)))))
(*.f64 (pow.f64 (sqrt.f64 (cbrt.f64 (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 4 binary64))))) #s(literal 2 binary64)) (pow.f64 (sqrt.f64 (cbrt.f64 (*.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal -2 binary64))))) #s(literal 2 binary64)))
(*.f64 (cbrt.f64 (*.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal -2 binary64)))) (cbrt.f64 (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 4 binary64)))))
(*.f64 (pow.f64 (sqrt.f64 (/.f64 #s(literal 1/2 binary64) re)) #s(literal 2 binary64)) (pow.f64 (sqrt.f64 (/.f64 #s(literal 1/2 binary64) re)) #s(literal 2 binary64)))
(pow.f64 (/.f64 #s(literal 1/2 binary64) re) #s(literal 2 binary64))
(/.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal 2 binary64)))
(*.f64 (pow.f64 (*.f64 (cbrt.f64 (*.f64 (pow.f64 re #s(literal 2 binary64)) #s(literal 4 binary64))) (cbrt.f64 (*.f64 (pow.f64 re #s(literal 2 binary64)) #s(literal 4 binary64)))) #s(literal -1 binary64)) (cbrt.f64 (*.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal -2 binary64)))))
(*.f64 (cbrt.f64 (*.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal -2 binary64)))) (/.f64 #s(literal 1 binary64) (*.f64 (cbrt.f64 (*.f64 (pow.f64 re #s(literal 2 binary64)) #s(literal 4 binary64))) (cbrt.f64 (*.f64 (pow.f64 re #s(literal 2 binary64)) #s(literal 4 binary64))))))
(/.f64 (*.f64 #s(literal 1 binary64) (cbrt.f64 (*.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal -2 binary64))))) (*.f64 (cbrt.f64 (*.f64 (pow.f64 re #s(literal 2 binary64)) #s(literal 4 binary64))) (cbrt.f64 (*.f64 (pow.f64 re #s(literal 2 binary64)) #s(literal 4 binary64)))))
(/.f64 (cbrt.f64 (*.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal -2 binary64)))) (*.f64 (cbrt.f64 (*.f64 (pow.f64 re #s(literal 2 binary64)) #s(literal 4 binary64))) (cbrt.f64 (*.f64 (pow.f64 re #s(literal 2 binary64)) #s(literal 4 binary64)))))
(pow.f64 (*.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal -2 binary64))) #s(literal 1 binary64))
(*.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal -2 binary64)))
(pow.f64 (cbrt.f64 (*.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal -2 binary64)))) #s(literal 3 binary64))
(*.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal -2 binary64)))
(pow.f64 (pow.f64 (/.f64 #s(literal 1/2 binary64) re) #s(literal 6 binary64)) #s(literal 1/3 binary64))
(cbrt.f64 (pow.f64 (/.f64 #s(literal 1/2 binary64) re) #s(literal 6 binary64)))
(pow.f64 (/.f64 #s(literal 1/2 binary64) re) #s(literal 2 binary64))
(/.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal 2 binary64)))
(pow.f64 (*.f64 (pow.f64 re #s(literal 2 binary64)) #s(literal 4 binary64)) #s(literal -1 binary64))
(pow.f64 (/.f64 #s(literal 1/2 binary64) re) #s(literal 2 binary64))
(/.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal 2 binary64)))
(pow.f64 (/.f64 (*.f64 (pow.f64 re #s(literal 2 binary64)) #s(literal 4 binary64)) #s(literal 1 binary64)) #s(literal -1 binary64))
(pow.f64 (/.f64 #s(literal 1/2 binary64) re) #s(literal 2 binary64))
(/.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal 2 binary64)))
(neg.f64 (/.f64 #s(literal -1/4 binary64) (pow.f64 re #s(literal 2 binary64))))
(pow.f64 (/.f64 #s(literal 1/2 binary64) re) #s(literal 2 binary64))
(/.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal 2 binary64)))
(sqrt.f64 (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 4 binary64))))
(log.f64 (pow.f64 (exp.f64 #s(literal 1/4 binary64)) (pow.f64 re #s(literal -2 binary64))))
(*.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal -2 binary64)))
(log.f64 (+.f64 #s(literal 1 binary64) (expm1.f64 (*.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal -2 binary64))))))
(*.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal -2 binary64)))
(cbrt.f64 (pow.f64 (/.f64 #s(literal 1/2 binary64) re) #s(literal 6 binary64)))
(expm1.f64 (log1p.f64 (*.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal -2 binary64)))))
(*.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal -2 binary64)))
(log1p.f64 (expm1.f64 (*.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal -2 binary64)))))
(*.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal -2 binary64)))
(exp.f64 (*.f64 #s(literal 2 binary64) (log.f64 (/.f64 #s(literal 1/2 binary64) re))))
(pow.f64 (/.f64 #s(literal 1/2 binary64) re) #s(literal 2 binary64))
(/.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal 2 binary64)))
(exp.f64 (*.f64 (*.f64 #s(literal 2 binary64) (log.f64 (/.f64 #s(literal 1/2 binary64) re))) #s(literal 1 binary64)))
(pow.f64 (/.f64 #s(literal 1/2 binary64) re) #s(literal 2 binary64))
(/.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal -2 binary64))))) #s(literal 3 binary64)))
(*.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal -2 binary64)))
(exp.f64 (*.f64 (log.f64 (pow.f64 (/.f64 #s(literal 1/2 binary64) re) #s(literal 6 binary64))) #s(literal 1/3 binary64)))
(cbrt.f64 (pow.f64 (/.f64 #s(literal 1/2 binary64) re) #s(literal 6 binary64)))
(exp.f64 (*.f64 (log.f64 (/.f64 #s(literal 1/2 binary64) re)) #s(literal 2 binary64)))
(pow.f64 (/.f64 #s(literal 1/2 binary64) re) #s(literal 2 binary64))
(/.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (*.f64 (pow.f64 re #s(literal 2 binary64)) #s(literal 4 binary64))) #s(literal -1 binary64)))
(pow.f64 (/.f64 #s(literal 1/2 binary64) re) #s(literal 2 binary64))
(/.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal 2 binary64)))

eval55.0ms (1%)

Compiler

Compiled 2221 to 1702 computations (23.4% saved)

prune34.0ms (0.6%)

Pruning

22 alts after pruning (9 fresh and 13 done)

PrunedKeptTotal
New1485153
Fresh044
Picked145
Done1910
Total15022172
Accuracy
100.0%
Counts
172 → 22
Alt Table
Click to see full alt table
StatusAccuracyProgram
16.6%
(*.f64 (pow.f64 re #s(literal -2 binary64)) #s(literal 1/4 binary64))
22.9%
(*.f64 (pow.f64 im #s(literal 2 binary64)) (*.f64 re #s(literal 1/2 binary64)))
16.3%
(*.f64 (/.f64 #s(literal 1/2 binary64) re) (/.f64 #s(literal 1/2 binary64) re))
71.1%
(*.f64 (+.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64))) #s(literal 1 binary64)) (sin.f64 re))
100.0%
(*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
62.3%
(*.f64 (*.f64 #s(literal 1/2 binary64) re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
43.9%
(*.f64 re (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)))))
27.1%
(*.f64 re (*.f64 (pow.f64 im #s(literal 2 binary64)) (+.f64 (*.f64 (pow.f64 re #s(literal 2 binary64)) #s(literal -1/12 binary64)) #s(literal 1/2 binary64))))
27.1%
(*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) (sin.f64 re)))
47.6%
(sin.f64 re)
16.3%
(exp.f64 (*.f64 (log.f64 (/.f64 #s(literal 1/2 binary64) re)) #s(literal 2 binary64)))
22.0%
(cbrt.f64 (pow.f64 (/.f64 #s(literal 1/2 binary64) re) #s(literal 6 binary64)))
24.6%
re
4.7%
#s(literal 4 binary64)
5.2%
#s(literal 1 binary64)
5.1%
#s(literal 1/2 binary64)
4.9%
#s(literal 1/4 binary64)
4.8%
#s(literal 1/8 binary64)
4.7%
#s(literal 1/16 binary64)
3.7%
#s(literal -1/2 binary64)
3.9%
#s(literal -1 binary64)
3.4%
#s(literal -4 binary64)
Compiler

Compiled 284 to 218 computations (23.2% saved)

regimes49.0ms (0.9%)

Counts
26 → 1
Calls
Call 1
Inputs
#s(literal -4 binary64)
#s(literal -1 binary64)
#s(literal -1/2 binary64)
#s(literal 1/16 binary64)
#s(literal 1/8 binary64)
#s(literal 1/4 binary64)
#s(literal 1/2 binary64)
#s(literal 1 binary64)
#s(literal 4 binary64)
re
(*.f64 (/.f64 #s(literal 1/2 binary64) re) (/.f64 #s(literal 1/2 binary64) re))
(sin.f64 re)
(*.f64 (pow.f64 re #s(literal -2 binary64)) #s(literal 1/4 binary64))
(/.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal 2 binary64)))
(*.f64 (pow.f64 im #s(literal 2 binary64)) (*.f64 re #s(literal 1/2 binary64)))
(*.f64 re (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)))))
(+.f64 (sin.f64 re) (sin.f64 re))
(cbrt.f64 (pow.f64 (/.f64 #s(literal 1/2 binary64) re) #s(literal 6 binary64)))
(pow.f64 (*.f64 (sin.f64 re) #s(literal -2 binary64)) #s(literal -2 binary64))
(exp.f64 (*.f64 (log.f64 (/.f64 #s(literal 1/2 binary64) re)) #s(literal 2 binary64)))
(*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) (sin.f64 re)))
(*.f64 (*.f64 #s(literal 1/2 binary64) re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (+.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64))) #s(literal 1 binary64)) (sin.f64 re))
(*.f64 re (*.f64 (pow.f64 im #s(literal 2 binary64)) (+.f64 (*.f64 (pow.f64 re #s(literal 2 binary64)) #s(literal -1/12 binary64)) #s(literal 1/2 binary64))))
(*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) (+.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) (exp.f64 im)))
Outputs
(*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
Calls

6 calls:

11.0ms
(sin.f64 re)
10.0ms
(*.f64 #s(literal 1/2 binary64) (sin.f64 re))
9.0ms
im
9.0ms
re
6.0ms
(*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) (+.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) (exp.f64 im)))
Results
AccuracySegmentsBranch
100.0%1re
100.0%1im
100.0%1(*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) (+.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) (exp.f64 im)))
100.0%1(*.f64 #s(literal 1/2 binary64) (sin.f64 re))
100.0%1(sin.f64 re)
100.0%1(+.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) (exp.f64 im))
Compiler

Compiled 39 to 30 computations (23.1% saved)

regimes69.0ms (1.3%)

Counts
24 → 3
Calls
Call 1
Inputs
#s(literal -4 binary64)
#s(literal -1 binary64)
#s(literal -1/2 binary64)
#s(literal 1/16 binary64)
#s(literal 1/8 binary64)
#s(literal 1/4 binary64)
#s(literal 1/2 binary64)
#s(literal 1 binary64)
#s(literal 4 binary64)
re
(*.f64 (/.f64 #s(literal 1/2 binary64) re) (/.f64 #s(literal 1/2 binary64) re))
(sin.f64 re)
(*.f64 (pow.f64 re #s(literal -2 binary64)) #s(literal 1/4 binary64))
(/.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal 2 binary64)))
(*.f64 (pow.f64 im #s(literal 2 binary64)) (*.f64 re #s(literal 1/2 binary64)))
(*.f64 re (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)))))
(+.f64 (sin.f64 re) (sin.f64 re))
(cbrt.f64 (pow.f64 (/.f64 #s(literal 1/2 binary64) re) #s(literal 6 binary64)))
(pow.f64 (*.f64 (sin.f64 re) #s(literal -2 binary64)) #s(literal -2 binary64))
(exp.f64 (*.f64 (log.f64 (/.f64 #s(literal 1/2 binary64) re)) #s(literal 2 binary64)))
(*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) (sin.f64 re)))
(*.f64 (*.f64 #s(literal 1/2 binary64) re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (+.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64))) #s(literal 1 binary64)) (sin.f64 re))
(*.f64 re (*.f64 (pow.f64 im #s(literal 2 binary64)) (+.f64 (*.f64 (pow.f64 re #s(literal 2 binary64)) #s(literal -1/12 binary64)) #s(literal 1/2 binary64))))
Outputs
(*.f64 (+.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64))) #s(literal 1 binary64)) (sin.f64 re))
(*.f64 (*.f64 #s(literal 1/2 binary64) re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 (+.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64))) #s(literal 1 binary64)) (sin.f64 re))
Calls

3 calls:

28.0ms
(sin.f64 re)
21.0ms
im
17.0ms
re
Results
AccuracySegmentsBranch
86.2%2re
92.1%3im
88.0%5(sin.f64 re)
Compiler

Compiled 10 to 7 computations (30% saved)

regimes25.0ms (0.5%)

Counts
22 → 3
Calls
Call 1
Inputs
#s(literal -4 binary64)
#s(literal -1 binary64)
#s(literal -1/2 binary64)
#s(literal 1/16 binary64)
#s(literal 1/8 binary64)
#s(literal 1/4 binary64)
#s(literal 1/2 binary64)
#s(literal 1 binary64)
#s(literal 4 binary64)
re
(*.f64 (/.f64 #s(literal 1/2 binary64) re) (/.f64 #s(literal 1/2 binary64) re))
(sin.f64 re)
(*.f64 (pow.f64 re #s(literal -2 binary64)) #s(literal 1/4 binary64))
(/.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal 2 binary64)))
(*.f64 (pow.f64 im #s(literal 2 binary64)) (*.f64 re #s(literal 1/2 binary64)))
(*.f64 re (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)))))
(+.f64 (sin.f64 re) (sin.f64 re))
(cbrt.f64 (pow.f64 (/.f64 #s(literal 1/2 binary64) re) #s(literal 6 binary64)))
(pow.f64 (*.f64 (sin.f64 re) #s(literal -2 binary64)) #s(literal -2 binary64))
(exp.f64 (*.f64 (log.f64 (/.f64 #s(literal 1/2 binary64) re)) #s(literal 2 binary64)))
(*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) (sin.f64 re)))
(*.f64 (*.f64 #s(literal 1/2 binary64) re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
Outputs
(sin.f64 re)
(*.f64 (*.f64 #s(literal 1/2 binary64) re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) (sin.f64 re)))
Calls

1 calls:

24.0ms
im
Results
AccuracySegmentsBranch
91.9%3im
Compiler

Compiled 3 to 2 computations (33.3% saved)

regimes88.0ms (1.6%)

Counts
21 → 3
Calls
Call 1
Inputs
#s(literal -4 binary64)
#s(literal -1 binary64)
#s(literal -1/2 binary64)
#s(literal 1/16 binary64)
#s(literal 1/8 binary64)
#s(literal 1/4 binary64)
#s(literal 1/2 binary64)
#s(literal 1 binary64)
#s(literal 4 binary64)
re
(*.f64 (/.f64 #s(literal 1/2 binary64) re) (/.f64 #s(literal 1/2 binary64) re))
(sin.f64 re)
(*.f64 (pow.f64 re #s(literal -2 binary64)) #s(literal 1/4 binary64))
(/.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal 2 binary64)))
(*.f64 (pow.f64 im #s(literal 2 binary64)) (*.f64 re #s(literal 1/2 binary64)))
(*.f64 re (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)))))
(+.f64 (sin.f64 re) (sin.f64 re))
(cbrt.f64 (pow.f64 (/.f64 #s(literal 1/2 binary64) re) #s(literal 6 binary64)))
(pow.f64 (*.f64 (sin.f64 re) #s(literal -2 binary64)) #s(literal -2 binary64))
(exp.f64 (*.f64 (log.f64 (/.f64 #s(literal 1/2 binary64) re)) #s(literal 2 binary64)))
(*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) (sin.f64 re)))
Outputs
(sin.f64 re)
(cbrt.f64 (pow.f64 (/.f64 #s(literal 1/2 binary64) re) #s(literal 6 binary64)))
(*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) (sin.f64 re)))
Calls

3 calls:

45.0ms
re
23.0ms
(sin.f64 re)
18.0ms
im
Results
AccuracySegmentsBranch
63.0%7(sin.f64 re)
60.8%4re
81.7%3im
Compiler

Compiled 10 to 7 computations (30% saved)

regimes21.0ms (0.4%)

Counts
20 → 3
Calls
Call 1
Inputs
#s(literal -4 binary64)
#s(literal -1 binary64)
#s(literal -1/2 binary64)
#s(literal 1/16 binary64)
#s(literal 1/8 binary64)
#s(literal 1/4 binary64)
#s(literal 1/2 binary64)
#s(literal 1 binary64)
#s(literal 4 binary64)
re
(*.f64 (/.f64 #s(literal 1/2 binary64) re) (/.f64 #s(literal 1/2 binary64) re))
(sin.f64 re)
(*.f64 (pow.f64 re #s(literal -2 binary64)) #s(literal 1/4 binary64))
(/.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal 2 binary64)))
(*.f64 (pow.f64 im #s(literal 2 binary64)) (*.f64 re #s(literal 1/2 binary64)))
(*.f64 re (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)))))
(+.f64 (sin.f64 re) (sin.f64 re))
(cbrt.f64 (pow.f64 (/.f64 #s(literal 1/2 binary64) re) #s(literal 6 binary64)))
(pow.f64 (*.f64 (sin.f64 re) #s(literal -2 binary64)) #s(literal -2 binary64))
(exp.f64 (*.f64 (log.f64 (/.f64 #s(literal 1/2 binary64) re)) #s(literal 2 binary64)))
Outputs
(sin.f64 re)
(cbrt.f64 (pow.f64 (/.f64 #s(literal 1/2 binary64) re) #s(literal 6 binary64)))
(*.f64 re (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)))))
Calls

1 calls:

18.0ms
im
Results
AccuracySegmentsBranch
75.1%3im
Compiler

Compiled 3 to 2 computations (33.3% saved)

regimes17.0ms (0.3%)

Counts
17 → 3
Calls
Call 1
Inputs
#s(literal -4 binary64)
#s(literal -1 binary64)
#s(literal -1/2 binary64)
#s(literal 1/16 binary64)
#s(literal 1/8 binary64)
#s(literal 1/4 binary64)
#s(literal 1/2 binary64)
#s(literal 1 binary64)
#s(literal 4 binary64)
re
(*.f64 (/.f64 #s(literal 1/2 binary64) re) (/.f64 #s(literal 1/2 binary64) re))
(sin.f64 re)
(*.f64 (pow.f64 re #s(literal -2 binary64)) #s(literal 1/4 binary64))
(/.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal 2 binary64)))
(*.f64 (pow.f64 im #s(literal 2 binary64)) (*.f64 re #s(literal 1/2 binary64)))
(*.f64 re (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)))))
(+.f64 (sin.f64 re) (sin.f64 re))
Outputs
(sin.f64 re)
(/.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal 2 binary64)))
(*.f64 re (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)))))
Calls

1 calls:

16.0ms
im
Results
AccuracySegmentsBranch
72.6%3im
Compiler

Compiled 3 to 2 computations (33.3% saved)

regimes15.0ms (0.3%)

Counts
15 → 3
Calls
Call 1
Inputs
#s(literal -4 binary64)
#s(literal -1 binary64)
#s(literal -1/2 binary64)
#s(literal 1/16 binary64)
#s(literal 1/8 binary64)
#s(literal 1/4 binary64)
#s(literal 1/2 binary64)
#s(literal 1 binary64)
#s(literal 4 binary64)
re
(*.f64 (/.f64 #s(literal 1/2 binary64) re) (/.f64 #s(literal 1/2 binary64) re))
(sin.f64 re)
(*.f64 (pow.f64 re #s(literal -2 binary64)) #s(literal 1/4 binary64))
(/.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal 2 binary64)))
(*.f64 (pow.f64 im #s(literal 2 binary64)) (*.f64 re #s(literal 1/2 binary64)))
Outputs
(sin.f64 re)
(/.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal 2 binary64)))
(*.f64 (pow.f64 im #s(literal 2 binary64)) (*.f64 re #s(literal 1/2 binary64)))
Calls

1 calls:

14.0ms
im
Results
AccuracySegmentsBranch
72.6%3im
Compiler

Compiled 3 to 2 computations (33.3% saved)

regimes12.0ms (0.2%)

Counts
14 → 2
Calls
Call 1
Inputs
#s(literal -4 binary64)
#s(literal -1 binary64)
#s(literal -1/2 binary64)
#s(literal 1/16 binary64)
#s(literal 1/8 binary64)
#s(literal 1/4 binary64)
#s(literal 1/2 binary64)
#s(literal 1 binary64)
#s(literal 4 binary64)
re
(*.f64 (/.f64 #s(literal 1/2 binary64) re) (/.f64 #s(literal 1/2 binary64) re))
(sin.f64 re)
(*.f64 (pow.f64 re #s(literal -2 binary64)) #s(literal 1/4 binary64))
(/.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal 2 binary64)))
Outputs
(sin.f64 re)
(*.f64 (pow.f64 re #s(literal -2 binary64)) #s(literal 1/4 binary64))
Calls

1 calls:

11.0ms
im
Results
AccuracySegmentsBranch
61.3%2im
Compiler

Compiled 3 to 2 computations (33.3% saved)

regimes10.0ms (0.2%)

Counts
12 → 2
Calls
Call 1
Inputs
#s(literal -4 binary64)
#s(literal -1 binary64)
#s(literal -1/2 binary64)
#s(literal 1/16 binary64)
#s(literal 1/8 binary64)
#s(literal 1/4 binary64)
#s(literal 1/2 binary64)
#s(literal 1 binary64)
#s(literal 4 binary64)
re
(*.f64 (/.f64 #s(literal 1/2 binary64) re) (/.f64 #s(literal 1/2 binary64) re))
(sin.f64 re)
Outputs
(sin.f64 re)
(*.f64 (/.f64 #s(literal 1/2 binary64) re) (/.f64 #s(literal 1/2 binary64) re))
Calls

1 calls:

9.0ms
im
Results
AccuracySegmentsBranch
61.0%2im
Compiler

Compiled 3 to 2 computations (33.3% saved)

regimes20.0ms (0.4%)

Counts
11 → 2
Calls
Call 1
Inputs
#s(literal -4 binary64)
#s(literal -1 binary64)
#s(literal -1/2 binary64)
#s(literal 1/16 binary64)
#s(literal 1/8 binary64)
#s(literal 1/4 binary64)
#s(literal 1/2 binary64)
#s(literal 1 binary64)
#s(literal 4 binary64)
re
(*.f64 (/.f64 #s(literal 1/2 binary64) re) (/.f64 #s(literal 1/2 binary64) re))
Outputs
re
(*.f64 (/.f64 #s(literal 1/2 binary64) re) (/.f64 #s(literal 1/2 binary64) re))
Calls

2 calls:

12.0ms
re
7.0ms
im
Results
AccuracySegmentsBranch
31.7%5re
38.0%2im
Compiler

Compiled 6 to 4 computations (33.3% saved)

regimes13.0ms (0.2%)

Counts
10 → 2
Calls
Call 1
Inputs
#s(literal -4 binary64)
#s(literal -1 binary64)
#s(literal -1/2 binary64)
#s(literal 1/16 binary64)
#s(literal 1/8 binary64)
#s(literal 1/4 binary64)
#s(literal 1/2 binary64)
#s(literal 1 binary64)
#s(literal 4 binary64)
re
Outputs
re
#s(literal -1 binary64)
Calls

2 calls:

8.0ms
re
4.0ms
im
Results
AccuracySegmentsBranch
26.4%2re
24.6%1im
Compiler

Compiled 6 to 4 computations (33.3% saved)

regimes8.0ms (0.1%)

Counts
9 → 1
Calls
Call 1
Inputs
#s(literal -4 binary64)
#s(literal -1 binary64)
#s(literal -1/2 binary64)
#s(literal 1/16 binary64)
#s(literal 1/8 binary64)
#s(literal 1/4 binary64)
#s(literal 1/2 binary64)
#s(literal 1 binary64)
#s(literal 4 binary64)
Outputs
#s(literal 1 binary64)
Calls

2 calls:

3.0ms
im
3.0ms
re
Results
AccuracySegmentsBranch
5.2%1im
5.2%1re
Compiler

Compiled 6 to 4 computations (33.3% saved)

regimes7.0ms (0.1%)

Counts
7 → 1
Calls
Call 1
Inputs
#s(literal -4 binary64)
#s(literal -1 binary64)
#s(literal -1/2 binary64)
#s(literal 1/16 binary64)
#s(literal 1/8 binary64)
#s(literal 1/4 binary64)
#s(literal 1/2 binary64)
Outputs
#s(literal 1/2 binary64)
Calls

2 calls:

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

Compiled 6 to 4 computations (33.3% saved)

regimes6.0ms (0.1%)

Counts
6 → 1
Calls
Call 1
Inputs
#s(literal -4 binary64)
#s(literal -1 binary64)
#s(literal -1/2 binary64)
#s(literal 1/16 binary64)
#s(literal 1/8 binary64)
#s(literal 1/4 binary64)
Outputs
#s(literal 1/4 binary64)
Calls

2 calls:

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

Compiled 6 to 4 computations (33.3% saved)

regimes6.0ms (0.1%)

Counts
5 → 1
Calls
Call 1
Inputs
#s(literal -4 binary64)
#s(literal -1 binary64)
#s(literal -1/2 binary64)
#s(literal 1/16 binary64)
#s(literal 1/8 binary64)
Outputs
#s(literal 1/8 binary64)
Calls

2 calls:

3.0ms
im
2.0ms
re
Results
AccuracySegmentsBranch
4.8%1re
4.8%1im
Compiler

Compiled 6 to 4 computations (33.3% saved)

regimes9.0ms (0.2%)

Counts
4 → 1
Calls
Call 1
Inputs
#s(literal -4 binary64)
#s(literal -1 binary64)
#s(literal -1/2 binary64)
#s(literal 1/16 binary64)
Outputs
#s(literal 1/16 binary64)
Calls

2 calls:

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

Compiled 6 to 4 computations (33.3% saved)

regimes4.0ms (0.1%)

Counts
3 → 1
Calls
Call 1
Inputs
#s(literal -4 binary64)
#s(literal -1 binary64)
#s(literal -1/2 binary64)
Outputs
#s(literal -1 binary64)
Calls

2 calls:

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

Compiled 6 to 4 computations (33.3% saved)

regimes1.0ms (0%)

Accuracy

Total -0.0b remaining (-0%)

Threshold costs -0b (-0%)

Counts
1 → 1
Calls
Call 1
Inputs
#s(literal -4 binary64)
Outputs
#s(literal -4 binary64)
Calls

2 calls:

0.0ms
re
0.0ms
im
Results
AccuracySegmentsBranch
3.4%1im
3.4%1re
Compiler

Compiled 6 to 4 computations (33.3% saved)

bsearch43.0ms (0.8%)

Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
17.0ms
2.5119275851176328e+154
1.042910579801012e+157
24.0ms
0.3999726776534201
62.62766326408029
Results
32.0ms240×0valid
Compiler

Compiled 409 to 330 computations (19.3% saved)

Precisions
Click to see histograms. Total time spent on operations: 25.0ms
ival-exp: 11.0ms (44.4% of total)
ival-sin: 7.0ms (28.3% of total)
ival-mult: 4.0ms (16.2% of total)
ival-sub: 1.0ms (4% of total)
ival-add: 1.0ms (4% of total)
const: 0.0ms (0% of total)
backward-pass: 0.0ms (0% of total)

bsearch35.0ms (0.6%)

Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
18.0ms
2.5119275851176328e+154
1.042910579801012e+157
14.0ms
0.3999726776534201
62.62766326408029
Results
22.0ms240×0valid
Compiler

Compiled 337 to 265 computations (21.4% saved)

Precisions
Click to see histograms. Total time spent on operations: 15.0ms
ival-sin: 5.0ms (34% of total)
ival-exp: 3.0ms (20.4% of total)
ival-mult: 3.0ms (20.4% of total)
ival-sub: 1.0ms (6.8% of total)
ival-add: 1.0ms (6.8% of total)
const: 0.0ms (0% of total)
backward-pass: 0.0ms (0% of total)

bsearch35.0ms (0.6%)

Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
14.0ms
2.647312029207092e+152
5.6805963225649456e+153
15.0ms
399.11616778090104
1903.4338884665647
Results
22.0ms208×0valid
Compiler

Compiled 243 to 206 computations (15.2% saved)

Precisions
Click to see histograms. Total time spent on operations: 16.0ms
ival-mult: 5.0ms (31.8% of total)
ival-sin: 5.0ms (31.8% of total)
ival-exp: 3.0ms (19.1% of total)
ival-sub: 1.0ms (6.4% of total)
ival-add: 1.0ms (6.4% of total)
const: 0.0ms (0% of total)
backward-pass: 0.0ms (0% of total)

bsearch31.0ms (0.6%)

Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
16.0ms
2.647312029207092e+152
5.6805963225649456e+153
12.0ms
399.11616778090104
1903.4338884665647
Results
21.0ms208×0valid
Compiler

Compiled 250 to 213 computations (14.8% saved)

Precisions
Click to see histograms. Total time spent on operations: 13.0ms
ival-sin: 5.0ms (37.8% of total)
ival-exp: 3.0ms (22.7% of total)
ival-mult: 3.0ms (22.7% of total)
ival-sub: 1.0ms (7.6% of total)
ival-add: 1.0ms (7.6% of total)
const: 0.0ms (0% of total)
backward-pass: 0.0ms (0% of total)

bsearch29.0ms (0.5%)

Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
14.0ms
3.7134155404225954e+98
1.8286241531058024e+99
13.0ms
399.11616778090104
1903.4338884665647
Results
20.0ms192×0valid
Compiler

Compiled 217 to 183 computations (15.7% saved)

Precisions
Click to see histograms. Total time spent on operations: 13.0ms
ival-sin: 5.0ms (39.8% of total)
ival-exp: 3.0ms (23.9% of total)
ival-mult: 3.0ms (23.9% of total)
ival-sub: 1.0ms (8% of total)
ival-add: 1.0ms (8% of total)
const: 0.0ms (0% of total)
backward-pass: 0.0ms (0% of total)

bsearch28.0ms (0.5%)

Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
13.0ms
3.7134155404225954e+98
1.8286241531058024e+99
13.0ms
399.11616778090104
1903.4338884665647
Results
19.0ms192×0valid
Compiler

Compiled 205 to 171 computations (16.6% saved)

Precisions
Click to see histograms. Total time spent on operations: 13.0ms
ival-exp: 4.0ms (29.7% of total)
ival-sin: 4.0ms (29.7% of total)
ival-mult: 3.0ms (22.2% of total)
ival-sub: 1.0ms (7.4% of total)
ival-add: 1.0ms (7.4% of total)
const: 0.0ms (0% of total)
backward-pass: 0.0ms (0% of total)

bsearch16.0ms (0.3%)

Algorithm
binary-search
Stop Event
narrow-enough
Steps
TimeLeftRight
14.0ms
399.11616778090104
1903.4338884665647
Results
11.0ms96×0valid
Compiler

Compiled 97 to 81 computations (16.5% saved)

Precisions
Click to see histograms. Total time spent on operations: 6.0ms
ival-exp: 2.0ms (31.2% of total)
ival-sin: 2.0ms (31.2% of total)
ival-mult: 1.0ms (15.6% of total)
ival-sub: 0.0ms (0% of total)
ival-add: 0.0ms (0% of total)
const: 0.0ms (0% of total)
backward-pass: 0.0ms (0% of total)

bsearch14.0ms (0.3%)

Algorithm
binary-search
Stop Event
narrow-enough
Steps
TimeLeftRight
13.0ms
399.11616778090104
1903.4338884665647
Results
9.0ms96×0valid
Compiler

Compiled 109 to 87 computations (20.2% saved)

Precisions
Click to see histograms. Total time spent on operations: 7.0ms
ival-exp: 2.0ms (30.6% of total)
ival-sin: 2.0ms (30.6% of total)
ival-mult: 1.0ms (15.3% of total)
ival-sub: 0.0ms (0% of total)
ival-add: 0.0ms (0% of total)
const: 0.0ms (0% of total)
backward-pass: 0.0ms (0% of total)

bsearch15.0ms (0.3%)

Algorithm
binary-search
Stop Event
narrow-enough
Steps
TimeLeftRight
14.0ms
62.62766326408029
399.11616778090104
Results
10.0ms96×0valid
Compiler

Compiled 103 to 81 computations (21.4% saved)

Precisions
Click to see histograms. Total time spent on operations: 7.0ms
ival-exp: 2.0ms (29.6% of total)
ival-sin: 2.0ms (29.6% of total)
ival-mult: 1.0ms (14.8% of total)
ival-sub: 0.0ms (0% of total)
ival-add: 0.0ms (0% of total)
const: 0.0ms (0% of total)
backward-pass: 0.0ms (0% of total)

bsearch15.0ms (0.3%)

Algorithm
binary-search
Stop Event
narrow-enough
Steps
TimeLeftRight
14.0ms
7.6191971745888605
47.16395274389942
Results
11.0ms96×0valid
Compiler

Compiled 67 to 57 computations (14.9% saved)

Precisions
Click to see histograms. Total time spent on operations: 8.0ms
ival-sin: 3.0ms (37.3% of total)
ival-exp: 2.0ms (24.9% of total)
ival-mult: 1.0ms (12.4% of total)
ival-sub: 0.0ms (0% of total)
ival-add: 0.0ms (0% of total)
const: 0.0ms (0% of total)
backward-pass: 0.0ms (0% of total)

simplify10.0ms (0.2%)

Algorithm
egg-herbie
Rules
12×*-commutative
1-exp
+-commutative
if-if-or-not
sub-neg
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
093713
1118713
2120713
3121713
Stop Event
saturated
Calls
Call 1
Inputs
(*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(if (<=.f64 im #s(literal 7566047373982433/18014398509481984 binary64)) (*.f64 (+.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64))) #s(literal 1 binary64)) (sin.f64 re)) (if (<=.f64 im #s(literal 25499999999999999528024993055952010542249007939197233513958453954737868247668078447050309476321791611551296703204050146631997321389936393151246862110425088 binary64)) (*.f64 (*.f64 #s(literal 1/2 binary64) re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) (*.f64 (+.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64))) #s(literal 1 binary64)) (sin.f64 re))))
(if (<=.f64 im #s(literal 3602879701896397/9007199254740992 binary64)) (sin.f64 re) (if (<=.f64 im #s(literal 25499999999999999528024993055952010542249007939197233513958453954737868247668078447050309476321791611551296703204050146631997321389936393151246862110425088 binary64)) (*.f64 (*.f64 #s(literal 1/2 binary64) re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) (sin.f64 re)))))
(if (<=.f64 im #s(literal 700 binary64)) (sin.f64 re) (if (<=.f64 im #s(literal 5599999999999999700793915351609078602187986796136588171949203715410992714027187480978498242313786692876694149057004322425869677000496087656972061734076416 binary64)) (cbrt.f64 (pow.f64 (/.f64 #s(literal 1/2 binary64) re) #s(literal 6 binary64))) (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) (sin.f64 re)))))
(if (<=.f64 im #s(literal 750 binary64)) (sin.f64 re) (if (<=.f64 im #s(literal 2149999999999999878480852736075793964031927258540684359068633985882669580133241943938399940994404949175698325701404417232960482019685406833128273096998912 binary64)) (cbrt.f64 (pow.f64 (/.f64 #s(literal 1/2 binary64) re) #s(literal 6 binary64))) (*.f64 re (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)))))))
(if (<=.f64 im #s(literal 700 binary64)) (sin.f64 re) (if (<=.f64 im #s(literal 1500000000000000072421058970283103843240668955179764874527370109965663847120867402594627628008734720 binary64)) (/.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal 2 binary64))) (*.f64 re (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)))))))
(if (<=.f64 im #s(literal 580 binary64)) (sin.f64 re) (if (<=.f64 im #s(literal 1749999999999999882129892525150176263003498486926506245031219393695407691243885955224535857134305280 binary64)) (/.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal 2 binary64))) (*.f64 (pow.f64 im #s(literal 2 binary64)) (*.f64 re #s(literal 1/2 binary64)))))
(if (<=.f64 im #s(literal 620 binary64)) (sin.f64 re) (*.f64 (pow.f64 re #s(literal -2 binary64)) #s(literal 1/4 binary64)))
(if (<=.f64 im #s(literal 680 binary64)) (sin.f64 re) (*.f64 (/.f64 #s(literal 1/2 binary64) re) (/.f64 #s(literal 1/2 binary64) re)))
(if (<=.f64 im #s(literal 240 binary64)) re (*.f64 (/.f64 #s(literal 1/2 binary64) re) (/.f64 #s(literal 1/2 binary64) re)))
(if (<=.f64 re #s(literal 22 binary64)) re #s(literal -1 binary64))
#s(literal 1 binary64)
#s(literal 1/2 binary64)
#s(literal 1/4 binary64)
#s(literal 1/8 binary64)
#s(literal 1/16 binary64)
#s(literal -1 binary64)
#s(literal -4 binary64)
Outputs
(*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(if (<=.f64 im #s(literal 7566047373982433/18014398509481984 binary64)) (*.f64 (+.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64))) #s(literal 1 binary64)) (sin.f64 re)) (if (<=.f64 im #s(literal 25499999999999999528024993055952010542249007939197233513958453954737868247668078447050309476321791611551296703204050146631997321389936393151246862110425088 binary64)) (*.f64 (*.f64 #s(literal 1/2 binary64) re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) (*.f64 (+.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64))) #s(literal 1 binary64)) (sin.f64 re))))
(if (or (<=.f64 im #s(literal 7566047373982433/18014398509481984 binary64)) (not (<=.f64 im #s(literal 25499999999999999528024993055952010542249007939197233513958453954737868247668078447050309476321791611551296703204050146631997321389936393151246862110425088 binary64)))) (*.f64 (sin.f64 re) (+.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64))) #s(literal 1 binary64))) (*.f64 (*.f64 #s(literal 1/2 binary64) re) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))
(if (<=.f64 im #s(literal 3602879701896397/9007199254740992 binary64)) (sin.f64 re) (if (<=.f64 im #s(literal 25499999999999999528024993055952010542249007939197233513958453954737868247668078447050309476321791611551296703204050146631997321389936393151246862110425088 binary64)) (*.f64 (*.f64 #s(literal 1/2 binary64) re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) (sin.f64 re)))))
(if (<=.f64 im #s(literal 3602879701896397/9007199254740992 binary64)) (sin.f64 re) (if (<=.f64 im #s(literal 25499999999999999528024993055952010542249007939197233513958453954737868247668078447050309476321791611551296703204050146631997321389936393151246862110425088 binary64)) (*.f64 (*.f64 #s(literal 1/2 binary64) re) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) (*.f64 #s(literal 1/2 binary64) (*.f64 (sin.f64 re) (pow.f64 im #s(literal 2 binary64))))))
(if (<=.f64 im #s(literal 700 binary64)) (sin.f64 re) (if (<=.f64 im #s(literal 5599999999999999700793915351609078602187986796136588171949203715410992714027187480978498242313786692876694149057004322425869677000496087656972061734076416 binary64)) (cbrt.f64 (pow.f64 (/.f64 #s(literal 1/2 binary64) re) #s(literal 6 binary64))) (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 2 binary64)) (sin.f64 re)))))
(if (<=.f64 im #s(literal 700 binary64)) (sin.f64 re) (if (<=.f64 im #s(literal 5599999999999999700793915351609078602187986796136588171949203715410992714027187480978498242313786692876694149057004322425869677000496087656972061734076416 binary64)) (cbrt.f64 (pow.f64 (/.f64 #s(literal 1/2 binary64) re) #s(literal 6 binary64))) (*.f64 #s(literal 1/2 binary64) (*.f64 (sin.f64 re) (pow.f64 im #s(literal 2 binary64))))))
(if (<=.f64 im #s(literal 750 binary64)) (sin.f64 re) (if (<=.f64 im #s(literal 2149999999999999878480852736075793964031927258540684359068633985882669580133241943938399940994404949175698325701404417232960482019685406833128273096998912 binary64)) (cbrt.f64 (pow.f64 (/.f64 #s(literal 1/2 binary64) re) #s(literal 6 binary64))) (*.f64 re (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)))))))
(if (<=.f64 im #s(literal 750 binary64)) (sin.f64 re) (if (<=.f64 im #s(literal 2149999999999999878480852736075793964031927258540684359068633985882669580133241943938399940994404949175698325701404417232960482019685406833128273096998912 binary64)) (cbrt.f64 (pow.f64 (/.f64 #s(literal 1/2 binary64) re) #s(literal 6 binary64))) (*.f64 re (+.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64))) #s(literal 1 binary64)))))
(if (<=.f64 im #s(literal 700 binary64)) (sin.f64 re) (if (<=.f64 im #s(literal 1500000000000000072421058970283103843240668955179764874527370109965663847120867402594627628008734720 binary64)) (/.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal 2 binary64))) (*.f64 re (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64)))))))
(if (<=.f64 im #s(literal 700 binary64)) (sin.f64 re) (if (<=.f64 im #s(literal 1500000000000000072421058970283103843240668955179764874527370109965663847120867402594627628008734720 binary64)) (/.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal 2 binary64))) (*.f64 re (+.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 2 binary64))) #s(literal 1 binary64)))))
(if (<=.f64 im #s(literal 580 binary64)) (sin.f64 re) (if (<=.f64 im #s(literal 1749999999999999882129892525150176263003498486926506245031219393695407691243885955224535857134305280 binary64)) (/.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal 2 binary64))) (*.f64 (pow.f64 im #s(literal 2 binary64)) (*.f64 re #s(literal 1/2 binary64)))))
(if (<=.f64 im #s(literal 580 binary64)) (sin.f64 re) (if (<=.f64 im #s(literal 1749999999999999882129892525150176263003498486926506245031219393695407691243885955224535857134305280 binary64)) (/.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal 2 binary64))) (*.f64 (pow.f64 im #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) re))))
(if (<=.f64 im #s(literal 620 binary64)) (sin.f64 re) (*.f64 (pow.f64 re #s(literal -2 binary64)) #s(literal 1/4 binary64)))
(if (<=.f64 im #s(literal 620 binary64)) (sin.f64 re) (*.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal -2 binary64))))
(if (<=.f64 im #s(literal 680 binary64)) (sin.f64 re) (*.f64 (/.f64 #s(literal 1/2 binary64) re) (/.f64 #s(literal 1/2 binary64) re)))
(if (<=.f64 im #s(literal 240 binary64)) re (*.f64 (/.f64 #s(literal 1/2 binary64) re) (/.f64 #s(literal 1/2 binary64) re)))
(if (<=.f64 re #s(literal 22 binary64)) re #s(literal -1 binary64))
#s(literal 1 binary64)
#s(literal 1/2 binary64)
#s(literal 1/4 binary64)
#s(literal 1/8 binary64)
#s(literal 1/16 binary64)
#s(literal -1 binary64)
#s(literal -4 binary64)

soundness981.0ms (17.9%)

Rules
989×fma-neg
725×fma-define
721×unpow-prod-down
705×log1p-expm1-u
705×expm1-log1p-u
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
036316
1111308
2397308
3986298
41988294
53213294
63708294
74185294
84839294
94992294
105009294
115009294
125041294
135070294
145070294
025124
1353124
25692124
02243250
14813042
211652985
335062969
03013303
16203279
215523191
332093182
447723182
572483176
01644
120244
2330644
01031556
13201402
211021402
341771402
01768
117968
2206868
Stop Event
fuel
node limit
node limit
unsound
node limit
node limit
unsound
saturated
Compiler

Compiled 673 to 507 computations (24.7% saved)

preprocess131.0ms (2.4%)

Remove

(negabs re)

(abs im)

Compiler

Compiled 560 to 384 computations (31.4% saved)

end0.0ms (0%)

Profiling

Loading profile data...