math.exp on complex, imaginary part

Time bar (total: 6.3s)

start0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated; 0ms collecting garbage

analyze0.0ms (0%)

Memory
0.4MiB live, 0.4MiB allocated; 0ms collecting garbage
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 7 to 7 computations (0% saved)

sample1.0s (16%)

Memory
45.7MiB live, 1 491.5MiB allocated; 350ms collecting garbage
Samples
757.0ms8 256×0valid
Precisions
Click to see histograms. Total time spent on operations: 489.0ms
ival-sin: 294.0ms (60.1% of total)
ival-exp: 129.0ms (26.4% of total)
ival-mult: 55.0ms (11.2% of total)
ival-true: 6.0ms (1.2% of total)
adjust: 3.0ms (0.6% of total)
ival-assert: 3.0ms (0.6% of total)
Bogosity

explain86.0ms (1.4%)

Memory
18.8MiB live, 115.0MiB allocated; 21ms collecting garbage
FPErrors
Click to see full error table
Ground TruthOverpredictionsExampleUnderpredictionsExampleSubexpression
00-0-(*.f64 (exp.f64 re) (sin.f64 im))
00-0-(sin.f64 im)
00-0-re
00-0-(exp.f64 re)
00-0-im
Confusion
Predicted +Predicted -
+00
-0256
Precision
0/0
Recall
0/0
Confusion?
Predicted +Predicted MaybePredicted -
+000
-00256
Precision?
0/0
Recall?
0/0
Freqs
test
numberfreq
0256
Total Confusion?
Predicted +Predicted MaybePredicted -
+000
-001
Precision?
0/0
Recall?
0/0
Samples
51.0ms512×0valid
Compiler

Compiled 31 to 19 computations (38.7% saved)

Precisions
Click to see histograms. Total time spent on operations: 37.0ms
ival-sin: 30.0ms (80% of total)
ival-exp: 4.0ms (10.7% of total)
ival-mult: 3.0ms (8% of total)
ival-true: 0.0ms (0% of total)
adjust: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

preprocess196.0ms (3.1%)

Memory
24.8MiB live, 251.8MiB allocated; 55ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01531
13829
211527
340727
4164827
055
085
1125
2265
3675
42795
522965
081255
Stop Event
iter limit
node limit
iter limit
node limit
Calls
Call 1
Inputs
(*.f64 (exp.f64 re) (sin.f64 im))
Outputs
(*.f64 (exp.f64 re) (sin.f64 im))
(*.f64 (sin.f64 im) (exp.f64 re))
Symmetry

(negabs im)

Compiler

Compiled 5 to 5 computations (0% saved)

eval0.0ms (0%)

Memory
0.2MiB live, 0.2MiB allocated; 0ms collecting garbage
Compiler

Compiled 0 to 2 computations (-∞% saved)

prune0.0ms (0%)

Memory
1.5MiB live, 1.5MiB allocated; 0ms collecting garbage
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(*.f64 (exp.f64 re) (sin.f64 im))
Compiler

Compiled 5 to 5 computations (0% saved)

simplify203.0ms (3.2%)

Memory
-12.4MiB live, 283.3MiB allocated; 57ms collecting garbage
Localize:

Found 3 expressions of interest:

NewMetricScoreProgram
cost-diff0
(sin.f64 im)
cost-diff0
(exp.f64 re)
cost-diff0
(*.f64 (exp.f64 re) (sin.f64 im))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0511
0811
11211
22611
36711
427911
5229611
0812511
Stop Event
iter limit
node limit
iter limit
Calls
Call 1
Inputs
(*.f64 (exp.f64 re) (sin.f64 im))
(exp.f64 re)
re
(sin.f64 im)
im
Outputs
(*.f64 (exp.f64 re) (sin.f64 im))
(*.f64 (sin.f64 im) (exp.f64 re))
(exp.f64 re)
re
(sin.f64 im)
im

localize23.0ms (0.4%)

Memory
-15.9MiB live, 31.0MiB allocated; 5ms collecting garbage
Localize:

Found 3 expressions of interest:

NewMetricScoreProgram
accuracy0.0
(sin.f64 im)
accuracy0.0
(exp.f64 re)
accuracy0.01171875
(*.f64 (exp.f64 re) (sin.f64 im))
Samples
18.0ms256×0valid
Compiler

Compiled 13 to 7 computations (46.2% saved)

Precisions
Click to see histograms. Total time spent on operations: 9.0ms
ival-sin: 5.0ms (54.3% of total)
ival-exp: 2.0ms (21.7% of total)
ival-mult: 2.0ms (21.7% of total)
ival-true: 0.0ms (0% of total)
adjust: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

series4.0ms (0.1%)

Memory
6.8MiB live, 6.8MiB allocated; 0ms collecting garbage
Counts
3 → 18
Calls
Call 1
Inputs
(*.f64 (exp.f64 re) (sin.f64 im))
(exp.f64 re)
(sin.f64 im)
Outputs
(sin im)
(+ (sin im) (* re (sin im)))
(+ (sin im) (* re (+ (sin im) (* 1/2 (* re (sin im))))))
(+ (sin im) (* re (+ (sin im) (* re (+ (* 1/6 (* re (sin im))) (* 1/2 (sin im)))))))
1
(+ 1 re)
(+ 1 (* re (+ 1 (* 1/2 re))))
(+ 1 (* re (+ 1 (* re (+ 1/2 (* 1/6 re))))))
(* (exp re) (sin im))
(exp re)
(* im (exp re))
(* im (+ (exp re) (* -1/6 (* (pow im 2) (exp re)))))
(* im (+ (exp re) (* (pow im 2) (+ (* -1/6 (exp re)) (* 1/120 (* (pow im 2) (exp re)))))))
(* im (+ (exp re) (* (pow im 2) (+ (* -1/6 (exp re)) (* (pow im 2) (+ (* -1/5040 (* (pow im 2) (exp re))) (* 1/120 (exp re))))))))
im
(* im (+ 1 (* -1/6 (pow im 2))))
(* im (+ 1 (* (pow im 2) (- (* 1/120 (pow im 2)) 1/6))))
(* im (+ 1 (* (pow im 2) (- (* (pow im 2) (+ 1/120 (* -1/5040 (pow im 2)))) 1/6))))
Calls

6 calls:

TimeVariablePointExpression
1.0ms
re
@inf
((* (exp re) (sin im)) (exp re) (sin im))
1.0ms
im
@0
((* (exp re) (sin im)) (exp re) (sin im))
1.0ms
re
@-inf
((* (exp re) (sin im)) (exp re) (sin im))
0.0ms
re
@0
((* (exp re) (sin im)) (exp re) (sin im))
0.0ms
im
@-inf
((* (exp re) (sin im)) (exp re) (sin im))

simplify210.0ms (3.3%)

Memory
12.6MiB live, 231.5MiB allocated; 64ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
071192
1274181
21066169
35077163
08552143
Stop Event
iter limit
node limit
Counts
18 → 17
Calls
Call 1
Inputs
(sin im)
(+ (sin im) (* re (sin im)))
(+ (sin im) (* re (+ (sin im) (* 1/2 (* re (sin im))))))
(+ (sin im) (* re (+ (sin im) (* re (+ (* 1/6 (* re (sin im))) (* 1/2 (sin im)))))))
1
(+ 1 re)
(+ 1 (* re (+ 1 (* 1/2 re))))
(+ 1 (* re (+ 1 (* re (+ 1/2 (* 1/6 re))))))
(* (exp re) (sin im))
(exp re)
(* im (exp re))
(* im (+ (exp re) (* -1/6 (* (pow im 2) (exp re)))))
(* im (+ (exp re) (* (pow im 2) (+ (* -1/6 (exp re)) (* 1/120 (* (pow im 2) (exp re)))))))
(* im (+ (exp re) (* (pow im 2) (+ (* -1/6 (exp re)) (* (pow im 2) (+ (* -1/5040 (* (pow im 2) (exp re))) (* 1/120 (exp re))))))))
im
(* im (+ 1 (* -1/6 (pow im 2))))
(* im (+ 1 (* (pow im 2) (- (* 1/120 (pow im 2)) 1/6))))
(* im (+ 1 (* (pow im 2) (- (* (pow im 2) (+ 1/120 (* -1/5040 (pow im 2)))) 1/6))))
Outputs
(sin im)
(sin.f64 im)
(+ (sin im) (* re (sin im)))
(fma.f64 (sin.f64 im) re (sin.f64 im))
(+ (sin im) (* re (+ (sin im) (* 1/2 (* re (sin im))))))
(*.f64 (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64)) (sin.f64 im))
(+ (sin im) (* re (+ (sin im) (* re (+ (* 1/6 (* re (sin im))) (* 1/2 (sin im)))))))
(*.f64 (sin.f64 im) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re #s(literal 1 binary64)))
1
#s(literal 1 binary64)
(+ 1 re)
(+.f64 #s(literal 1 binary64) re)
(+ 1 (* re (+ 1 (* 1/2 re))))
(fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64))
(+ 1 (* re (+ 1 (* re (+ 1/2 (* 1/6 re))))))
(fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re #s(literal 1 binary64))
(* (exp re) (sin im))
(*.f64 (exp.f64 re) (sin.f64 im))
(exp re)
(exp.f64 re)
(* im (exp re))
(*.f64 (exp.f64 re) im)
(* im (+ (exp re) (* -1/6 (* (pow im 2) (exp re)))))
(*.f64 (fma.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal -1/6 binary64) im) (exp.f64 re))
(* im (+ (exp re) (* (pow im 2) (+ (* -1/6 (exp re)) (* 1/120 (* (pow im 2) (exp re)))))))
(*.f64 (exp.f64 re) (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64)) (pow.f64 im #s(literal 3 binary64)) im))
(* im (+ (exp re) (* (pow im 2) (+ (* -1/6 (exp re)) (* (pow im 2) (+ (* -1/5040 (* (pow im 2) (exp re))) (* 1/120 (exp re))))))))
(*.f64 (*.f64 (exp.f64 re) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 im im) #s(literal 1/120 binary64)) (pow.f64 im #s(literal 4 binary64)) (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64)))) im)
im
(* im (+ 1 (* -1/6 (pow im 2))))
(fma.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal -1/6 binary64) im)
(* im (+ 1 (* (pow im 2) (- (* 1/120 (pow im 2)) 1/6))))
(fma.f64 (pow.f64 im #s(literal 3 binary64)) (-.f64 (*.f64 #s(literal 1/120 binary64) (*.f64 im im)) #s(literal 1/6 binary64)) im)
(* im (+ 1 (* (pow im 2) (- (* (pow im 2) (+ 1/120 (* -1/5040 (pow im 2)))) 1/6))))
(fma.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal -1/5040 binary64) (-.f64 (*.f64 #s(literal 1/120 binary64) (*.f64 im im)) #s(literal 1/6 binary64))) im)

rewrite140.0ms (2.2%)

Memory
7.6MiB live, 161.7MiB allocated; 28ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
059
089
1129
2409
32939
046219
Stop Event
iter limit
iter limit
node limit
iter limit
Counts
3 → 147
Calls
Call 1
Inputs
(*.f64 (exp.f64 re) (sin.f64 im))
(exp.f64 re)
(sin.f64 im)
Outputs
(*.f64 (/.f64 (*.f64 (+.f64 (pow.f64 (sinh.f64 re) #s(literal 3 binary64)) (pow.f64 (cosh.f64 re) #s(literal 3 binary64))) (sin.f64 im)) (-.f64 (pow.f64 (cosh.f64 re) #s(literal 4 binary64)) (pow.f64 (*.f64 (-.f64 (sinh.f64 re) (cosh.f64 re)) (sinh.f64 re)) #s(literal 2 binary64)))) (+.f64 #s(literal 1 binary64) (*.f64 (sinh.f64 re) (cosh.f64 re))))
(*.f64 (/.f64 (*.f64 (+.f64 (pow.f64 (sinh.f64 re) #s(literal 3 binary64)) (pow.f64 (cosh.f64 re) #s(literal 3 binary64))) (sin.f64 im)) (+.f64 (pow.f64 (*.f64 (-.f64 (sinh.f64 re) (cosh.f64 re)) (sinh.f64 re)) #s(literal 3 binary64)) (pow.f64 (cosh.f64 re) #s(literal 6 binary64)))) (fma.f64 (*.f64 (-.f64 (sinh.f64 re) (cosh.f64 re)) (sinh.f64 re)) (-.f64 (*.f64 (-.f64 (sinh.f64 re) (cosh.f64 re)) (sinh.f64 re)) (pow.f64 (cosh.f64 re) #s(literal 2 binary64))) (pow.f64 (cosh.f64 re) #s(literal 4 binary64))))
(*.f64 (/.f64 (sin.f64 im) (-.f64 (pow.f64 (cosh.f64 re) #s(literal 3 binary64)) (pow.f64 (sinh.f64 re) #s(literal 3 binary64)))) (fma.f64 (sinh.f64 re) (exp.f64 re) (pow.f64 (cosh.f64 re) #s(literal 2 binary64))))
(*.f64 (/.f64 (sin.f64 im) (-.f64 (*.f64 #s(literal 4 binary64) (cosh.f64 re)) (*.f64 #s(literal 4 binary64) (sinh.f64 re)))) #s(literal 4 binary64))
(*.f64 (/.f64 (sin.f64 im) (*.f64 #s(literal 2 binary64) (exp.f64 (neg.f64 re)))) #s(literal 2 binary64))
(*.f64 (/.f64 (sin.f64 im) #s(literal 1 binary64)) (exp.f64 re))
(*.f64 #s(literal 1 binary64) (*.f64 (sin.f64 im) (exp.f64 re)))
(*.f64 (+.f64 (pow.f64 (sinh.f64 re) #s(literal 3 binary64)) (pow.f64 (cosh.f64 re) #s(literal 3 binary64))) (/.f64 (sin.f64 im) (fma.f64 (cosh.f64 re) (exp.f64 (neg.f64 re)) (pow.f64 (sinh.f64 re) #s(literal 2 binary64)))))
(*.f64 (sin.f64 im) (exp.f64 re))
(*.f64 (exp.f64 re) (sin.f64 im))
(/.f64 (*.f64 (*.f64 (exp.f64 re) (-.f64 (sinh.f64 re) (cosh.f64 re))) (sin.f64 im)) (-.f64 (sinh.f64 re) (cosh.f64 re)))
(/.f64 (*.f64 (*.f64 #s(literal 2 binary64) (exp.f64 re)) (sin.f64 im)) #s(literal 2 binary64))
(/.f64 (*.f64 #s(literal -1 binary64) (sin.f64 im)) (/.f64 #s(literal -1 binary64) (exp.f64 re)))
(/.f64 (*.f64 (neg.f64 (+.f64 (pow.f64 (sinh.f64 re) #s(literal 3 binary64)) (pow.f64 (cosh.f64 re) #s(literal 3 binary64)))) (sin.f64 im)) (neg.f64 (fma.f64 (cosh.f64 re) (exp.f64 (neg.f64 re)) (pow.f64 (sinh.f64 re) #s(literal 2 binary64)))))
(/.f64 (*.f64 (fma.f64 #s(literal 4 binary64) (sinh.f64 re) (*.f64 #s(literal 4 binary64) (cosh.f64 re))) (sin.f64 im)) #s(literal 4 binary64))
(/.f64 (*.f64 (sin.f64 im) (*.f64 (exp.f64 re) (-.f64 (sinh.f64 re) (cosh.f64 re)))) (-.f64 (sinh.f64 re) (cosh.f64 re)))
(/.f64 (*.f64 (sin.f64 im) (*.f64 #s(literal 2 binary64) (exp.f64 re))) #s(literal 2 binary64))
(/.f64 (*.f64 (sin.f64 im) #s(literal -1 binary64)) (/.f64 #s(literal -1 binary64) (exp.f64 re)))
(/.f64 (*.f64 (sin.f64 im) (neg.f64 (+.f64 (pow.f64 (sinh.f64 re) #s(literal 3 binary64)) (pow.f64 (cosh.f64 re) #s(literal 3 binary64))))) (neg.f64 (fma.f64 (cosh.f64 re) (exp.f64 (neg.f64 re)) (pow.f64 (sinh.f64 re) #s(literal 2 binary64)))))
(/.f64 (*.f64 (sin.f64 im) (fma.f64 #s(literal 4 binary64) (sinh.f64 re) (*.f64 #s(literal 4 binary64) (cosh.f64 re)))) #s(literal 4 binary64))
(/.f64 (-.f64 (pow.f64 (*.f64 (sinh.f64 re) (sin.f64 im)) #s(literal 2 binary64)) (pow.f64 (*.f64 (cosh.f64 re) (sin.f64 im)) #s(literal 2 binary64))) (-.f64 (*.f64 (sinh.f64 re) (sin.f64 im)) (*.f64 (cosh.f64 re) (sin.f64 im))))
(/.f64 (-.f64 (pow.f64 (*.f64 (cosh.f64 re) (sin.f64 im)) #s(literal 3 binary64)) (pow.f64 (*.f64 (neg.f64 (sin.f64 im)) (sinh.f64 re)) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 (cosh.f64 re) (sin.f64 im)) #s(literal 2 binary64)) (+.f64 (pow.f64 (*.f64 (sinh.f64 re) (sin.f64 im)) #s(literal 2 binary64)) (*.f64 (*.f64 (cosh.f64 re) (sin.f64 im)) (*.f64 (neg.f64 (sin.f64 im)) (sinh.f64 re))))))
(/.f64 (fma.f64 (*.f64 (sin.f64 im) #s(literal 2 binary64)) (sinh.f64 re) (*.f64 (*.f64 (sin.f64 im) #s(literal 2 binary64)) (cosh.f64 re))) #s(literal 2 binary64))
(/.f64 (fma.f64 (*.f64 (sin.f64 im) #s(literal 2 binary64)) (cosh.f64 re) (*.f64 (*.f64 (sin.f64 im) #s(literal 2 binary64)) (sinh.f64 re))) #s(literal 2 binary64))
(/.f64 (neg.f64 (*.f64 (+.f64 (pow.f64 (sinh.f64 re) #s(literal 3 binary64)) (pow.f64 (cosh.f64 re) #s(literal 3 binary64))) (sin.f64 im))) (neg.f64 (fma.f64 (cosh.f64 re) (exp.f64 (neg.f64 re)) (pow.f64 (sinh.f64 re) #s(literal 2 binary64)))))
(/.f64 (neg.f64 (*.f64 (*.f64 (sin.f64 im) (exp.f64 re)) (*.f64 (sin.f64 im) (exp.f64 (neg.f64 re))))) (neg.f64 (*.f64 (sin.f64 im) (exp.f64 (neg.f64 re)))))
(/.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 (sinh.f64 re) (sin.f64 im)) #s(literal 3 binary64)) (pow.f64 (*.f64 (cosh.f64 re) (sin.f64 im)) #s(literal 3 binary64)))) (neg.f64 (fma.f64 (*.f64 (sinh.f64 re) (sin.f64 im)) (-.f64 (*.f64 (sinh.f64 re) (sin.f64 im)) (*.f64 (cosh.f64 re) (sin.f64 im))) (pow.f64 (*.f64 (cosh.f64 re) (sin.f64 im)) #s(literal 2 binary64)))))
(/.f64 (fma.f64 (*.f64 (*.f64 (sin.f64 im) #s(literal 2 binary64)) (sinh.f64 re)) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (*.f64 (*.f64 (sin.f64 im) #s(literal 2 binary64)) (cosh.f64 re)))) #s(literal 4 binary64))
(/.f64 (fma.f64 (*.f64 (*.f64 (sin.f64 im) #s(literal 2 binary64)) (cosh.f64 re)) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (*.f64 (*.f64 (sin.f64 im) #s(literal 2 binary64)) (sinh.f64 re)))) #s(literal 4 binary64))
(/.f64 (*.f64 (+.f64 (pow.f64 (sinh.f64 re) #s(literal 3 binary64)) (pow.f64 (cosh.f64 re) #s(literal 3 binary64))) (sin.f64 im)) (fma.f64 (cosh.f64 re) (exp.f64 (neg.f64 re)) (pow.f64 (sinh.f64 re) #s(literal 2 binary64))))
(/.f64 (neg.f64 (sin.f64 im)) (/.f64 #s(literal -1 binary64) (exp.f64 re)))
(/.f64 (*.f64 (*.f64 (sin.f64 im) (exp.f64 re)) (*.f64 (sin.f64 im) (exp.f64 (neg.f64 re)))) (*.f64 (sin.f64 im) (exp.f64 (neg.f64 re))))
(/.f64 (+.f64 (pow.f64 (*.f64 (sinh.f64 re) (sin.f64 im)) #s(literal 3 binary64)) (pow.f64 (*.f64 (cosh.f64 re) (sin.f64 im)) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 (sinh.f64 re) (sin.f64 im)) #s(literal 2 binary64)) (-.f64 (pow.f64 (*.f64 (cosh.f64 re) (sin.f64 im)) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (cosh.f64 re) (sin.f64 im)) (sinh.f64 re)) (sin.f64 im)))))
(/.f64 (+.f64 (pow.f64 (*.f64 (sinh.f64 re) (sin.f64 im)) #s(literal 3 binary64)) (pow.f64 (*.f64 (cosh.f64 re) (sin.f64 im)) #s(literal 3 binary64))) (fma.f64 (*.f64 (sinh.f64 re) (sin.f64 im)) (-.f64 (*.f64 (sinh.f64 re) (sin.f64 im)) (*.f64 (cosh.f64 re) (sin.f64 im))) (pow.f64 (*.f64 (cosh.f64 re) (sin.f64 im)) #s(literal 2 binary64))))
(/.f64 (sin.f64 im) (exp.f64 (neg.f64 re)))
(fma.f64 (/.f64 (pow.f64 (cosh.f64 re) #s(literal 3 binary64)) (fma.f64 (cosh.f64 re) (exp.f64 (neg.f64 re)) (pow.f64 (sinh.f64 re) #s(literal 2 binary64)))) (sin.f64 im) (*.f64 (/.f64 (pow.f64 (sinh.f64 re) #s(literal 3 binary64)) (fma.f64 (cosh.f64 re) (exp.f64 (neg.f64 re)) (pow.f64 (sinh.f64 re) #s(literal 2 binary64)))) (sin.f64 im)))
(fma.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 re)) (/.f64 (sin.f64 im) #s(literal 2 binary64)) (*.f64 (neg.f64 (neg.f64 (sin.f64 im))) (sinh.f64 re)))
(fma.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 re)) (/.f64 (sin.f64 im) #s(literal 2 binary64)) (*.f64 (sinh.f64 re) (sin.f64 im)))
(fma.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 re)) (/.f64 (sin.f64 im) #s(literal 2 binary64)) (*.f64 (cosh.f64 re) (sin.f64 im)))
(fma.f64 (sinh.f64 re) (sin.f64 im) (*.f64 (cosh.f64 re) (sin.f64 im)))
(fma.f64 (cosh.f64 re) (sin.f64 im) (*.f64 (neg.f64 (neg.f64 (sin.f64 im))) (sinh.f64 re)))
(fma.f64 (cosh.f64 re) (sin.f64 im) (*.f64 (sinh.f64 re) (sin.f64 im)))
(fma.f64 (sin.f64 im) (/.f64 (pow.f64 (cosh.f64 re) #s(literal 3 binary64)) (fma.f64 (cosh.f64 re) (exp.f64 (neg.f64 re)) (pow.f64 (sinh.f64 re) #s(literal 2 binary64)))) (*.f64 (sin.f64 im) (/.f64 (pow.f64 (sinh.f64 re) #s(literal 3 binary64)) (fma.f64 (cosh.f64 re) (exp.f64 (neg.f64 re)) (pow.f64 (sinh.f64 re) #s(literal 2 binary64))))))
(fma.f64 (sin.f64 im) (sinh.f64 re) (*.f64 (cosh.f64 re) (sin.f64 im)))
(fma.f64 (sin.f64 im) (cosh.f64 re) (*.f64 (neg.f64 (neg.f64 (sin.f64 im))) (sinh.f64 re)))
(fma.f64 (sin.f64 im) (cosh.f64 re) (*.f64 (sinh.f64 re) (sin.f64 im)))
(-.f64 (/.f64 (pow.f64 (*.f64 (cosh.f64 re) (sin.f64 im)) #s(literal 2 binary64)) (*.f64 (sin.f64 im) (exp.f64 (neg.f64 re)))) (/.f64 (pow.f64 (*.f64 (sinh.f64 re) (sin.f64 im)) #s(literal 2 binary64)) (*.f64 (sin.f64 im) (exp.f64 (neg.f64 re)))))
(-.f64 (*.f64 (sinh.f64 re) (sin.f64 im)) (*.f64 (neg.f64 (cosh.f64 re)) (sin.f64 im)))
(-.f64 (*.f64 (sinh.f64 re) (sin.f64 im)) (*.f64 (neg.f64 (sin.f64 im)) (cosh.f64 re)))
(-.f64 (*.f64 (cosh.f64 re) (sin.f64 im)) (*.f64 (neg.f64 (sin.f64 im)) (sinh.f64 re)))
(+.f64 (*.f64 (/.f64 (pow.f64 (cosh.f64 re) #s(literal 3 binary64)) (fma.f64 (cosh.f64 re) (exp.f64 (neg.f64 re)) (pow.f64 (sinh.f64 re) #s(literal 2 binary64)))) (sin.f64 im)) (*.f64 (/.f64 (pow.f64 (sinh.f64 re) #s(literal 3 binary64)) (fma.f64 (cosh.f64 re) (exp.f64 (neg.f64 re)) (pow.f64 (sinh.f64 re) #s(literal 2 binary64)))) (sin.f64 im)))
(+.f64 (*.f64 (sin.f64 im) (/.f64 (pow.f64 (cosh.f64 re) #s(literal 3 binary64)) (fma.f64 (cosh.f64 re) (exp.f64 (neg.f64 re)) (pow.f64 (sinh.f64 re) #s(literal 2 binary64))))) (*.f64 (sin.f64 im) (/.f64 (pow.f64 (sinh.f64 re) #s(literal 3 binary64)) (fma.f64 (cosh.f64 re) (exp.f64 (neg.f64 re)) (pow.f64 (sinh.f64 re) #s(literal 2 binary64))))))
(+.f64 (/.f64 (pow.f64 (*.f64 (cosh.f64 re) (sin.f64 im)) #s(literal 3 binary64)) (fma.f64 (*.f64 (sinh.f64 re) (sin.f64 im)) (-.f64 (*.f64 (sinh.f64 re) (sin.f64 im)) (*.f64 (cosh.f64 re) (sin.f64 im))) (pow.f64 (*.f64 (cosh.f64 re) (sin.f64 im)) #s(literal 2 binary64)))) (/.f64 (pow.f64 (*.f64 (sinh.f64 re) (sin.f64 im)) #s(literal 3 binary64)) (fma.f64 (*.f64 (sinh.f64 re) (sin.f64 im)) (-.f64 (*.f64 (sinh.f64 re) (sin.f64 im)) (*.f64 (cosh.f64 re) (sin.f64 im))) (pow.f64 (*.f64 (cosh.f64 re) (sin.f64 im)) #s(literal 2 binary64)))))
(+.f64 (*.f64 (sinh.f64 re) (sin.f64 im)) (*.f64 (cosh.f64 re) (sin.f64 im)))
(+.f64 (*.f64 (cosh.f64 re) (sin.f64 im)) (*.f64 (neg.f64 (neg.f64 (sin.f64 im))) (sinh.f64 re)))
(+.f64 (*.f64 (cosh.f64 re) (sin.f64 im)) (*.f64 (sinh.f64 re) (sin.f64 im)))
(*.f64 (/.f64 #s(literal 1 binary64) (-.f64 (pow.f64 (cosh.f64 re) #s(literal 3 binary64)) (pow.f64 (sinh.f64 re) #s(literal 3 binary64)))) (fma.f64 (sinh.f64 re) (exp.f64 re) (pow.f64 (cosh.f64 re) #s(literal 2 binary64))))
(*.f64 (/.f64 #s(literal 1 binary64) (-.f64 (*.f64 #s(literal 4 binary64) (cosh.f64 re)) (*.f64 #s(literal 4 binary64) (sinh.f64 re)))) #s(literal 4 binary64))
(*.f64 (/.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) (exp.f64 (neg.f64 re)))) #s(literal 2 binary64))
(*.f64 (/.f64 (+.f64 (pow.f64 (sinh.f64 re) #s(literal 3 binary64)) (pow.f64 (cosh.f64 re) #s(literal 3 binary64))) (-.f64 (pow.f64 (cosh.f64 re) #s(literal 4 binary64)) (pow.f64 (*.f64 (-.f64 (sinh.f64 re) (cosh.f64 re)) (sinh.f64 re)) #s(literal 2 binary64)))) (+.f64 #s(literal 1 binary64) (*.f64 (sinh.f64 re) (cosh.f64 re))))
(*.f64 (/.f64 (+.f64 (pow.f64 (sinh.f64 re) #s(literal 3 binary64)) (pow.f64 (cosh.f64 re) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 (-.f64 (sinh.f64 re) (cosh.f64 re)) (sinh.f64 re)) #s(literal 3 binary64)) (pow.f64 (cosh.f64 re) #s(literal 6 binary64)))) (fma.f64 (*.f64 (-.f64 (sinh.f64 re) (cosh.f64 re)) (sinh.f64 re)) (-.f64 (*.f64 (-.f64 (sinh.f64 re) (cosh.f64 re)) (sinh.f64 re)) (pow.f64 (cosh.f64 re) #s(literal 2 binary64))) (pow.f64 (cosh.f64 re) #s(literal 4 binary64))))
(*.f64 #s(literal 1 binary64) (exp.f64 re))
(*.f64 (fma.f64 (cosh.f64 re) (exp.f64 (neg.f64 re)) (pow.f64 (sinh.f64 re) #s(literal 2 binary64))) (/.f64 (exp.f64 re) (fma.f64 (cosh.f64 re) (exp.f64 (neg.f64 re)) (pow.f64 (sinh.f64 re) #s(literal 2 binary64)))))
(*.f64 (exp.f64 re) #s(literal 1 binary64))
(pow.f64 (exp.f64 (neg.f64 re)) #s(literal -1 binary64))
(/.f64 (/.f64 (fma.f64 #s(literal 4 binary64) (sinh.f64 re) (*.f64 #s(literal 4 binary64) (cosh.f64 re))) #s(literal 2 binary64)) #s(literal 2 binary64))
(/.f64 (-.f64 (*.f64 (/.f64 (pow.f64 (cosh.f64 re) #s(literal 2 binary64)) (exp.f64 (neg.f64 re))) (/.f64 (pow.f64 (cosh.f64 re) #s(literal 2 binary64)) (exp.f64 (neg.f64 re)))) (*.f64 (/.f64 (pow.f64 (sinh.f64 re) #s(literal 2 binary64)) (exp.f64 (neg.f64 re))) (/.f64 (pow.f64 (sinh.f64 re) #s(literal 2 binary64)) (exp.f64 (neg.f64 re))))) (fma.f64 (/.f64 (pow.f64 (cosh.f64 re) #s(literal 2 binary64)) #s(literal 1 binary64)) (exp.f64 re) (/.f64 (pow.f64 (sinh.f64 re) #s(literal 2 binary64)) (exp.f64 (neg.f64 re)))))
(/.f64 (-.f64 (*.f64 (/.f64 (pow.f64 (cosh.f64 re) #s(literal 3 binary64)) (fma.f64 (cosh.f64 re) (exp.f64 (neg.f64 re)) (pow.f64 (sinh.f64 re) #s(literal 2 binary64)))) (/.f64 (pow.f64 (cosh.f64 re) #s(literal 3 binary64)) (fma.f64 (cosh.f64 re) (exp.f64 (neg.f64 re)) (pow.f64 (sinh.f64 re) #s(literal 2 binary64))))) (*.f64 (/.f64 (pow.f64 (sinh.f64 re) #s(literal 3 binary64)) (fma.f64 (cosh.f64 re) (exp.f64 (neg.f64 re)) (pow.f64 (sinh.f64 re) #s(literal 2 binary64)))) (/.f64 (pow.f64 (sinh.f64 re) #s(literal 3 binary64)) (fma.f64 (cosh.f64 re) (exp.f64 (neg.f64 re)) (pow.f64 (sinh.f64 re) #s(literal 2 binary64)))))) (-.f64 (/.f64 (pow.f64 (cosh.f64 re) #s(literal 3 binary64)) (fma.f64 (cosh.f64 re) (exp.f64 (neg.f64 re)) (pow.f64 (sinh.f64 re) #s(literal 2 binary64)))) (/.f64 (pow.f64 (sinh.f64 re) #s(literal 3 binary64)) (fma.f64 (cosh.f64 re) (exp.f64 (neg.f64 re)) (pow.f64 (sinh.f64 re) #s(literal 2 binary64))))))
(/.f64 (-.f64 (pow.f64 (/.f64 (pow.f64 (cosh.f64 re) #s(literal 2 binary64)) (exp.f64 (neg.f64 re))) #s(literal 3 binary64)) (pow.f64 (/.f64 (pow.f64 (sinh.f64 re) #s(literal 2 binary64)) (exp.f64 (neg.f64 re))) #s(literal 3 binary64))) (fma.f64 (/.f64 (pow.f64 (cosh.f64 re) #s(literal 2 binary64)) (exp.f64 (neg.f64 re))) (/.f64 (pow.f64 (cosh.f64 re) #s(literal 2 binary64)) (exp.f64 (neg.f64 re))) (fma.f64 (/.f64 (pow.f64 (sinh.f64 re) #s(literal 2 binary64)) (exp.f64 (neg.f64 re))) (/.f64 (pow.f64 (sinh.f64 re) #s(literal 2 binary64)) (exp.f64 (neg.f64 re))) (*.f64 (/.f64 (pow.f64 (cosh.f64 re) #s(literal 2 binary64)) (exp.f64 (neg.f64 re))) (/.f64 (pow.f64 (sinh.f64 re) #s(literal 2 binary64)) (exp.f64 (neg.f64 re)))))))
(/.f64 (+.f64 (pow.f64 (/.f64 (pow.f64 (cosh.f64 re) #s(literal 3 binary64)) (fma.f64 (cosh.f64 re) (exp.f64 (neg.f64 re)) (pow.f64 (sinh.f64 re) #s(literal 2 binary64)))) #s(literal 3 binary64)) (pow.f64 (/.f64 (pow.f64 (sinh.f64 re) #s(literal 3 binary64)) (fma.f64 (cosh.f64 re) (exp.f64 (neg.f64 re)) (pow.f64 (sinh.f64 re) #s(literal 2 binary64)))) #s(literal 3 binary64))) (fma.f64 (/.f64 (pow.f64 (cosh.f64 re) #s(literal 3 binary64)) (fma.f64 (cosh.f64 re) (exp.f64 (neg.f64 re)) (pow.f64 (sinh.f64 re) #s(literal 2 binary64)))) (/.f64 (pow.f64 (cosh.f64 re) #s(literal 3 binary64)) (fma.f64 (cosh.f64 re) (exp.f64 (neg.f64 re)) (pow.f64 (sinh.f64 re) #s(literal 2 binary64)))) (-.f64 (*.f64 (/.f64 (pow.f64 (sinh.f64 re) #s(literal 3 binary64)) (fma.f64 (cosh.f64 re) (exp.f64 (neg.f64 re)) (pow.f64 (sinh.f64 re) #s(literal 2 binary64)))) (/.f64 (pow.f64 (sinh.f64 re) #s(literal 3 binary64)) (fma.f64 (cosh.f64 re) (exp.f64 (neg.f64 re)) (pow.f64 (sinh.f64 re) #s(literal 2 binary64))))) (*.f64 (/.f64 (pow.f64 (cosh.f64 re) #s(literal 3 binary64)) (fma.f64 (cosh.f64 re) (exp.f64 (neg.f64 re)) (pow.f64 (sinh.f64 re) #s(literal 2 binary64)))) (/.f64 (pow.f64 (sinh.f64 re) #s(literal 3 binary64)) (fma.f64 (cosh.f64 re) (exp.f64 (neg.f64 re)) (pow.f64 (sinh.f64 re) #s(literal 2 binary64))))))))
(/.f64 (fma.f64 #s(literal -2 binary64) (sinh.f64 re) (*.f64 #s(literal -2 binary64) (cosh.f64 re))) #s(literal -2 binary64))
(/.f64 (fma.f64 #s(literal -2 binary64) (cosh.f64 re) (*.f64 #s(literal -2 binary64) (sinh.f64 re))) #s(literal -2 binary64))
(/.f64 (neg.f64 (*.f64 (exp.f64 re) (-.f64 (sinh.f64 re) (cosh.f64 re)))) (neg.f64 (-.f64 (sinh.f64 re) (cosh.f64 re))))
(/.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (exp.f64 re))) #s(literal -2 binary64))
(/.f64 (neg.f64 (neg.f64 (+.f64 (pow.f64 (sinh.f64 re) #s(literal 3 binary64)) (pow.f64 (cosh.f64 re) #s(literal 3 binary64))))) (neg.f64 (neg.f64 (fma.f64 (cosh.f64 re) (exp.f64 (neg.f64 re)) (pow.f64 (sinh.f64 re) #s(literal 2 binary64))))))
(/.f64 (neg.f64 (fma.f64 #s(literal 4 binary64) (sinh.f64 re) (*.f64 #s(literal 4 binary64) (cosh.f64 re)))) #s(literal -4 binary64))
(/.f64 (-.f64 (*.f64 (pow.f64 (cosh.f64 re) #s(literal 2 binary64)) (exp.f64 (neg.f64 re))) (*.f64 (exp.f64 (neg.f64 re)) (pow.f64 (sinh.f64 re) #s(literal 2 binary64)))) (pow.f64 (exp.f64 (neg.f64 re)) #s(literal 2 binary64)))
(/.f64 (fma.f64 (pow.f64 (cosh.f64 re) #s(literal 3 binary64)) (fma.f64 (cosh.f64 re) (exp.f64 (neg.f64 re)) (pow.f64 (sinh.f64 re) #s(literal 2 binary64))) (*.f64 (fma.f64 (cosh.f64 re) (exp.f64 (neg.f64 re)) (pow.f64 (sinh.f64 re) #s(literal 2 binary64))) (pow.f64 (sinh.f64 re) #s(literal 3 binary64)))) (*.f64 (fma.f64 (cosh.f64 re) (exp.f64 (neg.f64 re)) (pow.f64 (sinh.f64 re) #s(literal 2 binary64))) (fma.f64 (cosh.f64 re) (exp.f64 (neg.f64 re)) (pow.f64 (sinh.f64 re) #s(literal 2 binary64)))))
(/.f64 (fma.f64 (*.f64 #s(literal -2 binary64) (sinh.f64 re)) #s(literal -2 binary64) (*.f64 #s(literal -2 binary64) (*.f64 #s(literal -2 binary64) (cosh.f64 re)))) #s(literal 4 binary64))
(/.f64 (fma.f64 (*.f64 #s(literal -2 binary64) (sinh.f64 re)) #s(literal 2 binary64) (*.f64 #s(literal -2 binary64) (*.f64 #s(literal 2 binary64) (cosh.f64 re)))) #s(literal -4 binary64))
(/.f64 (fma.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 re)) #s(literal -2 binary64) (*.f64 #s(literal 2 binary64) (*.f64 #s(literal -2 binary64) (cosh.f64 re)))) #s(literal -4 binary64))
(/.f64 (fma.f64 (*.f64 #s(literal -2 binary64) (cosh.f64 re)) #s(literal -2 binary64) (*.f64 #s(literal -2 binary64) (*.f64 #s(literal -2 binary64) (sinh.f64 re)))) #s(literal 4 binary64))
(/.f64 (fma.f64 (*.f64 #s(literal -2 binary64) (cosh.f64 re)) #s(literal 2 binary64) (*.f64 #s(literal -2 binary64) (*.f64 #s(literal 2 binary64) (sinh.f64 re)))) #s(literal -4 binary64))
(/.f64 (fma.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 re)) #s(literal -2 binary64) (*.f64 #s(literal 2 binary64) (*.f64 #s(literal -2 binary64) (sinh.f64 re)))) #s(literal -4 binary64))
(/.f64 (*.f64 (cosh.f64 (+.f64 re re)) #s(literal 1 binary64)) (*.f64 (cosh.f64 (+.f64 re re)) (exp.f64 (neg.f64 re))))
(/.f64 (*.f64 (exp.f64 re) (-.f64 (sinh.f64 re) (cosh.f64 re))) (-.f64 (sinh.f64 re) (cosh.f64 re)))
(/.f64 (-.f64 (pow.f64 (cosh.f64 re) #s(literal 6 binary64)) (pow.f64 (sinh.f64 re) #s(literal 6 binary64))) (*.f64 (fma.f64 (pow.f64 (sinh.f64 re) #s(literal 2 binary64)) (cosh.f64 (+.f64 re re)) (pow.f64 (cosh.f64 re) #s(literal 4 binary64))) (exp.f64 (neg.f64 re))))
(/.f64 (-.f64 (pow.f64 (cosh.f64 re) #s(literal 6 binary64)) (pow.f64 (sinh.f64 re) #s(literal 6 binary64))) (*.f64 (-.f64 (pow.f64 (cosh.f64 re) #s(literal 3 binary64)) (pow.f64 (sinh.f64 re) #s(literal 3 binary64))) (fma.f64 (cosh.f64 re) (exp.f64 (neg.f64 re)) (pow.f64 (sinh.f64 re) #s(literal 2 binary64)))))
(/.f64 (+.f64 (pow.f64 (sinh.f64 re) #s(literal 9 binary64)) (pow.f64 (cosh.f64 re) #s(literal 9 binary64))) (*.f64 (-.f64 (+.f64 (pow.f64 (cosh.f64 re) #s(literal 6 binary64)) (pow.f64 (sinh.f64 re) #s(literal 6 binary64))) (pow.f64 (*.f64 (sinh.f64 re) (cosh.f64 re)) #s(literal 3 binary64))) (fma.f64 (cosh.f64 re) (exp.f64 (neg.f64 re)) (pow.f64 (sinh.f64 re) #s(literal 2 binary64)))))
(/.f64 (*.f64 #s(literal 2 binary64) (exp.f64 re)) #s(literal 2 binary64))
(/.f64 #s(literal -1 binary64) (/.f64 #s(literal -1 binary64) (exp.f64 re)))
(/.f64 (neg.f64 (+.f64 (pow.f64 (sinh.f64 re) #s(literal 3 binary64)) (pow.f64 (cosh.f64 re) #s(literal 3 binary64)))) (neg.f64 (fma.f64 (cosh.f64 re) (exp.f64 (neg.f64 re)) (pow.f64 (sinh.f64 re) #s(literal 2 binary64)))))
(/.f64 (fma.f64 #s(literal 4 binary64) (sinh.f64 re) (*.f64 #s(literal 4 binary64) (cosh.f64 re))) #s(literal 4 binary64))
(/.f64 #s(literal 1 binary64) (neg.f64 (/.f64 #s(literal -1 binary64) (exp.f64 re))))
(/.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 re)))
(/.f64 (+.f64 (pow.f64 (sinh.f64 re) #s(literal 3 binary64)) (pow.f64 (cosh.f64 re) #s(literal 3 binary64))) (fma.f64 (cosh.f64 re) (exp.f64 (neg.f64 re)) (pow.f64 (sinh.f64 re) #s(literal 2 binary64))))
(neg.f64 (/.f64 #s(literal -1 binary64) (exp.f64 (neg.f64 re))))
(neg.f64 (/.f64 (neg.f64 (+.f64 (pow.f64 (sinh.f64 re) #s(literal 3 binary64)) (pow.f64 (cosh.f64 re) #s(literal 3 binary64)))) (fma.f64 (cosh.f64 re) (exp.f64 (neg.f64 re)) (pow.f64 (sinh.f64 re) #s(literal 2 binary64)))))
(neg.f64 (/.f64 #s(literal 1 binary64) (/.f64 #s(literal -1 binary64) (exp.f64 re))))
(neg.f64 (/.f64 (+.f64 (pow.f64 (sinh.f64 re) #s(literal 3 binary64)) (pow.f64 (cosh.f64 re) #s(literal 3 binary64))) (neg.f64 (fma.f64 (cosh.f64 re) (exp.f64 (neg.f64 re)) (pow.f64 (sinh.f64 re) #s(literal 2 binary64))))))
(fma.f64 (/.f64 (pow.f64 (cosh.f64 re) #s(literal 3 binary64)) (-.f64 (pow.f64 (cosh.f64 re) #s(literal 4 binary64)) (pow.f64 (*.f64 (-.f64 (sinh.f64 re) (cosh.f64 re)) (sinh.f64 re)) #s(literal 2 binary64)))) (+.f64 #s(literal 1 binary64) (*.f64 (sinh.f64 re) (cosh.f64 re))) (/.f64 (pow.f64 (sinh.f64 re) #s(literal 3 binary64)) (fma.f64 (cosh.f64 re) (exp.f64 (neg.f64 re)) (pow.f64 (sinh.f64 re) #s(literal 2 binary64)))))
(fma.f64 (/.f64 (pow.f64 (cosh.f64 re) #s(literal 3 binary64)) (+.f64 (pow.f64 (*.f64 (-.f64 (sinh.f64 re) (cosh.f64 re)) (sinh.f64 re)) #s(literal 3 binary64)) (pow.f64 (cosh.f64 re) #s(literal 6 binary64)))) (fma.f64 (*.f64 (-.f64 (sinh.f64 re) (cosh.f64 re)) (sinh.f64 re)) (-.f64 (*.f64 (-.f64 (sinh.f64 re) (cosh.f64 re)) (sinh.f64 re)) (pow.f64 (cosh.f64 re) #s(literal 2 binary64))) (pow.f64 (cosh.f64 re) #s(literal 4 binary64))) (/.f64 (pow.f64 (sinh.f64 re) #s(literal 3 binary64)) (fma.f64 (cosh.f64 re) (exp.f64 (neg.f64 re)) (pow.f64 (sinh.f64 re) #s(literal 2 binary64)))))
(fma.f64 (/.f64 (pow.f64 (cosh.f64 re) #s(literal 2 binary64)) (-.f64 (pow.f64 (cosh.f64 re) #s(literal 3 binary64)) (pow.f64 (sinh.f64 re) #s(literal 3 binary64)))) (fma.f64 (sinh.f64 re) (exp.f64 re) (pow.f64 (cosh.f64 re) #s(literal 2 binary64))) (/.f64 (neg.f64 (pow.f64 (sinh.f64 re) #s(literal 2 binary64))) (exp.f64 (neg.f64 re))))
(fma.f64 (/.f64 (pow.f64 (cosh.f64 re) #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal 4 binary64) (cosh.f64 re)) (*.f64 #s(literal 4 binary64) (sinh.f64 re)))) #s(literal 4 binary64) (/.f64 (neg.f64 (pow.f64 (sinh.f64 re) #s(literal 2 binary64))) (exp.f64 (neg.f64 re))))
(fma.f64 (/.f64 (pow.f64 (cosh.f64 re) #s(literal 2 binary64)) (*.f64 #s(literal 2 binary64) (exp.f64 (neg.f64 re)))) #s(literal 2 binary64) (/.f64 (neg.f64 (pow.f64 (sinh.f64 re) #s(literal 2 binary64))) (exp.f64 (neg.f64 re))))
(fma.f64 (/.f64 (pow.f64 (cosh.f64 re) #s(literal 2 binary64)) #s(literal 1 binary64)) (exp.f64 re) (/.f64 (neg.f64 (pow.f64 (sinh.f64 re) #s(literal 2 binary64))) (exp.f64 (neg.f64 re))))
(fma.f64 (/.f64 (pow.f64 (sinh.f64 re) #s(literal 3 binary64)) (-.f64 (pow.f64 (cosh.f64 re) #s(literal 4 binary64)) (pow.f64 (*.f64 (-.f64 (sinh.f64 re) (cosh.f64 re)) (sinh.f64 re)) #s(literal 2 binary64)))) (+.f64 #s(literal 1 binary64) (*.f64 (sinh.f64 re) (cosh.f64 re))) (/.f64 (pow.f64 (cosh.f64 re) #s(literal 3 binary64)) (fma.f64 (cosh.f64 re) (exp.f64 (neg.f64 re)) (pow.f64 (sinh.f64 re) #s(literal 2 binary64)))))
(fma.f64 (/.f64 (pow.f64 (sinh.f64 re) #s(literal 3 binary64)) (+.f64 (pow.f64 (*.f64 (-.f64 (sinh.f64 re) (cosh.f64 re)) (sinh.f64 re)) #s(literal 3 binary64)) (pow.f64 (cosh.f64 re) #s(literal 6 binary64)))) (fma.f64 (*.f64 (-.f64 (sinh.f64 re) (cosh.f64 re)) (sinh.f64 re)) (-.f64 (*.f64 (-.f64 (sinh.f64 re) (cosh.f64 re)) (sinh.f64 re)) (pow.f64 (cosh.f64 re) #s(literal 2 binary64))) (pow.f64 (cosh.f64 re) #s(literal 4 binary64))) (/.f64 (pow.f64 (cosh.f64 re) #s(literal 3 binary64)) (fma.f64 (cosh.f64 re) (exp.f64 (neg.f64 re)) (pow.f64 (sinh.f64 re) #s(literal 2 binary64)))))
(fma.f64 (pow.f64 (sinh.f64 re) #s(literal 3/2 binary64)) (/.f64 (pow.f64 (sinh.f64 re) #s(literal 3/2 binary64)) (fma.f64 (cosh.f64 re) (exp.f64 (neg.f64 re)) (pow.f64 (sinh.f64 re) #s(literal 2 binary64)))) (/.f64 (pow.f64 (cosh.f64 re) #s(literal 3 binary64)) (fma.f64 (cosh.f64 re) (exp.f64 (neg.f64 re)) (pow.f64 (sinh.f64 re) #s(literal 2 binary64)))))
(fma.f64 (pow.f64 (cosh.f64 re) #s(literal 3/2 binary64)) (/.f64 (pow.f64 (cosh.f64 re) #s(literal 3/2 binary64)) (fma.f64 (cosh.f64 re) (exp.f64 (neg.f64 re)) (pow.f64 (sinh.f64 re) #s(literal 2 binary64)))) (/.f64 (pow.f64 (sinh.f64 re) #s(literal 3 binary64)) (fma.f64 (cosh.f64 re) (exp.f64 (neg.f64 re)) (pow.f64 (sinh.f64 re) #s(literal 2 binary64)))))
(fma.f64 (neg.f64 (cosh.f64 re)) (/.f64 (neg.f64 (cosh.f64 re)) (exp.f64 (neg.f64 re))) (/.f64 (neg.f64 (pow.f64 (sinh.f64 re) #s(literal 2 binary64))) (exp.f64 (neg.f64 re))))
(fma.f64 (fabs.f64 (cosh.f64 re)) (/.f64 (fabs.f64 (cosh.f64 re)) (exp.f64 (neg.f64 re))) (/.f64 (neg.f64 (pow.f64 (sinh.f64 re) #s(literal 2 binary64))) (exp.f64 (neg.f64 re))))
(fma.f64 (pow.f64 (sinh.f64 re) #s(literal 2 binary64)) (/.f64 (sinh.f64 re) (fma.f64 (cosh.f64 re) (exp.f64 (neg.f64 re)) (pow.f64 (sinh.f64 re) #s(literal 2 binary64)))) (/.f64 (pow.f64 (cosh.f64 re) #s(literal 3 binary64)) (fma.f64 (cosh.f64 re) (exp.f64 (neg.f64 re)) (pow.f64 (sinh.f64 re) #s(literal 2 binary64)))))
(fma.f64 (pow.f64 (cosh.f64 re) #s(literal 2 binary64)) (/.f64 (cosh.f64 re) (fma.f64 (cosh.f64 re) (exp.f64 (neg.f64 re)) (pow.f64 (sinh.f64 re) #s(literal 2 binary64)))) (/.f64 (pow.f64 (sinh.f64 re) #s(literal 3 binary64)) (fma.f64 (cosh.f64 re) (exp.f64 (neg.f64 re)) (pow.f64 (sinh.f64 re) #s(literal 2 binary64)))))
(fma.f64 #s(literal 2 binary64) (/.f64 (sinh.f64 re) #s(literal 2 binary64)) (cosh.f64 re))
(fma.f64 #s(literal 2 binary64) (/.f64 (cosh.f64 re) #s(literal 2 binary64)) (sinh.f64 re))
(fma.f64 (sinh.f64 re) (/.f64 (pow.f64 (sinh.f64 re) #s(literal 2 binary64)) (fma.f64 (cosh.f64 re) (exp.f64 (neg.f64 re)) (pow.f64 (sinh.f64 re) #s(literal 2 binary64)))) (/.f64 (pow.f64 (cosh.f64 re) #s(literal 3 binary64)) (fma.f64 (cosh.f64 re) (exp.f64 (neg.f64 re)) (pow.f64 (sinh.f64 re) #s(literal 2 binary64)))))
(fma.f64 (cosh.f64 re) (/.f64 (pow.f64 (cosh.f64 re) #s(literal 2 binary64)) (fma.f64 (cosh.f64 re) (exp.f64 (neg.f64 re)) (pow.f64 (sinh.f64 re) #s(literal 2 binary64)))) (/.f64 (pow.f64 (sinh.f64 re) #s(literal 3 binary64)) (fma.f64 (cosh.f64 re) (exp.f64 (neg.f64 re)) (pow.f64 (sinh.f64 re) #s(literal 2 binary64)))))
(fma.f64 (cosh.f64 re) (/.f64 (cosh.f64 re) (exp.f64 (neg.f64 re))) (/.f64 (neg.f64 (pow.f64 (sinh.f64 re) #s(literal 2 binary64))) (exp.f64 (neg.f64 re))))
(-.f64 (+.f64 (cosh.f64 re) (/.f64 (exp.f64 re) #s(literal 2 binary64))) (/.f64 (exp.f64 (neg.f64 re)) #s(literal 2 binary64)))
(-.f64 (/.f64 (pow.f64 (sinh.f64 re) #s(literal 2 binary64)) (-.f64 (sinh.f64 re) (cosh.f64 re))) (/.f64 (pow.f64 (cosh.f64 re) #s(literal 2 binary64)) (-.f64 (sinh.f64 re) (cosh.f64 re))))
(-.f64 (/.f64 (exp.f64 re) #s(literal 2 binary64)) (-.f64 (/.f64 (exp.f64 (neg.f64 re)) #s(literal 2 binary64)) (cosh.f64 re)))
(-.f64 (/.f64 (pow.f64 (cosh.f64 re) #s(literal 2 binary64)) (exp.f64 (neg.f64 re))) (/.f64 (pow.f64 (sinh.f64 re) #s(literal 2 binary64)) (exp.f64 (neg.f64 re))))
(-.f64 (cosh.f64 re) (sinh.f64 (neg.f64 re)))
(exp.f64 re)
(+.f64 (+.f64 (sinh.f64 re) (/.f64 (exp.f64 re) #s(literal 2 binary64))) (/.f64 (exp.f64 (neg.f64 re)) #s(literal 2 binary64)))
(+.f64 (/.f64 (*.f64 #s(literal 4 binary64) (sinh.f64 re)) #s(literal 4 binary64)) (/.f64 (*.f64 #s(literal 4 binary64) (cosh.f64 re)) #s(literal 4 binary64)))
(+.f64 (/.f64 (*.f64 #s(literal 4 binary64) (cosh.f64 re)) #s(literal 4 binary64)) (/.f64 (*.f64 #s(literal 4 binary64) (sinh.f64 re)) #s(literal 4 binary64)))
(+.f64 (/.f64 (pow.f64 (sinh.f64 re) #s(literal 3 binary64)) (fma.f64 (cosh.f64 re) (exp.f64 (neg.f64 re)) (pow.f64 (sinh.f64 re) #s(literal 2 binary64)))) (/.f64 (pow.f64 (cosh.f64 re) #s(literal 3 binary64)) (fma.f64 (cosh.f64 re) (exp.f64 (neg.f64 re)) (pow.f64 (sinh.f64 re) #s(literal 2 binary64)))))
(+.f64 (/.f64 (pow.f64 (cosh.f64 re) #s(literal 3 binary64)) (fma.f64 (cosh.f64 re) (exp.f64 (neg.f64 re)) (pow.f64 (sinh.f64 re) #s(literal 2 binary64)))) (/.f64 (pow.f64 (sinh.f64 re) #s(literal 3 binary64)) (fma.f64 (cosh.f64 re) (exp.f64 (neg.f64 re)) (pow.f64 (sinh.f64 re) #s(literal 2 binary64)))))
(+.f64 (/.f64 (exp.f64 re) #s(literal 2 binary64)) (+.f64 (/.f64 (exp.f64 (neg.f64 re)) #s(literal 2 binary64)) (sinh.f64 re)))
(+.f64 (/.f64 (pow.f64 (cosh.f64 re) #s(literal 2 binary64)) (exp.f64 (neg.f64 re))) (/.f64 (neg.f64 (pow.f64 (sinh.f64 re) #s(literal 2 binary64))) (exp.f64 (neg.f64 re))))
(+.f64 (sinh.f64 re) (cosh.f64 re))
(+.f64 (cosh.f64 re) (sinh.f64 re))
(*.f64 #s(literal 1 binary64) (sin.f64 im))
(*.f64 (*.f64 (sin.f64 im) (exp.f64 re)) (exp.f64 (neg.f64 re)))
(*.f64 (sin.f64 im) #s(literal 1 binary64))
(*.f64 (exp.f64 re) (*.f64 (exp.f64 (neg.f64 re)) (sin.f64 im)))
(/.f64 (*.f64 (*.f64 (cosh.f64 (+.f64 re re)) #s(literal 1 binary64)) (sin.f64 im)) (cosh.f64 (+.f64 re re)))
(/.f64 (*.f64 (-.f64 (pow.f64 (cosh.f64 re) #s(literal 6 binary64)) (pow.f64 (sinh.f64 re) #s(literal 6 binary64))) (sin.f64 im)) (fma.f64 (pow.f64 (sinh.f64 re) #s(literal 2 binary64)) (cosh.f64 (+.f64 re re)) (pow.f64 (cosh.f64 re) #s(literal 4 binary64))))
(/.f64 (*.f64 (sin.f64 im) (*.f64 (cosh.f64 (+.f64 re re)) #s(literal 1 binary64))) (cosh.f64 (+.f64 re re)))
(/.f64 (*.f64 (sin.f64 im) (-.f64 (pow.f64 (cosh.f64 re) #s(literal 6 binary64)) (pow.f64 (sinh.f64 re) #s(literal 6 binary64)))) (fma.f64 (pow.f64 (sinh.f64 re) #s(literal 2 binary64)) (cosh.f64 (+.f64 re re)) (pow.f64 (cosh.f64 re) #s(literal 4 binary64))))
(fma.f64 (pow.f64 (cosh.f64 re) #s(literal 2 binary64)) (sin.f64 im) (*.f64 (neg.f64 (pow.f64 (sinh.f64 re) #s(literal 2 binary64))) (sin.f64 im)))
(fma.f64 (sin.f64 im) (pow.f64 (cosh.f64 re) #s(literal 2 binary64)) (*.f64 (sin.f64 im) (neg.f64 (pow.f64 (sinh.f64 re) #s(literal 2 binary64)))))
(sin.f64 im)
(+.f64 (*.f64 (pow.f64 (cosh.f64 re) #s(literal 2 binary64)) (sin.f64 im)) (*.f64 (neg.f64 (pow.f64 (sinh.f64 re) #s(literal 2 binary64))) (sin.f64 im)))
(+.f64 (*.f64 (sin.f64 im) (pow.f64 (cosh.f64 re) #s(literal 2 binary64))) (*.f64 (sin.f64 im) (neg.f64 (pow.f64 (sinh.f64 re) #s(literal 2 binary64)))))

eval18.0ms (0.3%)

Memory
-4.6MiB live, 41.0MiB allocated; 5ms collecting garbage
Compiler

Compiled 3 626 to 539 computations (85.1% saved)

prune7.0ms (0.1%)

Memory
22.7MiB live, 22.7MiB allocated; 0ms collecting garbage
Pruning

8 alts after pruning (7 fresh and 1 done)

PrunedKeptTotal
New1577164
Fresh000
Picked011
Done000
Total1578165
Accuracy
100.0%
Counts
165 → 8
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(/.f64 (sin.f64 im) (exp.f64 (neg.f64 re)))
100.0%
(*.f64 (exp.f64 re) (sin.f64 im))
65.5%
(*.f64 #s(approx (exp re) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re #s(literal 1 binary64))) (sin.f64 im))
61.8%
(*.f64 #s(approx (exp re) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64))) (sin.f64 im))
47.1%
(*.f64 #s(approx (exp re) (+.f64 #s(literal 1 binary64) re)) (sin.f64 im))
47.1%
#s(approx (* (exp re) (sin im)) (fma.f64 (sin.f64 im) re (sin.f64 im)))
73.4%
#s(approx (* (exp re) (sin im)) (*.f64 (exp.f64 re) im))
46.7%
#s(approx (* (exp re) (sin im)) (sin.f64 im))
Compiler

Compiled 153 to 123 computations (19.6% saved)

simplify283.0ms (4.5%)

Memory
-33.2MiB live, 333.3MiB allocated; 111ms collecting garbage
Localize:

Found 17 expressions of interest:

NewMetricScoreProgram
cost-diff0
(fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64))
cost-diff0
(fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64))
cost-diff0
#s(approx (exp re) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64)))
cost-diff0
(*.f64 #s(approx (exp re) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64))) (sin.f64 im))
cost-diff0
(sin.f64 im)
cost-diff0
(+.f64 #s(literal 1 binary64) re)
cost-diff0
#s(approx (exp re) (+.f64 #s(literal 1 binary64) re))
cost-diff0
(*.f64 #s(approx (exp re) (+.f64 #s(literal 1 binary64) re)) (sin.f64 im))
cost-diff0
(exp.f64 re)
cost-diff0
(*.f64 (exp.f64 re) im)
cost-diff0
#s(approx (* (exp re) (sin im)) (*.f64 (exp.f64 re) im))
cost-diff0
(sin.f64 im)
cost-diff0
#s(approx (* (exp re) (sin im)) (sin.f64 im))
cost-diff0
(neg.f64 re)
cost-diff0
(exp.f64 (neg.f64 re))
cost-diff0
(sin.f64 im)
cost-diff1
(/.f64 (sin.f64 im) (exp.f64 (neg.f64 re)))
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
022107
036107
155107
2106106
3326106
41394106
09185106
Stop Event
iter limit
node limit
iter limit
Calls
Call 1
Inputs
(/.f64 (sin.f64 im) (exp.f64 (neg.f64 re)))
(sin.f64 im)
im
(exp.f64 (neg.f64 re))
(neg.f64 re)
re
#s(approx (* (exp re) (sin im)) (sin.f64 im))
(sin.f64 im)
im
#s(approx (* (exp re) (sin im)) (*.f64 (exp.f64 re) im))
(*.f64 (exp.f64 re) im)
(exp.f64 re)
re
im
(*.f64 #s(approx (exp re) (+.f64 #s(literal 1 binary64) re)) (sin.f64 im))
#s(approx (exp re) (+.f64 #s(literal 1 binary64) re))
(+.f64 #s(literal 1 binary64) re)
#s(literal 1 binary64)
re
(sin.f64 im)
im
(*.f64 #s(approx (exp re) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64))) (sin.f64 im))
#s(approx (exp re) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64)))
(fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64))
(fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64))
#s(literal 1/2 binary64)
re
#s(literal 1 binary64)
(sin.f64 im)
im
Outputs
(/.f64 (sin.f64 im) (exp.f64 (neg.f64 re)))
(*.f64 (exp.f64 re) (sin.f64 im))
(sin.f64 im)
im
(exp.f64 (neg.f64 re))
(neg.f64 re)
re
#s(approx (* (exp re) (sin im)) (sin.f64 im))
(sin.f64 im)
im
#s(approx (* (exp re) (sin im)) (*.f64 (exp.f64 re) im))
(*.f64 (exp.f64 re) im)
(exp.f64 re)
re
im
(*.f64 #s(approx (exp re) (+.f64 #s(literal 1 binary64) re)) (sin.f64 im))
(*.f64 #s(approx (exp re) (-.f64 re #s(literal -1 binary64))) (sin.f64 im))
#s(approx (exp re) (+.f64 #s(literal 1 binary64) re))
#s(approx (exp re) (-.f64 re #s(literal -1 binary64)))
(+.f64 #s(literal 1 binary64) re)
(-.f64 re #s(literal -1 binary64))
#s(literal 1 binary64)
re
(sin.f64 im)
im
(*.f64 #s(approx (exp re) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64))) (sin.f64 im))
#s(approx (exp re) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64)))
(fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64))
(fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64))
#s(literal 1/2 binary64)
re
#s(literal 1 binary64)
(sin.f64 im)
im

localize99.0ms (1.6%)

Memory
-26.8MiB live, 110.3MiB allocated; 26ms collecting garbage
Localize:

Found 17 expressions of interest:

NewMetricScoreProgram
accuracy0.0
(fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64))
accuracy0.0
(sin.f64 im)
accuracy0.01171875
(*.f64 #s(approx (exp re) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64))) (sin.f64 im))
accuracy16.59550329094035
#s(approx (exp re) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64)))
accuracy0.0
(+.f64 #s(literal 1 binary64) re)
accuracy0.0
(sin.f64 im)
accuracy0.01171875
(*.f64 #s(approx (exp re) (+.f64 #s(literal 1 binary64) re)) (sin.f64 im))
accuracy16.64492910500587
#s(approx (exp re) (+.f64 #s(literal 1 binary64) re))
accuracy0.0
(exp.f64 re)
accuracy0.0078125
(*.f64 (exp.f64 re) im)
accuracy12.259239058597037
#s(approx (* (exp re) (sin im)) (*.f64 (exp.f64 re) im))
accuracy0.0
(sin.f64 im)
accuracy16.55776340542581
#s(approx (* (exp re) (sin im)) (sin.f64 im))
accuracy0.0
(sin.f64 im)
accuracy0.0
(neg.f64 re)
accuracy0.0
(exp.f64 (neg.f64 re))
accuracy0.00390625
(/.f64 (sin.f64 im) (exp.f64 (neg.f64 re)))
Samples
68.0ms184×0valid
10.0ms72×0exit
Compiler

Compiled 80 to 18 computations (77.5% saved)

Precisions
Click to see histograms. Total time spent on operations: 61.0ms
ival-exp: 42.0ms (69% of total)
ival-mult: 6.0ms (9.9% of total)
ival-sin: 6.0ms (9.9% of total)
ival-add: 4.0ms (6.6% of total)
ival-div: 1.0ms (1.6% of total)
ival-neg: 1.0ms (1.6% of total)
adjust: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)

series10.0ms (0.2%)

Memory
21.5MiB live, 21.5MiB allocated; 0ms collecting garbage
Counts
15 → 43
Calls
Call 1
Inputs
(/.f64 (sin.f64 im) (exp.f64 (neg.f64 re)))
(sin.f64 im)
(exp.f64 (neg.f64 re))
(neg.f64 re)
#s(approx (* (exp re) (sin im)) (sin.f64 im))
#s(approx (* (exp re) (sin im)) (*.f64 (exp.f64 re) im))
(*.f64 (exp.f64 re) im)
(exp.f64 re)
(*.f64 #s(approx (exp re) (+.f64 #s(literal 1 binary64) re)) (sin.f64 im))
#s(approx (exp re) (+.f64 #s(literal 1 binary64) re))
(+.f64 #s(literal 1 binary64) re)
(*.f64 #s(approx (exp re) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64))) (sin.f64 im))
#s(approx (exp re) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64)))
(fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64))
(fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64))
Outputs
(sin im)
(+ (sin im) (* re (sin im)))
(+ (sin im) (* re (- (* -1 (* re (+ (* -1 (sin im)) (* 1/2 (sin im))))) (* -1 (sin im)))))
(+ (sin im) (* re (- (* re (- (* -1 (* re (+ (sin im) (+ (* -1 (sin im)) (* -1/6 (sin im)))))) (+ (* -1 (sin im)) (* 1/2 (sin im))))) (* -1 (sin im)))))
1
(+ 1 (* -1 re))
(+ 1 (* re (- (* 1/2 re) 1)))
(+ 1 (* re (- (* re (+ 1/2 (* -1/6 re))) 1)))
(* -1 re)
(+ (sin im) (* re (+ (sin im) (* 1/2 (* re (sin im))))))
(+ (sin im) (* re (+ (sin im) (* re (+ (* 1/6 (* re (sin im))) (* 1/2 (sin im)))))))
im
(+ im (* im re))
(+ im (* re (+ im (* 1/2 (* im re)))))
(+ im (* re (+ im (* re (+ (* 1/6 (* im re)) (* 1/2 im))))))
(+ 1 re)
(+ 1 (* re (+ 1 (* 1/2 re))))
(+ 1 (* re (+ 1 (* re (+ 1/2 (* 1/6 re))))))
(+ 1 (* 1/2 re))
(/ (sin im) (exp (neg re)))
(exp (neg re))
(* (exp re) (sin im))
(* im (exp re))
(exp re)
re
(* re (+ 1 (/ 1 re)))
(* 1/2 (pow re 2))
(* (pow re 2) (+ 1/2 (/ 1 re)))
(* (pow re 2) (+ 1/2 (+ (/ 1 re) (/ 1 (pow re 2)))))
(* 1/2 re)
(* re (+ 1/2 (/ 1 re)))
(/ (sin im) (exp (* -1 re)))
(exp (* -1 re))
(/ im (exp (neg re)))
(* im (+ (* -1/6 (/ (pow im 2) (exp (neg re)))) (/ 1 (exp (neg re)))))
(* im (+ (* (pow im 2) (- (* 1/120 (/ (pow im 2) (exp (neg re)))) (* 1/6 (/ 1 (exp (neg re)))))) (/ 1 (exp (neg re)))))
(* im (+ (* (pow im 2) (- (* (pow im 2) (+ (* -1/5040 (/ (pow im 2) (exp (neg re)))) (* 1/120 (/ 1 (exp (neg re)))))) (* 1/6 (/ 1 (exp (neg re)))))) (/ 1 (exp (neg re)))))
(* im (+ 1 (* -1/6 (pow im 2))))
(* im (+ 1 (* (pow im 2) (- (* 1/120 (pow im 2)) 1/6))))
(* im (+ 1 (* (pow im 2) (- (* (pow im 2) (+ 1/120 (* -1/5040 (pow im 2)))) 1/6))))
(* im (+ (exp re) (* -1/6 (* (pow im 2) (exp re)))))
(* im (+ (exp re) (* (pow im 2) (+ (* -1/6 (exp re)) (* 1/120 (* (pow im 2) (exp re)))))))
(* im (+ (exp re) (* (pow im 2) (+ (* -1/6 (exp re)) (* (pow im 2) (+ (* -1/5040 (* (pow im 2) (exp re))) (* 1/120 (exp re))))))))
Calls

6 calls:

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

simplify196.0ms (3.1%)

Memory
5.1MiB live, 187.7MiB allocated; 48ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0150452
1555405
22131371
08460322
Stop Event
iter limit
node limit
Counts
43 → 41
Calls
Call 1
Inputs
(sin im)
(+ (sin im) (* re (sin im)))
(+ (sin im) (* re (- (* -1 (* re (+ (* -1 (sin im)) (* 1/2 (sin im))))) (* -1 (sin im)))))
(+ (sin im) (* re (- (* re (- (* -1 (* re (+ (sin im) (+ (* -1 (sin im)) (* -1/6 (sin im)))))) (+ (* -1 (sin im)) (* 1/2 (sin im))))) (* -1 (sin im)))))
1
(+ 1 (* -1 re))
(+ 1 (* re (- (* 1/2 re) 1)))
(+ 1 (* re (- (* re (+ 1/2 (* -1/6 re))) 1)))
(* -1 re)
(+ (sin im) (* re (+ (sin im) (* 1/2 (* re (sin im))))))
(+ (sin im) (* re (+ (sin im) (* re (+ (* 1/6 (* re (sin im))) (* 1/2 (sin im)))))))
im
(+ im (* im re))
(+ im (* re (+ im (* 1/2 (* im re)))))
(+ im (* re (+ im (* re (+ (* 1/6 (* im re)) (* 1/2 im))))))
(+ 1 re)
(+ 1 (* re (+ 1 (* 1/2 re))))
(+ 1 (* re (+ 1 (* re (+ 1/2 (* 1/6 re))))))
(+ 1 (* 1/2 re))
(/ (sin im) (exp (neg re)))
(exp (neg re))
(* (exp re) (sin im))
(* im (exp re))
(exp re)
re
(* re (+ 1 (/ 1 re)))
(* 1/2 (pow re 2))
(* (pow re 2) (+ 1/2 (/ 1 re)))
(* (pow re 2) (+ 1/2 (+ (/ 1 re) (/ 1 (pow re 2)))))
(* 1/2 re)
(* re (+ 1/2 (/ 1 re)))
(/ (sin im) (exp (* -1 re)))
(exp (* -1 re))
(/ im (exp (neg re)))
(* im (+ (* -1/6 (/ (pow im 2) (exp (neg re)))) (/ 1 (exp (neg re)))))
(* im (+ (* (pow im 2) (- (* 1/120 (/ (pow im 2) (exp (neg re)))) (* 1/6 (/ 1 (exp (neg re)))))) (/ 1 (exp (neg re)))))
(* im (+ (* (pow im 2) (- (* (pow im 2) (+ (* -1/5040 (/ (pow im 2) (exp (neg re)))) (* 1/120 (/ 1 (exp (neg re)))))) (* 1/6 (/ 1 (exp (neg re)))))) (/ 1 (exp (neg re)))))
(* im (+ 1 (* -1/6 (pow im 2))))
(* im (+ 1 (* (pow im 2) (- (* 1/120 (pow im 2)) 1/6))))
(* im (+ 1 (* (pow im 2) (- (* (pow im 2) (+ 1/120 (* -1/5040 (pow im 2)))) 1/6))))
(* im (+ (exp re) (* -1/6 (* (pow im 2) (exp re)))))
(* im (+ (exp re) (* (pow im 2) (+ (* -1/6 (exp re)) (* 1/120 (* (pow im 2) (exp re)))))))
(* im (+ (exp re) (* (pow im 2) (+ (* -1/6 (exp re)) (* (pow im 2) (+ (* -1/5040 (* (pow im 2) (exp re))) (* 1/120 (exp re))))))))
Outputs
(sin im)
(sin.f64 im)
(+ (sin im) (* re (sin im)))
(fma.f64 (sin.f64 im) re (sin.f64 im))
(+ (sin im) (* re (- (* -1 (* re (+ (* -1 (sin im)) (* 1/2 (sin im))))) (* -1 (sin im)))))
(*.f64 (sin.f64 im) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64)))
(+ (sin im) (* re (- (* re (- (* -1 (* re (+ (sin im) (+ (* -1 (sin im)) (* -1/6 (sin im)))))) (+ (* -1 (sin im)) (* 1/2 (sin im))))) (* -1 (sin im)))))
(fma.f64 (*.f64 (sin.f64 im) (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64))) re (sin.f64 im))
1
#s(literal 1 binary64)
(+ 1 (* -1 re))
(-.f64 #s(literal 1 binary64) re)
(+ 1 (* re (- (* 1/2 re) 1)))
(fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal -1 binary64)) re #s(literal 1 binary64))
(+ 1 (* re (- (* re (+ 1/2 (* -1/6 re))) 1)))
(fma.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal -1 binary64)) re #s(literal 1 binary64))
(* -1 re)
(neg.f64 re)
(+ (sin im) (* re (+ (sin im) (* 1/2 (* re (sin im))))))
(*.f64 (sin.f64 im) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64)))
(+ (sin im) (* re (+ (sin im) (* re (+ (* 1/6 (* re (sin im))) (* 1/2 (sin im)))))))
(fma.f64 (*.f64 (sin.f64 im) (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64))) re (sin.f64 im))
im
(+ im (* im re))
(fma.f64 re im im)
(+ im (* re (+ im (* 1/2 (* im re)))))
(fma.f64 (fma.f64 (*.f64 re im) #s(literal 1/2 binary64) im) re im)
(+ im (* re (+ im (* re (+ (* 1/6 (* im re)) (* 1/2 im))))))
(fma.f64 (fma.f64 (*.f64 im (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64))) re im) re im)
(+ 1 re)
(-.f64 re #s(literal -1 binary64))
(+ 1 (* re (+ 1 (* 1/2 re))))
(fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64))
(+ 1 (* re (+ 1 (* re (+ 1/2 (* 1/6 re))))))
(fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re #s(literal 1 binary64))
(+ 1 (* 1/2 re))
(fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64))
(/ (sin im) (exp (neg re)))
(*.f64 (sin.f64 im) (exp.f64 re))
(exp (neg re))
(exp.f64 (neg.f64 re))
(* (exp re) (sin im))
(*.f64 (sin.f64 im) (exp.f64 re))
(* im (exp re))
(*.f64 (exp.f64 re) im)
(exp re)
(exp.f64 re)
re
(* re (+ 1 (/ 1 re)))
(-.f64 re #s(literal -1 binary64))
(* 1/2 (pow re 2))
(*.f64 (*.f64 re re) #s(literal 1/2 binary64))
(* (pow re 2) (+ 1/2 (/ 1 re)))
(*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re)
(* (pow re 2) (+ 1/2 (+ (/ 1 re) (/ 1 (pow re 2)))))
(fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64))
(* 1/2 re)
(*.f64 #s(literal 1/2 binary64) re)
(* re (+ 1/2 (/ 1 re)))
(fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64))
(/ (sin im) (exp (* -1 re)))
(*.f64 (sin.f64 im) (exp.f64 re))
(exp (* -1 re))
(exp.f64 (neg.f64 re))
(/ im (exp (neg re)))
(*.f64 (exp.f64 re) im)
(* im (+ (* -1/6 (/ (pow im 2) (exp (neg re)))) (/ 1 (exp (neg re)))))
(*.f64 (exp.f64 re) (fma.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal -1/6 binary64) im))
(* im (+ (* (pow im 2) (- (* 1/120 (/ (pow im 2) (exp (neg re)))) (* 1/6 (/ 1 (exp (neg re)))))) (/ 1 (exp (neg re)))))
(fma.f64 (pow.f64 im #s(literal 3 binary64)) (*.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64)) (exp.f64 re)) (*.f64 (exp.f64 re) im))
(* im (+ (* (pow im 2) (- (* (pow im 2) (+ (* -1/5040 (/ (pow im 2) (exp (neg re)))) (* 1/120 (/ 1 (exp (neg re)))))) (* 1/6 (/ 1 (exp (neg re)))))) (/ 1 (exp (neg re)))))
(*.f64 (fma.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 im im) #s(literal 1/120 binary64)) (exp.f64 re)) (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64)) (exp.f64 re))) im)
(* im (+ 1 (* -1/6 (pow im 2))))
(fma.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal -1/6 binary64) im)
(* im (+ 1 (* (pow im 2) (- (* 1/120 (pow im 2)) 1/6))))
(fma.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 #s(literal 1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64)) im)
(* im (+ 1 (* (pow im 2) (- (* (pow im 2) (+ 1/120 (* -1/5040 (pow im 2)))) 1/6))))
(fma.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 im im) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) im)
(* im (+ (exp re) (* -1/6 (* (pow im 2) (exp re)))))
(*.f64 (exp.f64 re) (fma.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal -1/6 binary64) im))
(* im (+ (exp re) (* (pow im 2) (+ (* -1/6 (exp re)) (* 1/120 (* (pow im 2) (exp re)))))))
(fma.f64 (pow.f64 im #s(literal 3 binary64)) (*.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64)) (exp.f64 re)) (*.f64 (exp.f64 re) im))
(* im (+ (exp re) (* (pow im 2) (+ (* -1/6 (exp re)) (* (pow im 2) (+ (* -1/5040 (* (pow im 2) (exp re))) (* 1/120 (exp re))))))))
(*.f64 (fma.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 im im) #s(literal 1/120 binary64)) (exp.f64 re)) (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64)) (exp.f64 re))) im)

rewrite38.0ms (0.6%)

Memory
13.0MiB live, 55.7MiB allocated; 13ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02289
03689
19289
055289
Stop Event
iter limit
iter limit
node limit
iter limit
Counts
15 → 86
Calls
Call 1
Inputs
(/.f64 (sin.f64 im) (exp.f64 (neg.f64 re)))
(sin.f64 im)
(exp.f64 (neg.f64 re))
(neg.f64 re)
#s(approx (* (exp re) (sin im)) (sin.f64 im))
#s(approx (* (exp re) (sin im)) (*.f64 (exp.f64 re) im))
(*.f64 (exp.f64 re) im)
(exp.f64 re)
(*.f64 #s(approx (exp re) (+.f64 #s(literal 1 binary64) re)) (sin.f64 im))
#s(approx (exp re) (+.f64 #s(literal 1 binary64) re))
(+.f64 #s(literal 1 binary64) re)
(*.f64 #s(approx (exp re) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64))) (sin.f64 im))
#s(approx (exp re) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64)))
(fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64))
(fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64))
Outputs
(*.f64 (/.f64 (sin.f64 im) #s(literal 1 binary64)) (exp.f64 re))
(/.f64 (neg.f64 (neg.f64 (sin.f64 im))) (neg.f64 (/.f64 #s(literal -1 binary64) (exp.f64 re))))
(/.f64 (neg.f64 (sin.f64 im)) (/.f64 #s(literal -1 binary64) (exp.f64 re)))
(/.f64 (sin.f64 im) (exp.f64 (neg.f64 re)))
(neg.f64 (/.f64 (neg.f64 (sin.f64 im)) (exp.f64 (neg.f64 re))))
(neg.f64 (/.f64 (sin.f64 im) (/.f64 #s(literal -1 binary64) (exp.f64 re))))
(sin.f64 im)
(*.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 re)))
(pow.f64 (exp.f64 re) #s(literal -1 binary64))
(/.f64 (-.f64 (*.f64 (cosh.f64 re) (cosh.f64 re)) (*.f64 (sinh.f64 (neg.f64 re)) (sinh.f64 (neg.f64 re)))) (-.f64 (cosh.f64 re) (sinh.f64 (neg.f64 re))))
(/.f64 (-.f64 (*.f64 (cosh.f64 re) (cosh.f64 re)) (*.f64 (sinh.f64 re) (sinh.f64 re))) (exp.f64 re))
(/.f64 (-.f64 (pow.f64 (cosh.f64 re) #s(literal 3 binary64)) (pow.f64 (sinh.f64 re) #s(literal 3 binary64))) (fma.f64 (cosh.f64 re) (cosh.f64 re) (fma.f64 (sinh.f64 re) (sinh.f64 re) (*.f64 (cosh.f64 re) (sinh.f64 re)))))
(/.f64 (+.f64 (pow.f64 (cosh.f64 re) #s(literal 3 binary64)) (pow.f64 (sinh.f64 (neg.f64 re)) #s(literal 3 binary64))) (fma.f64 (cosh.f64 re) (cosh.f64 re) (-.f64 (*.f64 (sinh.f64 (neg.f64 re)) (sinh.f64 (neg.f64 re))) (*.f64 (cosh.f64 re) (sinh.f64 (neg.f64 re))))))
(/.f64 #s(literal -1 binary64) (neg.f64 (exp.f64 re)))
(/.f64 #s(literal 1 binary64) (exp.f64 re))
(-.f64 (cosh.f64 re) (sinh.f64 re))
(exp.f64 (-.f64 #s(literal 0 binary64) re))
(exp.f64 (neg.f64 re))
(+.f64 (cosh.f64 re) (sinh.f64 (neg.f64 re)))
(+.f64 (sinh.f64 (neg.f64 re)) (cosh.f64 re))
(neg.f64 re)
#s(approx (* (exp re) (sin im)) (sin.f64 im))
#s(approx (* (exp re) (sin im)) (*.f64 (exp.f64 re) im))
(*.f64 (exp.f64 re) im)
(*.f64 im (exp.f64 re))
(fma.f64 (cosh.f64 re) im (*.f64 (sinh.f64 re) im))
(fma.f64 im (cosh.f64 re) (*.f64 im (sinh.f64 re)))
(+.f64 (*.f64 (cosh.f64 re) im) (*.f64 (sinh.f64 re) im))
(+.f64 (*.f64 im (cosh.f64 re)) (*.f64 im (sinh.f64 re)))
(/.f64 (-.f64 (*.f64 (cosh.f64 re) (cosh.f64 re)) (*.f64 (sinh.f64 re) (sinh.f64 re))) (exp.f64 (neg.f64 re)))
(/.f64 (+.f64 (pow.f64 (cosh.f64 re) #s(literal 3 binary64)) (pow.f64 (sinh.f64 re) #s(literal 3 binary64))) (fma.f64 (cosh.f64 re) (cosh.f64 re) (-.f64 (*.f64 (sinh.f64 re) (sinh.f64 re)) (*.f64 (cosh.f64 re) (sinh.f64 re)))))
(exp.f64 re)
(+.f64 (sinh.f64 re) (cosh.f64 re))
(+.f64 (cosh.f64 re) (sinh.f64 re))
(*.f64 #s(approx (exp re) (-.f64 re #s(literal -1 binary64))) (sin.f64 im))
(*.f64 (sin.f64 im) #s(approx (exp re) (-.f64 re #s(literal -1 binary64))))
#s(approx (exp re) (-.f64 re #s(literal -1 binary64)))
(/.f64 (-.f64 (*.f64 re re) #s(literal 1 binary64)) (-.f64 re #s(literal 1 binary64)))
(/.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (*.f64 re re))) (neg.f64 (-.f64 #s(literal 1 binary64) re)))
(/.f64 (neg.f64 (+.f64 (pow.f64 re #s(literal 3 binary64)) #s(literal 1 binary64))) (neg.f64 (fma.f64 re (-.f64 re #s(literal 1 binary64)) #s(literal 1 binary64))))
(/.f64 (-.f64 #s(literal 1 binary64) (*.f64 re re)) (-.f64 #s(literal 1 binary64) re))
(/.f64 (+.f64 (pow.f64 re #s(literal 3 binary64)) #s(literal 1 binary64)) (fma.f64 re re (-.f64 #s(literal 1 binary64) re)))
(/.f64 (+.f64 (pow.f64 re #s(literal 3 binary64)) #s(literal 1 binary64)) (fma.f64 re (-.f64 re #s(literal 1 binary64)) #s(literal 1 binary64)))
(-.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) re)) (/.f64 (*.f64 re re) (-.f64 #s(literal 1 binary64) re)))
(-.f64 re #s(literal -1 binary64))
(+.f64 (/.f64 #s(literal 1 binary64) (fma.f64 re (-.f64 re #s(literal 1 binary64)) #s(literal 1 binary64))) (/.f64 (pow.f64 re #s(literal 3 binary64)) (fma.f64 re (-.f64 re #s(literal 1 binary64)) #s(literal 1 binary64))))
(+.f64 #s(literal 1 binary64) re)
(+.f64 re #s(literal 1 binary64))
(*.f64 #s(approx (exp re) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64))) (sin.f64 im))
(*.f64 (sin.f64 im) #s(approx (exp re) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64))))
#s(approx (exp re) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64)))
(/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re) #s(literal 2 binary64))) (-.f64 #s(literal 1 binary64) (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re)))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re) #s(literal 2 binary64)) #s(literal 1 binary64))) (neg.f64 (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal -1 binary64))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re) #s(literal 3 binary64)) #s(literal -1 binary64))) (neg.f64 (-.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re))))
(/.f64 (-.f64 (pow.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re) #s(literal 2 binary64)) #s(literal 1 binary64)) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal -1 binary64)))
(/.f64 (-.f64 (pow.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re) #s(literal 3 binary64)) #s(literal -1 binary64)) (+.f64 #s(literal 1 binary64) (-.f64 (pow.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re) #s(literal 2 binary64)) (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re))))
(/.f64 (-.f64 (pow.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re) #s(literal 3 binary64)) #s(literal -1 binary64)) (-.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re)))
(fma.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re) #s(literal 1 binary64) #s(literal 1 binary64))
(fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64))
(fma.f64 #s(literal 1 binary64) (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re) #s(literal 1 binary64))
(fma.f64 re (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) #s(literal 1 binary64)) #s(literal 1 binary64))
(fma.f64 re (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) #s(literal 1 binary64))
(-.f64 (/.f64 (pow.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re) #s(literal 2 binary64)) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal -1 binary64))) (/.f64 #s(literal 1 binary64) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal -1 binary64))))
(-.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re) #s(literal -1 binary64))
(-.f64 #s(literal 1 binary64) (*.f64 (neg.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64))) re))
(-.f64 #s(literal 1 binary64) (*.f64 (neg.f64 re) (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64))))
(+.f64 (/.f64 (pow.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re) #s(literal 3 binary64)) (-.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re))) (/.f64 #s(literal 1 binary64) (-.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re))))
(+.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re) #s(literal 1 binary64))
(+.f64 #s(literal 1 binary64) (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re))
(/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (*.f64 #s(literal 1/2 binary64) re) #s(literal 2 binary64))) (-.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) re)))
(/.f64 (neg.f64 (fma.f64 #s(literal 1/4 binary64) (*.f64 re re) #s(literal -1 binary64))) (neg.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal -1 binary64))))
(/.f64 (neg.f64 (fma.f64 #s(literal 1/8 binary64) (pow.f64 re #s(literal 3 binary64)) #s(literal 1 binary64))) (neg.f64 (fma.f64 #s(literal 1/4 binary64) (*.f64 re re) (-.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) re)))))
(/.f64 (fma.f64 #s(literal 1/4 binary64) (*.f64 re re) #s(literal -1 binary64)) (fma.f64 #s(literal 1/2 binary64) re #s(literal -1 binary64)))
(/.f64 (fma.f64 #s(literal 1/8 binary64) (pow.f64 re #s(literal 3 binary64)) #s(literal 1 binary64)) (+.f64 #s(literal 1 binary64) (-.f64 (pow.f64 (*.f64 #s(literal 1/2 binary64) re) #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) re))))
(/.f64 (fma.f64 #s(literal 1/8 binary64) (pow.f64 re #s(literal 3 binary64)) #s(literal 1 binary64)) (fma.f64 #s(literal 1/4 binary64) (*.f64 re re) (-.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) re))))
(fma.f64 (*.f64 #s(literal 1/2 binary64) re) #s(literal 1 binary64) #s(literal 1 binary64))
(fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64))
(fma.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) re) #s(literal 1 binary64))
(fma.f64 re #s(literal 1/2 binary64) #s(literal 1 binary64))
(-.f64 (/.f64 (pow.f64 (*.f64 #s(literal 1/2 binary64) re) #s(literal 2 binary64)) (fma.f64 #s(literal 1/2 binary64) re #s(literal -1 binary64))) (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal 1/2 binary64) re #s(literal -1 binary64))))
(-.f64 (*.f64 #s(literal 1/2 binary64) re) #s(literal -1 binary64))
(-.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) re))
(-.f64 #s(literal 1 binary64) (*.f64 (neg.f64 re) #s(literal 1/2 binary64)))
(+.f64 (/.f64 (pow.f64 (*.f64 #s(literal 1/2 binary64) re) #s(literal 3 binary64)) (fma.f64 #s(literal 1/4 binary64) (*.f64 re re) (-.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) re)))) (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal 1/4 binary64) (*.f64 re re) (-.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) re)))))
(+.f64 (*.f64 #s(literal 1/2 binary64) re) #s(literal 1 binary64))
(+.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) re))

eval19.0ms (0.3%)

Memory
-2.1MiB live, 41.8MiB allocated; 12ms collecting garbage
Compiler

Compiled 2 252 to 459 computations (79.6% saved)

prune21.0ms (0.3%)

Memory
14.0MiB live, 57.3MiB allocated; 10ms collecting garbage
Pruning

23 alts after pruning (17 fresh and 6 done)

PrunedKeptTotal
New11816134
Fresh112
Picked055
Done011
Total11923142
Accuracy
100.0%
Counts
142 → 23
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(/.f64 (sin.f64 im) (exp.f64 (neg.f64 re)))
64.3%
(/.f64 (sin.f64 im) #s(approx (exp (neg re)) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal -1 binary64)) re #s(literal 1 binary64))))
60.8%
(/.f64 (sin.f64 im) #s(approx (exp (neg re)) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal -1 binary64)) re #s(literal 1 binary64))))
51.9%
(/.f64 (sin.f64 im) #s(approx (exp (neg re)) (-.f64 #s(literal 1 binary64) re)))
100.0%
(*.f64 (exp.f64 re) (sin.f64 im))
65.5%
(*.f64 #s(approx (exp re) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re #s(literal 1 binary64))) (sin.f64 im))
61.8%
(*.f64 #s(approx (exp re) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64))) (sin.f64 im))
44.2%
(*.f64 #s(approx (exp re) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64))) #s(approx (sin im) (fma.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 im im) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) im)))
43.8%
(*.f64 #s(approx (exp re) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64))) #s(approx (sin im) (fma.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal -1/6 binary64) im)))
47.1%
(*.f64 #s(approx (exp re) (+.f64 #s(literal 1 binary64) re)) (sin.f64 im))
35.2%
(*.f64 #s(approx (exp re) (+.f64 #s(literal 1 binary64) re)) #s(approx (sin im) (fma.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 im im) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) im)))
34.1%
(*.f64 #s(approx (exp re) (+.f64 #s(literal 1 binary64) re)) #s(approx (sin im) (fma.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal -1/6 binary64) im)))
18.6%
(*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* 1/2 re) 1) re) 1) (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re))) (sin.f64 im))
18.8%
(*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* 1/2 re) 1) re) 1) (*.f64 (*.f64 re re) #s(literal 1/2 binary64)))) (sin.f64 im))
73.4%
#s(approx (* (exp re) (sin im)) (*.f64 (exp.f64 re) im))
43.7%
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re #s(literal 1 binary64))) im))
41.5%
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64))) im))
46.7%
#s(approx (* (exp re) (sin im)) (sin.f64 im))
37.8%
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 (fma.f64 (*.f64 re im) #s(literal 1/2 binary64) im) re im)))
41.1%
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 (fma.f64 (*.f64 im (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64))) re im) re im)))
31.8%
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 re im im)))
34.9%
#s(approx (* (exp re) (sin im)) #s(approx (sin im) (fma.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 im im) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) im)))
33.0%
#s(approx (* (exp re) (sin im)) #s(approx (sin im) (fma.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal -1/6 binary64) im)))
Compiler

Compiled 709 to 512 computations (27.8% saved)

simplify156.0ms (2.5%)

Memory
-14.0MiB live, 186.5MiB allocated; 19ms collecting garbage
Localize:

Found 19 expressions of interest:

NewMetricScoreProgram
cost-diff0
(pow.f64 im #s(literal 3 binary64))
cost-diff0
(fma.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 im im) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) im)
cost-diff0
#s(approx (sin im) (fma.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 im im) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) im))
cost-diff0
#s(approx (* (exp re) (sin im)) #s(approx (sin im) (fma.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 im im) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) im)))
cost-diff0
#s(approx (sin im) (fma.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal -1/6 binary64) im))
cost-diff0
(+.f64 #s(literal 1 binary64) re)
cost-diff0
#s(approx (exp re) (+.f64 #s(literal 1 binary64) re))
cost-diff0
(*.f64 #s(approx (exp re) (+.f64 #s(literal 1 binary64) re)) #s(approx (sin im) (fma.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal -1/6 binary64) im)))
cost-diff0
(fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re #s(literal 1 binary64))
cost-diff0
#s(approx (exp re) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re #s(literal 1 binary64)))
cost-diff0
(*.f64 #s(approx (exp re) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re #s(literal 1 binary64))) im)
cost-diff0
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re #s(literal 1 binary64))) im))
cost-diff0
(fma.f64 re im im)
cost-diff0
#s(approx (* (exp re) im) (fma.f64 re im im))
cost-diff0
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 re im im)))
cost-diff0
(fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64))
cost-diff0
(fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re #s(literal 1 binary64))
cost-diff0
#s(approx (exp re) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re #s(literal 1 binary64)))
cost-diff0
(*.f64 #s(approx (exp re) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re #s(literal 1 binary64))) (sin.f64 im))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
036298
060298
1104298
2289298
31354298
45404298
08246298
Stop Event
iter limit
node limit
iter limit
Calls
Call 1
Inputs
(*.f64 #s(approx (exp re) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re #s(literal 1 binary64))) (sin.f64 im))
#s(approx (exp re) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re #s(literal 1 binary64)))
(fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re #s(literal 1 binary64))
(fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64))
(fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64))
#s(literal 1/6 binary64)
re
#s(literal 1/2 binary64)
#s(literal 1 binary64)
(sin.f64 im)
im
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 re im im)))
#s(approx (* (exp re) im) (fma.f64 re im im))
(fma.f64 re im im)
re
im
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re #s(literal 1 binary64))) im))
(*.f64 #s(approx (exp re) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re #s(literal 1 binary64))) im)
#s(approx (exp re) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re #s(literal 1 binary64)))
(fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re #s(literal 1 binary64))
(fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64))
(fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64))
#s(literal 1/6 binary64)
re
#s(literal 1/2 binary64)
#s(literal 1 binary64)
im
(*.f64 #s(approx (exp re) (+.f64 #s(literal 1 binary64) re)) #s(approx (sin im) (fma.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal -1/6 binary64) im)))
#s(approx (exp re) (+.f64 #s(literal 1 binary64) re))
(+.f64 #s(literal 1 binary64) re)
#s(literal 1 binary64)
re
#s(approx (sin im) (fma.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal -1/6 binary64) im))
(fma.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal -1/6 binary64) im)
(pow.f64 im #s(literal 3 binary64))
im
#s(literal 3 binary64)
#s(literal -1/6 binary64)
#s(approx (* (exp re) (sin im)) #s(approx (sin im) (fma.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 im im) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) im)))
#s(approx (sin im) (fma.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 im im) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) im))
(fma.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 im im) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) im)
(pow.f64 im #s(literal 3 binary64))
im
#s(literal 3 binary64)
(fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 im im) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64))
(fma.f64 #s(literal -1/5040 binary64) (*.f64 im im) #s(literal 1/120 binary64))
#s(literal -1/5040 binary64)
(*.f64 im im)
#s(literal 1/120 binary64)
#s(literal -1/6 binary64)
Outputs
(*.f64 #s(approx (exp re) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re #s(literal 1 binary64))) (sin.f64 im))
(*.f64 (sin.f64 im) #s(approx (exp re) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re #s(literal 1 binary64))))
#s(approx (exp re) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re #s(literal 1 binary64)))
(fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re #s(literal 1 binary64))
(fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64))
(fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64))
#s(literal 1/6 binary64)
re
#s(literal 1/2 binary64)
#s(literal 1 binary64)
(sin.f64 im)
im
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 re im im)))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 im re im)))
#s(approx (* (exp re) im) (fma.f64 re im im))
#s(approx (* (exp re) im) (fma.f64 im re im))
(fma.f64 re im im)
(fma.f64 im re im)
re
im
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re #s(literal 1 binary64))) im))
#s(approx (* (exp re) (sin im)) (*.f64 im #s(approx (exp re) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re #s(literal 1 binary64)))))
(*.f64 #s(approx (exp re) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re #s(literal 1 binary64))) im)
(*.f64 im #s(approx (exp re) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re #s(literal 1 binary64))))
#s(approx (exp re) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re #s(literal 1 binary64)))
(fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re #s(literal 1 binary64))
(fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64))
(fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64))
#s(literal 1/6 binary64)
re
#s(literal 1/2 binary64)
#s(literal 1 binary64)
im
(*.f64 #s(approx (exp re) (+.f64 #s(literal 1 binary64) re)) #s(approx (sin im) (fma.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal -1/6 binary64) im)))
(*.f64 #s(approx (sin im) (fma.f64 #s(literal -1/6 binary64) (pow.f64 im #s(literal 3 binary64)) im)) #s(approx (exp re) (-.f64 re #s(literal -1 binary64))))
#s(approx (exp re) (+.f64 #s(literal 1 binary64) re))
#s(approx (exp re) (-.f64 re #s(literal -1 binary64)))
(+.f64 #s(literal 1 binary64) re)
(-.f64 re #s(literal -1 binary64))
#s(literal 1 binary64)
re
#s(approx (sin im) (fma.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal -1/6 binary64) im))
#s(approx (sin im) (fma.f64 #s(literal -1/6 binary64) (pow.f64 im #s(literal 3 binary64)) im))
(fma.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal -1/6 binary64) im)
(fma.f64 #s(literal -1/6 binary64) (pow.f64 im #s(literal 3 binary64)) im)
(pow.f64 im #s(literal 3 binary64))
im
#s(literal 3 binary64)
#s(literal -1/6 binary64)
#s(approx (* (exp re) (sin im)) #s(approx (sin im) (fma.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 im im) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) im)))
#s(approx (* (exp re) (sin im)) #s(approx (sin im) (fma.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) (pow.f64 im #s(literal 3 binary64)) im)))
#s(approx (sin im) (fma.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 im im) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) im))
#s(approx (sin im) (fma.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) (pow.f64 im #s(literal 3 binary64)) im))
(fma.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 im im) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) im)
(fma.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) (pow.f64 im #s(literal 3 binary64)) im)
(pow.f64 im #s(literal 3 binary64))
im
#s(literal 3 binary64)
(fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 im im) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64))
(fma.f64 (fma.f64 (*.f64 im im) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64))
(fma.f64 #s(literal -1/5040 binary64) (*.f64 im im) #s(literal 1/120 binary64))
(fma.f64 (*.f64 im im) #s(literal -1/5040 binary64) #s(literal 1/120 binary64))
#s(literal -1/5040 binary64)
(*.f64 im im)
#s(literal 1/120 binary64)
#s(literal -1/6 binary64)

localize197.0ms (3.1%)

Memory
-31.9MiB live, 169.1MiB allocated; 38ms collecting garbage
Localize:

Found 19 expressions of interest:

NewMetricScoreProgram
accuracy0.05078125
(fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 im im) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64))
accuracy0.07421875
(fma.f64 #s(literal -1/5040 binary64) (*.f64 im im) #s(literal 1/120 binary64))
accuracy28.267287120476553
#s(approx (sin im) (fma.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 im im) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) im))
accuracy34.08849305193543
#s(approx (* (exp re) (sin im)) #s(approx (sin im) (fma.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 im im) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) im)))
accuracy0.01171875
(*.f64 #s(approx (exp re) (+.f64 #s(literal 1 binary64) re)) #s(approx (sin im) (fma.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal -1/6 binary64) im)))
accuracy0.09973195883014184
(fma.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal -1/6 binary64) im)
accuracy28.305223894553713
#s(approx (sin im) (fma.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal -1/6 binary64) im))
accuracy33.67342713173116
#s(approx (exp re) (+.f64 #s(literal 1 binary64) re))
accuracy0.078125
(fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64))
accuracy0.203125
(fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64))
accuracy17.00918676310268
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re #s(literal 1 binary64))) im))
accuracy22.014240324664758
#s(approx (exp re) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re #s(literal 1 binary64)))
accuracy0.0
(fma.f64 re im im)
accuracy17.00918676310268
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 re im im)))
accuracy30.483157289862426
#s(approx (* (exp re) im) (fma.f64 re im im))
accuracy0.03972626953688403
(fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re #s(literal 1 binary64))
accuracy0.078125
(fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64))
accuracy0.203125
(fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64))
accuracy22.014240324664758
#s(approx (exp re) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re #s(literal 1 binary64)))
Samples
108.0ms256×0valid
Compiler

Compiled 186 to 34 computations (81.7% saved)

Precisions
Click to see histograms. Total time spent on operations: 51.0ms
ival-mult: 17.0ms (33.3% of total)
const: 12.0ms (23.5% of total)
ival-add: 10.0ms (19.6% of total)
ival-sin: 6.0ms (11.8% of total)
ival-pow: 3.0ms (5.9% of total)
ival-exp: 2.0ms (3.9% of total)
adjust: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)

series13.0ms (0.2%)

Memory
20.2MiB live, 20.2MiB allocated; 0ms collecting garbage
Counts
21 → 64
Calls
Call 1
Inputs
(*.f64 #s(approx (exp re) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re #s(literal 1 binary64))) (sin.f64 im))
#s(approx (exp re) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re #s(literal 1 binary64)))
(fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re #s(literal 1 binary64))
(fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 re im im)))
#s(approx (* (exp re) im) (fma.f64 re im im))
(fma.f64 re im im)
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re #s(literal 1 binary64))) im))
(*.f64 #s(approx (exp re) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re #s(literal 1 binary64))) im)
(*.f64 #s(approx (exp re) (+.f64 #s(literal 1 binary64) re)) #s(approx (sin im) (fma.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal -1/6 binary64) im)))
#s(approx (exp re) (+.f64 #s(literal 1 binary64) re))
(+.f64 #s(literal 1 binary64) re)
#s(approx (sin im) (fma.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal -1/6 binary64) im))
#s(approx (* (exp re) (sin im)) #s(approx (sin im) (fma.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 im im) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) im)))
#s(approx (sin im) (fma.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 im im) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) im))
(fma.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 im im) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) im)
(pow.f64 im #s(literal 3 binary64))
(fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64))
(fma.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal -1/6 binary64) im)
(fma.f64 #s(literal -1/5040 binary64) (*.f64 im im) #s(literal 1/120 binary64))
(fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 im im) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64))
Outputs
(sin im)
(+ (sin im) (* re (sin im)))
(+ (sin im) (* re (+ (sin im) (* 1/2 (* re (sin im))))))
(+ (sin im) (* re (+ (sin im) (* re (+ (* 1/6 (* re (sin im))) (* 1/2 (sin im)))))))
1
(+ 1 re)
(+ 1 (* re (+ 1 (* 1/2 re))))
(+ 1 (* re (+ 1 (* re (+ 1/2 (* 1/6 re))))))
(+ 1 (* 1/2 re))
(+ 1 (* re (+ 1/2 (* 1/6 re))))
im
(+ im (* im re))
(+ im (* re (+ im (* 1/2 (* im re)))))
(+ im (* re (+ im (* re (+ (* 1/6 (* im re)) (* 1/2 im))))))
1/2
(+ 1/2 (* 1/6 re))
(* (exp re) (sin im))
(exp re)
(* 1/6 (pow re 3))
(* (pow re 3) (+ 1/6 (* 1/2 (/ 1 re))))
(* (pow re 3) (+ 1/6 (+ (* 1/2 (/ 1 re)) (/ 1 (pow re 2)))))
(* (pow re 3) (+ 1/6 (+ (* 1/2 (/ 1 re)) (+ (/ 1 (pow re 2)) (/ 1 (pow re 3))))))
(* 1/6 (pow re 2))
(* (pow re 2) (+ 1/6 (* 1/2 (/ 1 re))))
(* (pow re 2) (+ 1/6 (+ (* 1/2 (/ 1 re)) (/ 1 (pow re 2)))))
(* im (exp re))
(* im re)
(* re (+ im (/ im re)))
re
(* re (+ 1 (/ 1 re)))
(* 1/6 re)
(* re (+ 1/6 (* 1/2 (/ 1 re))))
(* -1 (* (pow re 3) (- (* -1 (/ (+ 1/2 (/ 1 re)) re)) 1/6)))
(* -1 (* (pow re 3) (- (* -1 (/ (+ 1/2 (+ (/ 1 re) (/ 1 (pow re 2)))) re)) 1/6)))
(* -1 (* re (+ (* -1 im) (* -1 (/ im re)))))
(* im (+ (exp re) (* -1/6 (* (pow im 2) (exp re)))))
(* im (+ (exp re) (* (pow im 2) (+ (* -1/6 (exp re)) (* 1/120 (* (pow im 2) (exp re)))))))
(* im (+ (exp re) (* (pow im 2) (+ (* -1/6 (exp re)) (* (pow im 2) (+ (* -1/5040 (* (pow im 2) (exp re))) (* 1/120 (exp re))))))))
(* im (+ 1 re))
(* im (+ 1 (* -1/6 (pow im 2))))
(* im (+ 1 (* (pow im 2) (- (* 1/120 (pow im 2)) 1/6))))
(* im (+ 1 (* (pow im 2) (- (* (pow im 2) (+ 1/120 (* -1/5040 (pow im 2)))) 1/6))))
(pow im 3)
1/120
(+ 1/120 (* -1/5040 (pow im 2)))
-1/6
(- (* 1/120 (pow im 2)) 1/6)
(- (* (pow im 2) (+ 1/120 (* -1/5040 (pow im 2)))) 1/6)
(* -1/5040 (pow im 7))
(* (pow im 7) (- (* 1/120 (/ 1 (pow im 2))) 1/5040))
(* (pow im 7) (- (* 1/120 (/ 1 (pow im 2))) (+ 1/5040 (/ 1/6 (pow im 4)))))
(* (pow im 7) (- (+ (* 1/120 (/ 1 (pow im 2))) (/ 1 (pow im 6))) (+ 1/5040 (/ 1/6 (pow im 4)))))
(* -1/6 (pow im 3))
(* (pow im 3) (- (/ 1 (pow im 2)) 1/6))
(* -1/5040 (pow im 2))
(* (pow im 2) (- (* 1/120 (/ 1 (pow im 2))) 1/5040))
(* -1/5040 (pow im 4))
(* (pow im 4) (- (* 1/120 (/ 1 (pow im 2))) 1/5040))
(* (pow im 4) (- (* 1/120 (/ 1 (pow im 2))) (+ 1/5040 (/ 1/6 (pow im 4)))))
(* -1 (* im (- (* -1 re) 1)))
(* -1 (* (pow im 7) (- 1/5040 (* 1/120 (/ 1 (pow im 2))))))
(* -1 (* (pow im 7) (- (+ 1/5040 (/ 1/6 (pow im 4))) (* 1/120 (/ 1 (pow im 2))))))
(* -1 (* (pow im 7) (- (+ 1/5040 (/ 1/6 (pow im 4))) (+ (* 1/120 (/ 1 (pow im 2))) (/ 1 (pow im 6))))))
(* -1 (* (pow im 3) (- 1/6 (/ 1 (pow im 2)))))
Calls

6 calls:

TimeVariablePointExpression
3.0ms
im
@-inf
((* (exp re) (sin im)) (exp re) (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (+ (* (+ (* 1/6 re) 1/2) re) 1) (* (exp re) (sin im)) (* (exp re) im) (+ (* re im) im) (* (exp re) (sin im)) (* (exp re) im) (* (exp re) (sin im)) (exp re) (+ 1 re) (sin im) (* (exp re) (sin im)) (sin im) (+ (* (pow im 3) (+ (* (+ (* -1/5040 (* im im)) 1/120) (* im im)) -1/6)) im) (pow im 3) (+ (* 1/6 re) 1/2) (+ (* (pow im 3) -1/6) im) (+ (* -1/5040 (* im im)) 1/120) (+ (* (+ (* -1/5040 (* im im)) 1/120) (* im im)) -1/6))
3.0ms
im
@inf
((* (exp re) (sin im)) (exp re) (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (+ (* (+ (* 1/6 re) 1/2) re) 1) (* (exp re) (sin im)) (* (exp re) im) (+ (* re im) im) (* (exp re) (sin im)) (* (exp re) im) (* (exp re) (sin im)) (exp re) (+ 1 re) (sin im) (* (exp re) (sin im)) (sin im) (+ (* (pow im 3) (+ (* (+ (* -1/5040 (* im im)) 1/120) (* im im)) -1/6)) im) (pow im 3) (+ (* 1/6 re) 1/2) (+ (* (pow im 3) -1/6) im) (+ (* -1/5040 (* im im)) 1/120) (+ (* (+ (* -1/5040 (* im im)) 1/120) (* im im)) -1/6))
2.0ms
re
@-inf
((* (exp re) (sin im)) (exp re) (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (+ (* (+ (* 1/6 re) 1/2) re) 1) (* (exp re) (sin im)) (* (exp re) im) (+ (* re im) im) (* (exp re) (sin im)) (* (exp re) im) (* (exp re) (sin im)) (exp re) (+ 1 re) (sin im) (* (exp re) (sin im)) (sin im) (+ (* (pow im 3) (+ (* (+ (* -1/5040 (* im im)) 1/120) (* im im)) -1/6)) im) (pow im 3) (+ (* 1/6 re) 1/2) (+ (* (pow im 3) -1/6) im) (+ (* -1/5040 (* im im)) 1/120) (+ (* (+ (* -1/5040 (* im im)) 1/120) (* im im)) -1/6))
2.0ms
re
@inf
((* (exp re) (sin im)) (exp re) (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (+ (* (+ (* 1/6 re) 1/2) re) 1) (* (exp re) (sin im)) (* (exp re) im) (+ (* re im) im) (* (exp re) (sin im)) (* (exp re) im) (* (exp re) (sin im)) (exp re) (+ 1 re) (sin im) (* (exp re) (sin im)) (sin im) (+ (* (pow im 3) (+ (* (+ (* -1/5040 (* im im)) 1/120) (* im im)) -1/6)) im) (pow im 3) (+ (* 1/6 re) 1/2) (+ (* (pow im 3) -1/6) im) (+ (* -1/5040 (* im im)) 1/120) (+ (* (+ (* -1/5040 (* im im)) 1/120) (* im im)) -1/6))
2.0ms
im
@0
((* (exp re) (sin im)) (exp re) (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (+ (* (+ (* 1/6 re) 1/2) re) 1) (* (exp re) (sin im)) (* (exp re) im) (+ (* re im) im) (* (exp re) (sin im)) (* (exp re) im) (* (exp re) (sin im)) (exp re) (+ 1 re) (sin im) (* (exp re) (sin im)) (sin im) (+ (* (pow im 3) (+ (* (+ (* -1/5040 (* im im)) 1/120) (* im im)) -1/6)) im) (pow im 3) (+ (* 1/6 re) 1/2) (+ (* (pow im 3) -1/6) im) (+ (* -1/5040 (* im im)) 1/120) (+ (* (+ (* -1/5040 (* im im)) 1/120) (* im im)) -1/6))

simplify211.0ms (3.3%)

Memory
18.3MiB live, 199.8MiB allocated; 44ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0174600
1595579
22200565
37945565
08002519
Stop Event
iter limit
node limit
Counts
64 → 62
Calls
Call 1
Inputs
(sin im)
(+ (sin im) (* re (sin im)))
(+ (sin im) (* re (+ (sin im) (* 1/2 (* re (sin im))))))
(+ (sin im) (* re (+ (sin im) (* re (+ (* 1/6 (* re (sin im))) (* 1/2 (sin im)))))))
1
(+ 1 re)
(+ 1 (* re (+ 1 (* 1/2 re))))
(+ 1 (* re (+ 1 (* re (+ 1/2 (* 1/6 re))))))
(+ 1 (* 1/2 re))
(+ 1 (* re (+ 1/2 (* 1/6 re))))
im
(+ im (* im re))
(+ im (* re (+ im (* 1/2 (* im re)))))
(+ im (* re (+ im (* re (+ (* 1/6 (* im re)) (* 1/2 im))))))
1/2
(+ 1/2 (* 1/6 re))
(* (exp re) (sin im))
(exp re)
(* 1/6 (pow re 3))
(* (pow re 3) (+ 1/6 (* 1/2 (/ 1 re))))
(* (pow re 3) (+ 1/6 (+ (* 1/2 (/ 1 re)) (/ 1 (pow re 2)))))
(* (pow re 3) (+ 1/6 (+ (* 1/2 (/ 1 re)) (+ (/ 1 (pow re 2)) (/ 1 (pow re 3))))))
(* 1/6 (pow re 2))
(* (pow re 2) (+ 1/6 (* 1/2 (/ 1 re))))
(* (pow re 2) (+ 1/6 (+ (* 1/2 (/ 1 re)) (/ 1 (pow re 2)))))
(* im (exp re))
(* im re)
(* re (+ im (/ im re)))
re
(* re (+ 1 (/ 1 re)))
(* 1/6 re)
(* re (+ 1/6 (* 1/2 (/ 1 re))))
(* -1 (* (pow re 3) (- (* -1 (/ (+ 1/2 (/ 1 re)) re)) 1/6)))
(* -1 (* (pow re 3) (- (* -1 (/ (+ 1/2 (+ (/ 1 re) (/ 1 (pow re 2)))) re)) 1/6)))
(* -1 (* re (+ (* -1 im) (* -1 (/ im re)))))
(* im (+ (exp re) (* -1/6 (* (pow im 2) (exp re)))))
(* im (+ (exp re) (* (pow im 2) (+ (* -1/6 (exp re)) (* 1/120 (* (pow im 2) (exp re)))))))
(* im (+ (exp re) (* (pow im 2) (+ (* -1/6 (exp re)) (* (pow im 2) (+ (* -1/5040 (* (pow im 2) (exp re))) (* 1/120 (exp re))))))))
(* im (+ 1 re))
(* im (+ 1 (* -1/6 (pow im 2))))
(* im (+ 1 (* (pow im 2) (- (* 1/120 (pow im 2)) 1/6))))
(* im (+ 1 (* (pow im 2) (- (* (pow im 2) (+ 1/120 (* -1/5040 (pow im 2)))) 1/6))))
(pow im 3)
1/120
(+ 1/120 (* -1/5040 (pow im 2)))
-1/6
(- (* 1/120 (pow im 2)) 1/6)
(- (* (pow im 2) (+ 1/120 (* -1/5040 (pow im 2)))) 1/6)
(* -1/5040 (pow im 7))
(* (pow im 7) (- (* 1/120 (/ 1 (pow im 2))) 1/5040))
(* (pow im 7) (- (* 1/120 (/ 1 (pow im 2))) (+ 1/5040 (/ 1/6 (pow im 4)))))
(* (pow im 7) (- (+ (* 1/120 (/ 1 (pow im 2))) (/ 1 (pow im 6))) (+ 1/5040 (/ 1/6 (pow im 4)))))
(* -1/6 (pow im 3))
(* (pow im 3) (- (/ 1 (pow im 2)) 1/6))
(* -1/5040 (pow im 2))
(* (pow im 2) (- (* 1/120 (/ 1 (pow im 2))) 1/5040))
(* -1/5040 (pow im 4))
(* (pow im 4) (- (* 1/120 (/ 1 (pow im 2))) 1/5040))
(* (pow im 4) (- (* 1/120 (/ 1 (pow im 2))) (+ 1/5040 (/ 1/6 (pow im 4)))))
(* -1 (* im (- (* -1 re) 1)))
(* -1 (* (pow im 7) (- 1/5040 (* 1/120 (/ 1 (pow im 2))))))
(* -1 (* (pow im 7) (- (+ 1/5040 (/ 1/6 (pow im 4))) (* 1/120 (/ 1 (pow im 2))))))
(* -1 (* (pow im 7) (- (+ 1/5040 (/ 1/6 (pow im 4))) (+ (* 1/120 (/ 1 (pow im 2))) (/ 1 (pow im 6))))))
(* -1 (* (pow im 3) (- 1/6 (/ 1 (pow im 2)))))
Outputs
(sin im)
(sin.f64 im)
(+ (sin im) (* re (sin im)))
(fma.f64 (sin.f64 im) re (sin.f64 im))
(+ (sin im) (* re (+ (sin im) (* 1/2 (* re (sin im))))))
(*.f64 (sin.f64 im) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64)))
(+ (sin im) (* re (+ (sin im) (* re (+ (* 1/6 (* re (sin im))) (* 1/2 (sin im)))))))
(fma.f64 (*.f64 (sin.f64 im) (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64))) re (sin.f64 im))
1
#s(literal 1 binary64)
(+ 1 re)
(-.f64 re #s(literal -1 binary64))
(+ 1 (* re (+ 1 (* 1/2 re))))
(fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64))
(+ 1 (* re (+ 1 (* re (+ 1/2 (* 1/6 re))))))
(fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re #s(literal 1 binary64))
(+ 1 (* 1/2 re))
(fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64))
(+ 1 (* re (+ 1/2 (* 1/6 re))))
(fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64))
im
(+ im (* im re))
(fma.f64 im re im)
(+ im (* re (+ im (* 1/2 (* im re)))))
(fma.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) im) re im)
(+ im (* re (+ im (* re (+ (* 1/6 (* im re)) (* 1/2 im))))))
(fma.f64 (fma.f64 (*.f64 im (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64))) re im) re im)
1/2
#s(literal 1/2 binary64)
(+ 1/2 (* 1/6 re))
(fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64))
(* (exp re) (sin im))
(*.f64 (sin.f64 im) (exp.f64 re))
(exp re)
(exp.f64 re)
(* 1/6 (pow re 3))
(*.f64 (pow.f64 re #s(literal 3 binary64)) #s(literal 1/6 binary64))
(* (pow re 3) (+ 1/6 (* 1/2 (/ 1 re))))
(*.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re) re)
(* (pow re 3) (+ 1/6 (+ (* 1/2 (/ 1 re)) (/ 1 (pow re 2)))))
(*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re)
(* (pow re 3) (+ 1/6 (+ (* 1/2 (/ 1 re)) (+ (/ 1 (pow re 2)) (/ 1 (pow re 3))))))
(fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re #s(literal 1 binary64))
(* 1/6 (pow re 2))
(*.f64 (*.f64 re re) #s(literal 1/6 binary64))
(* (pow re 2) (+ 1/6 (* 1/2 (/ 1 re))))
(*.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re)
(* (pow re 2) (+ 1/6 (+ (* 1/2 (/ 1 re)) (/ 1 (pow re 2)))))
(fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64))
(* im (exp re))
(*.f64 im (exp.f64 re))
(* im re)
(*.f64 im re)
(* re (+ im (/ im re)))
(fma.f64 im re im)
re
(* re (+ 1 (/ 1 re)))
(-.f64 re #s(literal -1 binary64))
(* 1/6 re)
(*.f64 #s(literal 1/6 binary64) re)
(* re (+ 1/6 (* 1/2 (/ 1 re))))
(fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64))
(* -1 (* (pow re 3) (- (* -1 (/ (+ 1/2 (/ 1 re)) re)) 1/6)))
(*.f64 (pow.f64 (neg.f64 re) #s(literal 3 binary64)) (-.f64 (/.f64 (-.f64 #s(literal -1/2 binary64) (/.f64 #s(literal 1 binary64) re)) re) #s(literal 1/6 binary64)))
(* -1 (* (pow re 3) (- (* -1 (/ (+ 1/2 (+ (/ 1 re) (/ 1 (pow re 2)))) re)) 1/6)))
(*.f64 (pow.f64 (neg.f64 re) #s(literal 3 binary64)) (-.f64 (/.f64 (fma.f64 (/.f64 (/.f64 (-.f64 re #s(literal -1 binary64)) re) re) #s(literal -1 binary64) #s(literal -1/2 binary64)) re) #s(literal 1/6 binary64)))
(* -1 (* re (+ (* -1 im) (* -1 (/ im re)))))
(fma.f64 im re im)
(* im (+ (exp re) (* -1/6 (* (pow im 2) (exp re)))))
(*.f64 (exp.f64 re) (fma.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal -1/6 binary64) im))
(* im (+ (exp re) (* (pow im 2) (+ (* -1/6 (exp re)) (* 1/120 (* (pow im 2) (exp re)))))))
(fma.f64 (pow.f64 im #s(literal 3 binary64)) (*.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64)) (exp.f64 re)) (*.f64 im (exp.f64 re)))
(* im (+ (exp re) (* (pow im 2) (+ (* -1/6 (exp re)) (* (pow im 2) (+ (* -1/5040 (* (pow im 2) (exp re))) (* 1/120 (exp re))))))))
(*.f64 (fma.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 im im) #s(literal 1/120 binary64)) (exp.f64 re)) (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64)) (exp.f64 re))) im)
(* im (+ 1 re))
(fma.f64 im re im)
(* im (+ 1 (* -1/6 (pow im 2))))
(fma.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal -1/6 binary64) im)
(* im (+ 1 (* (pow im 2) (- (* 1/120 (pow im 2)) 1/6))))
(fma.f64 (pow.f64 im #s(literal 3 binary64)) (-.f64 (*.f64 #s(literal 1/120 binary64) (*.f64 im im)) #s(literal 1/6 binary64)) im)
(* im (+ 1 (* (pow im 2) (- (* (pow im 2) (+ 1/120 (* -1/5040 (pow im 2)))) 1/6))))
(fma.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 (*.f64 #s(literal 1/120 binary64) im) im (-.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal -1/5040 binary64)) #s(literal 1/6 binary64))) im)
(pow im 3)
(pow.f64 im #s(literal 3 binary64))
1/120
#s(literal 1/120 binary64)
(+ 1/120 (* -1/5040 (pow im 2)))
(fma.f64 #s(literal -1/5040 binary64) (*.f64 im im) #s(literal 1/120 binary64))
-1/6
#s(literal -1/6 binary64)
(- (* 1/120 (pow im 2)) 1/6)
(-.f64 (*.f64 #s(literal 1/120 binary64) (*.f64 im im)) #s(literal 1/6 binary64))
(- (* (pow im 2) (+ 1/120 (* -1/5040 (pow im 2)))) 1/6)
(fma.f64 (*.f64 #s(literal 1/120 binary64) im) im (-.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal -1/5040 binary64)) #s(literal 1/6 binary64)))
(* -1/5040 (pow im 7))
(*.f64 (pow.f64 im #s(literal 7 binary64)) #s(literal -1/5040 binary64))
(* (pow im 7) (- (* 1/120 (/ 1 (pow im 2))) 1/5040))
(*.f64 (-.f64 (/.f64 #s(literal 1/120 binary64) (*.f64 im im)) #s(literal 1/5040 binary64)) (pow.f64 im #s(literal 7 binary64)))
(* (pow im 7) (- (* 1/120 (/ 1 (pow im 2))) (+ 1/5040 (/ 1/6 (pow im 4)))))
(*.f64 (-.f64 (-.f64 (/.f64 #s(literal 1/120 binary64) (*.f64 im im)) #s(literal 1/5040 binary64)) (/.f64 #s(literal 1/6 binary64) (pow.f64 im #s(literal 4 binary64)))) (pow.f64 im #s(literal 7 binary64)))
(* (pow im 7) (- (+ (* 1/120 (/ 1 (pow im 2))) (/ 1 (pow im 6))) (+ 1/5040 (/ 1/6 (pow im 4)))))
(*.f64 (-.f64 (-.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 6 binary64))) (/.f64 #s(literal -1/120 binary64) (*.f64 im im))) (+.f64 (/.f64 #s(literal 1/6 binary64) (pow.f64 im #s(literal 4 binary64))) #s(literal 1/5040 binary64))) (pow.f64 im #s(literal 7 binary64)))
(* -1/6 (pow im 3))
(*.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal -1/6 binary64))
(* (pow im 3) (- (/ 1 (pow im 2)) 1/6))
(*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 im im)) #s(literal 1/6 binary64)) (pow.f64 im #s(literal 3 binary64)))
(* -1/5040 (pow im 2))
(*.f64 #s(literal -1/5040 binary64) (*.f64 im im))
(* (pow im 2) (- (* 1/120 (/ 1 (pow im 2))) 1/5040))
(*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/120 binary64) (*.f64 im im)) #s(literal 1/5040 binary64)) im) im)
(* -1/5040 (pow im 4))
(*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal -1/5040 binary64))
(* (pow im 4) (- (* 1/120 (/ 1 (pow im 2))) 1/5040))
(*.f64 (pow.f64 im #s(literal 4 binary64)) (-.f64 (/.f64 #s(literal 1/120 binary64) (*.f64 im im)) #s(literal 1/5040 binary64)))
(* (pow im 4) (- (* 1/120 (/ 1 (pow im 2))) (+ 1/5040 (/ 1/6 (pow im 4)))))
(*.f64 (-.f64 (-.f64 (/.f64 #s(literal 1/120 binary64) (*.f64 im im)) #s(literal 1/5040 binary64)) (/.f64 #s(literal 1/6 binary64) (pow.f64 im #s(literal 4 binary64)))) (pow.f64 im #s(literal 4 binary64)))
(* -1 (* im (- (* -1 re) 1)))
(fma.f64 im re im)
(* -1 (* (pow im 7) (- 1/5040 (* 1/120 (/ 1 (pow im 2))))))
(*.f64 (+.f64 (/.f64 #s(literal 1/120 binary64) (*.f64 im im)) #s(literal -1/5040 binary64)) (pow.f64 im #s(literal 7 binary64)))
(* -1 (* (pow im 7) (- (+ 1/5040 (/ 1/6 (pow im 4))) (* 1/120 (/ 1 (pow im 2))))))
(*.f64 (+.f64 (/.f64 #s(literal -1/6 binary64) (pow.f64 im #s(literal 4 binary64))) (+.f64 (/.f64 #s(literal 1/120 binary64) (*.f64 im im)) #s(literal -1/5040 binary64))) (pow.f64 im #s(literal 7 binary64)))
(* -1 (* (pow im 7) (- (+ 1/5040 (/ 1/6 (pow im 4))) (+ (* 1/120 (/ 1 (pow im 2))) (/ 1 (pow im 6))))))
(*.f64 (neg.f64 (pow.f64 im #s(literal 7 binary64))) (-.f64 (-.f64 (+.f64 (/.f64 #s(literal 1/6 binary64) (pow.f64 im #s(literal 4 binary64))) #s(literal 1/5040 binary64)) (/.f64 #s(literal 1/120 binary64) (*.f64 im im))) (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 6 binary64)))))
(* -1 (* (pow im 3) (- 1/6 (/ 1 (pow im 2)))))
(*.f64 (pow.f64 (neg.f64 im) #s(literal 3 binary64)) (-.f64 #s(literal 1/6 binary64) (/.f64 #s(literal 1 binary64) (*.f64 im im))))

rewrite96.0ms (1.5%)

Memory
-1.4MiB live, 103.3MiB allocated; 17ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
036234
060234
1218234
01604234
Stop Event
iter limit
iter limit
node limit
iter limit
Counts
21 → 206
Calls
Call 1
Inputs
(*.f64 #s(approx (exp re) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re #s(literal 1 binary64))) (sin.f64 im))
#s(approx (exp re) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re #s(literal 1 binary64)))
(fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re #s(literal 1 binary64))
(fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 re im im)))
#s(approx (* (exp re) im) (fma.f64 re im im))
(fma.f64 re im im)
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re #s(literal 1 binary64))) im))
(*.f64 #s(approx (exp re) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re #s(literal 1 binary64))) im)
(*.f64 #s(approx (exp re) (+.f64 #s(literal 1 binary64) re)) #s(approx (sin im) (fma.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal -1/6 binary64) im)))
#s(approx (exp re) (+.f64 #s(literal 1 binary64) re))
(+.f64 #s(literal 1 binary64) re)
#s(approx (sin im) (fma.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal -1/6 binary64) im))
#s(approx (* (exp re) (sin im)) #s(approx (sin im) (fma.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 im im) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) im)))
#s(approx (sin im) (fma.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 im im) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) im))
(fma.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 im im) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) im)
(pow.f64 im #s(literal 3 binary64))
(fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64))
(fma.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal -1/6 binary64) im)
(fma.f64 #s(literal -1/5040 binary64) (*.f64 im im) #s(literal 1/120 binary64))
(fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 im im) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64))
Outputs
(*.f64 (sin.f64 im) #s(approx (exp re) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re #s(literal 1 binary64))))
(*.f64 #s(approx (exp re) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re #s(literal 1 binary64))) (sin.f64 im))
#s(approx (exp re) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re #s(literal 1 binary64)))
(/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re) #s(literal 2 binary64))) (-.f64 #s(literal 1 binary64) (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re)))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re) #s(literal 2 binary64)) #s(literal 1 binary64))) (neg.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re #s(literal -1 binary64))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re) #s(literal 3 binary64)) #s(literal -1 binary64))) (neg.f64 (-.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re))))
(/.f64 (-.f64 (pow.f64 (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re) #s(literal 2 binary64)) #s(literal 1 binary64)) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re #s(literal -1 binary64)))
(/.f64 (-.f64 (pow.f64 (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re) #s(literal 3 binary64)) #s(literal -1 binary64)) (+.f64 #s(literal 1 binary64) (-.f64 (pow.f64 (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re) #s(literal 2 binary64)) (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re))))
(/.f64 (-.f64 (pow.f64 (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re) #s(literal 3 binary64)) #s(literal -1 binary64)) (-.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re)))
(fma.f64 (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re) #s(literal 1 binary64) #s(literal 1 binary64))
(fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re #s(literal 1 binary64))
(fma.f64 #s(literal 1 binary64) (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re) #s(literal 1 binary64))
(fma.f64 re (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) #s(literal 1 binary64)) #s(literal 1 binary64))
(fma.f64 re (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) #s(literal 1 binary64))
(-.f64 (/.f64 (pow.f64 (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re) #s(literal 2 binary64)) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re #s(literal -1 binary64))) (/.f64 #s(literal 1 binary64) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re #s(literal -1 binary64))))
(-.f64 (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re) #s(literal -1 binary64))
(-.f64 #s(literal 1 binary64) (*.f64 (neg.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64))) re))
(-.f64 #s(literal 1 binary64) (*.f64 (neg.f64 re) (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64))))
(+.f64 (/.f64 (pow.f64 (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re) #s(literal 3 binary64)) (-.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re))) (/.f64 #s(literal 1 binary64) (-.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re))))
(+.f64 (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re) #s(literal 1 binary64))
(+.f64 #s(literal 1 binary64) (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re))
(/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re) #s(literal 2 binary64))) (-.f64 #s(literal 1 binary64) (*.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re)))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re) #s(literal 2 binary64)) #s(literal 1 binary64))) (neg.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal -1 binary64))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re) #s(literal 3 binary64)) #s(literal -1 binary64))) (neg.f64 (-.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re))))
(/.f64 (-.f64 (pow.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re) #s(literal 2 binary64)) #s(literal 1 binary64)) (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal -1 binary64)))
(/.f64 (-.f64 (pow.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re) #s(literal 3 binary64)) #s(literal -1 binary64)) (+.f64 #s(literal 1 binary64) (-.f64 (pow.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re) #s(literal 2 binary64)) (*.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re))))
(/.f64 (-.f64 (pow.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re) #s(literal 3 binary64)) #s(literal -1 binary64)) (-.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re)))
(fma.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re) #s(literal 1 binary64) #s(literal 1 binary64))
(fma.f64 #s(literal 1 binary64) (*.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re) #s(literal 1 binary64))
(fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64))
(fma.f64 re (*.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) #s(literal 1 binary64)) #s(literal 1 binary64))
(fma.f64 re (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) #s(literal 1 binary64))
(-.f64 (/.f64 (pow.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re) #s(literal 2 binary64)) (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal -1 binary64))) (/.f64 #s(literal 1 binary64) (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal -1 binary64))))
(-.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re) #s(literal -1 binary64))
(-.f64 #s(literal 1 binary64) (*.f64 (neg.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64))) re))
(-.f64 #s(literal 1 binary64) (*.f64 (neg.f64 re) (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64))))
(+.f64 (/.f64 (pow.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re) #s(literal 3 binary64)) (-.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re))) (/.f64 #s(literal 1 binary64) (-.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re))))
(+.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re) #s(literal 1 binary64))
(+.f64 #s(literal 1 binary64) (*.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 im re im)))
#s(approx (* (exp re) im) (fma.f64 im re im))
(*.f64 (-.f64 re #s(literal -1 binary64)) im)
(*.f64 im (-.f64 re #s(literal -1 binary64)))
(/.f64 (*.f64 (-.f64 #s(literal 1 binary64) (*.f64 re re)) im) (-.f64 #s(literal 1 binary64) re))
(/.f64 (*.f64 (+.f64 (pow.f64 re #s(literal 3 binary64)) #s(literal 1 binary64)) im) (fma.f64 re (-.f64 re #s(literal 1 binary64)) #s(literal 1 binary64)))
(/.f64 (-.f64 (*.f64 im im) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (-.f64 im (*.f64 im re)))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 im re) #s(literal 2 binary64)) (*.f64 im im))) (neg.f64 (-.f64 (*.f64 im re) im)))
(/.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 im re) #s(literal 3 binary64)) (pow.f64 im #s(literal 3 binary64)))) (neg.f64 (fma.f64 im (-.f64 im (*.f64 im re)) (pow.f64 (*.f64 im re) #s(literal 2 binary64)))))
(/.f64 (-.f64 (pow.f64 (*.f64 im re) #s(literal 2 binary64)) (*.f64 im im)) (-.f64 (*.f64 im re) im))
(/.f64 (+.f64 (pow.f64 (*.f64 im re) #s(literal 3 binary64)) (pow.f64 im #s(literal 3 binary64))) (fma.f64 im im (-.f64 (pow.f64 (*.f64 im re) #s(literal 2 binary64)) (*.f64 (*.f64 im re) im))))
(/.f64 (+.f64 (pow.f64 (*.f64 im re) #s(literal 3 binary64)) (pow.f64 im #s(literal 3 binary64))) (fma.f64 im (-.f64 im (*.f64 im re)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))))
(fma.f64 im re im)
(fma.f64 re im im)
(-.f64 (/.f64 (pow.f64 (*.f64 im re) #s(literal 2 binary64)) (-.f64 (*.f64 im re) im)) (/.f64 (*.f64 im im) (-.f64 (*.f64 im re) im)))
(-.f64 im (*.f64 (neg.f64 im) re))
(-.f64 im (*.f64 (neg.f64 re) im))
(+.f64 (/.f64 (pow.f64 (*.f64 im re) #s(literal 3 binary64)) (fma.f64 im (-.f64 im (*.f64 im re)) (pow.f64 (*.f64 im re) #s(literal 2 binary64)))) (/.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 im (-.f64 im (*.f64 im re)) (pow.f64 (*.f64 im re) #s(literal 2 binary64)))))
(+.f64 (*.f64 im re) im)
(+.f64 im (*.f64 im re))
#s(approx (* (exp re) (sin im)) (*.f64 im #s(approx (exp re) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re #s(literal 1 binary64)))))
(*.f64 im #s(approx (exp re) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re #s(literal 1 binary64))))
(*.f64 #s(approx (exp re) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re #s(literal 1 binary64))) im)
(*.f64 #s(approx (sin im) (fma.f64 #s(literal -1/6 binary64) (pow.f64 im #s(literal 3 binary64)) im)) #s(approx (exp re) (-.f64 re #s(literal -1 binary64))))
(*.f64 #s(approx (exp re) (-.f64 re #s(literal -1 binary64))) #s(approx (sin im) (fma.f64 #s(literal -1/6 binary64) (pow.f64 im #s(literal 3 binary64)) im)))
#s(approx (exp re) (-.f64 re #s(literal -1 binary64)))
(/.f64 (-.f64 (*.f64 re re) #s(literal 1 binary64)) (-.f64 re #s(literal 1 binary64)))
(/.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (*.f64 re re))) (neg.f64 (-.f64 #s(literal 1 binary64) re)))
(/.f64 (neg.f64 (+.f64 (pow.f64 re #s(literal 3 binary64)) #s(literal 1 binary64))) (neg.f64 (fma.f64 re (-.f64 re #s(literal 1 binary64)) #s(literal 1 binary64))))
(/.f64 (-.f64 #s(literal 1 binary64) (*.f64 re re)) (-.f64 #s(literal 1 binary64) re))
(/.f64 (+.f64 (pow.f64 re #s(literal 3 binary64)) #s(literal 1 binary64)) (fma.f64 re re (-.f64 #s(literal 1 binary64) re)))
(/.f64 (+.f64 (pow.f64 re #s(literal 3 binary64)) #s(literal 1 binary64)) (fma.f64 re (-.f64 re #s(literal 1 binary64)) #s(literal 1 binary64)))
(-.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) re)) (/.f64 (*.f64 re re) (-.f64 #s(literal 1 binary64) re)))
(-.f64 re #s(literal -1 binary64))
(+.f64 (/.f64 #s(literal 1 binary64) (fma.f64 re (-.f64 re #s(literal 1 binary64)) #s(literal 1 binary64))) (/.f64 (pow.f64 re #s(literal 3 binary64)) (fma.f64 re (-.f64 re #s(literal 1 binary64)) #s(literal 1 binary64))))
(+.f64 #s(literal 1 binary64) re)
(+.f64 re #s(literal 1 binary64))
#s(approx (sin im) (fma.f64 #s(literal -1/6 binary64) (pow.f64 im #s(literal 3 binary64)) im))
#s(approx (* (exp re) (sin im)) #s(approx (sin im) (fma.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) (pow.f64 im #s(literal 3 binary64)) im)))
#s(approx (sin im) (fma.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) (pow.f64 im #s(literal 3 binary64)) im))
(/.f64 (-.f64 (*.f64 im im) (pow.f64 (*.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) (pow.f64 im #s(literal 3 binary64))) #s(literal 2 binary64))) (-.f64 im (*.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) (pow.f64 im #s(literal 3 binary64)))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) (pow.f64 im #s(literal 3 binary64))) #s(literal 2 binary64)) (*.f64 im im))) (neg.f64 (-.f64 (*.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) (pow.f64 im #s(literal 3 binary64))) im)))
(/.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) (pow.f64 im #s(literal 3 binary64))) #s(literal 3 binary64)) (pow.f64 im #s(literal 3 binary64)))) (neg.f64 (fma.f64 im (-.f64 im (*.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) (pow.f64 im #s(literal 3 binary64)))) (pow.f64 (*.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) (pow.f64 im #s(literal 3 binary64))) #s(literal 2 binary64)))))
(/.f64 (-.f64 (pow.f64 (*.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) (pow.f64 im #s(literal 3 binary64))) #s(literal 2 binary64)) (*.f64 im im)) (-.f64 (*.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) (pow.f64 im #s(literal 3 binary64))) im))
(/.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) (pow.f64 im #s(literal 3 binary64))) #s(literal 3 binary64)) (pow.f64 im #s(literal 3 binary64))) (fma.f64 im im (-.f64 (pow.f64 (*.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) (pow.f64 im #s(literal 3 binary64))) #s(literal 2 binary64)) (*.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) (*.f64 (pow.f64 im #s(literal 3 binary64)) im)))))
(/.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) (pow.f64 im #s(literal 3 binary64))) #s(literal 3 binary64)) (pow.f64 im #s(literal 3 binary64))) (fma.f64 im (-.f64 im (*.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) (pow.f64 im #s(literal 3 binary64)))) (pow.f64 (*.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) (pow.f64 im #s(literal 3 binary64))) #s(literal 2 binary64))))
(fma.f64 (*.f64 (pow.f64 im #s(literal 3 binary64)) (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) im)) im (fma.f64 #s(literal -1/6 binary64) (pow.f64 im #s(literal 3 binary64)) im))
(fma.f64 (*.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 (*.f64 im im) #s(literal -1/5040 binary64) #s(literal 1/120 binary64))) (*.f64 im im) (fma.f64 #s(literal -1/6 binary64) (pow.f64 im #s(literal 3 binary64)) im))
(fma.f64 (*.f64 (pow.f64 im #s(literal 3 binary64)) (*.f64 im im)) (fma.f64 (*.f64 im im) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (fma.f64 #s(literal -1/6 binary64) (pow.f64 im #s(literal 3 binary64)) im))
(fma.f64 (*.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) (pow.f64 im #s(literal 3/2 binary64))) (pow.f64 im #s(literal 3/2 binary64)) im)
(fma.f64 (*.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) (*.f64 im im)) im im)
(fma.f64 (*.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) im) (*.f64 im im) im)
(fma.f64 (*.f64 (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) im) im) (pow.f64 im #s(literal 3/2 binary64))) (pow.f64 im #s(literal 3/2 binary64)) (fma.f64 #s(literal -1/6 binary64) (pow.f64 im #s(literal 3 binary64)) im))
(fma.f64 (*.f64 (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) im) im) (*.f64 im im)) im (fma.f64 #s(literal -1/6 binary64) (pow.f64 im #s(literal 3 binary64)) im))
(fma.f64 (*.f64 (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) im) im) im) (*.f64 im im) (fma.f64 #s(literal -1/6 binary64) (pow.f64 im #s(literal 3 binary64)) im))
(fma.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) im) (*.f64 im (pow.f64 im #s(literal 3 binary64))) (fma.f64 #s(literal -1/6 binary64) (pow.f64 im #s(literal 3 binary64)) im))
(fma.f64 (pow.f64 im #s(literal 3/2 binary64)) (*.f64 (pow.f64 im #s(literal 3/2 binary64)) (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) im) im)) (fma.f64 #s(literal -1/6 binary64) (pow.f64 im #s(literal 3 binary64)) im))
(fma.f64 (pow.f64 im #s(literal 3/2 binary64)) (*.f64 (pow.f64 im #s(literal 3/2 binary64)) (fma.f64 (fma.f64 (*.f64 im im) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64))) im)
(fma.f64 (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) im) im) (pow.f64 im #s(literal 3 binary64)) (fma.f64 #s(literal -1/6 binary64) (pow.f64 im #s(literal 3 binary64)) im))
(fma.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) (pow.f64 im #s(literal 3 binary64)) im)
(fma.f64 (fma.f64 (*.f64 im im) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 (*.f64 im im) (pow.f64 im #s(literal 3 binary64))) (fma.f64 #s(literal -1/6 binary64) (pow.f64 im #s(literal 3 binary64)) im))
(fma.f64 (*.f64 im im) (*.f64 im (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) im) im)) (fma.f64 #s(literal -1/6 binary64) (pow.f64 im #s(literal 3 binary64)) im))
(fma.f64 (*.f64 im im) (*.f64 im (fma.f64 (fma.f64 (*.f64 im im) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64))) im)
(fma.f64 (*.f64 im im) (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (pow.f64 im #s(literal 3 binary64))) (fma.f64 #s(literal -1/6 binary64) (pow.f64 im #s(literal 3 binary64)) im))
(fma.f64 (pow.f64 im #s(literal 3 binary64)) (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) im) im) (fma.f64 #s(literal -1/6 binary64) (pow.f64 im #s(literal 3 binary64)) im))
(fma.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 (fma.f64 (*.f64 im im) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) im)
(fma.f64 im (*.f64 (*.f64 im im) (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) im) im)) (fma.f64 #s(literal -1/6 binary64) (pow.f64 im #s(literal 3 binary64)) im))
(fma.f64 im (*.f64 (*.f64 im im) (fma.f64 (fma.f64 (*.f64 im im) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64))) im)
(-.f64 (/.f64 (pow.f64 (*.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) (pow.f64 im #s(literal 3 binary64))) #s(literal 2 binary64)) (-.f64 (*.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) (pow.f64 im #s(literal 3 binary64))) im)) (/.f64 (*.f64 im im) (-.f64 (*.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) (pow.f64 im #s(literal 3 binary64))) im)))
(-.f64 im (*.f64 (neg.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64))) (pow.f64 im #s(literal 3 binary64))))
(-.f64 im (*.f64 (neg.f64 (pow.f64 im #s(literal 3 binary64))) (fma.f64 (fma.f64 (*.f64 im im) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64))))
(+.f64 (+.f64 im (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) im) (*.f64 im (pow.f64 im #s(literal 3 binary64))))) (*.f64 #s(literal -1/6 binary64) (pow.f64 im #s(literal 3 binary64))))
(+.f64 (/.f64 (pow.f64 (*.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) (pow.f64 im #s(literal 3 binary64))) #s(literal 3 binary64)) (fma.f64 im (-.f64 im (*.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) (pow.f64 im #s(literal 3 binary64)))) (pow.f64 (*.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) (pow.f64 im #s(literal 3 binary64))) #s(literal 2 binary64)))) (/.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 im (-.f64 im (*.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) (pow.f64 im #s(literal 3 binary64)))) (pow.f64 (*.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) (pow.f64 im #s(literal 3 binary64))) #s(literal 2 binary64)))))
(+.f64 (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) im) (*.f64 im (pow.f64 im #s(literal 3 binary64)))) (fma.f64 #s(literal -1/6 binary64) (pow.f64 im #s(literal 3 binary64)) im))
(+.f64 (*.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) (pow.f64 im #s(literal 3 binary64))) im)
(+.f64 im (*.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) (pow.f64 im #s(literal 3 binary64))))
(*.f64 (*.f64 im (fabs.f64 im)) (fabs.f64 im))
(*.f64 (*.f64 im (neg.f64 im)) (neg.f64 im))
(*.f64 (neg.f64 (pow.f64 im #s(literal 3/2 binary64))) (neg.f64 (pow.f64 im #s(literal 3/2 binary64))))
(*.f64 (fabs.f64 (pow.f64 im #s(literal 3/2 binary64))) (fabs.f64 (pow.f64 im #s(literal 3/2 binary64))))
(*.f64 (pow.f64 im #s(literal 3/2 binary64)) (pow.f64 im #s(literal 3/2 binary64)))
(*.f64 (neg.f64 im) (*.f64 (neg.f64 im) im))
(*.f64 (fabs.f64 im) (*.f64 (fabs.f64 im) im))
(*.f64 (*.f64 im im) im)
(*.f64 im (*.f64 im im))
(pow.f64 (exp.f64 (log.f64 im)) #s(literal 3 binary64))
(pow.f64 (pow.f64 im #s(literal 3/2 binary64)) #s(literal 2 binary64))
(pow.f64 (*.f64 im im) #s(literal 3/2 binary64))
(pow.f64 im #s(literal 3 binary64))
(exp.f64 (*.f64 (log.f64 im) #s(literal 3 binary64)))
(+.f64 (cosh.f64 (*.f64 (log.f64 im) #s(literal 3 binary64))) (sinh.f64 (*.f64 (log.f64 im) #s(literal 3 binary64))))
(/.f64 (-.f64 #s(literal 1/4 binary64) (pow.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 2 binary64))) (-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/6 binary64) re)))
(/.f64 (neg.f64 (fma.f64 (*.f64 re re) #s(literal 1/36 binary64) #s(literal -1/4 binary64))) (neg.f64 (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))))
(/.f64 (neg.f64 (fma.f64 #s(literal 1/216 binary64) (pow.f64 re #s(literal 3 binary64)) #s(literal 1/8 binary64))) (neg.f64 (fma.f64 (*.f64 re re) #s(literal 1/36 binary64) (-.f64 #s(literal 1/4 binary64) (*.f64 re #s(literal 1/12 binary64))))))
(/.f64 (fma.f64 (*.f64 re re) #s(literal 1/36 binary64) #s(literal -1/4 binary64)) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64)))
(/.f64 (fma.f64 #s(literal 1/216 binary64) (pow.f64 re #s(literal 3 binary64)) #s(literal 1/8 binary64)) (+.f64 #s(literal 1/4 binary64) (-.f64 (pow.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 2 binary64)) (*.f64 re #s(literal 1/12 binary64)))))
(/.f64 (fma.f64 #s(literal 1/216 binary64) (pow.f64 re #s(literal 3 binary64)) #s(literal 1/8 binary64)) (fma.f64 (*.f64 re re) #s(literal 1/36 binary64) (-.f64 #s(literal 1/4 binary64) (*.f64 re #s(literal 1/12 binary64)))))
(fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64))
(fma.f64 re #s(literal 1/6 binary64) #s(literal 1/2 binary64))
(-.f64 (/.f64 (pow.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))) (/.f64 #s(literal 1/4 binary64) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))))
(-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal -1/6 binary64) re))
(-.f64 #s(literal 1/2 binary64) (*.f64 (neg.f64 re) #s(literal 1/6 binary64)))
(+.f64 (/.f64 (pow.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 3 binary64)) (fma.f64 (*.f64 re re) #s(literal 1/36 binary64) (-.f64 #s(literal 1/4 binary64) (*.f64 re #s(literal 1/12 binary64))))) (/.f64 #s(literal 1/8 binary64) (fma.f64 (*.f64 re re) #s(literal 1/36 binary64) (-.f64 #s(literal 1/4 binary64) (*.f64 re #s(literal 1/12 binary64))))))
(+.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))
(+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/6 binary64) re))
(/.f64 (-.f64 (*.f64 im im) (pow.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 im #s(literal 3 binary64))) #s(literal 2 binary64))) (-.f64 im (*.f64 #s(literal -1/6 binary64) (pow.f64 im #s(literal 3 binary64)))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 im #s(literal 3 binary64))) #s(literal 2 binary64)) (*.f64 im im))) (neg.f64 (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 im #s(literal 3 binary64))) im)))
(/.f64 (neg.f64 (fma.f64 (pow.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal 3 binary64)) #s(literal -1/216 binary64) (pow.f64 im #s(literal 3 binary64)))) (neg.f64 (fma.f64 im (-.f64 im (*.f64 #s(literal -1/6 binary64) (pow.f64 im #s(literal 3 binary64)))) (pow.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 im #s(literal 3 binary64))) #s(literal 2 binary64)))))
(/.f64 (-.f64 (pow.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 im #s(literal 3 binary64))) #s(literal 2 binary64)) (*.f64 im im)) (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 im #s(literal 3 binary64))) im))
(/.f64 (fma.f64 (pow.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal 3 binary64)) #s(literal -1/216 binary64) (pow.f64 im #s(literal 3 binary64))) (fma.f64 im im (-.f64 (pow.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 im #s(literal 3 binary64))) #s(literal 2 binary64)) (*.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 im #s(literal 3 binary64))) im))))
(/.f64 (fma.f64 (pow.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal 3 binary64)) #s(literal -1/216 binary64) (pow.f64 im #s(literal 3 binary64))) (fma.f64 im (-.f64 im (*.f64 #s(literal -1/6 binary64) (pow.f64 im #s(literal 3 binary64)))) (pow.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 im #s(literal 3 binary64))) #s(literal 2 binary64))))
(fma.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 im #s(literal 3/2 binary64))) (pow.f64 im #s(literal 3/2 binary64)) im)
(fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 im im)) im im)
(fma.f64 (*.f64 #s(literal -1/6 binary64) im) (*.f64 im im) im)
(fma.f64 (pow.f64 im #s(literal 3/2 binary64)) (*.f64 (pow.f64 im #s(literal 3/2 binary64)) #s(literal -1/6 binary64)) im)
(fma.f64 (*.f64 im im) (*.f64 im #s(literal -1/6 binary64)) im)
(fma.f64 #s(literal -1/6 binary64) (pow.f64 im #s(literal 3 binary64)) im)
(fma.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal -1/6 binary64) im)
(fma.f64 im (*.f64 (*.f64 im im) #s(literal -1/6 binary64)) im)
(-.f64 (/.f64 (pow.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 im #s(literal 3 binary64))) #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 im #s(literal 3 binary64))) im)) (/.f64 (*.f64 im im) (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 im #s(literal 3 binary64))) im)))
(-.f64 im (*.f64 #s(literal 1/6 binary64) (pow.f64 im #s(literal 3 binary64))))
(-.f64 im (*.f64 (neg.f64 (pow.f64 im #s(literal 3 binary64))) #s(literal -1/6 binary64)))
(+.f64 (/.f64 (pow.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 im #s(literal 3 binary64))) #s(literal 3 binary64)) (fma.f64 im (-.f64 im (*.f64 #s(literal -1/6 binary64) (pow.f64 im #s(literal 3 binary64)))) (pow.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 im #s(literal 3 binary64))) #s(literal 2 binary64)))) (/.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 im (-.f64 im (*.f64 #s(literal -1/6 binary64) (pow.f64 im #s(literal 3 binary64)))) (pow.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 im #s(literal 3 binary64))) #s(literal 2 binary64)))))
(+.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 im #s(literal 3 binary64))) im)
(+.f64 im (*.f64 #s(literal -1/6 binary64) (pow.f64 im #s(literal 3 binary64))))
(/.f64 (-.f64 #s(literal 1/14400 binary64) (pow.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 2 binary64))) (-.f64 #s(literal 1/120 binary64) (*.f64 (*.f64 im im) #s(literal -1/5040 binary64))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 2 binary64)) #s(literal 1/14400 binary64))) (neg.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64))))
(/.f64 (neg.f64 (fma.f64 #s(literal -1/128024064000 binary64) (pow.f64 (*.f64 im im) #s(literal 3 binary64)) #s(literal 1/1728000 binary64))) (neg.f64 (-.f64 (+.f64 (pow.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 2 binary64)) #s(literal 1/14400 binary64)) (*.f64 (*.f64 im im) #s(literal -1/604800 binary64)))))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 2 binary64)) #s(literal 1/14400 binary64)) (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)))
(/.f64 (fma.f64 #s(literal -1/128024064000 binary64) (pow.f64 (*.f64 im im) #s(literal 3 binary64)) #s(literal 1/1728000 binary64)) (+.f64 #s(literal 1/14400 binary64) (-.f64 (pow.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 2 binary64)) (*.f64 (*.f64 im im) #s(literal -1/604800 binary64)))))
(/.f64 (fma.f64 #s(literal -1/128024064000 binary64) (pow.f64 (*.f64 im im) #s(literal 3 binary64)) #s(literal 1/1728000 binary64)) (-.f64 (+.f64 (pow.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 2 binary64)) #s(literal 1/14400 binary64)) (*.f64 (*.f64 im im) #s(literal -1/604800 binary64))))
(fma.f64 (*.f64 #s(literal -1/5040 binary64) (neg.f64 im)) (neg.f64 im) #s(literal 1/120 binary64))
(fma.f64 (*.f64 #s(literal -1/5040 binary64) (fabs.f64 im)) (fabs.f64 im) #s(literal 1/120 binary64))
(fma.f64 (*.f64 #s(literal -1/5040 binary64) im) im #s(literal 1/120 binary64))
(fma.f64 (neg.f64 im) (*.f64 (neg.f64 im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64))
(fma.f64 (fabs.f64 im) (*.f64 (fabs.f64 im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64))
(fma.f64 (*.f64 im im) #s(literal -1/5040 binary64) #s(literal 1/120 binary64))
(fma.f64 #s(literal -1/5040 binary64) (*.f64 im im) #s(literal 1/120 binary64))
(fma.f64 im (*.f64 #s(literal -1/5040 binary64) im) #s(literal 1/120 binary64))
(-.f64 (/.f64 (pow.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 2 binary64)) (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64))) (/.f64 #s(literal 1/14400 binary64) (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64))))
(-.f64 #s(literal 1/120 binary64) (*.f64 (neg.f64 (*.f64 #s(literal -1/5040 binary64) im)) im))
(-.f64 #s(literal 1/120 binary64) (*.f64 (neg.f64 (*.f64 im im)) #s(literal -1/5040 binary64)))
(-.f64 #s(literal 1/120 binary64) (*.f64 #s(literal 1/5040 binary64) (*.f64 im im)))
(+.f64 (/.f64 (pow.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 3 binary64)) (-.f64 (+.f64 (pow.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 2 binary64)) #s(literal 1/14400 binary64)) (*.f64 (*.f64 im im) #s(literal -1/604800 binary64)))) (/.f64 #s(literal 1/1728000 binary64) (-.f64 (+.f64 (pow.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 2 binary64)) #s(literal 1/14400 binary64)) (*.f64 (*.f64 im im) #s(literal -1/604800 binary64)))))
(+.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64))
(+.f64 #s(literal 1/120 binary64) (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)))
(/.f64 (-.f64 #s(literal 1/36 binary64) (pow.f64 (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) im) im) #s(literal 2 binary64))) (-.f64 #s(literal -1/6 binary64) (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) im) im)))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) im) im) #s(literal 2 binary64)) #s(literal 1/36 binary64))) (neg.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) im) im) #s(literal -1/6 binary64))))
(/.f64 (neg.f64 (+.f64 #s(literal -1/216 binary64) (pow.f64 (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) im) im) #s(literal 3 binary64)))) (neg.f64 (fma.f64 #s(literal -1/6 binary64) (-.f64 #s(literal -1/6 binary64) (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) im) im)) (pow.f64 (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) im) im) #s(literal 2 binary64)))))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) im) im) #s(literal 2 binary64)) #s(literal 1/36 binary64)) (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) im) im) #s(literal -1/6 binary64)))
(/.f64 (+.f64 #s(literal -1/216 binary64) (pow.f64 (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) im) im) #s(literal 3 binary64))) (+.f64 #s(literal 1/36 binary64) (-.f64 (pow.f64 (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) im) im) #s(literal 2 binary64)) (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) im) (*.f64 im #s(literal -1/6 binary64))))))
(/.f64 (+.f64 #s(literal -1/216 binary64) (pow.f64 (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) im) im) #s(literal 3 binary64))) (fma.f64 #s(literal -1/6 binary64) (-.f64 #s(literal -1/6 binary64) (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) im) im)) (pow.f64 (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) im) im) #s(literal 2 binary64))))
(fma.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (neg.f64 im)) (neg.f64 im) #s(literal -1/6 binary64))
(fma.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (fabs.f64 im)) (fabs.f64 im) #s(literal -1/6 binary64))
(fma.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) im) im #s(literal -1/6 binary64))
(fma.f64 (neg.f64 im) (*.f64 (neg.f64 im) (fma.f64 (*.f64 im im) #s(literal -1/5040 binary64) #s(literal 1/120 binary64))) #s(literal -1/6 binary64))
(fma.f64 (fabs.f64 im) (*.f64 (fabs.f64 im) (fma.f64 (*.f64 im im) #s(literal -1/5040 binary64) #s(literal 1/120 binary64))) #s(literal -1/6 binary64))
(fma.f64 (fma.f64 (*.f64 im im) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64))
(fma.f64 (*.f64 im im) (fma.f64 (*.f64 im im) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) #s(literal -1/6 binary64))
(fma.f64 im (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) im) #s(literal -1/6 binary64))
(-.f64 (/.f64 (pow.f64 (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) im) im) #s(literal 2 binary64)) (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) im) im) #s(literal -1/6 binary64))) (/.f64 #s(literal 1/36 binary64) (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) im) im) #s(literal -1/6 binary64))))
(-.f64 #s(literal -1/6 binary64) (*.f64 (neg.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) im)) im))
(-.f64 #s(literal -1/6 binary64) (*.f64 (neg.f64 (fma.f64 (*.f64 im im) #s(literal -1/5040 binary64) #s(literal 1/120 binary64))) (*.f64 im im)))
(-.f64 #s(literal -1/6 binary64) (*.f64 (neg.f64 (*.f64 im im)) (fma.f64 (*.f64 im im) #s(literal -1/5040 binary64) #s(literal 1/120 binary64))))
(+.f64 (/.f64 (pow.f64 (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) im) im) #s(literal 3 binary64)) (fma.f64 #s(literal -1/6 binary64) (-.f64 #s(literal -1/6 binary64) (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) im) im)) (pow.f64 (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) im) im) #s(literal 2 binary64)))) (/.f64 #s(literal -1/216 binary64) (fma.f64 #s(literal -1/6 binary64) (-.f64 #s(literal -1/6 binary64) (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) im) im)) (pow.f64 (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) im) im) #s(literal 2 binary64)))))
(+.f64 (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) im) im) #s(literal -1/6 binary64))
(+.f64 #s(literal -1/6 binary64) (*.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) im) im))

eval107.0ms (1.7%)

Memory
-21.7MiB live, 67.7MiB allocated; 9ms collecting garbage
Compiler

Compiled 9 774 to 1 430 computations (85.4% saved)

prune33.0ms (0.5%)

Memory
9.0MiB live, 65.7MiB allocated; 8ms collecting garbage
Pruning

32 alts after pruning (24 fresh and 8 done)

PrunedKeptTotal
New33014344
Fresh21012
Picked325
Done066
Total33532367
Accuracy
100.0%
Counts
367 → 32
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(/.f64 (sin.f64 im) (exp.f64 (neg.f64 re)))
64.3%
(/.f64 (sin.f64 im) #s(approx (exp (neg re)) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal -1 binary64)) re #s(literal 1 binary64))))
60.8%
(/.f64 (sin.f64 im) #s(approx (exp (neg re)) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal -1 binary64)) re #s(literal 1 binary64))))
51.9%
(/.f64 (sin.f64 im) #s(approx (exp (neg re)) (-.f64 #s(literal 1 binary64) re)))
100.0%
(*.f64 (exp.f64 re) (sin.f64 im))
65.5%
(*.f64 #s(approx (exp re) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re #s(literal 1 binary64))) (sin.f64 im))
61.8%
(*.f64 #s(approx (exp re) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64))) (sin.f64 im))
44.2%
(*.f64 #s(approx (exp re) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64))) #s(approx (sin im) (fma.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 im im) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) im)))
43.8%
(*.f64 #s(approx (exp re) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64))) #s(approx (sin im) (fma.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal -1/6 binary64) im)))
47.1%
(*.f64 #s(approx (exp re) (+.f64 #s(literal 1 binary64) re)) (sin.f64 im))
35.2%
(*.f64 #s(approx (exp re) (+.f64 #s(literal 1 binary64) re)) #s(approx (sin im) (fma.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 im im) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) im)))
34.1%
(*.f64 #s(approx (exp re) (+.f64 #s(literal 1 binary64) re)) #s(approx (sin im) (fma.f64 (*.f64 (*.f64 im im) im) #s(literal -1/6 binary64) im)))
34.1%
(*.f64 #s(approx (exp re) (+.f64 #s(literal 1 binary64) re)) #s(approx (sin im) (fma.f64 (*.f64 im im) (*.f64 im #s(literal -1/6 binary64)) im)))
15.1%
(*.f64 #s(approx (exp re) (+.f64 #s(literal 1 binary64) re)) #s(approx (sin im) #s(approx (+ (* (pow im 3) -1/6) im) (*.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal -1/6 binary64)))))
22.4%
(*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re))) (sin.f64 im))
22.6%
(*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re) re))) (sin.f64 im))
18.6%
(*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* 1/2 re) 1) re) 1) (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re))) (sin.f64 im))
18.8%
(*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* 1/2 re) 1) re) 1) (*.f64 (*.f64 re re) #s(literal 1/2 binary64)))) (sin.f64 im))
73.4%
#s(approx (* (exp re) (sin im)) (*.f64 (exp.f64 re) im))
43.7%
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.f64 (fma.f64 (/.f64 (fma.f64 (*.f64 re re) #s(literal 1/36 binary64) #s(literal -1/4 binary64)) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))) re #s(literal 1 binary64)) re #s(literal 1 binary64))) im))
41.5%
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re #s(literal 1 binary64))) im))
43.7%
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.f64 #s(approx (+ (* (+ (* 1/6 re) 1/2) re) 1) (*.f64 (*.f64 re re) #s(literal 1/6 binary64))) re #s(literal 1 binary64))) im))
18.8%
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re))) im))
18.7%
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re) re))) im))
28.8%
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(literal 1 binary64)) im))
46.7%
#s(approx (* (exp re) (sin im)) (sin.f64 im))
37.8%
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 (fma.f64 (*.f64 re im) #s(literal 1/2 binary64) im) re im)))
41.1%
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 (fma.f64 (*.f64 im (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64))) re im) re im)))
31.8%
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 re im im)))
6.9%
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) #s(approx (+ (* re im) im) (*.f64 im re))))
34.9%
#s(approx (* (exp re) (sin im)) #s(approx (sin im) (fma.f64 (*.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) (*.f64 im im)) im im)))
34.9%
#s(approx (* (exp re) (sin im)) #s(approx (sin im) (fma.f64 (*.f64 (*.f64 im im) im) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 im im) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) im)))
Compiler

Compiled 1 190 to 847 computations (28.8% saved)

simplify208.0ms (3.3%)

Memory
-37.9MiB live, 162.1MiB allocated; 30ms collecting garbage
Localize:

Found 20 expressions of interest:

NewMetricScoreProgram
cost-diff0
(*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re)
cost-diff0
#s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re))
cost-diff0
#s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re)))
cost-diff0
(*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re))) (sin.f64 im))
cost-diff0
(fma.f64 (fma.f64 (/.f64 (fma.f64 (*.f64 re re) #s(literal 1/36 binary64) #s(literal -1/4 binary64)) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))) re #s(literal 1 binary64)) re #s(literal 1 binary64))
cost-diff0
#s(approx (exp re) (fma.f64 (fma.f64 (/.f64 (fma.f64 (*.f64 re re) #s(literal 1/36 binary64) #s(literal -1/4 binary64)) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))) re #s(literal 1 binary64)) re #s(literal 1 binary64)))
cost-diff0
(*.f64 #s(approx (exp re) (fma.f64 (fma.f64 (/.f64 (fma.f64 (*.f64 re re) #s(literal 1/36 binary64) #s(literal -1/4 binary64)) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))) re #s(literal 1 binary64)) re #s(literal 1 binary64))) im)
cost-diff0
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.f64 (fma.f64 (/.f64 (fma.f64 (*.f64 re re) #s(literal 1/36 binary64) #s(literal -1/4 binary64)) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))) re #s(literal 1 binary64)) re #s(literal 1 binary64))) im))
cost-diff0
#s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re))
cost-diff0
#s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re)))
cost-diff0
(*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re))) im)
cost-diff0
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re))) im))
cost-diff0
(*.f64 im re)
cost-diff0
#s(approx (+ (* re im) im) (*.f64 im re))
cost-diff0
#s(approx (* (exp re) im) #s(approx (+ (* re im) im) (*.f64 im re)))
cost-diff0
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) #s(approx (+ (* re im) im) (*.f64 im re))))
cost-diff0
(fma.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal -1 binary64)) re #s(literal 1 binary64))
cost-diff0
#s(approx (exp (neg re)) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal -1 binary64)) re #s(literal 1 binary64)))
cost-diff0
(sin.f64 im)
cost-diff0
(/.f64 (sin.f64 im) #s(approx (exp (neg re)) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal -1 binary64)) re #s(literal 1 binary64))))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
051477
077477
1124477
2284477
3974477
44137477
08602467
Stop Event
iter limit
node limit
iter limit
Calls
Call 1
Inputs
(/.f64 (sin.f64 im) #s(approx (exp (neg re)) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal -1 binary64)) re #s(literal 1 binary64))))
(sin.f64 im)
im
#s(approx (exp (neg re)) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal -1 binary64)) re #s(literal 1 binary64)))
(fma.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal -1 binary64)) re #s(literal 1 binary64))
(fma.f64 (fma.f64 #s(literal -1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal -1 binary64))
(fma.f64 #s(literal -1/6 binary64) re #s(literal 1/2 binary64))
#s(literal -1/6 binary64)
re
#s(literal 1/2 binary64)
#s(literal -1 binary64)
#s(literal 1 binary64)
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) #s(approx (+ (* re im) im) (*.f64 im re))))
#s(approx (* (exp re) im) #s(approx (+ (* re im) im) (*.f64 im re)))
#s(approx (+ (* re im) im) (*.f64 im re))
(*.f64 im re)
im
re
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re))) im))
(*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re))) im)
#s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re)))
#s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re))
(*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re)
(fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64))
(fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64))
#s(literal 1/6 binary64)
re
#s(literal 1/2 binary64)
#s(literal 1 binary64)
im
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.f64 (fma.f64 (/.f64 (fma.f64 (*.f64 re re) #s(literal 1/36 binary64) #s(literal -1/4 binary64)) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))) re #s(literal 1 binary64)) re #s(literal 1 binary64))) im))
(*.f64 #s(approx (exp re) (fma.f64 (fma.f64 (/.f64 (fma.f64 (*.f64 re re) #s(literal 1/36 binary64) #s(literal -1/4 binary64)) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))) re #s(literal 1 binary64)) re #s(literal 1 binary64))) im)
#s(approx (exp re) (fma.f64 (fma.f64 (/.f64 (fma.f64 (*.f64 re re) #s(literal 1/36 binary64) #s(literal -1/4 binary64)) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))) re #s(literal 1 binary64)) re #s(literal 1 binary64)))
(fma.f64 (fma.f64 (/.f64 (fma.f64 (*.f64 re re) #s(literal 1/36 binary64) #s(literal -1/4 binary64)) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))) re #s(literal 1 binary64)) re #s(literal 1 binary64))
(fma.f64 (/.f64 (fma.f64 (*.f64 re re) #s(literal 1/36 binary64) #s(literal -1/4 binary64)) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))) re #s(literal 1 binary64))
(/.f64 (fma.f64 (*.f64 re re) #s(literal 1/36 binary64) #s(literal -1/4 binary64)) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64)))
(fma.f64 (*.f64 re re) #s(literal 1/36 binary64) #s(literal -1/4 binary64))
(*.f64 re re)
re
#s(literal 1/36 binary64)
#s(literal -1/4 binary64)
(-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/6 binary64) re)
#s(literal 1/6 binary64)
#s(literal 1/2 binary64)
#s(literal 1 binary64)
im
(*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re))) (sin.f64 im))
#s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re)))
#s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re))
(*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re)
(fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64))
(fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64))
#s(literal 1/6 binary64)
re
#s(literal 1/2 binary64)
#s(literal 1 binary64)
(sin.f64 im)
im
Outputs
(/.f64 (sin.f64 im) #s(approx (exp (neg re)) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal -1 binary64)) re #s(literal 1 binary64))))
(sin.f64 im)
im
#s(approx (exp (neg re)) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal -1 binary64)) re #s(literal 1 binary64)))
(fma.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal -1 binary64)) re #s(literal 1 binary64))
(fma.f64 (fma.f64 #s(literal -1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal -1 binary64))
(fma.f64 #s(literal -1/6 binary64) re #s(literal 1/2 binary64))
#s(literal -1/6 binary64)
re
#s(literal 1/2 binary64)
#s(literal -1 binary64)
#s(literal 1 binary64)
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) #s(approx (+ (* re im) im) (*.f64 im re))))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) #s(approx (+ (* re im) im) (*.f64 re im))))
#s(approx (* (exp re) im) #s(approx (+ (* re im) im) (*.f64 im re)))
#s(approx (* (exp re) im) #s(approx (+ (* re im) im) (*.f64 re im)))
#s(approx (+ (* re im) im) (*.f64 im re))
#s(approx (+ (* re im) im) (*.f64 re im))
(*.f64 im re)
(*.f64 re im)
im
re
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re))) im))
(*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re))) im)
#s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re)))
#s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re))
(*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re)
(fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64))
(fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64))
#s(literal 1/6 binary64)
re
#s(literal 1/2 binary64)
#s(literal 1 binary64)
im
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.f64 (fma.f64 (/.f64 (fma.f64 (*.f64 re re) #s(literal 1/36 binary64) #s(literal -1/4 binary64)) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))) re #s(literal 1 binary64)) re #s(literal 1 binary64))) im))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.f64 (fma.f64 (/.f64 re (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))) (fma.f64 #s(literal 1/36 binary64) (*.f64 re re) #s(literal -1/4 binary64)) #s(literal 1 binary64)) re #s(literal 1 binary64))) im))
(*.f64 #s(approx (exp re) (fma.f64 (fma.f64 (/.f64 (fma.f64 (*.f64 re re) #s(literal 1/36 binary64) #s(literal -1/4 binary64)) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))) re #s(literal 1 binary64)) re #s(literal 1 binary64))) im)
(*.f64 #s(approx (exp re) (fma.f64 (fma.f64 (/.f64 re (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))) (fma.f64 #s(literal 1/36 binary64) (*.f64 re re) #s(literal -1/4 binary64)) #s(literal 1 binary64)) re #s(literal 1 binary64))) im)
#s(approx (exp re) (fma.f64 (fma.f64 (/.f64 (fma.f64 (*.f64 re re) #s(literal 1/36 binary64) #s(literal -1/4 binary64)) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))) re #s(literal 1 binary64)) re #s(literal 1 binary64)))
#s(approx (exp re) (fma.f64 (fma.f64 (/.f64 re (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))) (fma.f64 #s(literal 1/36 binary64) (*.f64 re re) #s(literal -1/4 binary64)) #s(literal 1 binary64)) re #s(literal 1 binary64)))
(fma.f64 (fma.f64 (/.f64 (fma.f64 (*.f64 re re) #s(literal 1/36 binary64) #s(literal -1/4 binary64)) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))) re #s(literal 1 binary64)) re #s(literal 1 binary64))
(fma.f64 (fma.f64 (/.f64 re (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))) (fma.f64 #s(literal 1/36 binary64) (*.f64 re re) #s(literal -1/4 binary64)) #s(literal 1 binary64)) re #s(literal 1 binary64))
(fma.f64 (/.f64 (fma.f64 (*.f64 re re) #s(literal 1/36 binary64) #s(literal -1/4 binary64)) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))) re #s(literal 1 binary64))
(fma.f64 (/.f64 re (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))) (fma.f64 #s(literal 1/36 binary64) (*.f64 re re) #s(literal -1/4 binary64)) #s(literal 1 binary64))
(/.f64 (fma.f64 (*.f64 re re) #s(literal 1/36 binary64) #s(literal -1/4 binary64)) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64)))
(/.f64 (fma.f64 #s(literal 1/36 binary64) (*.f64 re re) #s(literal -1/4 binary64)) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64)))
(fma.f64 (*.f64 re re) #s(literal 1/36 binary64) #s(literal -1/4 binary64))
(fma.f64 #s(literal 1/36 binary64) (*.f64 re re) #s(literal -1/4 binary64))
(*.f64 re re)
re
#s(literal 1/36 binary64)
#s(literal -1/4 binary64)
(-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/6 binary64) re)
#s(literal 1/6 binary64)
#s(literal 1/2 binary64)
#s(literal 1 binary64)
im
(*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re))) (sin.f64 im))
#s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re)))
#s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re))
(*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re)
(fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64))
(fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64))
#s(literal 1/6 binary64)
re
#s(literal 1/2 binary64)
#s(literal 1 binary64)
(sin.f64 im)
im

localize130.0ms (2%)

Memory
42.1MiB live, 129.6MiB allocated; 9ms collecting garbage
Localize:

Found 20 expressions of interest:

NewMetricScoreProgram
accuracy0.0390625
(fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64))
accuracy0.1171875
(fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64))
accuracy16.624462182122173
#s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re)))
accuracy28.60652306063838
#s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re))
accuracy0.25390625
(*.f64 #s(literal 1/6 binary64) re)
accuracy7.26888758709467
(/.f64 (fma.f64 (*.f64 re re) #s(literal 1/36 binary64) #s(literal -1/4 binary64)) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64)))
accuracy12.259239058597037
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.f64 (fma.f64 (/.f64 (fma.f64 (*.f64 re re) #s(literal 1/36 binary64) #s(literal -1/4 binary64)) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))) re #s(literal 1 binary64)) re #s(literal 1 binary64))) im))
accuracy16.624462182122173
#s(approx (exp re) (fma.f64 (fma.f64 (/.f64 (fma.f64 (*.f64 re re) #s(literal 1/36 binary64) #s(literal -1/4 binary64)) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))) re #s(literal 1 binary64)) re #s(literal 1 binary64)))
accuracy0.1171875
(fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64))
accuracy12.259239058597037
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re))) im))
accuracy16.624462182122173
#s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re)))
accuracy28.60652306063838
#s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re))
accuracy0.0
(*.f64 im re)
accuracy12.259239058597037
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) #s(approx (+ (* re im) im) (*.f64 im re))))
accuracy16.61048022775856
#s(approx (* (exp re) im) #s(approx (+ (* re im) im) (*.f64 im re)))
accuracy28.65575671398323
#s(approx (+ (* re im) im) (*.f64 im re))
accuracy0.01953125
(fma.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal -1 binary64)) re #s(literal 1 binary64))
accuracy0.04296875
(fma.f64 (fma.f64 #s(literal -1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal -1 binary64))
accuracy0.11328125
(fma.f64 #s(literal -1/6 binary64) re #s(literal 1/2 binary64))
accuracy6.128861960241801
#s(approx (exp (neg re)) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal -1 binary64)) re #s(literal 1 binary64)))
Samples
82.0ms184×0valid
21.0ms72×0exit
Compiler

Compiled 258 to 42 computations (83.7% saved)

Precisions
Click to see histograms. Total time spent on operations: 82.0ms
ival-mult: 20.0ms (24.5% of total)
ival-exp: 18.0ms (22% of total)
ival-sin: 18.0ms (22% of total)
ival-add: 11.0ms (13.5% of total)
const: 9.0ms (11% of total)
ival-div: 3.0ms (3.7% of total)
ival-sub: 1.0ms (1.2% of total)
ival-neg: 1.0ms (1.2% of total)
adjust: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)

series34.0ms (0.5%)

Memory
-21.9MiB live, 21.7MiB allocated; 7ms collecting garbage
Counts
24 → 75
Calls
Call 1
Inputs
(/.f64 (sin.f64 im) #s(approx (exp (neg re)) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal -1 binary64)) re #s(literal 1 binary64))))
(sin.f64 im)
#s(approx (exp (neg re)) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal -1 binary64)) re #s(literal 1 binary64)))
(fma.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal -1 binary64)) re #s(literal 1 binary64))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) #s(approx (+ (* re im) im) (*.f64 im re))))
#s(approx (* (exp re) im) #s(approx (+ (* re im) im) (*.f64 im re)))
#s(approx (+ (* re im) im) (*.f64 im re))
(*.f64 im re)
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re))) im))
(*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re))) im)
#s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re)))
#s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.f64 (fma.f64 (/.f64 (fma.f64 (*.f64 re re) #s(literal 1/36 binary64) #s(literal -1/4 binary64)) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))) re #s(literal 1 binary64)) re #s(literal 1 binary64))) im))
(*.f64 #s(approx (exp re) (fma.f64 (fma.f64 (/.f64 (fma.f64 (*.f64 re re) #s(literal 1/36 binary64) #s(literal -1/4 binary64)) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))) re #s(literal 1 binary64)) re #s(literal 1 binary64))) im)
#s(approx (exp re) (fma.f64 (fma.f64 (/.f64 (fma.f64 (*.f64 re re) #s(literal 1/36 binary64) #s(literal -1/4 binary64)) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))) re #s(literal 1 binary64)) re #s(literal 1 binary64)))
(fma.f64 (fma.f64 (/.f64 (fma.f64 (*.f64 re re) #s(literal 1/36 binary64) #s(literal -1/4 binary64)) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))) re #s(literal 1 binary64)) re #s(literal 1 binary64))
(*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re))) (sin.f64 im))
(*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re)
(fma.f64 #s(literal -1/6 binary64) re #s(literal 1/2 binary64))
(fma.f64 (fma.f64 #s(literal -1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal -1 binary64))
(fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64))
(/.f64 (fma.f64 (*.f64 re re) #s(literal 1/36 binary64) #s(literal -1/4 binary64)) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64)))
(*.f64 #s(literal 1/6 binary64) re)
(fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64))
Outputs
(sin im)
(+ (sin im) (* re (sin im)))
(+ (sin im) (* re (- (* -1 (* re (+ (* -1 (sin im)) (* 1/2 (sin im))))) (* -1 (sin im)))))
(+ (sin im) (* re (- (* re (- (* -1 (* re (+ (sin im) (+ (* -1 (sin im)) (* -1/6 (sin im)))))) (+ (* -1 (sin im)) (* 1/2 (sin im))))) (* -1 (sin im)))))
1
(+ 1 (* -1 re))
(+ 1 (* re (- (* 1/2 re) 1)))
(+ 1 (* re (- (* re (+ 1/2 (* -1/6 re))) 1)))
(+ (sin im) (* re (+ (sin im) (* 1/2 (* re (sin im))))))
(+ (sin im) (* re (+ (sin im) (* re (+ (* 1/6 (* re (sin im))) (* 1/2 (sin im)))))))
im
(+ im (* im re))
(+ im (* re (+ im (* 1/2 (* im re)))))
(+ im (* re (+ im (* re (+ (* 1/6 (* im re)) (* 1/2 im))))))
(* im re)
(+ 1 re)
(+ 1 (* re (+ 1 (* 1/2 re))))
(+ 1 (* re (+ 1 (* re (+ 1/2 (* 1/6 re))))))
re
(* re (+ 1 (* 1/2 re)))
(* re (+ 1 (* re (+ 1/2 (* 1/6 re)))))
1/2
(+ 1/2 (* -1/6 re))
-1
(- (* 1/2 re) 1)
(- (* re (+ 1/2 (* -1/6 re))) 1)
(+ 1/2 (* 1/6 re))
(* 1/6 re)
(+ 1 (* 1/2 re))
(+ 1 (* re (+ 1/2 (* 1/6 re))))
(/ (sin im) (exp (neg re)))
(exp (neg re))
(* -1/6 (pow re 3))
(* (pow re 3) (- (* 1/2 (/ 1 re)) 1/6))
(* (pow re 3) (- (* 1/2 (/ 1 re)) (+ 1/6 (/ 1 (pow re 2)))))
(* (pow re 3) (- (+ (* 1/2 (/ 1 re)) (/ 1 (pow re 3))) (+ 1/6 (/ 1 (pow re 2)))))
(* (exp re) (sin im))
(* im (exp re))
(* re (+ im (/ im re)))
(exp re)
(* 1/6 (pow re 3))
(* (pow re 3) (+ 1/6 (* 1/2 (/ 1 re))))
(* (pow re 3) (+ 1/6 (+ (* 1/2 (/ 1 re)) (/ 1 (pow re 2)))))
(* (pow re 3) (+ 1/6 (+ (* 1/2 (/ 1 re)) (+ (/ 1 (pow re 2)) (/ 1 (pow re 3))))))
(* -1/6 re)
(* re (- (* 1/2 (/ 1 re)) 1/6))
(* -1/6 (pow re 2))
(* (pow re 2) (- (* 1/2 (/ 1 re)) 1/6))
(* (pow re 2) (- (* 1/2 (/ 1 re)) (+ 1/6 (/ 1 (pow re 2)))))
(* re (+ 1/6 (* 1/2 (/ 1 re))))
(* 1/6 (pow re 2))
(* (pow re 2) (+ 1/6 (* 1/2 (/ 1 re))))
(* (pow re 2) (+ 1/6 (+ (* 1/2 (/ 1 re)) (/ 1 (pow re 2)))))
(/ (sin im) (exp (* -1 re)))
(exp (* -1 re))
(* -1 (* (pow re 3) (- 1/6 (* 1/2 (/ 1 re)))))
(* -1 (* (pow re 3) (+ 1/6 (* -1 (/ (- 1/2 (/ 1 re)) re)))))
(* -1 (* (pow re 3) (+ 1/6 (* -1 (/ (+ 1/2 (* -1 (/ (- 1 (/ 1 re)) re))) re)))))
(* -1 (* re (+ (* -1 im) (* -1 (/ im re)))))
(* -1 (* (pow re 3) (- (* -1 (/ (+ 1/2 (/ 1 re)) re)) 1/6)))
(* -1 (* (pow re 3) (- (* -1 (/ (+ 1/2 (+ (/ 1 re) (/ 1 (pow re 2)))) re)) 1/6)))
(* -1 (* re (- 1/6 (* 1/2 (/ 1 re)))))
(* (pow re 2) (- (* -1 (/ (- (/ 1 re) 1/2) re)) 1/6))
(/ im (exp (neg re)))
(* im (+ (* -1/6 (/ (pow im 2) (exp (neg re)))) (/ 1 (exp (neg re)))))
(* im (+ (* (pow im 2) (- (* 1/120 (/ (pow im 2) (exp (neg re)))) (* 1/6 (/ 1 (exp (neg re)))))) (/ 1 (exp (neg re)))))
(* im (+ (* (pow im 2) (- (* (pow im 2) (+ (* -1/5040 (/ (pow im 2) (exp (neg re)))) (* 1/120 (/ 1 (exp (neg re)))))) (* 1/6 (/ 1 (exp (neg re)))))) (/ 1 (exp (neg re)))))
(* im (+ 1 (* -1/6 (pow im 2))))
(* im (+ 1 (* (pow im 2) (- (* 1/120 (pow im 2)) 1/6))))
(* im (+ 1 (* (pow im 2) (- (* (pow im 2) (+ 1/120 (* -1/5040 (pow im 2)))) 1/6))))
(* im (+ (exp re) (* -1/6 (* (pow im 2) (exp re)))))
(* im (+ (exp re) (* (pow im 2) (+ (* -1/6 (exp re)) (* 1/120 (* (pow im 2) (exp re)))))))
(* im (+ (exp re) (* (pow im 2) (+ (* -1/6 (exp re)) (* (pow im 2) (+ (* -1/5040 (* (pow im 2) (exp re))) (* 1/120 (exp re))))))))
(* im (+ 1 re))
(* -1 (* im (- (* -1 re) 1)))
Calls

6 calls:

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

simplify170.0ms (2.7%)

Memory
17.6MiB live, 212.1MiB allocated; 25ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0222739
1793684
23039640
08572563
Stop Event
iter limit
node limit
Counts
75 → 73
Calls
Call 1
Inputs
(sin im)
(+ (sin im) (* re (sin im)))
(+ (sin im) (* re (- (* -1 (* re (+ (* -1 (sin im)) (* 1/2 (sin im))))) (* -1 (sin im)))))
(+ (sin im) (* re (- (* re (- (* -1 (* re (+ (sin im) (+ (* -1 (sin im)) (* -1/6 (sin im)))))) (+ (* -1 (sin im)) (* 1/2 (sin im))))) (* -1 (sin im)))))
1
(+ 1 (* -1 re))
(+ 1 (* re (- (* 1/2 re) 1)))
(+ 1 (* re (- (* re (+ 1/2 (* -1/6 re))) 1)))
(+ (sin im) (* re (+ (sin im) (* 1/2 (* re (sin im))))))
(+ (sin im) (* re (+ (sin im) (* re (+ (* 1/6 (* re (sin im))) (* 1/2 (sin im)))))))
im
(+ im (* im re))
(+ im (* re (+ im (* 1/2 (* im re)))))
(+ im (* re (+ im (* re (+ (* 1/6 (* im re)) (* 1/2 im))))))
(* im re)
(+ 1 re)
(+ 1 (* re (+ 1 (* 1/2 re))))
(+ 1 (* re (+ 1 (* re (+ 1/2 (* 1/6 re))))))
re
(* re (+ 1 (* 1/2 re)))
(* re (+ 1 (* re (+ 1/2 (* 1/6 re)))))
1/2
(+ 1/2 (* -1/6 re))
-1
(- (* 1/2 re) 1)
(- (* re (+ 1/2 (* -1/6 re))) 1)
(+ 1/2 (* 1/6 re))
(* 1/6 re)
(+ 1 (* 1/2 re))
(+ 1 (* re (+ 1/2 (* 1/6 re))))
(/ (sin im) (exp (neg re)))
(exp (neg re))
(* -1/6 (pow re 3))
(* (pow re 3) (- (* 1/2 (/ 1 re)) 1/6))
(* (pow re 3) (- (* 1/2 (/ 1 re)) (+ 1/6 (/ 1 (pow re 2)))))
(* (pow re 3) (- (+ (* 1/2 (/ 1 re)) (/ 1 (pow re 3))) (+ 1/6 (/ 1 (pow re 2)))))
(* (exp re) (sin im))
(* im (exp re))
(* re (+ im (/ im re)))
(exp re)
(* 1/6 (pow re 3))
(* (pow re 3) (+ 1/6 (* 1/2 (/ 1 re))))
(* (pow re 3) (+ 1/6 (+ (* 1/2 (/ 1 re)) (/ 1 (pow re 2)))))
(* (pow re 3) (+ 1/6 (+ (* 1/2 (/ 1 re)) (+ (/ 1 (pow re 2)) (/ 1 (pow re 3))))))
(* -1/6 re)
(* re (- (* 1/2 (/ 1 re)) 1/6))
(* -1/6 (pow re 2))
(* (pow re 2) (- (* 1/2 (/ 1 re)) 1/6))
(* (pow re 2) (- (* 1/2 (/ 1 re)) (+ 1/6 (/ 1 (pow re 2)))))
(* re (+ 1/6 (* 1/2 (/ 1 re))))
(* 1/6 (pow re 2))
(* (pow re 2) (+ 1/6 (* 1/2 (/ 1 re))))
(* (pow re 2) (+ 1/6 (+ (* 1/2 (/ 1 re)) (/ 1 (pow re 2)))))
(/ (sin im) (exp (* -1 re)))
(exp (* -1 re))
(* -1 (* (pow re 3) (- 1/6 (* 1/2 (/ 1 re)))))
(* -1 (* (pow re 3) (+ 1/6 (* -1 (/ (- 1/2 (/ 1 re)) re)))))
(* -1 (* (pow re 3) (+ 1/6 (* -1 (/ (+ 1/2 (* -1 (/ (- 1 (/ 1 re)) re))) re)))))
(* -1 (* re (+ (* -1 im) (* -1 (/ im re)))))
(* -1 (* (pow re 3) (- (* -1 (/ (+ 1/2 (/ 1 re)) re)) 1/6)))
(* -1 (* (pow re 3) (- (* -1 (/ (+ 1/2 (+ (/ 1 re) (/ 1 (pow re 2)))) re)) 1/6)))
(* -1 (* re (- 1/6 (* 1/2 (/ 1 re)))))
(* (pow re 2) (- (* -1 (/ (- (/ 1 re) 1/2) re)) 1/6))
(/ im (exp (neg re)))
(* im (+ (* -1/6 (/ (pow im 2) (exp (neg re)))) (/ 1 (exp (neg re)))))
(* im (+ (* (pow im 2) (- (* 1/120 (/ (pow im 2) (exp (neg re)))) (* 1/6 (/ 1 (exp (neg re)))))) (/ 1 (exp (neg re)))))
(* im (+ (* (pow im 2) (- (* (pow im 2) (+ (* -1/5040 (/ (pow im 2) (exp (neg re)))) (* 1/120 (/ 1 (exp (neg re)))))) (* 1/6 (/ 1 (exp (neg re)))))) (/ 1 (exp (neg re)))))
(* im (+ 1 (* -1/6 (pow im 2))))
(* im (+ 1 (* (pow im 2) (- (* 1/120 (pow im 2)) 1/6))))
(* im (+ 1 (* (pow im 2) (- (* (pow im 2) (+ 1/120 (* -1/5040 (pow im 2)))) 1/6))))
(* im (+ (exp re) (* -1/6 (* (pow im 2) (exp re)))))
(* im (+ (exp re) (* (pow im 2) (+ (* -1/6 (exp re)) (* 1/120 (* (pow im 2) (exp re)))))))
(* im (+ (exp re) (* (pow im 2) (+ (* -1/6 (exp re)) (* (pow im 2) (+ (* -1/5040 (* (pow im 2) (exp re))) (* 1/120 (exp re))))))))
(* im (+ 1 re))
(* -1 (* im (- (* -1 re) 1)))
Outputs
(sin im)
(sin.f64 im)
(+ (sin im) (* re (sin im)))
(fma.f64 (sin.f64 im) re (sin.f64 im))
(+ (sin im) (* re (- (* -1 (* re (+ (* -1 (sin im)) (* 1/2 (sin im))))) (* -1 (sin im)))))
(*.f64 (sin.f64 im) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64)))
(+ (sin im) (* re (- (* re (- (* -1 (* re (+ (sin im) (+ (* -1 (sin im)) (* -1/6 (sin im)))))) (+ (* -1 (sin im)) (* 1/2 (sin im))))) (* -1 (sin im)))))
(fma.f64 (*.f64 (sin.f64 im) (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64))) re (sin.f64 im))
1
#s(literal 1 binary64)
(+ 1 (* -1 re))
(-.f64 #s(literal 1 binary64) re)
(+ 1 (* re (- (* 1/2 re) 1)))
(fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal -1 binary64)) re #s(literal 1 binary64))
(+ 1 (* re (- (* re (+ 1/2 (* -1/6 re))) 1)))
(fma.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal -1 binary64)) re #s(literal 1 binary64))
(+ (sin im) (* re (+ (sin im) (* 1/2 (* re (sin im))))))
(*.f64 (sin.f64 im) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64)))
(+ (sin im) (* re (+ (sin im) (* re (+ (* 1/6 (* re (sin im))) (* 1/2 (sin im)))))))
(fma.f64 (*.f64 (sin.f64 im) (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64))) re (sin.f64 im))
im
(+ im (* im re))
(fma.f64 re im im)
(+ im (* re (+ im (* 1/2 (* im re)))))
(fma.f64 (fma.f64 (*.f64 re im) #s(literal 1/2 binary64) im) re im)
(+ im (* re (+ im (* re (+ (* 1/6 (* im re)) (* 1/2 im))))))
(fma.f64 (fma.f64 (*.f64 im (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64))) re im) re im)
(* im re)
(*.f64 re im)
(+ 1 re)
(-.f64 re #s(literal -1 binary64))
(+ 1 (* re (+ 1 (* 1/2 re))))
(fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64))
(+ 1 (* re (+ 1 (* re (+ 1/2 (* 1/6 re))))))
(fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re #s(literal 1 binary64))
re
(* re (+ 1 (* 1/2 re)))
(*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re)
(* re (+ 1 (* re (+ 1/2 (* 1/6 re)))))
(*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re)
1/2
#s(literal 1/2 binary64)
(+ 1/2 (* -1/6 re))
(fma.f64 #s(literal -1/6 binary64) re #s(literal 1/2 binary64))
-1
#s(literal -1 binary64)
(- (* 1/2 re) 1)
(fma.f64 #s(literal 1/2 binary64) re #s(literal -1 binary64))
(- (* re (+ 1/2 (* -1/6 re))) 1)
(fma.f64 (fma.f64 #s(literal -1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal -1 binary64))
(+ 1/2 (* 1/6 re))
(fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64))
(* 1/6 re)
(*.f64 #s(literal 1/6 binary64) re)
(+ 1 (* 1/2 re))
(fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64))
(+ 1 (* re (+ 1/2 (* 1/6 re))))
(fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64))
(/ (sin im) (exp (neg re)))
(*.f64 (sin.f64 im) (exp.f64 re))
(exp (neg re))
(exp.f64 (neg.f64 re))
(* -1/6 (pow re 3))
(*.f64 (pow.f64 re #s(literal 3 binary64)) #s(literal -1/6 binary64))
(* (pow re 3) (- (* 1/2 (/ 1 re)) 1/6))
(*.f64 (*.f64 (fma.f64 #s(literal -1/6 binary64) re #s(literal 1/2 binary64)) re) re)
(* (pow re 3) (- (* 1/2 (/ 1 re)) (+ 1/6 (/ 1 (pow re 2)))))
(*.f64 (-.f64 (/.f64 (-.f64 #s(literal 1/2 binary64) (/.f64 #s(literal 1 binary64) re)) re) #s(literal 1/6 binary64)) (pow.f64 re #s(literal 3 binary64)))
(* (pow re 3) (- (+ (* 1/2 (/ 1 re)) (/ 1 (pow re 3))) (+ 1/6 (/ 1 (pow re 2)))))
(+.f64 #s(literal 1 binary64) (*.f64 (-.f64 (/.f64 (-.f64 #s(literal 1/2 binary64) (/.f64 #s(literal 1 binary64) re)) re) #s(literal 1/6 binary64)) (pow.f64 re #s(literal 3 binary64))))
(* (exp re) (sin im))
(*.f64 (sin.f64 im) (exp.f64 re))
(* im (exp re))
(*.f64 (exp.f64 re) im)
(* re (+ im (/ im re)))
(*.f64 (+.f64 (/.f64 im re) im) re)
(exp re)
(exp.f64 re)
(* 1/6 (pow re 3))
(*.f64 (pow.f64 re #s(literal 3 binary64)) #s(literal 1/6 binary64))
(* (pow re 3) (+ 1/6 (* 1/2 (/ 1 re))))
(*.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re) re)
(* (pow re 3) (+ 1/6 (+ (* 1/2 (/ 1 re)) (/ 1 (pow re 2)))))
(*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re)
(* (pow re 3) (+ 1/6 (+ (* 1/2 (/ 1 re)) (+ (/ 1 (pow re 2)) (/ 1 (pow re 3))))))
(fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re #s(literal 1 binary64))
(* -1/6 re)
(*.f64 #s(literal -1/6 binary64) re)
(* re (- (* 1/2 (/ 1 re)) 1/6))
(fma.f64 #s(literal -1/6 binary64) re #s(literal 1/2 binary64))
(* -1/6 (pow re 2))
(*.f64 (*.f64 re re) #s(literal -1/6 binary64))
(* (pow re 2) (- (* 1/2 (/ 1 re)) 1/6))
(*.f64 (fma.f64 #s(literal -1/6 binary64) re #s(literal 1/2 binary64)) re)
(* (pow re 2) (- (* 1/2 (/ 1 re)) (+ 1/6 (/ 1 (pow re 2)))))
(*.f64 (-.f64 (/.f64 (-.f64 #s(literal 1/2 binary64) (/.f64 #s(literal 1 binary64) re)) re) #s(literal 1/6 binary64)) (*.f64 re re))
(* re (+ 1/6 (* 1/2 (/ 1 re))))
(fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64))
(* 1/6 (pow re 2))
(*.f64 (*.f64 re re) #s(literal 1/6 binary64))
(* (pow re 2) (+ 1/6 (* 1/2 (/ 1 re))))
(*.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re)
(* (pow re 2) (+ 1/6 (+ (* 1/2 (/ 1 re)) (/ 1 (pow re 2)))))
(fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64))
(/ (sin im) (exp (* -1 re)))
(*.f64 (sin.f64 im) (exp.f64 re))
(exp (* -1 re))
(exp.f64 (neg.f64 re))
(* -1 (* (pow re 3) (- 1/6 (* 1/2 (/ 1 re)))))
(*.f64 (*.f64 (fma.f64 #s(literal -1/6 binary64) re #s(literal 1/2 binary64)) re) re)
(* -1 (* (pow re 3) (+ 1/6 (* -1 (/ (- 1/2 (/ 1 re)) re)))))
(*.f64 (-.f64 (/.f64 (-.f64 #s(literal 1/2 binary64) (/.f64 #s(literal 1 binary64) re)) re) #s(literal 1/6 binary64)) (pow.f64 re #s(literal 3 binary64)))
(* -1 (* (pow re 3) (+ 1/6 (* -1 (/ (+ 1/2 (* -1 (/ (- 1 (/ 1 re)) re))) re)))))
(*.f64 (-.f64 (/.f64 (-.f64 #s(literal 1/2 binary64) (/.f64 (-.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) re)) re)) re) #s(literal 1/6 binary64)) (pow.f64 re #s(literal 3 binary64)))
(* -1 (* re (+ (* -1 im) (* -1 (/ im re)))))
(*.f64 (+.f64 (/.f64 im re) im) re)
(* -1 (* (pow re 3) (- (* -1 (/ (+ 1/2 (/ 1 re)) re)) 1/6)))
(*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re)
(* -1 (* (pow re 3) (- (* -1 (/ (+ 1/2 (+ (/ 1 re) (/ 1 (pow re 2)))) re)) 1/6)))
(fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re #s(literal 1 binary64))
(* -1 (* re (- 1/6 (* 1/2 (/ 1 re)))))
(fma.f64 #s(literal -1/6 binary64) re #s(literal 1/2 binary64))
(* (pow re 2) (- (* -1 (/ (- (/ 1 re) 1/2) re)) 1/6))
(*.f64 (-.f64 (/.f64 (+.f64 (/.f64 #s(literal -1 binary64) re) #s(literal 1/2 binary64)) re) #s(literal 1/6 binary64)) (*.f64 re re))
(/ im (exp (neg re)))
(*.f64 (exp.f64 re) im)
(* im (+ (* -1/6 (/ (pow im 2) (exp (neg re)))) (/ 1 (exp (neg re)))))
(*.f64 (exp.f64 re) (fma.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal -1/6 binary64) im))
(* im (+ (* (pow im 2) (- (* 1/120 (/ (pow im 2) (exp (neg re)))) (* 1/6 (/ 1 (exp (neg re)))))) (/ 1 (exp (neg re)))))
(fma.f64 (pow.f64 im #s(literal 3 binary64)) (*.f64 (exp.f64 re) (fma.f64 #s(literal 1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64))) (*.f64 (exp.f64 re) im))
(* im (+ (* (pow im 2) (- (* (pow im 2) (+ (* -1/5040 (/ (pow im 2) (exp (neg re)))) (* 1/120 (/ 1 (exp (neg re)))))) (* 1/6 (/ 1 (exp (neg re)))))) (/ 1 (exp (neg re)))))
(*.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64)) (exp.f64 re) (*.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (exp.f64 re) (fma.f64 #s(literal -1/5040 binary64) (*.f64 im im) #s(literal 1/120 binary64))))) im)
(* im (+ 1 (* -1/6 (pow im 2))))
(fma.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal -1/6 binary64) im)
(* im (+ 1 (* (pow im 2) (- (* 1/120 (pow im 2)) 1/6))))
(fma.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 #s(literal 1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64)) im)
(* im (+ 1 (* (pow im 2) (- (* (pow im 2) (+ 1/120 (* -1/5040 (pow im 2)))) 1/6))))
(fma.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 im im) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) im)
(* im (+ (exp re) (* -1/6 (* (pow im 2) (exp re)))))
(*.f64 (exp.f64 re) (fma.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal -1/6 binary64) im))
(* im (+ (exp re) (* (pow im 2) (+ (* -1/6 (exp re)) (* 1/120 (* (pow im 2) (exp re)))))))
(fma.f64 (pow.f64 im #s(literal 3 binary64)) (*.f64 (exp.f64 re) (fma.f64 #s(literal 1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64))) (*.f64 (exp.f64 re) im))
(* im (+ (exp re) (* (pow im 2) (+ (* -1/6 (exp re)) (* (pow im 2) (+ (* -1/5040 (* (pow im 2) (exp re))) (* 1/120 (exp re))))))))
(*.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal 1 binary64)) (exp.f64 re) (*.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (exp.f64 re) (fma.f64 #s(literal -1/5040 binary64) (*.f64 im im) #s(literal 1/120 binary64))))) im)
(* im (+ 1 re))
(fma.f64 re im im)
(* -1 (* im (- (* -1 re) 1)))
(fma.f64 re im im)

rewrite108.0ms (1.7%)

Memory
-33.1MiB live, 67.6MiB allocated; 14ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
051356
077348
1252311
01961308
Stop Event
iter limit
iter limit
node limit
iter limit
Counts
24 → 201
Calls
Call 1
Inputs
(/.f64 (sin.f64 im) #s(approx (exp (neg re)) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal -1 binary64)) re #s(literal 1 binary64))))
(sin.f64 im)
#s(approx (exp (neg re)) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal -1 binary64)) re #s(literal 1 binary64)))
(fma.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal -1 binary64)) re #s(literal 1 binary64))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) #s(approx (+ (* re im) im) (*.f64 im re))))
#s(approx (* (exp re) im) #s(approx (+ (* re im) im) (*.f64 im re)))
#s(approx (+ (* re im) im) (*.f64 im re))
(*.f64 im re)
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re))) im))
(*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re))) im)
#s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re)))
#s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.f64 (fma.f64 (/.f64 (fma.f64 (*.f64 re re) #s(literal 1/36 binary64) #s(literal -1/4 binary64)) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))) re #s(literal 1 binary64)) re #s(literal 1 binary64))) im))
(*.f64 #s(approx (exp re) (fma.f64 (fma.f64 (/.f64 (fma.f64 (*.f64 re re) #s(literal 1/36 binary64) #s(literal -1/4 binary64)) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))) re #s(literal 1 binary64)) re #s(literal 1 binary64))) im)
#s(approx (exp re) (fma.f64 (fma.f64 (/.f64 (fma.f64 (*.f64 re re) #s(literal 1/36 binary64) #s(literal -1/4 binary64)) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))) re #s(literal 1 binary64)) re #s(literal 1 binary64)))
(fma.f64 (fma.f64 (/.f64 (fma.f64 (*.f64 re re) #s(literal 1/36 binary64) #s(literal -1/4 binary64)) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))) re #s(literal 1 binary64)) re #s(literal 1 binary64))
(*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re))) (sin.f64 im))
(*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re)
(fma.f64 #s(literal -1/6 binary64) re #s(literal 1/2 binary64))
(fma.f64 (fma.f64 #s(literal -1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal -1 binary64))
(fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64))
(/.f64 (fma.f64 (*.f64 re re) #s(literal 1/36 binary64) #s(literal -1/4 binary64)) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64)))
(*.f64 #s(literal 1/6 binary64) re)
(fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64))
Outputs
(/.f64 (neg.f64 (neg.f64 (sin.f64 im))) (neg.f64 (neg.f64 #s(approx (exp (neg re)) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal -1 binary64)) re #s(literal 1 binary64))))))
(/.f64 (neg.f64 (sin.f64 im)) (neg.f64 #s(approx (exp (neg re)) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal -1 binary64)) re #s(literal 1 binary64)))))
(/.f64 (sin.f64 im) #s(approx (exp (neg re)) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal -1 binary64)) re #s(literal 1 binary64))))
(neg.f64 (/.f64 (neg.f64 (sin.f64 im)) #s(approx (exp (neg re)) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal -1 binary64)) re #s(literal 1 binary64)))))
(neg.f64 (/.f64 (sin.f64 im) (neg.f64 #s(approx (exp (neg re)) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal -1 binary64)) re #s(literal 1 binary64))))))
(sin.f64 im)
#s(approx (exp (neg re)) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal -1 binary64)) re #s(literal 1 binary64)))
(/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal -1 binary64)) re) #s(literal 2 binary64))) (-.f64 #s(literal 1 binary64) (*.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal -1 binary64)) re)))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal -1 binary64)) re) #s(literal 2 binary64)) #s(literal 1 binary64))) (neg.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal -1 binary64)) re #s(literal -1 binary64))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal -1 binary64)) re) #s(literal 3 binary64)) #s(literal -1 binary64))) (neg.f64 (-.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal -1 binary64)) re) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal -1 binary64)) re))))
(/.f64 (-.f64 (pow.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal -1 binary64)) re) #s(literal 2 binary64)) #s(literal 1 binary64)) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal -1 binary64)) re #s(literal -1 binary64)))
(/.f64 (-.f64 (pow.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal -1 binary64)) re) #s(literal 3 binary64)) #s(literal -1 binary64)) (+.f64 #s(literal 1 binary64) (-.f64 (pow.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal -1 binary64)) re) #s(literal 2 binary64)) (*.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal -1 binary64)) re))))
(/.f64 (-.f64 (pow.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal -1 binary64)) re) #s(literal 3 binary64)) #s(literal -1 binary64)) (-.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal -1 binary64)) re) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal -1 binary64)) re)))
(fma.f64 (*.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal -1 binary64)) re) #s(literal -1 binary64)) #s(literal -1 binary64) #s(literal 1 binary64))
(fma.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal -1 binary64)) re) #s(literal 1 binary64) #s(literal 1 binary64))
(fma.f64 #s(literal 1 binary64) (*.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal -1 binary64)) re) #s(literal 1 binary64))
(fma.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal -1 binary64)) (*.f64 re #s(literal 1 binary64)) #s(literal 1 binary64))
(fma.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal -1 binary64)) re #s(literal 1 binary64))
(fma.f64 re (*.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal -1 binary64)) #s(literal 1 binary64)) #s(literal 1 binary64))
(fma.f64 re (fma.f64 (fma.f64 #s(literal -1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal -1 binary64)) #s(literal 1 binary64))
(-.f64 (/.f64 (pow.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal -1 binary64)) re) #s(literal 2 binary64)) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal -1 binary64)) re #s(literal -1 binary64))) (/.f64 #s(literal 1 binary64) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal -1 binary64)) re #s(literal -1 binary64))))
(-.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal -1 binary64)) re) #s(literal -1 binary64))
(-.f64 #s(literal 1 binary64) (*.f64 (neg.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal -1 binary64))) re))
(-.f64 #s(literal 1 binary64) (*.f64 (neg.f64 re) (fma.f64 (fma.f64 #s(literal -1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal -1 binary64))))
(+.f64 (/.f64 (pow.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal -1 binary64)) re) #s(literal 3 binary64)) (-.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal -1 binary64)) re) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal -1 binary64)) re))) (/.f64 #s(literal 1 binary64) (-.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal -1 binary64)) re) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal -1 binary64)) re))))
(+.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal -1 binary64)) re) #s(literal 1 binary64))
(+.f64 #s(literal 1 binary64) (*.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal -1 binary64)) re))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) #s(approx (+ (* re im) im) (*.f64 re im))))
#s(approx (* (exp re) im) #s(approx (+ (* re im) im) (*.f64 re im)))
#s(approx (+ (* re im) im) (*.f64 re im))
(*.f64 re im)
(*.f64 im re)
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re))) im))
(*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re))) im)
(*.f64 im #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re))))
#s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re)))
#s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re #s(literal 1 binary64))) im))
(*.f64 #s(approx (exp re) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re #s(literal 1 binary64))) im)
(*.f64 im #s(approx (exp re) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re #s(literal 1 binary64))))
#s(approx (exp re) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re #s(literal 1 binary64)))
(/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re) #s(literal 2 binary64))) (-.f64 #s(literal 1 binary64) (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re)))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re) #s(literal 2 binary64)) #s(literal 1 binary64))) (neg.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re #s(literal -1 binary64))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re) #s(literal 3 binary64)) #s(literal -1 binary64))) (neg.f64 (-.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re))))
(/.f64 (-.f64 (pow.f64 (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re) #s(literal 2 binary64)) #s(literal 1 binary64)) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re #s(literal -1 binary64)))
(/.f64 (-.f64 (pow.f64 (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re) #s(literal 3 binary64)) #s(literal -1 binary64)) (+.f64 #s(literal 1 binary64) (-.f64 (pow.f64 (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re) #s(literal 2 binary64)) (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re))))
(/.f64 (-.f64 (pow.f64 (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re) #s(literal 3 binary64)) #s(literal -1 binary64)) (-.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re)))
(fma.f64 (*.f64 (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re) #s(literal -1 binary64)) #s(literal -1 binary64) #s(literal 1 binary64))
(fma.f64 (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re) #s(literal 1 binary64) #s(literal 1 binary64))
(fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) (*.f64 re #s(literal 1 binary64)) #s(literal 1 binary64))
(fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re #s(literal 1 binary64))
(fma.f64 #s(literal 1 binary64) (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re) #s(literal 1 binary64))
(fma.f64 re (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) #s(literal 1 binary64)) #s(literal 1 binary64))
(fma.f64 re (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) #s(literal 1 binary64))
(-.f64 (/.f64 (pow.f64 (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re) #s(literal 2 binary64)) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re #s(literal -1 binary64))) (/.f64 #s(literal 1 binary64) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re #s(literal -1 binary64))))
(-.f64 (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re) #s(literal -1 binary64))
(-.f64 #s(literal 1 binary64) (*.f64 (neg.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64))) re))
(-.f64 #s(literal 1 binary64) (*.f64 (neg.f64 re) (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64))))
(+.f64 (/.f64 (pow.f64 (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re) #s(literal 3 binary64)) (-.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re))) (/.f64 #s(literal 1 binary64) (-.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re))))
(+.f64 (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re) #s(literal 1 binary64))
(+.f64 #s(literal 1 binary64) (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re))
(*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re))) (sin.f64 im))
(*.f64 (sin.f64 im) #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re))))
(*.f64 (*.f64 (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re) #s(literal -1 binary64)) #s(literal -1 binary64))
(*.f64 (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re) #s(literal 1 binary64))
(*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) (*.f64 re #s(literal 1 binary64)))
(*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re)
(*.f64 #s(literal 1 binary64) (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re))
(*.f64 re (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) #s(literal 1 binary64)))
(*.f64 re (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re) #s(literal 3 binary64)) #s(literal -1 binary64)) re) (-.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re)))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re) #s(literal 2 binary64)) #s(literal 1 binary64)) re) (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal -1 binary64)))
(/.f64 (*.f64 re (-.f64 (pow.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re) #s(literal 3 binary64)) #s(literal -1 binary64))) (-.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re)))
(/.f64 (*.f64 re (-.f64 (pow.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re) #s(literal 2 binary64)) #s(literal 1 binary64))) (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal -1 binary64)))
(fma.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re) re (*.f64 #s(literal 1 binary64) re))
(fma.f64 #s(literal 1 binary64) re (*.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re) re))
(fma.f64 re (*.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re) (*.f64 re #s(literal 1 binary64)))
(fma.f64 re #s(literal 1 binary64) (*.f64 re (*.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re)))
(+.f64 (*.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re) re) (*.f64 #s(literal 1 binary64) re))
(+.f64 (*.f64 #s(literal 1 binary64) re) (*.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re) re))
(+.f64 (*.f64 re (*.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re)) (*.f64 re #s(literal 1 binary64)))
(+.f64 (*.f64 re #s(literal 1 binary64)) (*.f64 re (*.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re)))
(/.f64 (-.f64 #s(literal 1/4 binary64) (*.f64 #s(literal 1/36 binary64) (*.f64 re re))) (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)))
(/.f64 (neg.f64 (fma.f64 #s(literal -1/216 binary64) (pow.f64 re #s(literal 3 binary64)) #s(literal 1/8 binary64))) (neg.f64 (fma.f64 #s(literal 1/36 binary64) (*.f64 re re) (fma.f64 re #s(literal 1/12 binary64) #s(literal 1/4 binary64)))))
(/.f64 (fma.f64 #s(literal 1/36 binary64) (*.f64 re re) #s(literal -1/4 binary64)) (-.f64 (*.f64 #s(literal -1/6 binary64) re) #s(literal 1/2 binary64)))
(/.f64 (fma.f64 #s(literal -1/216 binary64) (pow.f64 re #s(literal 3 binary64)) #s(literal 1/8 binary64)) (+.f64 #s(literal 1/4 binary64) (-.f64 (*.f64 #s(literal 1/36 binary64) (*.f64 re re)) (*.f64 re #s(literal -1/12 binary64)))))
(/.f64 (fma.f64 #s(literal -1/216 binary64) (pow.f64 re #s(literal 3 binary64)) #s(literal 1/8 binary64)) (fma.f64 #s(literal 1/36 binary64) (*.f64 re re) (fma.f64 re #s(literal 1/12 binary64) #s(literal 1/4 binary64))))
(/.f64 (neg.f64 (fma.f64 #s(literal 1/36 binary64) (*.f64 re re) #s(literal -1/4 binary64))) (neg.f64 (-.f64 (*.f64 #s(literal -1/6 binary64) re) #s(literal 1/2 binary64))))
(fma.f64 #s(literal -1/6 binary64) re #s(literal 1/2 binary64))
(fma.f64 re #s(literal -1/6 binary64) #s(literal 1/2 binary64))
(-.f64 (/.f64 (*.f64 #s(literal 1/36 binary64) (*.f64 re re)) (-.f64 (*.f64 #s(literal -1/6 binary64) re) #s(literal 1/2 binary64))) (/.f64 #s(literal 1/4 binary64) (-.f64 (*.f64 #s(literal -1/6 binary64) re) #s(literal 1/2 binary64))))
(-.f64 #s(literal 1/2 binary64) (*.f64 (neg.f64 re) #s(literal -1/6 binary64)))
(-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/6 binary64) re))
(+.f64 (/.f64 (pow.f64 (*.f64 #s(literal -1/6 binary64) re) #s(literal 3 binary64)) (fma.f64 #s(literal 1/36 binary64) (*.f64 re re) (fma.f64 re #s(literal 1/12 binary64) #s(literal 1/4 binary64)))) (/.f64 #s(literal 1/8 binary64) (fma.f64 #s(literal 1/36 binary64) (*.f64 re re) (fma.f64 re #s(literal 1/12 binary64) #s(literal 1/4 binary64)))))
(+.f64 (*.f64 #s(literal -1/6 binary64) re) #s(literal 1/2 binary64))
(+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal -1/6 binary64) re))
(/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (*.f64 (fma.f64 #s(literal -1/6 binary64) re #s(literal 1/2 binary64)) re) #s(literal 2 binary64))) (-.f64 #s(literal -1 binary64) (*.f64 (fma.f64 #s(literal -1/6 binary64) re #s(literal 1/2 binary64)) re)))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (fma.f64 #s(literal -1/6 binary64) re #s(literal 1/2 binary64)) re) #s(literal 2 binary64)) #s(literal 1 binary64))) (neg.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/6 binary64) re #s(literal 1/2 binary64)) re) #s(literal -1 binary64))))
(/.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 #s(literal -1/6 binary64) re #s(literal 1/2 binary64)) re) #s(literal 3 binary64)) #s(literal -1 binary64))) (neg.f64 (fma.f64 #s(literal -1 binary64) (-.f64 #s(literal -1 binary64) (*.f64 (fma.f64 #s(literal -1/6 binary64) re #s(literal 1/2 binary64)) re)) (pow.f64 (*.f64 (fma.f64 #s(literal -1/6 binary64) re #s(literal 1/2 binary64)) re) #s(literal 2 binary64)))))
(/.f64 (-.f64 (pow.f64 (*.f64 (fma.f64 #s(literal -1/6 binary64) re #s(literal 1/2 binary64)) re) #s(literal 2 binary64)) #s(literal 1 binary64)) (-.f64 (*.f64 (fma.f64 #s(literal -1/6 binary64) re #s(literal 1/2 binary64)) re) #s(literal -1 binary64)))
(/.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 #s(literal -1/6 binary64) re #s(literal 1/2 binary64)) re) #s(literal 3 binary64)) #s(literal -1 binary64)) (+.f64 #s(literal 1 binary64) (-.f64 (pow.f64 (*.f64 (fma.f64 #s(literal -1/6 binary64) re #s(literal 1/2 binary64)) re) #s(literal 2 binary64)) (*.f64 (*.f64 (fma.f64 #s(literal -1/6 binary64) re #s(literal 1/2 binary64)) re) #s(literal -1 binary64)))))
(/.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 #s(literal -1/6 binary64) re #s(literal 1/2 binary64)) re) #s(literal 3 binary64)) #s(literal -1 binary64)) (fma.f64 #s(literal -1 binary64) (-.f64 #s(literal -1 binary64) (*.f64 (fma.f64 #s(literal -1/6 binary64) re #s(literal 1/2 binary64)) re)) (pow.f64 (*.f64 (fma.f64 #s(literal -1/6 binary64) re #s(literal 1/2 binary64)) re) #s(literal 2 binary64))))
(fma.f64 (fma.f64 #s(literal -1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal -1 binary64))
(fma.f64 re (fma.f64 #s(literal -1/6 binary64) re #s(literal 1/2 binary64)) #s(literal -1 binary64))
(-.f64 (/.f64 (pow.f64 (*.f64 (fma.f64 #s(literal -1/6 binary64) re #s(literal 1/2 binary64)) re) #s(literal 2 binary64)) (-.f64 (*.f64 (fma.f64 #s(literal -1/6 binary64) re #s(literal 1/2 binary64)) re) #s(literal -1 binary64))) (/.f64 #s(literal 1 binary64) (-.f64 (*.f64 (fma.f64 #s(literal -1/6 binary64) re #s(literal 1/2 binary64)) re) #s(literal -1 binary64))))
(-.f64 #s(literal -1 binary64) (*.f64 (neg.f64 (fma.f64 #s(literal -1/6 binary64) re #s(literal 1/2 binary64))) re))
(-.f64 #s(literal -1 binary64) (*.f64 (neg.f64 re) (fma.f64 #s(literal -1/6 binary64) re #s(literal 1/2 binary64))))
(+.f64 (/.f64 (pow.f64 (*.f64 (fma.f64 #s(literal -1/6 binary64) re #s(literal 1/2 binary64)) re) #s(literal 3 binary64)) (fma.f64 #s(literal -1 binary64) (-.f64 #s(literal -1 binary64) (*.f64 (fma.f64 #s(literal -1/6 binary64) re #s(literal 1/2 binary64)) re)) (pow.f64 (*.f64 (fma.f64 #s(literal -1/6 binary64) re #s(literal 1/2 binary64)) re) #s(literal 2 binary64)))) (/.f64 #s(literal -1 binary64) (fma.f64 #s(literal -1 binary64) (-.f64 #s(literal -1 binary64) (*.f64 (fma.f64 #s(literal -1/6 binary64) re #s(literal 1/2 binary64)) re)) (pow.f64 (*.f64 (fma.f64 #s(literal -1/6 binary64) re #s(literal 1/2 binary64)) re) #s(literal 2 binary64)))))
(+.f64 (*.f64 (fma.f64 #s(literal -1/6 binary64) re #s(literal 1/2 binary64)) re) #s(literal -1 binary64))
(+.f64 #s(literal -1 binary64) (*.f64 (fma.f64 #s(literal -1/6 binary64) re #s(literal 1/2 binary64)) re))
(*.f64 (/.f64 (fma.f64 #s(literal 1/36 binary64) (*.f64 re re) #s(literal -1/4 binary64)) (-.f64 (pow.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 3 binary64)) #s(literal 1/8 binary64))) (fma.f64 #s(literal 1/36 binary64) (*.f64 re re) (fma.f64 re #s(literal 1/12 binary64) #s(literal 1/4 binary64))))
(*.f64 (/.f64 (fma.f64 #s(literal 1/36 binary64) (*.f64 re re) #s(literal -1/4 binary64)) (fma.f64 #s(literal 1/36 binary64) (*.f64 re re) #s(literal -1/4 binary64))) (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)))
(/.f64 (-.f64 (*.f64 (*.f64 (*.f64 re re) (/.f64 #s(literal 1/36 binary64) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64)))) (*.f64 (*.f64 re re) (/.f64 #s(literal 1/36 binary64) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))))) (*.f64 (/.f64 #s(literal -1/4 binary64) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))) (/.f64 #s(literal -1/4 binary64) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))))) (-.f64 (*.f64 (*.f64 re re) (/.f64 #s(literal 1/36 binary64) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64)))) (/.f64 #s(literal -1/4 binary64) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64)))))
(/.f64 (-.f64 #s(literal 1/4 binary64) (*.f64 #s(literal 1/36 binary64) (*.f64 re re))) (fma.f64 #s(literal -1/6 binary64) re #s(literal 1/2 binary64)))
(/.f64 (+.f64 (pow.f64 (*.f64 (*.f64 re re) (/.f64 #s(literal 1/36 binary64) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64)))) #s(literal 3 binary64)) (pow.f64 (/.f64 #s(literal -1/4 binary64) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))) #s(literal 3 binary64))) (fma.f64 (*.f64 (*.f64 re re) (/.f64 #s(literal 1/36 binary64) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64)))) (*.f64 (*.f64 re re) (/.f64 #s(literal 1/36 binary64) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64)))) (-.f64 (*.f64 (/.f64 #s(literal -1/4 binary64) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))) (/.f64 #s(literal -1/4 binary64) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64)))) (*.f64 (*.f64 (*.f64 re re) (/.f64 #s(literal 1/36 binary64) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64)))) (/.f64 #s(literal -1/4 binary64) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64)))))))
(/.f64 (neg.f64 (neg.f64 (fma.f64 #s(literal 1/36 binary64) (*.f64 re re) #s(literal -1/4 binary64)))) (neg.f64 (neg.f64 (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64)))))
(/.f64 (neg.f64 (fma.f64 #s(literal 1/216 binary64) (pow.f64 re #s(literal 3 binary64)) #s(literal 1/8 binary64))) (neg.f64 (fma.f64 #s(literal 1/36 binary64) (*.f64 re re) (-.f64 #s(literal 1/4 binary64) (*.f64 re #s(literal 1/12 binary64))))))
(/.f64 (fma.f64 (*.f64 #s(literal 1/36 binary64) (*.f64 re re)) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64)) (*.f64 (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64)) #s(literal -1/4 binary64))) (*.f64 (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64)) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))))
(/.f64 (-.f64 (pow.f64 (*.f64 #s(literal 1/36 binary64) (*.f64 re re)) #s(literal 2 binary64)) #s(literal 1/16 binary64)) (*.f64 (-.f64 (*.f64 #s(literal 1/36 binary64) (*.f64 re re)) #s(literal -1/4 binary64)) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))))
(/.f64 (fma.f64 #s(literal 1/36 binary64) (*.f64 re re) #s(literal -1/4 binary64)) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64)))
(/.f64 (fma.f64 #s(literal 1/46656 binary64) (pow.f64 (*.f64 re re) #s(literal 3 binary64)) #s(literal -1/64 binary64)) (*.f64 (-.f64 (+.f64 (pow.f64 (*.f64 #s(literal 1/36 binary64) (*.f64 re re)) #s(literal 2 binary64)) #s(literal 1/16 binary64)) (*.f64 (*.f64 re re) #s(literal -1/144 binary64))) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))))
(/.f64 (fma.f64 #s(literal 1/216 binary64) (pow.f64 re #s(literal 3 binary64)) #s(literal 1/8 binary64)) (+.f64 #s(literal 1/4 binary64) (-.f64 (*.f64 #s(literal 1/36 binary64) (*.f64 re re)) (*.f64 re #s(literal 1/12 binary64)))))
(/.f64 (fma.f64 #s(literal 1/216 binary64) (pow.f64 re #s(literal 3 binary64)) #s(literal 1/8 binary64)) (fma.f64 #s(literal 1/36 binary64) (*.f64 re re) (-.f64 #s(literal 1/4 binary64) (*.f64 re #s(literal 1/12 binary64)))))
(/.f64 (neg.f64 (fma.f64 #s(literal 1/36 binary64) (*.f64 re re) #s(literal -1/4 binary64))) (neg.f64 (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))))
(neg.f64 (/.f64 (neg.f64 (fma.f64 #s(literal 1/36 binary64) (*.f64 re re) #s(literal -1/4 binary64))) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))))
(neg.f64 (/.f64 (fma.f64 #s(literal 1/36 binary64) (*.f64 re re) #s(literal -1/4 binary64)) (neg.f64 (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64)))))
(fma.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/36 binary64) (*.f64 re re) #s(literal -1/4 binary64))) (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) (*.f64 (*.f64 re re) (/.f64 #s(literal 1/36 binary64) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64)))))
(fma.f64 (/.f64 #s(literal -1/4 binary64) (-.f64 (pow.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 3 binary64)) #s(literal 1/8 binary64))) (fma.f64 #s(literal 1/36 binary64) (*.f64 re re) (fma.f64 re #s(literal 1/12 binary64) #s(literal 1/4 binary64))) (*.f64 (*.f64 re re) (/.f64 #s(literal 1/36 binary64) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64)))))
(fma.f64 (/.f64 (*.f64 #s(literal 1/36 binary64) (*.f64 re re)) (fma.f64 #s(literal 1/36 binary64) (*.f64 re re) #s(literal -1/4 binary64))) (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) (/.f64 #s(literal -1/4 binary64) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))))
(fma.f64 (/.f64 (*.f64 #s(literal 1/36 binary64) (*.f64 re re)) (-.f64 (pow.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 3 binary64)) #s(literal 1/8 binary64))) (fma.f64 #s(literal 1/36 binary64) (*.f64 re re) (fma.f64 re #s(literal 1/12 binary64) #s(literal 1/4 binary64))) (/.f64 #s(literal -1/4 binary64) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))))
(fma.f64 #s(literal 1/36 binary64) (/.f64 (*.f64 re re) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))) (/.f64 #s(literal -1/4 binary64) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))))
(fma.f64 (*.f64 re re) (/.f64 #s(literal 1/36 binary64) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))) (/.f64 #s(literal -1/4 binary64) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))))
(fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64))
(fma.f64 re (/.f64 (*.f64 #s(literal 1/36 binary64) re) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))) (/.f64 #s(literal -1/4 binary64) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))))
(fma.f64 re #s(literal 1/6 binary64) #s(literal 1/2 binary64))
(-.f64 (*.f64 (*.f64 re re) (/.f64 #s(literal 1/36 binary64) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64)))) (/.f64 #s(literal 1/4 binary64) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))))
(-.f64 #s(literal 1/2 binary64) (*.f64 (neg.f64 re) #s(literal 1/6 binary64)))
(-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal -1/6 binary64) re))
(+.f64 (/.f64 (pow.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 3 binary64)) (fma.f64 #s(literal 1/36 binary64) (*.f64 re re) (-.f64 #s(literal 1/4 binary64) (*.f64 re #s(literal 1/12 binary64))))) (/.f64 #s(literal 1/8 binary64) (fma.f64 #s(literal 1/36 binary64) (*.f64 re re) (-.f64 #s(literal 1/4 binary64) (*.f64 re #s(literal 1/12 binary64))))))
(+.f64 (/.f64 #s(literal -1/4 binary64) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))) (*.f64 (*.f64 re re) (/.f64 #s(literal 1/36 binary64) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64)))))
(+.f64 (*.f64 (*.f64 re re) (/.f64 #s(literal 1/36 binary64) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64)))) (/.f64 #s(literal -1/4 binary64) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))))
(+.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))
(+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/6 binary64) re))
(*.f64 (/.f64 (fma.f64 #s(literal 1/36 binary64) (*.f64 re re) #s(literal -1/4 binary64)) (-.f64 (pow.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 3 binary64)) #s(literal 1/8 binary64))) (fma.f64 #s(literal 1/36 binary64) (*.f64 re re) (fma.f64 re #s(literal 1/12 binary64) #s(literal 1/4 binary64))))
(*.f64 (/.f64 (fma.f64 #s(literal 1/36 binary64) (*.f64 re re) #s(literal -1/4 binary64)) (fma.f64 #s(literal 1/36 binary64) (*.f64 re re) #s(literal -1/4 binary64))) (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)))
(/.f64 (-.f64 (*.f64 (*.f64 (*.f64 re re) (/.f64 #s(literal 1/36 binary64) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64)))) (*.f64 (*.f64 re re) (/.f64 #s(literal 1/36 binary64) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))))) (*.f64 (/.f64 #s(literal -1/4 binary64) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))) (/.f64 #s(literal -1/4 binary64) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))))) (-.f64 (*.f64 (*.f64 re re) (/.f64 #s(literal 1/36 binary64) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64)))) (/.f64 #s(literal -1/4 binary64) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64)))))
(/.f64 (-.f64 #s(literal 1/4 binary64) (*.f64 #s(literal 1/36 binary64) (*.f64 re re))) (fma.f64 #s(literal -1/6 binary64) re #s(literal 1/2 binary64)))
(/.f64 (+.f64 (pow.f64 (*.f64 (*.f64 re re) (/.f64 #s(literal 1/36 binary64) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64)))) #s(literal 3 binary64)) (pow.f64 (/.f64 #s(literal -1/4 binary64) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))) #s(literal 3 binary64))) (fma.f64 (*.f64 (*.f64 re re) (/.f64 #s(literal 1/36 binary64) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64)))) (*.f64 (*.f64 re re) (/.f64 #s(literal 1/36 binary64) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64)))) (-.f64 (*.f64 (/.f64 #s(literal -1/4 binary64) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))) (/.f64 #s(literal -1/4 binary64) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64)))) (*.f64 (*.f64 (*.f64 re re) (/.f64 #s(literal 1/36 binary64) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64)))) (/.f64 #s(literal -1/4 binary64) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64)))))))
(/.f64 (neg.f64 (neg.f64 (fma.f64 #s(literal 1/36 binary64) (*.f64 re re) #s(literal -1/4 binary64)))) (neg.f64 (neg.f64 (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64)))))
(/.f64 (neg.f64 (fma.f64 #s(literal 1/216 binary64) (pow.f64 re #s(literal 3 binary64)) #s(literal 1/8 binary64))) (neg.f64 (fma.f64 #s(literal 1/36 binary64) (*.f64 re re) (-.f64 #s(literal 1/4 binary64) (*.f64 re #s(literal 1/12 binary64))))))
(/.f64 (fma.f64 (*.f64 #s(literal 1/36 binary64) (*.f64 re re)) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64)) (*.f64 (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64)) #s(literal -1/4 binary64))) (*.f64 (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64)) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))))
(/.f64 (-.f64 (pow.f64 (*.f64 #s(literal 1/36 binary64) (*.f64 re re)) #s(literal 2 binary64)) #s(literal 1/16 binary64)) (*.f64 (-.f64 (*.f64 #s(literal 1/36 binary64) (*.f64 re re)) #s(literal -1/4 binary64)) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))))
(/.f64 (fma.f64 #s(literal 1/36 binary64) (*.f64 re re) #s(literal -1/4 binary64)) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64)))
(/.f64 (fma.f64 #s(literal 1/46656 binary64) (pow.f64 (*.f64 re re) #s(literal 3 binary64)) #s(literal -1/64 binary64)) (*.f64 (-.f64 (+.f64 (pow.f64 (*.f64 #s(literal 1/36 binary64) (*.f64 re re)) #s(literal 2 binary64)) #s(literal 1/16 binary64)) (*.f64 (*.f64 re re) #s(literal -1/144 binary64))) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))))
(/.f64 (fma.f64 #s(literal 1/216 binary64) (pow.f64 re #s(literal 3 binary64)) #s(literal 1/8 binary64)) (+.f64 #s(literal 1/4 binary64) (-.f64 (*.f64 #s(literal 1/36 binary64) (*.f64 re re)) (*.f64 re #s(literal 1/12 binary64)))))
(/.f64 (fma.f64 #s(literal 1/216 binary64) (pow.f64 re #s(literal 3 binary64)) #s(literal 1/8 binary64)) (fma.f64 #s(literal 1/36 binary64) (*.f64 re re) (-.f64 #s(literal 1/4 binary64) (*.f64 re #s(literal 1/12 binary64)))))
(/.f64 (neg.f64 (fma.f64 #s(literal 1/36 binary64) (*.f64 re re) #s(literal -1/4 binary64))) (neg.f64 (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))))
(neg.f64 (/.f64 (neg.f64 (fma.f64 #s(literal 1/36 binary64) (*.f64 re re) #s(literal -1/4 binary64))) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))))
(neg.f64 (/.f64 (fma.f64 #s(literal 1/36 binary64) (*.f64 re re) #s(literal -1/4 binary64)) (neg.f64 (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64)))))
(fma.f64 (/.f64 #s(literal -1/4 binary64) (fma.f64 #s(literal 1/36 binary64) (*.f64 re re) #s(literal -1/4 binary64))) (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) (*.f64 (*.f64 re re) (/.f64 #s(literal 1/36 binary64) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64)))))
(fma.f64 (/.f64 #s(literal -1/4 binary64) (-.f64 (pow.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 3 binary64)) #s(literal 1/8 binary64))) (fma.f64 #s(literal 1/36 binary64) (*.f64 re re) (fma.f64 re #s(literal 1/12 binary64) #s(literal 1/4 binary64))) (*.f64 (*.f64 re re) (/.f64 #s(literal 1/36 binary64) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64)))))
(fma.f64 (/.f64 (*.f64 #s(literal 1/36 binary64) (*.f64 re re)) (fma.f64 #s(literal 1/36 binary64) (*.f64 re re) #s(literal -1/4 binary64))) (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) (/.f64 #s(literal -1/4 binary64) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))))
(fma.f64 (/.f64 (*.f64 #s(literal 1/36 binary64) (*.f64 re re)) (-.f64 (pow.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 3 binary64)) #s(literal 1/8 binary64))) (fma.f64 #s(literal 1/36 binary64) (*.f64 re re) (fma.f64 re #s(literal 1/12 binary64) #s(literal 1/4 binary64))) (/.f64 #s(literal -1/4 binary64) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))))
(fma.f64 #s(literal 1/36 binary64) (/.f64 (*.f64 re re) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))) (/.f64 #s(literal -1/4 binary64) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))))
(fma.f64 (*.f64 re re) (/.f64 #s(literal 1/36 binary64) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))) (/.f64 #s(literal -1/4 binary64) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))))
(fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64))
(fma.f64 re (/.f64 (*.f64 #s(literal 1/36 binary64) re) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))) (/.f64 #s(literal -1/4 binary64) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))))
(fma.f64 re #s(literal 1/6 binary64) #s(literal 1/2 binary64))
(-.f64 (*.f64 (*.f64 re re) (/.f64 #s(literal 1/36 binary64) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64)))) (/.f64 #s(literal 1/4 binary64) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))))
(-.f64 #s(literal 1/2 binary64) (*.f64 (neg.f64 re) #s(literal 1/6 binary64)))
(-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal -1/6 binary64) re))
(+.f64 (/.f64 (pow.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 3 binary64)) (fma.f64 #s(literal 1/36 binary64) (*.f64 re re) (-.f64 #s(literal 1/4 binary64) (*.f64 re #s(literal 1/12 binary64))))) (/.f64 #s(literal 1/8 binary64) (fma.f64 #s(literal 1/36 binary64) (*.f64 re re) (-.f64 #s(literal 1/4 binary64) (*.f64 re #s(literal 1/12 binary64))))))
(+.f64 (/.f64 #s(literal -1/4 binary64) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))) (*.f64 (*.f64 re re) (/.f64 #s(literal 1/36 binary64) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64)))))
(+.f64 (*.f64 (*.f64 re re) (/.f64 #s(literal 1/36 binary64) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64)))) (/.f64 #s(literal -1/4 binary64) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))))
(+.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))
(+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/6 binary64) re))
(*.f64 #s(literal 1/6 binary64) re)
(*.f64 re #s(literal 1/6 binary64))
(/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re) #s(literal 2 binary64))) (-.f64 #s(literal 1 binary64) (*.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re)))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re) #s(literal 2 binary64)) #s(literal 1 binary64))) (neg.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal -1 binary64))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re) #s(literal 3 binary64)) #s(literal -1 binary64))) (neg.f64 (-.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re))))
(/.f64 (-.f64 (pow.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re) #s(literal 2 binary64)) #s(literal 1 binary64)) (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal -1 binary64)))
(/.f64 (-.f64 (pow.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re) #s(literal 3 binary64)) #s(literal -1 binary64)) (+.f64 #s(literal 1 binary64) (-.f64 (pow.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re) #s(literal 2 binary64)) (*.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re))))
(/.f64 (-.f64 (pow.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re) #s(literal 3 binary64)) #s(literal -1 binary64)) (-.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re)))
(fma.f64 (/.f64 (*.f64 (fma.f64 #s(literal 1/36 binary64) (*.f64 re re) #s(literal -1/4 binary64)) re) (fma.f64 #s(literal 1/36 binary64) (*.f64 re re) #s(literal -1/4 binary64))) (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) #s(literal 1 binary64))
(fma.f64 (/.f64 (*.f64 (fma.f64 #s(literal 1/36 binary64) (*.f64 re re) #s(literal -1/4 binary64)) re) (-.f64 (pow.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 3 binary64)) #s(literal 1/8 binary64))) (fma.f64 #s(literal 1/36 binary64) (*.f64 re re) (fma.f64 re #s(literal 1/12 binary64) #s(literal 1/4 binary64))) #s(literal 1 binary64))
(fma.f64 (*.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re) #s(literal -1 binary64)) #s(literal -1 binary64) #s(literal 1 binary64))
(fma.f64 (fma.f64 #s(literal 1/36 binary64) (*.f64 re re) #s(literal -1/4 binary64)) (/.f64 re (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))) #s(literal 1 binary64))
(fma.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re) #s(literal 1 binary64) #s(literal 1 binary64))
(fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) (*.f64 re #s(literal 1 binary64)) #s(literal 1 binary64))
(fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64))
(fma.f64 #s(literal 1 binary64) (*.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re) #s(literal 1 binary64))
(fma.f64 re (*.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) #s(literal 1 binary64)) #s(literal 1 binary64))
(fma.f64 re (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) #s(literal 1 binary64))
(-.f64 (/.f64 (pow.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re) #s(literal 2 binary64)) (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal -1 binary64))) (/.f64 #s(literal 1 binary64) (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal -1 binary64))))
(-.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re) #s(literal -1 binary64))
(-.f64 #s(literal 1 binary64) (*.f64 (neg.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64))) re))
(-.f64 #s(literal 1 binary64) (*.f64 (neg.f64 re) (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64))))
(+.f64 (/.f64 (pow.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re) #s(literal 3 binary64)) (-.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re))) (/.f64 #s(literal 1 binary64) (-.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re))))
(+.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re) #s(literal 1 binary64))
(+.f64 #s(literal 1 binary64) (*.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re))

eval40.0ms (0.6%)

Memory
7.9MiB live, 94.6MiB allocated; 13ms collecting garbage
Compiler

Compiled 11 051 to 1 320 computations (88.1% saved)

prune40.0ms (0.6%)

Memory
13.1MiB live, 74.5MiB allocated; 7ms collecting garbage
Pruning

43 alts after pruning (30 fresh and 13 done)

PrunedKeptTotal
New30615321
Fresh41519
Picked055
Done088
Total31043353
Accuracy
100.0%
Counts
353 → 43
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(/.f64 (sin.f64 im) (exp.f64 (neg.f64 re)))
64.3%
(/.f64 (sin.f64 im) #s(approx (exp (neg re)) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal -1 binary64)) re #s(literal 1 binary64))))
64.3%
(/.f64 (sin.f64 im) #s(approx (exp (neg re)) (fma.f64 (fma.f64 (-.f64 (/.f64 (*.f64 #s(literal 1/36 binary64) (*.f64 re re)) (-.f64 (*.f64 #s(literal -1/6 binary64) re) #s(literal 1/2 binary64))) (/.f64 #s(literal 1/4 binary64) (-.f64 (*.f64 #s(literal -1/6 binary64) re) #s(literal 1/2 binary64)))) re #s(literal -1 binary64)) re #s(literal 1 binary64))))
60.8%
(/.f64 (sin.f64 im) #s(approx (exp (neg re)) (fma.f64 (fma.f64 #s(approx (+ (* -1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal -1 binary64)) re #s(literal 1 binary64))))
63.9%
(/.f64 (sin.f64 im) #s(approx (exp (neg re)) (fma.f64 #s(approx (+ (* (+ (* -1/6 re) 1/2) re) -1) (*.f64 (fma.f64 #s(literal -1/6 binary64) re #s(literal 1/2 binary64)) re)) re #s(literal 1 binary64))))
51.9%
(/.f64 (sin.f64 im) #s(approx (exp (neg re)) (-.f64 #s(literal 1 binary64) re)))
20.7%
(/.f64 (sin.f64 im) #s(approx (exp (neg re)) #s(approx (+ (* (+ (* (+ (* -1/6 re) 1/2) re) -1) re) 1) (*.f64 (*.f64 (fma.f64 #s(literal -1/6 binary64) re #s(literal 1/2 binary64)) re) re))))
100.0%
(*.f64 (exp.f64 re) (sin.f64 im))
65.5%
(*.f64 #s(approx (exp re) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re #s(literal 1 binary64))) (sin.f64 im))
61.8%
(*.f64 #s(approx (exp re) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64))) (sin.f64 im))
44.2%
(*.f64 #s(approx (exp re) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64))) #s(approx (sin im) (fma.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 im im) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) im)))
43.8%
(*.f64 #s(approx (exp re) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64))) #s(approx (sin im) (fma.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal -1/6 binary64) im)))
47.1%
(*.f64 #s(approx (exp re) (+.f64 #s(literal 1 binary64) re)) (sin.f64 im))
34.1%
(*.f64 #s(approx (exp re) (+.f64 #s(literal 1 binary64) re)) #s(approx (sin im) (fma.f64 (*.f64 (*.f64 im im) im) #s(literal -1/6 binary64) im)))
34.1%
(*.f64 #s(approx (exp re) (+.f64 #s(literal 1 binary64) re)) #s(approx (sin im) (fma.f64 (*.f64 im im) (*.f64 im #s(literal -1/6 binary64)) im)))
15.1%
(*.f64 #s(approx (exp re) (+.f64 #s(literal 1 binary64) re)) #s(approx (sin im) #s(approx (+ (* (pow im 3) -1/6) im) (*.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal -1/6 binary64)))))
22.4%
(*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re))) (sin.f64 im))
21.2%
(*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re))) #s(approx (sin im) (fma.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 im im) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) im)))
20.9%
(*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re))) #s(approx (sin im) (fma.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal -1/6 binary64) im)))
22.6%
(*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re) re))) (sin.f64 im))
18.6%
(*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 #s(approx (+ (* (+ (* 1/6 re) 1/2) re) 1) (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64))) re))) (sin.f64 im))
22.3%
(*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 #s(approx (+ (* (+ (* 1/6 re) 1/2) re) 1) (*.f64 (*.f64 re re) #s(literal 1/6 binary64))) re))) (sin.f64 im))
18.8%
(*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* 1/2 re) 1) re) 1) (*.f64 (*.f64 re re) #s(literal 1/2 binary64)))) (sin.f64 im))
73.4%
#s(approx (* (exp re) (sin im)) (*.f64 (exp.f64 re) im))
43.7%
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.f64 (fma.f64 (/.f64 (fma.f64 (*.f64 re re) #s(literal 1/36 binary64) #s(literal -1/4 binary64)) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))) re #s(literal 1 binary64)) re #s(literal 1 binary64))) im))
43.7%
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.f64 #s(approx (+ (* (+ (* 1/6 re) 1/2) re) 1) (*.f64 (*.f64 re re) #s(literal 1/6 binary64))) re #s(literal 1 binary64))) im))
18.8%
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re))) im))
18.8%
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (fma.f64 #s(literal 1/36 binary64) (/.f64 (*.f64 re re) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))) (/.f64 #s(literal -1/4 binary64) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64)))) re #s(literal 1 binary64)) re))) im))
18.8%
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (fma.f64 #s(literal 1/36 binary64) (*.f64 re re) #s(literal -1/4 binary64)) (/.f64 re (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))) #s(literal 1 binary64)) re))) im))
18.8%
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (/.f64 (fma.f64 #s(literal 1/36 binary64) (*.f64 re re) #s(literal -1/4 binary64)) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))) re #s(literal 1 binary64)) re))) im))
5.3%
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (/.f64 (*.f64 (fma.f64 #s(literal 1/36 binary64) (*.f64 re re) #s(literal -1/4 binary64)) re) (fma.f64 #s(literal 1/36 binary64) (*.f64 re re) #s(literal -1/4 binary64))) (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) #s(literal 1 binary64)) re))) im))
18.7%
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re) re))) im))
16.5%
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 #s(approx (+ (* (+ (* 1/6 re) 1/2) re) 1) (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64))) re))) im))
18.5%
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 #s(approx (+ (* (+ (* 1/6 re) 1/2) re) 1) (*.f64 (*.f64 re re) #s(literal 1/6 binary64))) re))) im))
28.8%
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(literal 1 binary64)) im))
46.7%
#s(approx (* (exp re) (sin im)) (sin.f64 im))
37.8%
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 (fma.f64 (*.f64 re im) #s(literal 1/2 binary64) im) re im)))
41.1%
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 (fma.f64 (*.f64 im (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64))) re im) re im)))
31.8%
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 re im im)))
31.7%
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) #s(approx (+ (* re im) im) (*.f64 (+.f64 (/.f64 im re) im) re))))
6.9%
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) #s(approx (+ (* re im) im) (*.f64 im re))))
34.9%
#s(approx (* (exp re) (sin im)) #s(approx (sin im) (fma.f64 (*.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) (*.f64 im im)) im im)))
34.9%
#s(approx (* (exp re) (sin im)) #s(approx (sin im) (fma.f64 (*.f64 (*.f64 im im) im) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 im im) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) im)))
Compiler

Compiled 2 391 to 1 017 computations (57.5% saved)

regimes71.0ms (1.1%)

Memory
-19.4MiB live, 119.3MiB allocated; 9ms collecting garbage
Counts
53 → 1
Calls
Call 1
Inputs
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) #s(approx (+ (* re im) im) (*.f64 im re))))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(literal 1 binary64)) im))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 re im im)))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 #s(approx (+ (* (+ (* 1/6 re) 1/2) re) 1) (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64))) re))) im))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 (fma.f64 (*.f64 re im) #s(literal 1/2 binary64) im) re im)))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64))) im))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re #s(literal 1 binary64))) im))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) #s(approx (+ (* re im) im) (*.f64 (+.f64 (/.f64 im re) im) re))))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 #s(approx (+ (* (+ (* 1/6 re) 1/2) re) 1) (*.f64 (*.f64 re re) #s(literal 1/6 binary64))) re))) im))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re) re))) im))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.f64 #s(approx (+ (* (+ (* 1/6 re) 1/2) re) 1) (*.f64 (*.f64 re re) #s(literal 1/6 binary64))) re #s(literal 1 binary64))) im))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re))) im))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 (fma.f64 (*.f64 im (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64))) re im) re im)))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re #s(literal 1 binary64))) im))
(*.f64 #s(approx (exp re) (+.f64 #s(literal 1 binary64) re)) #s(approx (sin im) (fma.f64 (*.f64 im im) (*.f64 im #s(literal -1/6 binary64)) im)))
(*.f64 #s(approx (exp re) (+.f64 #s(literal 1 binary64) re)) #s(approx (sin im) (fma.f64 (*.f64 (*.f64 im im) im) #s(literal -1/6 binary64) im)))
#s(approx (* (exp re) (sin im)) #s(approx (sin im) (fma.f64 (*.f64 (*.f64 im im) im) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 im im) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) im)))
#s(approx (* (exp re) (sin im)) #s(approx (sin im) (fma.f64 (*.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) (*.f64 im im)) im im)))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (/.f64 (fma.f64 #s(literal 1/36 binary64) (*.f64 re re) #s(literal -1/4 binary64)) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))) re #s(literal 1 binary64)) re))) im))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (fma.f64 #s(literal 1/36 binary64) (*.f64 re re) #s(literal -1/4 binary64)) (/.f64 re (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))) #s(literal 1 binary64)) re))) im))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.f64 (fma.f64 (/.f64 (fma.f64 (*.f64 re re) #s(literal 1/36 binary64) #s(literal -1/4 binary64)) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))) re #s(literal 1 binary64)) re #s(literal 1 binary64))) im))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (/.f64 (*.f64 (fma.f64 #s(literal 1/36 binary64) (*.f64 re re) #s(literal -1/4 binary64)) re) (fma.f64 #s(literal 1/36 binary64) (*.f64 re re) #s(literal -1/4 binary64))) (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) #s(literal 1 binary64)) re))) im))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (fma.f64 #s(literal 1/36 binary64) (/.f64 (*.f64 re re) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))) (/.f64 #s(literal -1/4 binary64) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64)))) re #s(literal 1 binary64)) re))) im))
#s(approx (* (exp re) (sin im)) (sin.f64 im))
#s(approx (* (exp re) (sin im)) (*.f64 (exp.f64 re) im))
#s(approx (* (exp re) (sin im)) #s(approx (sin im) (fma.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal -1/6 binary64) im)))
(*.f64 #s(approx (exp re) (+.f64 #s(literal 1 binary64) re)) (sin.f64 im))
(*.f64 #s(approx (exp re) (+.f64 #s(literal 1 binary64) re)) #s(approx (sin im) #s(approx (+ (* (pow im 3) -1/6) im) (*.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal -1/6 binary64)))))
(/.f64 (sin.f64 im) #s(approx (exp (neg re)) (-.f64 #s(literal 1 binary64) re)))
(*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* 1/2 re) 1) re) 1) (*.f64 (*.f64 re re) #s(literal 1/2 binary64)))) (sin.f64 im))
(*.f64 #s(approx (exp re) (+.f64 #s(literal 1 binary64) re)) #s(approx (sin im) (fma.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal -1/6 binary64) im)))
(*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* 1/2 re) 1) re) 1) (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re))) (sin.f64 im))
(*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 #s(approx (+ (* (+ (* 1/6 re) 1/2) re) 1) (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64))) re))) (sin.f64 im))
(*.f64 #s(approx (exp re) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64))) (sin.f64 im))
(*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 #s(approx (+ (* (+ (* 1/6 re) 1/2) re) 1) (*.f64 (*.f64 re re) #s(literal 1/6 binary64))) re))) (sin.f64 im))
(*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re) re))) (sin.f64 im))
(*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re))) (sin.f64 im))
(*.f64 #s(approx (exp re) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re #s(literal 1 binary64))) (sin.f64 im))
(/.f64 (sin.f64 im) #s(approx (exp (neg re)) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal -1 binary64)) re #s(literal 1 binary64))))
(/.f64 (sin.f64 im) #s(approx (exp (neg re)) (fma.f64 (fma.f64 #s(approx (+ (* -1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal -1 binary64)) re #s(literal 1 binary64))))
(*.f64 #s(approx (exp re) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64))) #s(approx (sin im) (fma.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal -1/6 binary64) im)))
(/.f64 (sin.f64 im) #s(approx (exp (neg re)) #s(approx (+ (* (+ (* (+ (* -1/6 re) 1/2) re) -1) re) 1) (*.f64 (*.f64 (fma.f64 #s(literal -1/6 binary64) re #s(literal 1/2 binary64)) re) re))))
(/.f64 (sin.f64 im) #s(approx (exp (neg re)) (fma.f64 #s(approx (+ (* (+ (* -1/6 re) 1/2) re) -1) (*.f64 (fma.f64 #s(literal -1/6 binary64) re #s(literal 1/2 binary64)) re)) re #s(literal 1 binary64))))
#s(approx (* (exp re) (sin im)) #s(approx (sin im) (fma.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 im im) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) im)))
(*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re))) #s(approx (sin im) (fma.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal -1/6 binary64) im)))
(/.f64 (sin.f64 im) #s(approx (exp (neg re)) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal -1 binary64)) re #s(literal 1 binary64))))
(*.f64 #s(approx (exp re) (+.f64 #s(literal 1 binary64) re)) #s(approx (sin im) (fma.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 im im) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) im)))
(*.f64 #s(approx (exp re) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64))) #s(approx (sin im) (fma.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 im im) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) im)))
(*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re))) #s(approx (sin im) (fma.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 im im) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) im)))
(/.f64 (sin.f64 im) #s(approx (exp (neg re)) (fma.f64 (fma.f64 (-.f64 (/.f64 (*.f64 #s(literal 1/36 binary64) (*.f64 re re)) (-.f64 (*.f64 #s(literal -1/6 binary64) re) #s(literal 1/2 binary64))) (/.f64 #s(literal 1/4 binary64) (-.f64 (*.f64 #s(literal -1/6 binary64) re) #s(literal 1/2 binary64)))) re #s(literal -1 binary64)) re #s(literal 1 binary64))))
(*.f64 (exp.f64 re) (sin.f64 im))
#s(approx (* (exp re) (sin im)) (fma.f64 (sin.f64 im) re (sin.f64 im)))
(/.f64 (sin.f64 im) (exp.f64 (neg.f64 re)))
Outputs
(/.f64 (sin.f64 im) (exp.f64 (neg.f64 re)))
Calls

5 calls:

16.0ms
im
13.0ms
re
13.0ms
(sin.f64 im)
12.0ms
(*.f64 (exp.f64 re) (sin.f64 im))
11.0ms
(exp.f64 re)
Results
AccuracySegmentsBranch
100.0%1(sin.f64 im)
100.0%1(exp.f64 re)
100.0%1(*.f64 (exp.f64 re) (sin.f64 im))
100.0%1re
100.0%1im
Compiler

Compiled 11 to 15 computations (-36.4% saved)

regimes85.0ms (1.3%)

Memory
22.3MiB live, 75.7MiB allocated; 11ms collecting garbage
Counts
52 → 1
Calls
Call 1
Inputs
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) #s(approx (+ (* re im) im) (*.f64 im re))))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(literal 1 binary64)) im))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 re im im)))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 #s(approx (+ (* (+ (* 1/6 re) 1/2) re) 1) (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64))) re))) im))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 (fma.f64 (*.f64 re im) #s(literal 1/2 binary64) im) re im)))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64))) im))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re #s(literal 1 binary64))) im))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) #s(approx (+ (* re im) im) (*.f64 (+.f64 (/.f64 im re) im) re))))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 #s(approx (+ (* (+ (* 1/6 re) 1/2) re) 1) (*.f64 (*.f64 re re) #s(literal 1/6 binary64))) re))) im))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re) re))) im))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.f64 #s(approx (+ (* (+ (* 1/6 re) 1/2) re) 1) (*.f64 (*.f64 re re) #s(literal 1/6 binary64))) re #s(literal 1 binary64))) im))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re))) im))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 (fma.f64 (*.f64 im (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64))) re im) re im)))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re #s(literal 1 binary64))) im))
(*.f64 #s(approx (exp re) (+.f64 #s(literal 1 binary64) re)) #s(approx (sin im) (fma.f64 (*.f64 im im) (*.f64 im #s(literal -1/6 binary64)) im)))
(*.f64 #s(approx (exp re) (+.f64 #s(literal 1 binary64) re)) #s(approx (sin im) (fma.f64 (*.f64 (*.f64 im im) im) #s(literal -1/6 binary64) im)))
#s(approx (* (exp re) (sin im)) #s(approx (sin im) (fma.f64 (*.f64 (*.f64 im im) im) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 im im) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) im)))
#s(approx (* (exp re) (sin im)) #s(approx (sin im) (fma.f64 (*.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) (*.f64 im im)) im im)))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (/.f64 (fma.f64 #s(literal 1/36 binary64) (*.f64 re re) #s(literal -1/4 binary64)) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))) re #s(literal 1 binary64)) re))) im))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (fma.f64 #s(literal 1/36 binary64) (*.f64 re re) #s(literal -1/4 binary64)) (/.f64 re (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))) #s(literal 1 binary64)) re))) im))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.f64 (fma.f64 (/.f64 (fma.f64 (*.f64 re re) #s(literal 1/36 binary64) #s(literal -1/4 binary64)) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))) re #s(literal 1 binary64)) re #s(literal 1 binary64))) im))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (/.f64 (*.f64 (fma.f64 #s(literal 1/36 binary64) (*.f64 re re) #s(literal -1/4 binary64)) re) (fma.f64 #s(literal 1/36 binary64) (*.f64 re re) #s(literal -1/4 binary64))) (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) #s(literal 1 binary64)) re))) im))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (fma.f64 #s(literal 1/36 binary64) (/.f64 (*.f64 re re) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))) (/.f64 #s(literal -1/4 binary64) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64)))) re #s(literal 1 binary64)) re))) im))
#s(approx (* (exp re) (sin im)) (sin.f64 im))
#s(approx (* (exp re) (sin im)) (*.f64 (exp.f64 re) im))
#s(approx (* (exp re) (sin im)) #s(approx (sin im) (fma.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal -1/6 binary64) im)))
(*.f64 #s(approx (exp re) (+.f64 #s(literal 1 binary64) re)) (sin.f64 im))
(*.f64 #s(approx (exp re) (+.f64 #s(literal 1 binary64) re)) #s(approx (sin im) #s(approx (+ (* (pow im 3) -1/6) im) (*.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal -1/6 binary64)))))
(/.f64 (sin.f64 im) #s(approx (exp (neg re)) (-.f64 #s(literal 1 binary64) re)))
(*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* 1/2 re) 1) re) 1) (*.f64 (*.f64 re re) #s(literal 1/2 binary64)))) (sin.f64 im))
(*.f64 #s(approx (exp re) (+.f64 #s(literal 1 binary64) re)) #s(approx (sin im) (fma.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal -1/6 binary64) im)))
(*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* 1/2 re) 1) re) 1) (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re))) (sin.f64 im))
(*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 #s(approx (+ (* (+ (* 1/6 re) 1/2) re) 1) (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64))) re))) (sin.f64 im))
(*.f64 #s(approx (exp re) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64))) (sin.f64 im))
(*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 #s(approx (+ (* (+ (* 1/6 re) 1/2) re) 1) (*.f64 (*.f64 re re) #s(literal 1/6 binary64))) re))) (sin.f64 im))
(*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re) re))) (sin.f64 im))
(*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re))) (sin.f64 im))
(*.f64 #s(approx (exp re) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re #s(literal 1 binary64))) (sin.f64 im))
(/.f64 (sin.f64 im) #s(approx (exp (neg re)) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal -1 binary64)) re #s(literal 1 binary64))))
(/.f64 (sin.f64 im) #s(approx (exp (neg re)) (fma.f64 (fma.f64 #s(approx (+ (* -1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal -1 binary64)) re #s(literal 1 binary64))))
(*.f64 #s(approx (exp re) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64))) #s(approx (sin im) (fma.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal -1/6 binary64) im)))
(/.f64 (sin.f64 im) #s(approx (exp (neg re)) #s(approx (+ (* (+ (* (+ (* -1/6 re) 1/2) re) -1) re) 1) (*.f64 (*.f64 (fma.f64 #s(literal -1/6 binary64) re #s(literal 1/2 binary64)) re) re))))
(/.f64 (sin.f64 im) #s(approx (exp (neg re)) (fma.f64 #s(approx (+ (* (+ (* -1/6 re) 1/2) re) -1) (*.f64 (fma.f64 #s(literal -1/6 binary64) re #s(literal 1/2 binary64)) re)) re #s(literal 1 binary64))))
#s(approx (* (exp re) (sin im)) #s(approx (sin im) (fma.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 im im) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) im)))
(*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re))) #s(approx (sin im) (fma.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal -1/6 binary64) im)))
(/.f64 (sin.f64 im) #s(approx (exp (neg re)) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal -1 binary64)) re #s(literal 1 binary64))))
(*.f64 #s(approx (exp re) (+.f64 #s(literal 1 binary64) re)) #s(approx (sin im) (fma.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 im im) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) im)))
(*.f64 #s(approx (exp re) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64))) #s(approx (sin im) (fma.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 im im) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) im)))
(*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re))) #s(approx (sin im) (fma.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 im im) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) im)))
(/.f64 (sin.f64 im) #s(approx (exp (neg re)) (fma.f64 (fma.f64 (-.f64 (/.f64 (*.f64 #s(literal 1/36 binary64) (*.f64 re re)) (-.f64 (*.f64 #s(literal -1/6 binary64) re) #s(literal 1/2 binary64))) (/.f64 #s(literal 1/4 binary64) (-.f64 (*.f64 #s(literal -1/6 binary64) re) #s(literal 1/2 binary64)))) re #s(literal -1 binary64)) re #s(literal 1 binary64))))
(*.f64 (exp.f64 re) (sin.f64 im))
#s(approx (* (exp re) (sin im)) (fma.f64 (sin.f64 im) re (sin.f64 im)))
Outputs
(*.f64 (exp.f64 re) (sin.f64 im))
Calls

5 calls:

34.0ms
re
13.0ms
(sin.f64 im)
13.0ms
im
12.0ms
(*.f64 (exp.f64 re) (sin.f64 im))
10.0ms
(exp.f64 re)
Results
AccuracySegmentsBranch
100.0%1(sin.f64 im)
100.0%1(exp.f64 re)
100.0%1(*.f64 (exp.f64 re) (sin.f64 im))
100.0%1re
100.0%1im
Compiler

Compiled 11 to 15 computations (-36.4% saved)

regimes87.0ms (1.4%)

Memory
11.2MiB live, 101.6MiB allocated; 6ms collecting garbage
Counts
50 → 5
Calls
Call 1
Inputs
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) #s(approx (+ (* re im) im) (*.f64 im re))))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(literal 1 binary64)) im))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 re im im)))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 #s(approx (+ (* (+ (* 1/6 re) 1/2) re) 1) (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64))) re))) im))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 (fma.f64 (*.f64 re im) #s(literal 1/2 binary64) im) re im)))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64))) im))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re #s(literal 1 binary64))) im))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) #s(approx (+ (* re im) im) (*.f64 (+.f64 (/.f64 im re) im) re))))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 #s(approx (+ (* (+ (* 1/6 re) 1/2) re) 1) (*.f64 (*.f64 re re) #s(literal 1/6 binary64))) re))) im))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re) re))) im))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.f64 #s(approx (+ (* (+ (* 1/6 re) 1/2) re) 1) (*.f64 (*.f64 re re) #s(literal 1/6 binary64))) re #s(literal 1 binary64))) im))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re))) im))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 (fma.f64 (*.f64 im (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64))) re im) re im)))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re #s(literal 1 binary64))) im))
(*.f64 #s(approx (exp re) (+.f64 #s(literal 1 binary64) re)) #s(approx (sin im) (fma.f64 (*.f64 im im) (*.f64 im #s(literal -1/6 binary64)) im)))
(*.f64 #s(approx (exp re) (+.f64 #s(literal 1 binary64) re)) #s(approx (sin im) (fma.f64 (*.f64 (*.f64 im im) im) #s(literal -1/6 binary64) im)))
#s(approx (* (exp re) (sin im)) #s(approx (sin im) (fma.f64 (*.f64 (*.f64 im im) im) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 im im) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) im)))
#s(approx (* (exp re) (sin im)) #s(approx (sin im) (fma.f64 (*.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) (*.f64 im im)) im im)))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (/.f64 (fma.f64 #s(literal 1/36 binary64) (*.f64 re re) #s(literal -1/4 binary64)) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))) re #s(literal 1 binary64)) re))) im))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (fma.f64 #s(literal 1/36 binary64) (*.f64 re re) #s(literal -1/4 binary64)) (/.f64 re (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))) #s(literal 1 binary64)) re))) im))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.f64 (fma.f64 (/.f64 (fma.f64 (*.f64 re re) #s(literal 1/36 binary64) #s(literal -1/4 binary64)) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))) re #s(literal 1 binary64)) re #s(literal 1 binary64))) im))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (/.f64 (*.f64 (fma.f64 #s(literal 1/36 binary64) (*.f64 re re) #s(literal -1/4 binary64)) re) (fma.f64 #s(literal 1/36 binary64) (*.f64 re re) #s(literal -1/4 binary64))) (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) #s(literal 1 binary64)) re))) im))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (fma.f64 #s(literal 1/36 binary64) (/.f64 (*.f64 re re) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))) (/.f64 #s(literal -1/4 binary64) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64)))) re #s(literal 1 binary64)) re))) im))
#s(approx (* (exp re) (sin im)) (sin.f64 im))
#s(approx (* (exp re) (sin im)) (*.f64 (exp.f64 re) im))
#s(approx (* (exp re) (sin im)) #s(approx (sin im) (fma.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal -1/6 binary64) im)))
(*.f64 #s(approx (exp re) (+.f64 #s(literal 1 binary64) re)) (sin.f64 im))
(*.f64 #s(approx (exp re) (+.f64 #s(literal 1 binary64) re)) #s(approx (sin im) #s(approx (+ (* (pow im 3) -1/6) im) (*.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal -1/6 binary64)))))
(/.f64 (sin.f64 im) #s(approx (exp (neg re)) (-.f64 #s(literal 1 binary64) re)))
(*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* 1/2 re) 1) re) 1) (*.f64 (*.f64 re re) #s(literal 1/2 binary64)))) (sin.f64 im))
(*.f64 #s(approx (exp re) (+.f64 #s(literal 1 binary64) re)) #s(approx (sin im) (fma.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal -1/6 binary64) im)))
(*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* 1/2 re) 1) re) 1) (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re))) (sin.f64 im))
(*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 #s(approx (+ (* (+ (* 1/6 re) 1/2) re) 1) (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64))) re))) (sin.f64 im))
(*.f64 #s(approx (exp re) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64))) (sin.f64 im))
(*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 #s(approx (+ (* (+ (* 1/6 re) 1/2) re) 1) (*.f64 (*.f64 re re) #s(literal 1/6 binary64))) re))) (sin.f64 im))
(*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re) re))) (sin.f64 im))
(*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re))) (sin.f64 im))
(*.f64 #s(approx (exp re) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re #s(literal 1 binary64))) (sin.f64 im))
(/.f64 (sin.f64 im) #s(approx (exp (neg re)) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal -1 binary64)) re #s(literal 1 binary64))))
(/.f64 (sin.f64 im) #s(approx (exp (neg re)) (fma.f64 (fma.f64 #s(approx (+ (* -1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal -1 binary64)) re #s(literal 1 binary64))))
(*.f64 #s(approx (exp re) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64))) #s(approx (sin im) (fma.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal -1/6 binary64) im)))
(/.f64 (sin.f64 im) #s(approx (exp (neg re)) #s(approx (+ (* (+ (* (+ (* -1/6 re) 1/2) re) -1) re) 1) (*.f64 (*.f64 (fma.f64 #s(literal -1/6 binary64) re #s(literal 1/2 binary64)) re) re))))
(/.f64 (sin.f64 im) #s(approx (exp (neg re)) (fma.f64 #s(approx (+ (* (+ (* -1/6 re) 1/2) re) -1) (*.f64 (fma.f64 #s(literal -1/6 binary64) re #s(literal 1/2 binary64)) re)) re #s(literal 1 binary64))))
#s(approx (* (exp re) (sin im)) #s(approx (sin im) (fma.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 im im) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) im)))
(*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re))) #s(approx (sin im) (fma.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal -1/6 binary64) im)))
(/.f64 (sin.f64 im) #s(approx (exp (neg re)) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal -1 binary64)) re #s(literal 1 binary64))))
(*.f64 #s(approx (exp re) (+.f64 #s(literal 1 binary64) re)) #s(approx (sin im) (fma.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 im im) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) im)))
(*.f64 #s(approx (exp re) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64))) #s(approx (sin im) (fma.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 im im) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) im)))
(*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re))) #s(approx (sin im) (fma.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 im im) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) im)))
(/.f64 (sin.f64 im) #s(approx (exp (neg re)) (fma.f64 (fma.f64 (-.f64 (/.f64 (*.f64 #s(literal 1/36 binary64) (*.f64 re re)) (-.f64 (*.f64 #s(literal -1/6 binary64) re) #s(literal 1/2 binary64))) (/.f64 #s(literal 1/4 binary64) (-.f64 (*.f64 #s(literal -1/6 binary64) re) #s(literal 1/2 binary64)))) re #s(literal -1 binary64)) re #s(literal 1 binary64))))
Outputs
(*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re))) #s(approx (sin im) (fma.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 im im) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) im)))
(*.f64 #s(approx (exp re) (+.f64 #s(literal 1 binary64) re)) (sin.f64 im))
#s(approx (* (exp re) (sin im)) (*.f64 (exp.f64 re) im))
(/.f64 (sin.f64 im) #s(approx (exp (neg re)) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal -1 binary64)) re #s(literal 1 binary64))))
#s(approx (* (exp re) (sin im)) (*.f64 (exp.f64 re) im))
Calls

5 calls:

24.0ms
re
23.0ms
(exp.f64 re)
13.0ms
im
13.0ms
(sin.f64 im)
11.0ms
(*.f64 (exp.f64 re) (sin.f64 im))
Results
AccuracySegmentsBranch
83.2%3(sin.f64 im)
90.0%2(exp.f64 re)
98.9%5(*.f64 (exp.f64 re) (sin.f64 im))
95.1%4re
84.0%3im
Compiler

Compiled 11 to 15 computations (-36.4% saved)

regimes17.0ms (0.3%)

Memory
-10.8MiB live, 31.6MiB allocated; 5ms collecting garbage
Counts
48 → 5
Calls
Call 1
Inputs
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) #s(approx (+ (* re im) im) (*.f64 im re))))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(literal 1 binary64)) im))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 re im im)))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 #s(approx (+ (* (+ (* 1/6 re) 1/2) re) 1) (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64))) re))) im))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 (fma.f64 (*.f64 re im) #s(literal 1/2 binary64) im) re im)))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64))) im))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re #s(literal 1 binary64))) im))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) #s(approx (+ (* re im) im) (*.f64 (+.f64 (/.f64 im re) im) re))))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 #s(approx (+ (* (+ (* 1/6 re) 1/2) re) 1) (*.f64 (*.f64 re re) #s(literal 1/6 binary64))) re))) im))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re) re))) im))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.f64 #s(approx (+ (* (+ (* 1/6 re) 1/2) re) 1) (*.f64 (*.f64 re re) #s(literal 1/6 binary64))) re #s(literal 1 binary64))) im))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re))) im))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 (fma.f64 (*.f64 im (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64))) re im) re im)))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re #s(literal 1 binary64))) im))
(*.f64 #s(approx (exp re) (+.f64 #s(literal 1 binary64) re)) #s(approx (sin im) (fma.f64 (*.f64 im im) (*.f64 im #s(literal -1/6 binary64)) im)))
(*.f64 #s(approx (exp re) (+.f64 #s(literal 1 binary64) re)) #s(approx (sin im) (fma.f64 (*.f64 (*.f64 im im) im) #s(literal -1/6 binary64) im)))
#s(approx (* (exp re) (sin im)) #s(approx (sin im) (fma.f64 (*.f64 (*.f64 im im) im) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 im im) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) im)))
#s(approx (* (exp re) (sin im)) #s(approx (sin im) (fma.f64 (*.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) (*.f64 im im)) im im)))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (/.f64 (fma.f64 #s(literal 1/36 binary64) (*.f64 re re) #s(literal -1/4 binary64)) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))) re #s(literal 1 binary64)) re))) im))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (fma.f64 #s(literal 1/36 binary64) (*.f64 re re) #s(literal -1/4 binary64)) (/.f64 re (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))) #s(literal 1 binary64)) re))) im))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.f64 (fma.f64 (/.f64 (fma.f64 (*.f64 re re) #s(literal 1/36 binary64) #s(literal -1/4 binary64)) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))) re #s(literal 1 binary64)) re #s(literal 1 binary64))) im))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (/.f64 (*.f64 (fma.f64 #s(literal 1/36 binary64) (*.f64 re re) #s(literal -1/4 binary64)) re) (fma.f64 #s(literal 1/36 binary64) (*.f64 re re) #s(literal -1/4 binary64))) (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) #s(literal 1 binary64)) re))) im))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (fma.f64 #s(literal 1/36 binary64) (/.f64 (*.f64 re re) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))) (/.f64 #s(literal -1/4 binary64) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64)))) re #s(literal 1 binary64)) re))) im))
#s(approx (* (exp re) (sin im)) (sin.f64 im))
#s(approx (* (exp re) (sin im)) (*.f64 (exp.f64 re) im))
#s(approx (* (exp re) (sin im)) #s(approx (sin im) (fma.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal -1/6 binary64) im)))
(*.f64 #s(approx (exp re) (+.f64 #s(literal 1 binary64) re)) (sin.f64 im))
(*.f64 #s(approx (exp re) (+.f64 #s(literal 1 binary64) re)) #s(approx (sin im) #s(approx (+ (* (pow im 3) -1/6) im) (*.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal -1/6 binary64)))))
(/.f64 (sin.f64 im) #s(approx (exp (neg re)) (-.f64 #s(literal 1 binary64) re)))
(*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* 1/2 re) 1) re) 1) (*.f64 (*.f64 re re) #s(literal 1/2 binary64)))) (sin.f64 im))
(*.f64 #s(approx (exp re) (+.f64 #s(literal 1 binary64) re)) #s(approx (sin im) (fma.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal -1/6 binary64) im)))
(*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* 1/2 re) 1) re) 1) (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re))) (sin.f64 im))
(*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 #s(approx (+ (* (+ (* 1/6 re) 1/2) re) 1) (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64))) re))) (sin.f64 im))
(*.f64 #s(approx (exp re) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64))) (sin.f64 im))
(*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 #s(approx (+ (* (+ (* 1/6 re) 1/2) re) 1) (*.f64 (*.f64 re re) #s(literal 1/6 binary64))) re))) (sin.f64 im))
(*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re) re))) (sin.f64 im))
(*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re))) (sin.f64 im))
(*.f64 #s(approx (exp re) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re #s(literal 1 binary64))) (sin.f64 im))
(/.f64 (sin.f64 im) #s(approx (exp (neg re)) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal -1 binary64)) re #s(literal 1 binary64))))
(/.f64 (sin.f64 im) #s(approx (exp (neg re)) (fma.f64 (fma.f64 #s(approx (+ (* -1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal -1 binary64)) re #s(literal 1 binary64))))
(*.f64 #s(approx (exp re) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64))) #s(approx (sin im) (fma.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal -1/6 binary64) im)))
(/.f64 (sin.f64 im) #s(approx (exp (neg re)) #s(approx (+ (* (+ (* (+ (* -1/6 re) 1/2) re) -1) re) 1) (*.f64 (*.f64 (fma.f64 #s(literal -1/6 binary64) re #s(literal 1/2 binary64)) re) re))))
(/.f64 (sin.f64 im) #s(approx (exp (neg re)) (fma.f64 #s(approx (+ (* (+ (* -1/6 re) 1/2) re) -1) (*.f64 (fma.f64 #s(literal -1/6 binary64) re #s(literal 1/2 binary64)) re)) re #s(literal 1 binary64))))
#s(approx (* (exp re) (sin im)) #s(approx (sin im) (fma.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 im im) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) im)))
(*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re))) #s(approx (sin im) (fma.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal -1/6 binary64) im)))
(/.f64 (sin.f64 im) #s(approx (exp (neg re)) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal -1 binary64)) re #s(literal 1 binary64))))
(*.f64 #s(approx (exp re) (+.f64 #s(literal 1 binary64) re)) #s(approx (sin im) (fma.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 im im) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) im)))
(*.f64 #s(approx (exp re) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64))) #s(approx (sin im) (fma.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 im im) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) im)))
Outputs
(*.f64 #s(approx (exp re) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64))) #s(approx (sin im) (fma.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 im im) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) im)))
(*.f64 #s(approx (exp re) (+.f64 #s(literal 1 binary64) re)) (sin.f64 im))
#s(approx (* (exp re) (sin im)) (*.f64 (exp.f64 re) im))
(/.f64 (sin.f64 im) #s(approx (exp (neg re)) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal -1 binary64)) re #s(literal 1 binary64))))
#s(approx (* (exp re) (sin im)) (*.f64 (exp.f64 re) im))
Calls

1 calls:

14.0ms
(*.f64 (exp.f64 re) (sin.f64 im))
Results
AccuracySegmentsBranch
98.6%5(*.f64 (exp.f64 re) (sin.f64 im))
Compiler

Compiled 5 to 5 computations (0% saved)

regimes17.0ms (0.3%)

Memory
-26.7MiB live, 31.0MiB allocated; 5ms collecting garbage
Counts
47 → 5
Calls
Call 1
Inputs
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) #s(approx (+ (* re im) im) (*.f64 im re))))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(literal 1 binary64)) im))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 re im im)))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 #s(approx (+ (* (+ (* 1/6 re) 1/2) re) 1) (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64))) re))) im))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 (fma.f64 (*.f64 re im) #s(literal 1/2 binary64) im) re im)))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64))) im))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re #s(literal 1 binary64))) im))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) #s(approx (+ (* re im) im) (*.f64 (+.f64 (/.f64 im re) im) re))))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 #s(approx (+ (* (+ (* 1/6 re) 1/2) re) 1) (*.f64 (*.f64 re re) #s(literal 1/6 binary64))) re))) im))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re) re))) im))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.f64 #s(approx (+ (* (+ (* 1/6 re) 1/2) re) 1) (*.f64 (*.f64 re re) #s(literal 1/6 binary64))) re #s(literal 1 binary64))) im))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re))) im))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 (fma.f64 (*.f64 im (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64))) re im) re im)))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re #s(literal 1 binary64))) im))
(*.f64 #s(approx (exp re) (+.f64 #s(literal 1 binary64) re)) #s(approx (sin im) (fma.f64 (*.f64 im im) (*.f64 im #s(literal -1/6 binary64)) im)))
(*.f64 #s(approx (exp re) (+.f64 #s(literal 1 binary64) re)) #s(approx (sin im) (fma.f64 (*.f64 (*.f64 im im) im) #s(literal -1/6 binary64) im)))
#s(approx (* (exp re) (sin im)) #s(approx (sin im) (fma.f64 (*.f64 (*.f64 im im) im) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 im im) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) im)))
#s(approx (* (exp re) (sin im)) #s(approx (sin im) (fma.f64 (*.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) (*.f64 im im)) im im)))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (/.f64 (fma.f64 #s(literal 1/36 binary64) (*.f64 re re) #s(literal -1/4 binary64)) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))) re #s(literal 1 binary64)) re))) im))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (fma.f64 #s(literal 1/36 binary64) (*.f64 re re) #s(literal -1/4 binary64)) (/.f64 re (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))) #s(literal 1 binary64)) re))) im))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.f64 (fma.f64 (/.f64 (fma.f64 (*.f64 re re) #s(literal 1/36 binary64) #s(literal -1/4 binary64)) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))) re #s(literal 1 binary64)) re #s(literal 1 binary64))) im))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (/.f64 (*.f64 (fma.f64 #s(literal 1/36 binary64) (*.f64 re re) #s(literal -1/4 binary64)) re) (fma.f64 #s(literal 1/36 binary64) (*.f64 re re) #s(literal -1/4 binary64))) (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) #s(literal 1 binary64)) re))) im))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (fma.f64 #s(literal 1/36 binary64) (/.f64 (*.f64 re re) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))) (/.f64 #s(literal -1/4 binary64) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64)))) re #s(literal 1 binary64)) re))) im))
#s(approx (* (exp re) (sin im)) (sin.f64 im))
#s(approx (* (exp re) (sin im)) (*.f64 (exp.f64 re) im))
#s(approx (* (exp re) (sin im)) #s(approx (sin im) (fma.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal -1/6 binary64) im)))
(*.f64 #s(approx (exp re) (+.f64 #s(literal 1 binary64) re)) (sin.f64 im))
(*.f64 #s(approx (exp re) (+.f64 #s(literal 1 binary64) re)) #s(approx (sin im) #s(approx (+ (* (pow im 3) -1/6) im) (*.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal -1/6 binary64)))))
(/.f64 (sin.f64 im) #s(approx (exp (neg re)) (-.f64 #s(literal 1 binary64) re)))
(*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* 1/2 re) 1) re) 1) (*.f64 (*.f64 re re) #s(literal 1/2 binary64)))) (sin.f64 im))
(*.f64 #s(approx (exp re) (+.f64 #s(literal 1 binary64) re)) #s(approx (sin im) (fma.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal -1/6 binary64) im)))
(*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* 1/2 re) 1) re) 1) (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re))) (sin.f64 im))
(*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 #s(approx (+ (* (+ (* 1/6 re) 1/2) re) 1) (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64))) re))) (sin.f64 im))
(*.f64 #s(approx (exp re) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64))) (sin.f64 im))
(*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 #s(approx (+ (* (+ (* 1/6 re) 1/2) re) 1) (*.f64 (*.f64 re re) #s(literal 1/6 binary64))) re))) (sin.f64 im))
(*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re) re))) (sin.f64 im))
(*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re))) (sin.f64 im))
(*.f64 #s(approx (exp re) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re #s(literal 1 binary64))) (sin.f64 im))
(/.f64 (sin.f64 im) #s(approx (exp (neg re)) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal -1 binary64)) re #s(literal 1 binary64))))
(/.f64 (sin.f64 im) #s(approx (exp (neg re)) (fma.f64 (fma.f64 #s(approx (+ (* -1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal -1 binary64)) re #s(literal 1 binary64))))
(*.f64 #s(approx (exp re) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64))) #s(approx (sin im) (fma.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal -1/6 binary64) im)))
(/.f64 (sin.f64 im) #s(approx (exp (neg re)) #s(approx (+ (* (+ (* (+ (* -1/6 re) 1/2) re) -1) re) 1) (*.f64 (*.f64 (fma.f64 #s(literal -1/6 binary64) re #s(literal 1/2 binary64)) re) re))))
(/.f64 (sin.f64 im) #s(approx (exp (neg re)) (fma.f64 #s(approx (+ (* (+ (* -1/6 re) 1/2) re) -1) (*.f64 (fma.f64 #s(literal -1/6 binary64) re #s(literal 1/2 binary64)) re)) re #s(literal 1 binary64))))
#s(approx (* (exp re) (sin im)) #s(approx (sin im) (fma.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 im im) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) im)))
(*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re))) #s(approx (sin im) (fma.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal -1/6 binary64) im)))
(/.f64 (sin.f64 im) #s(approx (exp (neg re)) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal -1 binary64)) re #s(literal 1 binary64))))
(*.f64 #s(approx (exp re) (+.f64 #s(literal 1 binary64) re)) #s(approx (sin im) (fma.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 im im) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) im)))
Outputs
(*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re))) #s(approx (sin im) (fma.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal -1/6 binary64) im)))
(*.f64 #s(approx (exp re) (+.f64 #s(literal 1 binary64) re)) (sin.f64 im))
#s(approx (* (exp re) (sin im)) (*.f64 (exp.f64 re) im))
(/.f64 (sin.f64 im) #s(approx (exp (neg re)) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal -1 binary64)) re #s(literal 1 binary64))))
#s(approx (* (exp re) (sin im)) (*.f64 (exp.f64 re) im))
Calls

1 calls:

11.0ms
(*.f64 (exp.f64 re) (sin.f64 im))
Results
AccuracySegmentsBranch
98.5%5(*.f64 (exp.f64 re) (sin.f64 im))
Compiler

Compiled 5 to 5 computations (0% saved)

regimes12.0ms (0.2%)

Memory
23.1MiB live, 23.1MiB allocated; 0ms collecting garbage
Counts
44 → 5
Calls
Call 1
Inputs
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) #s(approx (+ (* re im) im) (*.f64 im re))))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(literal 1 binary64)) im))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 re im im)))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 #s(approx (+ (* (+ (* 1/6 re) 1/2) re) 1) (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64))) re))) im))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 (fma.f64 (*.f64 re im) #s(literal 1/2 binary64) im) re im)))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64))) im))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re #s(literal 1 binary64))) im))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) #s(approx (+ (* re im) im) (*.f64 (+.f64 (/.f64 im re) im) re))))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 #s(approx (+ (* (+ (* 1/6 re) 1/2) re) 1) (*.f64 (*.f64 re re) #s(literal 1/6 binary64))) re))) im))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re) re))) im))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.f64 #s(approx (+ (* (+ (* 1/6 re) 1/2) re) 1) (*.f64 (*.f64 re re) #s(literal 1/6 binary64))) re #s(literal 1 binary64))) im))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re))) im))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 (fma.f64 (*.f64 im (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64))) re im) re im)))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re #s(literal 1 binary64))) im))
(*.f64 #s(approx (exp re) (+.f64 #s(literal 1 binary64) re)) #s(approx (sin im) (fma.f64 (*.f64 im im) (*.f64 im #s(literal -1/6 binary64)) im)))
(*.f64 #s(approx (exp re) (+.f64 #s(literal 1 binary64) re)) #s(approx (sin im) (fma.f64 (*.f64 (*.f64 im im) im) #s(literal -1/6 binary64) im)))
#s(approx (* (exp re) (sin im)) #s(approx (sin im) (fma.f64 (*.f64 (*.f64 im im) im) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 im im) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) im)))
#s(approx (* (exp re) (sin im)) #s(approx (sin im) (fma.f64 (*.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) (*.f64 im im)) im im)))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (/.f64 (fma.f64 #s(literal 1/36 binary64) (*.f64 re re) #s(literal -1/4 binary64)) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))) re #s(literal 1 binary64)) re))) im))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (fma.f64 #s(literal 1/36 binary64) (*.f64 re re) #s(literal -1/4 binary64)) (/.f64 re (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))) #s(literal 1 binary64)) re))) im))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.f64 (fma.f64 (/.f64 (fma.f64 (*.f64 re re) #s(literal 1/36 binary64) #s(literal -1/4 binary64)) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))) re #s(literal 1 binary64)) re #s(literal 1 binary64))) im))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (/.f64 (*.f64 (fma.f64 #s(literal 1/36 binary64) (*.f64 re re) #s(literal -1/4 binary64)) re) (fma.f64 #s(literal 1/36 binary64) (*.f64 re re) #s(literal -1/4 binary64))) (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) #s(literal 1 binary64)) re))) im))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (fma.f64 #s(literal 1/36 binary64) (/.f64 (*.f64 re re) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))) (/.f64 #s(literal -1/4 binary64) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64)))) re #s(literal 1 binary64)) re))) im))
#s(approx (* (exp re) (sin im)) (sin.f64 im))
#s(approx (* (exp re) (sin im)) (*.f64 (exp.f64 re) im))
#s(approx (* (exp re) (sin im)) #s(approx (sin im) (fma.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal -1/6 binary64) im)))
(*.f64 #s(approx (exp re) (+.f64 #s(literal 1 binary64) re)) (sin.f64 im))
(*.f64 #s(approx (exp re) (+.f64 #s(literal 1 binary64) re)) #s(approx (sin im) #s(approx (+ (* (pow im 3) -1/6) im) (*.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal -1/6 binary64)))))
(/.f64 (sin.f64 im) #s(approx (exp (neg re)) (-.f64 #s(literal 1 binary64) re)))
(*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* 1/2 re) 1) re) 1) (*.f64 (*.f64 re re) #s(literal 1/2 binary64)))) (sin.f64 im))
(*.f64 #s(approx (exp re) (+.f64 #s(literal 1 binary64) re)) #s(approx (sin im) (fma.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal -1/6 binary64) im)))
(*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* 1/2 re) 1) re) 1) (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re))) (sin.f64 im))
(*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 #s(approx (+ (* (+ (* 1/6 re) 1/2) re) 1) (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64))) re))) (sin.f64 im))
(*.f64 #s(approx (exp re) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64))) (sin.f64 im))
(*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 #s(approx (+ (* (+ (* 1/6 re) 1/2) re) 1) (*.f64 (*.f64 re re) #s(literal 1/6 binary64))) re))) (sin.f64 im))
(*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re) re))) (sin.f64 im))
(*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re))) (sin.f64 im))
(*.f64 #s(approx (exp re) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re #s(literal 1 binary64))) (sin.f64 im))
(/.f64 (sin.f64 im) #s(approx (exp (neg re)) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal -1 binary64)) re #s(literal 1 binary64))))
(/.f64 (sin.f64 im) #s(approx (exp (neg re)) (fma.f64 (fma.f64 #s(approx (+ (* -1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal -1 binary64)) re #s(literal 1 binary64))))
(*.f64 #s(approx (exp re) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64))) #s(approx (sin im) (fma.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal -1/6 binary64) im)))
(/.f64 (sin.f64 im) #s(approx (exp (neg re)) #s(approx (+ (* (+ (* (+ (* -1/6 re) 1/2) re) -1) re) 1) (*.f64 (*.f64 (fma.f64 #s(literal -1/6 binary64) re #s(literal 1/2 binary64)) re) re))))
(/.f64 (sin.f64 im) #s(approx (exp (neg re)) (fma.f64 #s(approx (+ (* (+ (* -1/6 re) 1/2) re) -1) (*.f64 (fma.f64 #s(literal -1/6 binary64) re #s(literal 1/2 binary64)) re)) re #s(literal 1 binary64))))
#s(approx (* (exp re) (sin im)) #s(approx (sin im) (fma.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 im im) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) im)))
Outputs
(*.f64 #s(approx (exp re) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64))) #s(approx (sin im) (fma.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal -1/6 binary64) im)))
(*.f64 #s(approx (exp re) (+.f64 #s(literal 1 binary64) re)) (sin.f64 im))
#s(approx (* (exp re) (sin im)) (*.f64 (exp.f64 re) im))
(/.f64 (sin.f64 im) #s(approx (exp (neg re)) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal -1 binary64)) re #s(literal 1 binary64))))
#s(approx (* (exp re) (sin im)) (*.f64 (exp.f64 re) im))
Calls

1 calls:

10.0ms
(*.f64 (exp.f64 re) (sin.f64 im))
Results
AccuracySegmentsBranch
98.2%5(*.f64 (exp.f64 re) (sin.f64 im))
Compiler

Compiled 5 to 5 computations (0% saved)

regimes11.0ms (0.2%)

Memory
16.5MiB live, 16.5MiB allocated; 0ms collecting garbage
Counts
40 → 5
Calls
Call 1
Inputs
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) #s(approx (+ (* re im) im) (*.f64 im re))))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(literal 1 binary64)) im))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 re im im)))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 #s(approx (+ (* (+ (* 1/6 re) 1/2) re) 1) (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64))) re))) im))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 (fma.f64 (*.f64 re im) #s(literal 1/2 binary64) im) re im)))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64))) im))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re #s(literal 1 binary64))) im))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) #s(approx (+ (* re im) im) (*.f64 (+.f64 (/.f64 im re) im) re))))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 #s(approx (+ (* (+ (* 1/6 re) 1/2) re) 1) (*.f64 (*.f64 re re) #s(literal 1/6 binary64))) re))) im))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re) re))) im))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.f64 #s(approx (+ (* (+ (* 1/6 re) 1/2) re) 1) (*.f64 (*.f64 re re) #s(literal 1/6 binary64))) re #s(literal 1 binary64))) im))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re))) im))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 (fma.f64 (*.f64 im (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64))) re im) re im)))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re #s(literal 1 binary64))) im))
(*.f64 #s(approx (exp re) (+.f64 #s(literal 1 binary64) re)) #s(approx (sin im) (fma.f64 (*.f64 im im) (*.f64 im #s(literal -1/6 binary64)) im)))
(*.f64 #s(approx (exp re) (+.f64 #s(literal 1 binary64) re)) #s(approx (sin im) (fma.f64 (*.f64 (*.f64 im im) im) #s(literal -1/6 binary64) im)))
#s(approx (* (exp re) (sin im)) #s(approx (sin im) (fma.f64 (*.f64 (*.f64 im im) im) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 im im) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) im)))
#s(approx (* (exp re) (sin im)) #s(approx (sin im) (fma.f64 (*.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) (*.f64 im im)) im im)))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (/.f64 (fma.f64 #s(literal 1/36 binary64) (*.f64 re re) #s(literal -1/4 binary64)) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))) re #s(literal 1 binary64)) re))) im))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (fma.f64 #s(literal 1/36 binary64) (*.f64 re re) #s(literal -1/4 binary64)) (/.f64 re (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))) #s(literal 1 binary64)) re))) im))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.f64 (fma.f64 (/.f64 (fma.f64 (*.f64 re re) #s(literal 1/36 binary64) #s(literal -1/4 binary64)) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))) re #s(literal 1 binary64)) re #s(literal 1 binary64))) im))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (/.f64 (*.f64 (fma.f64 #s(literal 1/36 binary64) (*.f64 re re) #s(literal -1/4 binary64)) re) (fma.f64 #s(literal 1/36 binary64) (*.f64 re re) #s(literal -1/4 binary64))) (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) #s(literal 1 binary64)) re))) im))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (fma.f64 #s(literal 1/36 binary64) (/.f64 (*.f64 re re) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))) (/.f64 #s(literal -1/4 binary64) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64)))) re #s(literal 1 binary64)) re))) im))
#s(approx (* (exp re) (sin im)) (sin.f64 im))
#s(approx (* (exp re) (sin im)) (*.f64 (exp.f64 re) im))
#s(approx (* (exp re) (sin im)) #s(approx (sin im) (fma.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal -1/6 binary64) im)))
(*.f64 #s(approx (exp re) (+.f64 #s(literal 1 binary64) re)) (sin.f64 im))
(*.f64 #s(approx (exp re) (+.f64 #s(literal 1 binary64) re)) #s(approx (sin im) #s(approx (+ (* (pow im 3) -1/6) im) (*.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal -1/6 binary64)))))
(/.f64 (sin.f64 im) #s(approx (exp (neg re)) (-.f64 #s(literal 1 binary64) re)))
(*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* 1/2 re) 1) re) 1) (*.f64 (*.f64 re re) #s(literal 1/2 binary64)))) (sin.f64 im))
(*.f64 #s(approx (exp re) (+.f64 #s(literal 1 binary64) re)) #s(approx (sin im) (fma.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal -1/6 binary64) im)))
(*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* 1/2 re) 1) re) 1) (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re))) (sin.f64 im))
(*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 #s(approx (+ (* (+ (* 1/6 re) 1/2) re) 1) (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64))) re))) (sin.f64 im))
(*.f64 #s(approx (exp re) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64))) (sin.f64 im))
(*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 #s(approx (+ (* (+ (* 1/6 re) 1/2) re) 1) (*.f64 (*.f64 re re) #s(literal 1/6 binary64))) re))) (sin.f64 im))
(*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re) re))) (sin.f64 im))
(*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re))) (sin.f64 im))
(*.f64 #s(approx (exp re) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re #s(literal 1 binary64))) (sin.f64 im))
(/.f64 (sin.f64 im) #s(approx (exp (neg re)) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal -1 binary64)) re #s(literal 1 binary64))))
(/.f64 (sin.f64 im) #s(approx (exp (neg re)) (fma.f64 (fma.f64 #s(approx (+ (* -1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal -1 binary64)) re #s(literal 1 binary64))))
Outputs
#s(approx (* (exp re) (sin im)) #s(approx (sin im) (fma.f64 (*.f64 (*.f64 im im) im) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 im im) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) im)))
(*.f64 #s(approx (exp re) (+.f64 #s(literal 1 binary64) re)) (sin.f64 im))
#s(approx (* (exp re) (sin im)) (*.f64 (exp.f64 re) im))
(/.f64 (sin.f64 im) #s(approx (exp (neg re)) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal -1 binary64)) re #s(literal 1 binary64))))
#s(approx (* (exp re) (sin im)) (*.f64 (exp.f64 re) im))
Calls

1 calls:

9.0ms
(*.f64 (exp.f64 re) (sin.f64 im))
Results
AccuracySegmentsBranch
98.2%5(*.f64 (exp.f64 re) (sin.f64 im))
Compiler

Compiled 5 to 5 computations (0% saved)

regimes27.0ms (0.4%)

Memory
-35.0MiB live, 11.7MiB allocated; 1ms collecting garbage
Counts
38 → 5
Calls
Call 1
Inputs
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) #s(approx (+ (* re im) im) (*.f64 im re))))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(literal 1 binary64)) im))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 re im im)))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 #s(approx (+ (* (+ (* 1/6 re) 1/2) re) 1) (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64))) re))) im))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 (fma.f64 (*.f64 re im) #s(literal 1/2 binary64) im) re im)))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64))) im))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re #s(literal 1 binary64))) im))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) #s(approx (+ (* re im) im) (*.f64 (+.f64 (/.f64 im re) im) re))))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 #s(approx (+ (* (+ (* 1/6 re) 1/2) re) 1) (*.f64 (*.f64 re re) #s(literal 1/6 binary64))) re))) im))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re) re))) im))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.f64 #s(approx (+ (* (+ (* 1/6 re) 1/2) re) 1) (*.f64 (*.f64 re re) #s(literal 1/6 binary64))) re #s(literal 1 binary64))) im))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re))) im))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 (fma.f64 (*.f64 im (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64))) re im) re im)))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re #s(literal 1 binary64))) im))
(*.f64 #s(approx (exp re) (+.f64 #s(literal 1 binary64) re)) #s(approx (sin im) (fma.f64 (*.f64 im im) (*.f64 im #s(literal -1/6 binary64)) im)))
(*.f64 #s(approx (exp re) (+.f64 #s(literal 1 binary64) re)) #s(approx (sin im) (fma.f64 (*.f64 (*.f64 im im) im) #s(literal -1/6 binary64) im)))
#s(approx (* (exp re) (sin im)) #s(approx (sin im) (fma.f64 (*.f64 (*.f64 im im) im) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 im im) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) im)))
#s(approx (* (exp re) (sin im)) #s(approx (sin im) (fma.f64 (*.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) (*.f64 im im)) im im)))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (/.f64 (fma.f64 #s(literal 1/36 binary64) (*.f64 re re) #s(literal -1/4 binary64)) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))) re #s(literal 1 binary64)) re))) im))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (fma.f64 #s(literal 1/36 binary64) (*.f64 re re) #s(literal -1/4 binary64)) (/.f64 re (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))) #s(literal 1 binary64)) re))) im))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.f64 (fma.f64 (/.f64 (fma.f64 (*.f64 re re) #s(literal 1/36 binary64) #s(literal -1/4 binary64)) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))) re #s(literal 1 binary64)) re #s(literal 1 binary64))) im))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (/.f64 (*.f64 (fma.f64 #s(literal 1/36 binary64) (*.f64 re re) #s(literal -1/4 binary64)) re) (fma.f64 #s(literal 1/36 binary64) (*.f64 re re) #s(literal -1/4 binary64))) (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) #s(literal 1 binary64)) re))) im))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (fma.f64 #s(literal 1/36 binary64) (/.f64 (*.f64 re re) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))) (/.f64 #s(literal -1/4 binary64) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64)))) re #s(literal 1 binary64)) re))) im))
#s(approx (* (exp re) (sin im)) (sin.f64 im))
#s(approx (* (exp re) (sin im)) (*.f64 (exp.f64 re) im))
#s(approx (* (exp re) (sin im)) #s(approx (sin im) (fma.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal -1/6 binary64) im)))
(*.f64 #s(approx (exp re) (+.f64 #s(literal 1 binary64) re)) (sin.f64 im))
(*.f64 #s(approx (exp re) (+.f64 #s(literal 1 binary64) re)) #s(approx (sin im) #s(approx (+ (* (pow im 3) -1/6) im) (*.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal -1/6 binary64)))))
(/.f64 (sin.f64 im) #s(approx (exp (neg re)) (-.f64 #s(literal 1 binary64) re)))
(*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* 1/2 re) 1) re) 1) (*.f64 (*.f64 re re) #s(literal 1/2 binary64)))) (sin.f64 im))
(*.f64 #s(approx (exp re) (+.f64 #s(literal 1 binary64) re)) #s(approx (sin im) (fma.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal -1/6 binary64) im)))
(*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* 1/2 re) 1) re) 1) (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re))) (sin.f64 im))
(*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 #s(approx (+ (* (+ (* 1/6 re) 1/2) re) 1) (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64))) re))) (sin.f64 im))
(*.f64 #s(approx (exp re) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64))) (sin.f64 im))
(*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 #s(approx (+ (* (+ (* 1/6 re) 1/2) re) 1) (*.f64 (*.f64 re re) #s(literal 1/6 binary64))) re))) (sin.f64 im))
(*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re) re))) (sin.f64 im))
(*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re))) (sin.f64 im))
(*.f64 #s(approx (exp re) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re #s(literal 1 binary64))) (sin.f64 im))
Outputs
#s(approx (* (exp re) (sin im)) #s(approx (sin im) (fma.f64 (*.f64 (*.f64 im im) im) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 im im) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) im)))
(*.f64 #s(approx (exp re) (+.f64 #s(literal 1 binary64) re)) (sin.f64 im))
#s(approx (* (exp re) (sin im)) (*.f64 (exp.f64 re) im))
(*.f64 #s(approx (exp re) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64))) (sin.f64 im))
#s(approx (* (exp re) (sin im)) (*.f64 (exp.f64 re) im))
Calls

1 calls:

25.0ms
(*.f64 (exp.f64 re) (sin.f64 im))
Results
AccuracySegmentsBranch
98.2%5(*.f64 (exp.f64 re) (sin.f64 im))
Compiler

Compiled 5 to 5 computations (0% saved)

regimes10.0ms (0.2%)

Memory
14.2MiB live, 14.2MiB allocated; 0ms collecting garbage
Counts
33 → 5
Calls
Call 1
Inputs
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) #s(approx (+ (* re im) im) (*.f64 im re))))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(literal 1 binary64)) im))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 re im im)))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 #s(approx (+ (* (+ (* 1/6 re) 1/2) re) 1) (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64))) re))) im))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 (fma.f64 (*.f64 re im) #s(literal 1/2 binary64) im) re im)))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64))) im))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re #s(literal 1 binary64))) im))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) #s(approx (+ (* re im) im) (*.f64 (+.f64 (/.f64 im re) im) re))))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 #s(approx (+ (* (+ (* 1/6 re) 1/2) re) 1) (*.f64 (*.f64 re re) #s(literal 1/6 binary64))) re))) im))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re) re))) im))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.f64 #s(approx (+ (* (+ (* 1/6 re) 1/2) re) 1) (*.f64 (*.f64 re re) #s(literal 1/6 binary64))) re #s(literal 1 binary64))) im))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re))) im))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 (fma.f64 (*.f64 im (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64))) re im) re im)))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re #s(literal 1 binary64))) im))
(*.f64 #s(approx (exp re) (+.f64 #s(literal 1 binary64) re)) #s(approx (sin im) (fma.f64 (*.f64 im im) (*.f64 im #s(literal -1/6 binary64)) im)))
(*.f64 #s(approx (exp re) (+.f64 #s(literal 1 binary64) re)) #s(approx (sin im) (fma.f64 (*.f64 (*.f64 im im) im) #s(literal -1/6 binary64) im)))
#s(approx (* (exp re) (sin im)) #s(approx (sin im) (fma.f64 (*.f64 (*.f64 im im) im) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 im im) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) im)))
#s(approx (* (exp re) (sin im)) #s(approx (sin im) (fma.f64 (*.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) (*.f64 im im)) im im)))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (/.f64 (fma.f64 #s(literal 1/36 binary64) (*.f64 re re) #s(literal -1/4 binary64)) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))) re #s(literal 1 binary64)) re))) im))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (fma.f64 #s(literal 1/36 binary64) (*.f64 re re) #s(literal -1/4 binary64)) (/.f64 re (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))) #s(literal 1 binary64)) re))) im))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.f64 (fma.f64 (/.f64 (fma.f64 (*.f64 re re) #s(literal 1/36 binary64) #s(literal -1/4 binary64)) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))) re #s(literal 1 binary64)) re #s(literal 1 binary64))) im))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (/.f64 (*.f64 (fma.f64 #s(literal 1/36 binary64) (*.f64 re re) #s(literal -1/4 binary64)) re) (fma.f64 #s(literal 1/36 binary64) (*.f64 re re) #s(literal -1/4 binary64))) (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) #s(literal 1 binary64)) re))) im))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (fma.f64 #s(literal 1/36 binary64) (/.f64 (*.f64 re re) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))) (/.f64 #s(literal -1/4 binary64) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64)))) re #s(literal 1 binary64)) re))) im))
#s(approx (* (exp re) (sin im)) (sin.f64 im))
#s(approx (* (exp re) (sin im)) (*.f64 (exp.f64 re) im))
#s(approx (* (exp re) (sin im)) #s(approx (sin im) (fma.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal -1/6 binary64) im)))
(*.f64 #s(approx (exp re) (+.f64 #s(literal 1 binary64) re)) (sin.f64 im))
(*.f64 #s(approx (exp re) (+.f64 #s(literal 1 binary64) re)) #s(approx (sin im) #s(approx (+ (* (pow im 3) -1/6) im) (*.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal -1/6 binary64)))))
(/.f64 (sin.f64 im) #s(approx (exp (neg re)) (-.f64 #s(literal 1 binary64) re)))
(*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* 1/2 re) 1) re) 1) (*.f64 (*.f64 re re) #s(literal 1/2 binary64)))) (sin.f64 im))
(*.f64 #s(approx (exp re) (+.f64 #s(literal 1 binary64) re)) #s(approx (sin im) (fma.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal -1/6 binary64) im)))
(*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* 1/2 re) 1) re) 1) (*.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re))) (sin.f64 im))
(*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 #s(approx (+ (* (+ (* 1/6 re) 1/2) re) 1) (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64))) re))) (sin.f64 im))
Outputs
#s(approx (* (exp re) (sin im)) #s(approx (sin im) (fma.f64 (*.f64 (*.f64 im im) im) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 im im) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) im)))
(*.f64 #s(approx (exp re) (+.f64 #s(literal 1 binary64) re)) (sin.f64 im))
#s(approx (* (exp re) (sin im)) (*.f64 (exp.f64 re) im))
(*.f64 #s(approx (exp re) (+.f64 #s(literal 1 binary64) re)) (sin.f64 im))
#s(approx (* (exp re) (sin im)) (*.f64 (exp.f64 re) im))
Calls

1 calls:

8.0ms
(*.f64 (exp.f64 re) (sin.f64 im))
Results
AccuracySegmentsBranch
98.1%5(*.f64 (exp.f64 re) (sin.f64 im))
Compiler

Compiled 5 to 5 computations (0% saved)

regimes8.0ms (0.1%)

Memory
12.7MiB live, 12.7MiB allocated; 0ms collecting garbage
Counts
26 → 5
Calls
Call 1
Inputs
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) #s(approx (+ (* re im) im) (*.f64 im re))))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(literal 1 binary64)) im))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 re im im)))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 #s(approx (+ (* (+ (* 1/6 re) 1/2) re) 1) (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64))) re))) im))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 (fma.f64 (*.f64 re im) #s(literal 1/2 binary64) im) re im)))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64))) im))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re #s(literal 1 binary64))) im))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) #s(approx (+ (* re im) im) (*.f64 (+.f64 (/.f64 im re) im) re))))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 #s(approx (+ (* (+ (* 1/6 re) 1/2) re) 1) (*.f64 (*.f64 re re) #s(literal 1/6 binary64))) re))) im))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re) re))) im))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.f64 #s(approx (+ (* (+ (* 1/6 re) 1/2) re) 1) (*.f64 (*.f64 re re) #s(literal 1/6 binary64))) re #s(literal 1 binary64))) im))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re))) im))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 (fma.f64 (*.f64 im (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64))) re im) re im)))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re #s(literal 1 binary64))) im))
(*.f64 #s(approx (exp re) (+.f64 #s(literal 1 binary64) re)) #s(approx (sin im) (fma.f64 (*.f64 im im) (*.f64 im #s(literal -1/6 binary64)) im)))
(*.f64 #s(approx (exp re) (+.f64 #s(literal 1 binary64) re)) #s(approx (sin im) (fma.f64 (*.f64 (*.f64 im im) im) #s(literal -1/6 binary64) im)))
#s(approx (* (exp re) (sin im)) #s(approx (sin im) (fma.f64 (*.f64 (*.f64 im im) im) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 im im) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) im)))
#s(approx (* (exp re) (sin im)) #s(approx (sin im) (fma.f64 (*.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) (*.f64 im im)) im im)))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (/.f64 (fma.f64 #s(literal 1/36 binary64) (*.f64 re re) #s(literal -1/4 binary64)) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))) re #s(literal 1 binary64)) re))) im))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (fma.f64 #s(literal 1/36 binary64) (*.f64 re re) #s(literal -1/4 binary64)) (/.f64 re (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))) #s(literal 1 binary64)) re))) im))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.f64 (fma.f64 (/.f64 (fma.f64 (*.f64 re re) #s(literal 1/36 binary64) #s(literal -1/4 binary64)) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))) re #s(literal 1 binary64)) re #s(literal 1 binary64))) im))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (/.f64 (*.f64 (fma.f64 #s(literal 1/36 binary64) (*.f64 re re) #s(literal -1/4 binary64)) re) (fma.f64 #s(literal 1/36 binary64) (*.f64 re re) #s(literal -1/4 binary64))) (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) #s(literal 1 binary64)) re))) im))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (fma.f64 #s(literal 1/36 binary64) (/.f64 (*.f64 re re) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))) (/.f64 #s(literal -1/4 binary64) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64)))) re #s(literal 1 binary64)) re))) im))
#s(approx (* (exp re) (sin im)) (sin.f64 im))
#s(approx (* (exp re) (sin im)) (*.f64 (exp.f64 re) im))
#s(approx (* (exp re) (sin im)) #s(approx (sin im) (fma.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal -1/6 binary64) im)))
Outputs
#s(approx (* (exp re) (sin im)) #s(approx (sin im) (fma.f64 (*.f64 (*.f64 im im) im) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 im im) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) im)))
#s(approx (* (exp re) (sin im)) (sin.f64 im))
#s(approx (* (exp re) (sin im)) (*.f64 (exp.f64 re) im))
#s(approx (* (exp re) (sin im)) (sin.f64 im))
#s(approx (* (exp re) (sin im)) (*.f64 (exp.f64 re) im))
Calls

1 calls:

6.0ms
(*.f64 (exp.f64 re) (sin.f64 im))
Results
AccuracySegmentsBranch
97.8%5(*.f64 (exp.f64 re) (sin.f64 im))
Compiler

Compiled 5 to 5 computations (0% saved)

regimes38.0ms (0.6%)

Memory
-15.5MiB live, 77.1MiB allocated; 5ms collecting garbage
Counts
24 → 3
Calls
Call 1
Inputs
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) #s(approx (+ (* re im) im) (*.f64 im re))))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(literal 1 binary64)) im))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 re im im)))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 #s(approx (+ (* (+ (* 1/6 re) 1/2) re) 1) (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64))) re))) im))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 (fma.f64 (*.f64 re im) #s(literal 1/2 binary64) im) re im)))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64))) im))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re #s(literal 1 binary64))) im))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) #s(approx (+ (* re im) im) (*.f64 (+.f64 (/.f64 im re) im) re))))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 #s(approx (+ (* (+ (* 1/6 re) 1/2) re) 1) (*.f64 (*.f64 re re) #s(literal 1/6 binary64))) re))) im))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re) re))) im))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.f64 #s(approx (+ (* (+ (* 1/6 re) 1/2) re) 1) (*.f64 (*.f64 re re) #s(literal 1/6 binary64))) re #s(literal 1 binary64))) im))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re))) im))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 (fma.f64 (*.f64 im (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64))) re im) re im)))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re #s(literal 1 binary64))) im))
(*.f64 #s(approx (exp re) (+.f64 #s(literal 1 binary64) re)) #s(approx (sin im) (fma.f64 (*.f64 im im) (*.f64 im #s(literal -1/6 binary64)) im)))
(*.f64 #s(approx (exp re) (+.f64 #s(literal 1 binary64) re)) #s(approx (sin im) (fma.f64 (*.f64 (*.f64 im im) im) #s(literal -1/6 binary64) im)))
#s(approx (* (exp re) (sin im)) #s(approx (sin im) (fma.f64 (*.f64 (*.f64 im im) im) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 im im) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) im)))
#s(approx (* (exp re) (sin im)) #s(approx (sin im) (fma.f64 (*.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) (*.f64 im im)) im im)))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (/.f64 (fma.f64 #s(literal 1/36 binary64) (*.f64 re re) #s(literal -1/4 binary64)) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))) re #s(literal 1 binary64)) re))) im))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (fma.f64 #s(literal 1/36 binary64) (*.f64 re re) #s(literal -1/4 binary64)) (/.f64 re (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))) #s(literal 1 binary64)) re))) im))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.f64 (fma.f64 (/.f64 (fma.f64 (*.f64 re re) #s(literal 1/36 binary64) #s(literal -1/4 binary64)) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))) re #s(literal 1 binary64)) re #s(literal 1 binary64))) im))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (/.f64 (*.f64 (fma.f64 #s(literal 1/36 binary64) (*.f64 re re) #s(literal -1/4 binary64)) re) (fma.f64 #s(literal 1/36 binary64) (*.f64 re re) #s(literal -1/4 binary64))) (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) #s(literal 1 binary64)) re))) im))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (fma.f64 #s(literal 1/36 binary64) (/.f64 (*.f64 re re) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))) (/.f64 #s(literal -1/4 binary64) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64)))) re #s(literal 1 binary64)) re))) im))
#s(approx (* (exp re) (sin im)) (sin.f64 im))
Outputs
#s(approx (* (exp re) (sin im)) #s(approx (sin im) (fma.f64 (*.f64 (*.f64 im im) im) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 im im) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) im)))
#s(approx (* (exp re) (sin im)) (sin.f64 im))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re))) im))
Calls

5 calls:

9.0ms
re
9.0ms
(sin.f64 im)
7.0ms
im
6.0ms
(*.f64 (exp.f64 re) (sin.f64 im))
5.0ms
(exp.f64 re)
Results
AccuracySegmentsBranch
57.6%3(sin.f64 im)
57.6%2im
61.9%2(exp.f64 re)
65.7%3re
68.5%3(*.f64 (exp.f64 re) (sin.f64 im))
Compiler

Compiled 11 to 15 computations (-36.4% saved)

regimes34.0ms (0.5%)

Memory
23.0MiB live, 75.6MiB allocated; 4ms collecting garbage
Counts
23 → 2
Calls
Call 1
Inputs
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) #s(approx (+ (* re im) im) (*.f64 im re))))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(literal 1 binary64)) im))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 re im im)))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 #s(approx (+ (* (+ (* 1/6 re) 1/2) re) 1) (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64))) re))) im))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 (fma.f64 (*.f64 re im) #s(literal 1/2 binary64) im) re im)))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64))) im))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re #s(literal 1 binary64))) im))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) #s(approx (+ (* re im) im) (*.f64 (+.f64 (/.f64 im re) im) re))))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 #s(approx (+ (* (+ (* 1/6 re) 1/2) re) 1) (*.f64 (*.f64 re re) #s(literal 1/6 binary64))) re))) im))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re) re))) im))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.f64 #s(approx (+ (* (+ (* 1/6 re) 1/2) re) 1) (*.f64 (*.f64 re re) #s(literal 1/6 binary64))) re #s(literal 1 binary64))) im))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re))) im))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 (fma.f64 (*.f64 im (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64))) re im) re im)))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re #s(literal 1 binary64))) im))
(*.f64 #s(approx (exp re) (+.f64 #s(literal 1 binary64) re)) #s(approx (sin im) (fma.f64 (*.f64 im im) (*.f64 im #s(literal -1/6 binary64)) im)))
(*.f64 #s(approx (exp re) (+.f64 #s(literal 1 binary64) re)) #s(approx (sin im) (fma.f64 (*.f64 (*.f64 im im) im) #s(literal -1/6 binary64) im)))
#s(approx (* (exp re) (sin im)) #s(approx (sin im) (fma.f64 (*.f64 (*.f64 im im) im) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 im im) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) im)))
#s(approx (* (exp re) (sin im)) #s(approx (sin im) (fma.f64 (*.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) (*.f64 im im)) im im)))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (/.f64 (fma.f64 #s(literal 1/36 binary64) (*.f64 re re) #s(literal -1/4 binary64)) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))) re #s(literal 1 binary64)) re))) im))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (fma.f64 #s(literal 1/36 binary64) (*.f64 re re) #s(literal -1/4 binary64)) (/.f64 re (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))) #s(literal 1 binary64)) re))) im))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.f64 (fma.f64 (/.f64 (fma.f64 (*.f64 re re) #s(literal 1/36 binary64) #s(literal -1/4 binary64)) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))) re #s(literal 1 binary64)) re #s(literal 1 binary64))) im))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (/.f64 (*.f64 (fma.f64 #s(literal 1/36 binary64) (*.f64 re re) #s(literal -1/4 binary64)) re) (fma.f64 #s(literal 1/36 binary64) (*.f64 re re) #s(literal -1/4 binary64))) (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) #s(literal 1 binary64)) re))) im))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (fma.f64 #s(literal 1/36 binary64) (/.f64 (*.f64 re re) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64))) (/.f64 #s(literal -1/4 binary64) (-.f64 (*.f64 #s(literal 1/6 binary64) re) #s(literal 1/2 binary64)))) re #s(literal 1 binary64)) re))) im))
Outputs
#s(approx (* (exp re) (sin im)) #s(approx (sin im) (fma.f64 (*.f64 (*.f64 im im) im) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 im im) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) im)))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re #s(literal 1 binary64))) im))
Calls

5 calls:

9.0ms
re
6.0ms
(sin.f64 im)
6.0ms
im
5.0ms
(*.f64 (exp.f64 re) (sin.f64 im))
5.0ms
(exp.f64 re)
Results
AccuracySegmentsBranch
50.6%2(sin.f64 im)
46.1%2im
43.7%1(exp.f64 re)
47.5%2re
50.9%2(*.f64 (exp.f64 re) (sin.f64 im))
Compiler

Compiled 11 to 15 computations (-36.4% saved)

regimes30.0ms (0.5%)

Memory
-22.4MiB live, 24.5MiB allocated; 1ms collecting garbage
Counts
16 → 2
Calls
Call 1
Inputs
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) #s(approx (+ (* re im) im) (*.f64 im re))))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(literal 1 binary64)) im))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 re im im)))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 #s(approx (+ (* (+ (* 1/6 re) 1/2) re) 1) (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64))) re))) im))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 (fma.f64 (*.f64 re im) #s(literal 1/2 binary64) im) re im)))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64))) im))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re #s(literal 1 binary64))) im))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) #s(approx (+ (* re im) im) (*.f64 (+.f64 (/.f64 im re) im) re))))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 #s(approx (+ (* (+ (* 1/6 re) 1/2) re) 1) (*.f64 (*.f64 re re) #s(literal 1/6 binary64))) re))) im))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re) re))) im))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.f64 #s(approx (+ (* (+ (* 1/6 re) 1/2) re) 1) (*.f64 (*.f64 re re) #s(literal 1/6 binary64))) re #s(literal 1 binary64))) im))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re))) im))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 (fma.f64 (*.f64 im (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64))) re im) re im)))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re #s(literal 1 binary64))) im))
(*.f64 #s(approx (exp re) (+.f64 #s(literal 1 binary64) re)) #s(approx (sin im) (fma.f64 (*.f64 im im) (*.f64 im #s(literal -1/6 binary64)) im)))
(*.f64 #s(approx (exp re) (+.f64 #s(literal 1 binary64) re)) #s(approx (sin im) (fma.f64 (*.f64 (*.f64 im im) im) #s(literal -1/6 binary64) im)))
Outputs
(*.f64 #s(approx (exp re) (+.f64 #s(literal 1 binary64) re)) #s(approx (sin im) (fma.f64 (*.f64 im im) (*.f64 im #s(literal -1/6 binary64)) im)))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re #s(literal 1 binary64))) im))
Calls

2 calls:

24.0ms
(*.f64 (exp.f64 re) (sin.f64 im))
5.0ms
(sin.f64 im)
Results
AccuracySegmentsBranch
49.9%2(sin.f64 im)
50.1%2(*.f64 (exp.f64 re) (sin.f64 im))
Compiler

Compiled 7 to 8 computations (-14.3% saved)

regimes18.0ms (0.3%)

Memory
26.5MiB live, 26.5MiB allocated; 0ms collecting garbage
Counts
14 → 1
Calls
Call 1
Inputs
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) #s(approx (+ (* re im) im) (*.f64 im re))))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(literal 1 binary64)) im))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 re im im)))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 #s(approx (+ (* (+ (* 1/6 re) 1/2) re) 1) (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64))) re))) im))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 (fma.f64 (*.f64 re im) #s(literal 1/2 binary64) im) re im)))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64))) im))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re #s(literal 1 binary64))) im))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) #s(approx (+ (* re im) im) (*.f64 (+.f64 (/.f64 im re) im) re))))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 #s(approx (+ (* (+ (* 1/6 re) 1/2) re) 1) (*.f64 (*.f64 re re) #s(literal 1/6 binary64))) re))) im))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re) re))) im))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.f64 #s(approx (+ (* (+ (* 1/6 re) 1/2) re) 1) (*.f64 (*.f64 re re) #s(literal 1/6 binary64))) re #s(literal 1 binary64))) im))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re))) im))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 (fma.f64 (*.f64 im (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64))) re im) re im)))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re #s(literal 1 binary64))) im))
Outputs
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re #s(literal 1 binary64))) im))
Calls

4 calls:

4.0ms
im
4.0ms
(sin.f64 im)
4.0ms
re
4.0ms
(*.f64 (exp.f64 re) (sin.f64 im))
Results
AccuracySegmentsBranch
43.7%1im
43.7%1re
43.7%1(sin.f64 im)
43.7%1(*.f64 (exp.f64 re) (sin.f64 im))
Compiler

Compiled 9 to 12 computations (-33.3% saved)

regimes32.0ms (0.5%)

Memory
-10.8MiB live, 36.8MiB allocated; 1ms collecting garbage
Counts
13 → 1
Calls
Call 1
Inputs
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) #s(approx (+ (* re im) im) (*.f64 im re))))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(literal 1 binary64)) im))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 re im im)))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 #s(approx (+ (* (+ (* 1/6 re) 1/2) re) 1) (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64))) re))) im))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 (fma.f64 (*.f64 re im) #s(literal 1/2 binary64) im) re im)))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64))) im))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re #s(literal 1 binary64))) im))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) #s(approx (+ (* re im) im) (*.f64 (+.f64 (/.f64 im re) im) re))))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 #s(approx (+ (* (+ (* 1/6 re) 1/2) re) 1) (*.f64 (*.f64 re re) #s(literal 1/6 binary64))) re))) im))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re) re))) im))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.f64 #s(approx (+ (* (+ (* 1/6 re) 1/2) re) 1) (*.f64 (*.f64 re re) #s(literal 1/6 binary64))) re #s(literal 1 binary64))) im))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re))) im))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 (fma.f64 (*.f64 im (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64))) re im) re im)))
Outputs
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.f64 #s(approx (+ (* (+ (* 1/6 re) 1/2) re) 1) (*.f64 (*.f64 re re) #s(literal 1/6 binary64))) re #s(literal 1 binary64))) im))
Calls

5 calls:

16.0ms
(sin.f64 im)
4.0ms
im
4.0ms
re
3.0ms
(*.f64 (exp.f64 re) (sin.f64 im))
3.0ms
(exp.f64 re)
Results
AccuracySegmentsBranch
43.7%1re
43.7%1(exp.f64 re)
43.7%1im
43.7%1(sin.f64 im)
43.7%1(*.f64 (exp.f64 re) (sin.f64 im))
Compiler

Compiled 11 to 15 computations (-36.4% saved)

regimes30.0ms (0.5%)

Memory
-5.1MiB live, 40.2MiB allocated; 4ms collecting garbage
Counts
10 → 2
Calls
Call 1
Inputs
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) #s(approx (+ (* re im) im) (*.f64 im re))))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(literal 1 binary64)) im))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 re im im)))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 #s(approx (+ (* (+ (* 1/6 re) 1/2) re) 1) (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64))) re))) im))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 (fma.f64 (*.f64 re im) #s(literal 1/2 binary64) im) re im)))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64))) im))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re #s(literal 1 binary64))) im))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) #s(approx (+ (* re im) im) (*.f64 (+.f64 (/.f64 im re) im) re))))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 #s(approx (+ (* (+ (* 1/6 re) 1/2) re) 1) (*.f64 (*.f64 re re) #s(literal 1/6 binary64))) re))) im))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re) re))) im))
Outputs
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(literal 1 binary64)) im))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re) re))) im))
Calls

5 calls:

16.0ms
(exp.f64 re)
3.0ms
(sin.f64 im)
3.0ms
im
3.0ms
re
3.0ms
(*.f64 (exp.f64 re) (sin.f64 im))
Results
AccuracySegmentsBranch
44.1%2re
41.5%1(sin.f64 im)
44.1%2(exp.f64 re)
41.5%1im
44.1%2(*.f64 (exp.f64 re) (sin.f64 im))
Compiler

Compiled 11 to 15 computations (-36.4% saved)

regimes3.0ms (0.1%)

Memory
10.1MiB live, 10.1MiB allocated; 0ms collecting garbage
Counts
9 → 2
Calls
Call 1
Inputs
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) #s(approx (+ (* re im) im) (*.f64 im re))))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(literal 1 binary64)) im))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 re im im)))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 #s(approx (+ (* (+ (* 1/6 re) 1/2) re) 1) (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64))) re))) im))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 (fma.f64 (*.f64 re im) #s(literal 1/2 binary64) im) re im)))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64))) im))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re #s(literal 1 binary64))) im))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) #s(approx (+ (* re im) im) (*.f64 (+.f64 (/.f64 im re) im) re))))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 #s(approx (+ (* (+ (* 1/6 re) 1/2) re) 1) (*.f64 (*.f64 re re) #s(literal 1/6 binary64))) re))) im))
Outputs
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(literal 1 binary64)) im))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 #s(approx (+ (* (+ (* 1/6 re) 1/2) re) 1) (*.f64 (*.f64 re re) #s(literal 1/6 binary64))) re))) im))
Calls

1 calls:

3.0ms
(*.f64 (exp.f64 re) (sin.f64 im))
Results
AccuracySegmentsBranch
44.1%2(*.f64 (exp.f64 re) (sin.f64 im))
Compiler

Compiled 5 to 5 computations (0% saved)

regimes11.0ms (0.2%)

Memory
-30.8MiB live, 19.0MiB allocated; 5ms collecting garbage
Counts
8 → 1
Calls
Call 1
Inputs
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) #s(approx (+ (* re im) im) (*.f64 im re))))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(literal 1 binary64)) im))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 re im im)))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 #s(approx (+ (* (+ (* 1/6 re) 1/2) re) 1) (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64))) re))) im))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 (fma.f64 (*.f64 re im) #s(literal 1/2 binary64) im) re im)))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64))) im))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.f64 (fma.f64 #s(approx (+ (* 1/6 re) 1/2) #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re #s(literal 1 binary64))) im))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) #s(approx (+ (* re im) im) (*.f64 (+.f64 (/.f64 im re) im) re))))
Outputs
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64))) im))
Calls

3 calls:

5.0ms
(exp.f64 re)
3.0ms
re
2.0ms
(*.f64 (exp.f64 re) (sin.f64 im))
Results
AccuracySegmentsBranch
41.5%1re
41.5%1(exp.f64 re)
41.5%1(*.f64 (exp.f64 re) (sin.f64 im))
Compiler

Compiled 8 to 10 computations (-25% saved)

regimes11.0ms (0.2%)

Memory
18.7MiB live, 18.7MiB allocated; 0ms collecting garbage
Counts
5 → 2
Calls
Call 1
Inputs
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) #s(approx (+ (* re im) im) (*.f64 im re))))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(literal 1 binary64)) im))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 re im im)))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 #s(approx (+ (* (+ (* 1/6 re) 1/2) re) 1) (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64))) re))) im))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 (fma.f64 (*.f64 re im) #s(literal 1/2 binary64) im) re im)))
Outputs
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(literal 1 binary64)) im))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 #s(approx (+ (* (+ (* 1/6 re) 1/2) re) 1) (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64))) re))) im))
Calls

5 calls:

2.0ms
(sin.f64 im)
2.0ms
im
2.0ms
re
2.0ms
(*.f64 (exp.f64 re) (sin.f64 im))
2.0ms
(exp.f64 re)
Results
AccuracySegmentsBranch
41.8%2re
37.8%1im
41.8%2(exp.f64 re)
37.8%1(sin.f64 im)
41.8%2(*.f64 (exp.f64 re) (sin.f64 im))
Compiler

Compiled 11 to 15 computations (-36.4% saved)

regimes8.0ms (0.1%)

Memory
16.2MiB live, 16.2MiB allocated; 0ms collecting garbage
Counts
3 → 1
Calls
Call 1
Inputs
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) #s(approx (+ (* re im) im) (*.f64 im re))))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(literal 1 binary64)) im))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 re im im)))
Outputs
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 re im im)))
Calls

5 calls:

2.0ms
(sin.f64 im)
2.0ms
im
2.0ms
re
1.0ms
(*.f64 (exp.f64 re) (sin.f64 im))
1.0ms
(exp.f64 re)
Results
AccuracySegmentsBranch
31.8%1im
31.8%1(sin.f64 im)
31.8%1re
31.8%1(exp.f64 re)
31.8%1(*.f64 (exp.f64 re) (sin.f64 im))
Compiler

Compiled 11 to 15 computations (-36.4% saved)

regimes8.0ms (0.1%)

Memory
-30.1MiB live, 15.0MiB allocated; 3ms collecting garbage
Counts
2 → 2
Calls
Call 1
Inputs
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) #s(approx (+ (* re im) im) (*.f64 im re))))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(literal 1 binary64)) im))
Outputs
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(literal 1 binary64)) im))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) #s(approx (+ (* re im) im) (*.f64 im re))))
Calls

5 calls:

3.0ms
(sin.f64 im)
1.0ms
re
1.0ms
im
1.0ms
(*.f64 (exp.f64 re) (sin.f64 im))
1.0ms
(exp.f64 re)
Results
AccuracySegmentsBranch
32.1%2im
32.0%2re
31.6%2(sin.f64 im)
32.0%2(*.f64 (exp.f64 re) (sin.f64 im))
32.0%2(exp.f64 re)
Compiler

Compiled 11 to 15 computations (-36.4% saved)

regimes5.0ms (0.1%)

Memory
15.3MiB live, 15.3MiB allocated; 0ms collecting garbage
Accuracy

Total 0.0b remaining (0%)

Threshold costs 0b (0%)

Counts
1 → 1
Calls
Call 1
Inputs
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) #s(approx (+ (* re im) im) (*.f64 im re))))
Outputs
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) #s(approx (+ (* re im) im) (*.f64 im re))))
Calls

5 calls:

1.0ms
im
1.0ms
(sin.f64 im)
1.0ms
re
1.0ms
(*.f64 (exp.f64 re) (sin.f64 im))
1.0ms
(exp.f64 re)
Results
AccuracySegmentsBranch
6.9%1(sin.f64 im)
6.9%1re
6.9%1(exp.f64 re)
6.9%1(*.f64 (exp.f64 re) (sin.f64 im))
6.9%1im
Compiler

Compiled 11 to 15 computations (-36.4% saved)

bsearch1.0ms (0%)

Memory
2.2MiB live, 2.2MiB allocated; 0ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
1129986.7261213667
+inf
0.0ms
4.470805163865452e-245
5.552887329948432e-236
0.0ms
-0.07685244541353806
0.0
0.0ms
-inf
-0.9999930112733535
Compiler

Compiled 8 to 10 computations (-25% saved)

bsearch1.0ms (0%)

Memory
2.0MiB live, 2.0MiB allocated; 0ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
1129986.7261213667
+inf
0.0ms
4.470805163865452e-245
5.552887329948432e-236
0.0ms
-0.07685244541353806
0.0
0.0ms
-inf
-0.9999930112733535
Compiler

Compiled 8 to 10 computations (-25% saved)

bsearch1.0ms (0%)

Memory
2.0MiB live, 1.9MiB allocated; 0ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
1129986.7261213667
+inf
0.0ms
4.470805163865452e-245
5.552887329948432e-236
0.0ms
-0.07685244541353806
0.0
0.0ms
-inf
-0.9999930112733535
Compiler

Compiled 8 to 10 computations (-25% saved)

bsearch1.0ms (0%)

Memory
1.6MiB live, 1.6MiB allocated; 0ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
1129986.7261213667
+inf
0.0ms
4.470805163865452e-245
5.552887329948432e-236
0.0ms
-0.07685244541353806
0.0
0.0ms
-inf
-0.9999930112733535
Compiler

Compiled 8 to 10 computations (-25% saved)

bsearch1.0ms (0%)

Memory
1.8MiB live, 1.8MiB allocated; 0ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
1129986.7261213667
+inf
0.0ms
4.470805163865452e-245
5.552887329948432e-236
0.0ms
-0.07685244541353806
0.0
0.0ms
-inf
-0.9999930112733535
Compiler

Compiled 8 to 10 computations (-25% saved)

bsearch1.0ms (0%)

Memory
1.5MiB live, 1.5MiB allocated; 0ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
1129986.7261213667
+inf
0.0ms
4.470805163865452e-245
5.552887329948432e-236
0.0ms
-0.07685244541353806
0.0
0.0ms
-inf
-0.9999930112733535
Compiler

Compiled 8 to 10 computations (-25% saved)

bsearch1.0ms (0%)

Memory
1.4MiB live, 1.4MiB allocated; 0ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
1129986.7261213667
+inf
0.0ms
3.0083661404179294e-100
4.2153680070596526e-96
0.0ms
-0.07685244541353806
0.0
0.0ms
-inf
-0.9999930112733535
Compiler

Compiled 8 to 10 computations (-25% saved)

bsearch1.0ms (0%)

Memory
1.5MiB live, 1.5MiB allocated; 0ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
1129986.7261213667
+inf
0.0ms
8.446548519816788e-157
2.1474531302421644e-156
0.0ms
-0.07685244541353806
0.0
0.0ms
-inf
-0.9999930112733535
Compiler

Compiled 8 to 10 computations (-25% saved)

bsearch0.0ms (0%)

Memory
0.8MiB live, 0.8MiB allocated; 0ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
1129986.7261213667
+inf
0.0ms
-inf
-0.9999930112733535
Compiler

Compiled 8 to 10 computations (-25% saved)

bsearch0.0ms (0%)

Memory
0.5MiB live, 0.5MiB allocated; 0ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.0
3.1096054003765484e-308
Compiler

Compiled 8 to 10 computations (-25% saved)

bsearch0.0ms (0%)

Memory
0.5MiB live, 0.5MiB allocated; 0ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.0
3.1096054003765484e-308
Compiler

Compiled 8 to 10 computations (-25% saved)

bsearch0.0ms (0%)

Memory
0.5MiB live, 0.5MiB allocated; 0ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
1129986.7261213667
+inf
Compiler

Compiled 8 to 10 computations (-25% saved)

bsearch0.0ms (0%)

Memory
0.4MiB live, 0.4MiB allocated; 0ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
1129986.7261213667
+inf
Compiler

Compiled 8 to 10 computations (-25% saved)

bsearch0.0ms (0%)

Memory
0.4MiB live, 0.4MiB allocated; 0ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
1129986.7261213667
+inf
Compiler

Compiled 8 to 10 computations (-25% saved)

bsearch17.0ms (0.3%)

Memory
-27.2MiB live, 19.4MiB allocated; 2ms collecting garbage
Algorithm
binary-search
Stop Event
narrow-enough
Steps
TimeLeftRight
16.0ms
17071505.762639645
410989035057.0914
Samples
11.0ms128×0valid
Compiler

Compiled 264 to 194 computations (26.5% saved)

Precisions
Click to see histograms. Total time spent on operations: 6.0ms
ival-sin: 4.0ms (61.9% of total)
ival-exp: 1.0ms (15.5% of total)
ival-mult: 1.0ms (15.5% of total)
ival-true: 0.0ms (0% of total)
adjust: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

simplify56.0ms (0.9%)

Memory
18.6MiB live, 65.0MiB allocated; 6ms collecting garbage
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01551269
11871254
22621254
35611254
422591254
Stop Event
node limit
Calls
Call 1
Inputs
(/.f64 (sin.f64 im) (exp.f64 (neg.f64 re)))
(*.f64 (exp.f64 re) (sin.f64 im))
(if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal -inf.0 binary64)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re))) #s(approx (sin im) (fma.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 im im) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) im))) (if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal -3602879701896397/72057594037927936 binary64)) (*.f64 #s(approx (exp re) (+.f64 #s(literal 1 binary64) re)) (sin.f64 im)) (if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal 3075078893078405/61501577861568104283923723841611832207865934590357532972465351809127477760976746151505184346770074671911354525161107149776344601938347976800349887747194103071045442949864673913541659442291879217725274258783458313456274137454056383441015716964266784080483319808 binary64)) #s(approx (* (exp re) (sin im)) (*.f64 (exp.f64 re) im)) (if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal 2000000 binary64)) (/.f64 (sin.f64 im) #s(approx (exp (neg re)) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal -1 binary64)) re #s(literal 1 binary64)))) #s(approx (* (exp re) (sin im)) (*.f64 (exp.f64 re) im))))))
(if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal -inf.0 binary64)) (*.f64 #s(approx (exp re) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64))) #s(approx (sin im) (fma.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 im im) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) im))) (if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal -3602879701896397/72057594037927936 binary64)) (*.f64 #s(approx (exp re) (+.f64 #s(literal 1 binary64) re)) (sin.f64 im)) (if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal 3075078893078405/61501577861568104283923723841611832207865934590357532972465351809127477760976746151505184346770074671911354525161107149776344601938347976800349887747194103071045442949864673913541659442291879217725274258783458313456274137454056383441015716964266784080483319808 binary64)) #s(approx (* (exp re) (sin im)) (*.f64 (exp.f64 re) im)) (if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal 2000000 binary64)) (/.f64 (sin.f64 im) #s(approx (exp (neg re)) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal -1 binary64)) re #s(literal 1 binary64)))) #s(approx (* (exp re) (sin im)) (*.f64 (exp.f64 re) im))))))
(if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal -inf.0 binary64)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re))) #s(approx (sin im) (fma.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal -1/6 binary64) im))) (if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal -3602879701896397/72057594037927936 binary64)) (*.f64 #s(approx (exp re) (+.f64 #s(literal 1 binary64) re)) (sin.f64 im)) (if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal 3075078893078405/61501577861568104283923723841611832207865934590357532972465351809127477760976746151505184346770074671911354525161107149776344601938347976800349887747194103071045442949864673913541659442291879217725274258783458313456274137454056383441015716964266784080483319808 binary64)) #s(approx (* (exp re) (sin im)) (*.f64 (exp.f64 re) im)) (if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal 2000000 binary64)) (/.f64 (sin.f64 im) #s(approx (exp (neg re)) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal -1 binary64)) re #s(literal 1 binary64)))) #s(approx (* (exp re) (sin im)) (*.f64 (exp.f64 re) im))))))
(if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal -inf.0 binary64)) (*.f64 #s(approx (exp re) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64))) #s(approx (sin im) (fma.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal -1/6 binary64) im))) (if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal -3602879701896397/72057594037927936 binary64)) (*.f64 #s(approx (exp re) (+.f64 #s(literal 1 binary64) re)) (sin.f64 im)) (if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal 3075078893078405/61501577861568104283923723841611832207865934590357532972465351809127477760976746151505184346770074671911354525161107149776344601938347976800349887747194103071045442949864673913541659442291879217725274258783458313456274137454056383441015716964266784080483319808 binary64)) #s(approx (* (exp re) (sin im)) (*.f64 (exp.f64 re) im)) (if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal 2000000 binary64)) (/.f64 (sin.f64 im) #s(approx (exp (neg re)) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal -1 binary64)) re #s(literal 1 binary64)))) #s(approx (* (exp re) (sin im)) (*.f64 (exp.f64 re) im))))))
(if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal -inf.0 binary64)) #s(approx (* (exp re) (sin im)) #s(approx (sin im) (fma.f64 (*.f64 (*.f64 im im) im) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 im im) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) im))) (if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal -3602879701896397/72057594037927936 binary64)) (*.f64 #s(approx (exp re) (+.f64 #s(literal 1 binary64) re)) (sin.f64 im)) (if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal 3075078893078405/61501577861568104283923723841611832207865934590357532972465351809127477760976746151505184346770074671911354525161107149776344601938347976800349887747194103071045442949864673913541659442291879217725274258783458313456274137454056383441015716964266784080483319808 binary64)) #s(approx (* (exp re) (sin im)) (*.f64 (exp.f64 re) im)) (if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal 2000000 binary64)) (/.f64 (sin.f64 im) #s(approx (exp (neg re)) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal -1 binary64)) re #s(literal 1 binary64)))) #s(approx (* (exp re) (sin im)) (*.f64 (exp.f64 re) im))))))
(if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal -inf.0 binary64)) #s(approx (* (exp re) (sin im)) #s(approx (sin im) (fma.f64 (*.f64 (*.f64 im im) im) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 im im) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) im))) (if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal -3602879701896397/72057594037927936 binary64)) (*.f64 #s(approx (exp re) (+.f64 #s(literal 1 binary64) re)) (sin.f64 im)) (if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal 3075078893078405/61501577861568104283923723841611832207865934590357532972465351809127477760976746151505184346770074671911354525161107149776344601938347976800349887747194103071045442949864673913541659442291879217725274258783458313456274137454056383441015716964266784080483319808 binary64)) #s(approx (* (exp re) (sin im)) (*.f64 (exp.f64 re) im)) (if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal 2000000 binary64)) (*.f64 #s(approx (exp re) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64))) (sin.f64 im)) #s(approx (* (exp re) (sin im)) (*.f64 (exp.f64 re) im))))))
(if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal -inf.0 binary64)) #s(approx (* (exp re) (sin im)) #s(approx (sin im) (fma.f64 (*.f64 (*.f64 im im) im) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 im im) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) im))) (if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal -3602879701896397/72057594037927936 binary64)) (*.f64 #s(approx (exp re) (+.f64 #s(literal 1 binary64) re)) (sin.f64 im)) (if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal 2462625387274655/4925250774549309901534880012517951725634967408808180833493536675530715221437151326426783281860614455100828498788352 binary64)) #s(approx (* (exp re) (sin im)) (*.f64 (exp.f64 re) im)) (if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal 2000000 binary64)) (*.f64 #s(approx (exp re) (+.f64 #s(literal 1 binary64) re)) (sin.f64 im)) #s(approx (* (exp re) (sin im)) (*.f64 (exp.f64 re) im))))))
(if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal -inf.0 binary64)) #s(approx (* (exp re) (sin im)) #s(approx (sin im) (fma.f64 (*.f64 (*.f64 im im) im) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 im im) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) im))) (if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal -3602879701896397/72057594037927936 binary64)) #s(approx (* (exp re) (sin im)) (sin.f64 im)) (if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal 7729075046034517/7729075046034516689390703781863974688597854659412869997314470502903038284579120849072387533163845155924927232063004354354730157322085975311485817346934161497393961629646848 binary64)) #s(approx (* (exp re) (sin im)) (*.f64 (exp.f64 re) im)) (if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal 2000000 binary64)) #s(approx (* (exp re) (sin im)) (sin.f64 im)) #s(approx (* (exp re) (sin im)) (*.f64 (exp.f64 re) im))))))
(if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal -inf.0 binary64)) #s(approx (* (exp re) (sin im)) #s(approx (sin im) (fma.f64 (*.f64 (*.f64 im im) im) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 im im) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) im))) (if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal 2000000 binary64)) #s(approx (* (exp re) (sin im)) (sin.f64 im)) #s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re))) im))))
(if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal 0 binary64)) #s(approx (* (exp re) (sin im)) #s(approx (sin im) (fma.f64 (*.f64 (*.f64 im im) im) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 im im) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) im))) #s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re #s(literal 1 binary64))) im)))
(if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal 0 binary64)) (*.f64 #s(approx (exp re) (+.f64 #s(literal 1 binary64) re)) #s(approx (sin im) (fma.f64 (*.f64 im im) (*.f64 im #s(literal -1/6 binary64)) im))) #s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re #s(literal 1 binary64))) im)))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re #s(literal 1 binary64))) im))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.f64 #s(approx (+ (* (+ (* 1/6 re) 1/2) re) 1) (*.f64 (*.f64 re re) #s(literal 1/6 binary64))) re #s(literal 1 binary64))) im))
(if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal 2000000 binary64)) #s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(literal 1 binary64)) im)) #s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re) re))) im)))
(if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal 2000000 binary64)) #s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(literal 1 binary64)) im)) #s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 #s(approx (+ (* (+ (* 1/6 re) 1/2) re) 1) (*.f64 (*.f64 re re) #s(literal 1/6 binary64))) re))) im)))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64))) im))
(if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal 2000000 binary64)) #s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(literal 1 binary64)) im)) #s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 #s(approx (+ (* (+ (* 1/6 re) 1/2) re) 1) (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64))) re))) im)))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 re im im)))
(if (<=.f64 im #s(literal 250000000000 binary64)) #s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(literal 1 binary64)) im)) #s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) #s(approx (+ (* re im) im) (*.f64 im re)))))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) #s(approx (+ (* re im) im) (*.f64 im re))))
Outputs
(/.f64 (sin.f64 im) (exp.f64 (neg.f64 re)))
(*.f64 (exp.f64 re) (sin.f64 im))
(if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal -inf.0 binary64)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re))) #s(approx (sin im) (fma.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 im im) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) im))) (if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal -3602879701896397/72057594037927936 binary64)) (*.f64 #s(approx (exp re) (+.f64 #s(literal 1 binary64) re)) (sin.f64 im)) (if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal 3075078893078405/61501577861568104283923723841611832207865934590357532972465351809127477760976746151505184346770074671911354525161107149776344601938347976800349887747194103071045442949864673913541659442291879217725274258783458313456274137454056383441015716964266784080483319808 binary64)) #s(approx (* (exp re) (sin im)) (*.f64 (exp.f64 re) im)) (if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal 2000000 binary64)) (/.f64 (sin.f64 im) #s(approx (exp (neg re)) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal -1 binary64)) re #s(literal 1 binary64)))) #s(approx (* (exp re) (sin im)) (*.f64 (exp.f64 re) im))))))
(if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal -inf.0 binary64)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re))) #s(approx (sin im) (fma.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 im im) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) im))) (if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal -3602879701896397/72057594037927936 binary64)) (*.f64 #s(approx (exp re) (+.f64 #s(literal 1 binary64) re)) (sin.f64 im)) (if (or (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal 3075078893078405/61501577861568104283923723841611832207865934590357532972465351809127477760976746151505184346770074671911354525161107149776344601938347976800349887747194103071045442949864673913541659442291879217725274258783458313456274137454056383441015716964266784080483319808 binary64)) (not (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal 2000000 binary64)))) #s(approx (* (exp re) (sin im)) (*.f64 (exp.f64 re) im)) (/.f64 (sin.f64 im) #s(approx (exp (neg re)) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal -1 binary64)) re #s(literal 1 binary64)))))))
(if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal -inf.0 binary64)) (*.f64 #s(approx (exp re) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64))) #s(approx (sin im) (fma.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 im im) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) im))) (if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal -3602879701896397/72057594037927936 binary64)) (*.f64 #s(approx (exp re) (+.f64 #s(literal 1 binary64) re)) (sin.f64 im)) (if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal 3075078893078405/61501577861568104283923723841611832207865934590357532972465351809127477760976746151505184346770074671911354525161107149776344601938347976800349887747194103071045442949864673913541659442291879217725274258783458313456274137454056383441015716964266784080483319808 binary64)) #s(approx (* (exp re) (sin im)) (*.f64 (exp.f64 re) im)) (if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal 2000000 binary64)) (/.f64 (sin.f64 im) #s(approx (exp (neg re)) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal -1 binary64)) re #s(literal 1 binary64)))) #s(approx (* (exp re) (sin im)) (*.f64 (exp.f64 re) im))))))
(if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal -inf.0 binary64)) (*.f64 #s(approx (exp re) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64))) #s(approx (sin im) (fma.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 im im) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) im))) (if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal -3602879701896397/72057594037927936 binary64)) (*.f64 #s(approx (exp re) (+.f64 #s(literal 1 binary64) re)) (sin.f64 im)) (if (or (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal 3075078893078405/61501577861568104283923723841611832207865934590357532972465351809127477760976746151505184346770074671911354525161107149776344601938347976800349887747194103071045442949864673913541659442291879217725274258783458313456274137454056383441015716964266784080483319808 binary64)) (not (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal 2000000 binary64)))) #s(approx (* (exp re) (sin im)) (*.f64 (exp.f64 re) im)) (/.f64 (sin.f64 im) #s(approx (exp (neg re)) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal -1 binary64)) re #s(literal 1 binary64)))))))
(if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal -inf.0 binary64)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re))) #s(approx (sin im) (fma.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal -1/6 binary64) im))) (if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal -3602879701896397/72057594037927936 binary64)) (*.f64 #s(approx (exp re) (+.f64 #s(literal 1 binary64) re)) (sin.f64 im)) (if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal 3075078893078405/61501577861568104283923723841611832207865934590357532972465351809127477760976746151505184346770074671911354525161107149776344601938347976800349887747194103071045442949864673913541659442291879217725274258783458313456274137454056383441015716964266784080483319808 binary64)) #s(approx (* (exp re) (sin im)) (*.f64 (exp.f64 re) im)) (if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal 2000000 binary64)) (/.f64 (sin.f64 im) #s(approx (exp (neg re)) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal -1 binary64)) re #s(literal 1 binary64)))) #s(approx (* (exp re) (sin im)) (*.f64 (exp.f64 re) im))))))
(if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal -inf.0 binary64)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re))) #s(approx (sin im) (fma.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal -1/6 binary64) im))) (if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal -3602879701896397/72057594037927936 binary64)) (*.f64 #s(approx (exp re) (+.f64 #s(literal 1 binary64) re)) (sin.f64 im)) (if (or (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal 3075078893078405/61501577861568104283923723841611832207865934590357532972465351809127477760976746151505184346770074671911354525161107149776344601938347976800349887747194103071045442949864673913541659442291879217725274258783458313456274137454056383441015716964266784080483319808 binary64)) (not (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal 2000000 binary64)))) #s(approx (* (exp re) (sin im)) (*.f64 (exp.f64 re) im)) (/.f64 (sin.f64 im) #s(approx (exp (neg re)) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal -1 binary64)) re #s(literal 1 binary64)))))))
(if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal -inf.0 binary64)) (*.f64 #s(approx (exp re) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64))) #s(approx (sin im) (fma.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal -1/6 binary64) im))) (if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal -3602879701896397/72057594037927936 binary64)) (*.f64 #s(approx (exp re) (+.f64 #s(literal 1 binary64) re)) (sin.f64 im)) (if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal 3075078893078405/61501577861568104283923723841611832207865934590357532972465351809127477760976746151505184346770074671911354525161107149776344601938347976800349887747194103071045442949864673913541659442291879217725274258783458313456274137454056383441015716964266784080483319808 binary64)) #s(approx (* (exp re) (sin im)) (*.f64 (exp.f64 re) im)) (if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal 2000000 binary64)) (/.f64 (sin.f64 im) #s(approx (exp (neg re)) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal -1 binary64)) re #s(literal 1 binary64)))) #s(approx (* (exp re) (sin im)) (*.f64 (exp.f64 re) im))))))
(if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal -inf.0 binary64)) (*.f64 #s(approx (exp re) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64))) #s(approx (sin im) (fma.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal -1/6 binary64) im))) (if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal -3602879701896397/72057594037927936 binary64)) (*.f64 #s(approx (exp re) (+.f64 #s(literal 1 binary64) re)) (sin.f64 im)) (if (or (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal 3075078893078405/61501577861568104283923723841611832207865934590357532972465351809127477760976746151505184346770074671911354525161107149776344601938347976800349887747194103071045442949864673913541659442291879217725274258783458313456274137454056383441015716964266784080483319808 binary64)) (not (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal 2000000 binary64)))) #s(approx (* (exp re) (sin im)) (*.f64 (exp.f64 re) im)) (/.f64 (sin.f64 im) #s(approx (exp (neg re)) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal -1 binary64)) re #s(literal 1 binary64)))))))
(if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal -inf.0 binary64)) #s(approx (* (exp re) (sin im)) #s(approx (sin im) (fma.f64 (*.f64 (*.f64 im im) im) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 im im) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) im))) (if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal -3602879701896397/72057594037927936 binary64)) (*.f64 #s(approx (exp re) (+.f64 #s(literal 1 binary64) re)) (sin.f64 im)) (if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal 3075078893078405/61501577861568104283923723841611832207865934590357532972465351809127477760976746151505184346770074671911354525161107149776344601938347976800349887747194103071045442949864673913541659442291879217725274258783458313456274137454056383441015716964266784080483319808 binary64)) #s(approx (* (exp re) (sin im)) (*.f64 (exp.f64 re) im)) (if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal 2000000 binary64)) (/.f64 (sin.f64 im) #s(approx (exp (neg re)) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal -1 binary64)) re #s(literal 1 binary64)))) #s(approx (* (exp re) (sin im)) (*.f64 (exp.f64 re) im))))))
(if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal -inf.0 binary64)) #s(approx (* (exp re) (sin im)) #s(approx (sin im) (fma.f64 (*.f64 (*.f64 im im) im) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 im im) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) im))) (if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal -3602879701896397/72057594037927936 binary64)) (*.f64 #s(approx (exp re) (+.f64 #s(literal 1 binary64) re)) (sin.f64 im)) (if (or (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal 3075078893078405/61501577861568104283923723841611832207865934590357532972465351809127477760976746151505184346770074671911354525161107149776344601938347976800349887747194103071045442949864673913541659442291879217725274258783458313456274137454056383441015716964266784080483319808 binary64)) (not (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal 2000000 binary64)))) #s(approx (* (exp re) (sin im)) (*.f64 (exp.f64 re) im)) (/.f64 (sin.f64 im) #s(approx (exp (neg re)) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal -1 binary64)) re #s(literal 1 binary64)))))))
(if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal -inf.0 binary64)) #s(approx (* (exp re) (sin im)) #s(approx (sin im) (fma.f64 (*.f64 (*.f64 im im) im) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 im im) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) im))) (if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal -3602879701896397/72057594037927936 binary64)) (*.f64 #s(approx (exp re) (+.f64 #s(literal 1 binary64) re)) (sin.f64 im)) (if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal 3075078893078405/61501577861568104283923723841611832207865934590357532972465351809127477760976746151505184346770074671911354525161107149776344601938347976800349887747194103071045442949864673913541659442291879217725274258783458313456274137454056383441015716964266784080483319808 binary64)) #s(approx (* (exp re) (sin im)) (*.f64 (exp.f64 re) im)) (if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal 2000000 binary64)) (*.f64 #s(approx (exp re) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64))) (sin.f64 im)) #s(approx (* (exp re) (sin im)) (*.f64 (exp.f64 re) im))))))
(if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal -inf.0 binary64)) #s(approx (* (exp re) (sin im)) #s(approx (sin im) (fma.f64 (*.f64 (*.f64 im im) im) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 im im) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) im))) (if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal -3602879701896397/72057594037927936 binary64)) (*.f64 #s(approx (exp re) (+.f64 #s(literal 1 binary64) re)) (sin.f64 im)) (if (or (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal 3075078893078405/61501577861568104283923723841611832207865934590357532972465351809127477760976746151505184346770074671911354525161107149776344601938347976800349887747194103071045442949864673913541659442291879217725274258783458313456274137454056383441015716964266784080483319808 binary64)) (not (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal 2000000 binary64)))) #s(approx (* (exp re) (sin im)) (*.f64 (exp.f64 re) im)) (*.f64 #s(approx (exp re) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64))) (sin.f64 im)))))
(if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal -inf.0 binary64)) #s(approx (* (exp re) (sin im)) #s(approx (sin im) (fma.f64 (*.f64 (*.f64 im im) im) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 im im) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) im))) (if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal -3602879701896397/72057594037927936 binary64)) (*.f64 #s(approx (exp re) (+.f64 #s(literal 1 binary64) re)) (sin.f64 im)) (if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal 2462625387274655/4925250774549309901534880012517951725634967408808180833493536675530715221437151326426783281860614455100828498788352 binary64)) #s(approx (* (exp re) (sin im)) (*.f64 (exp.f64 re) im)) (if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal 2000000 binary64)) (*.f64 #s(approx (exp re) (+.f64 #s(literal 1 binary64) re)) (sin.f64 im)) #s(approx (* (exp re) (sin im)) (*.f64 (exp.f64 re) im))))))
(if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal -inf.0 binary64)) #s(approx (* (exp re) (sin im)) #s(approx (sin im) (fma.f64 (*.f64 (*.f64 im im) im) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 im im) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) im))) (if (or (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal -3602879701896397/72057594037927936 binary64)) (not (or (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal 2462625387274655/4925250774549309901534880012517951725634967408808180833493536675530715221437151326426783281860614455100828498788352 binary64)) (not (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal 2000000 binary64)))))) (*.f64 #s(approx (exp re) (+.f64 #s(literal 1 binary64) re)) (sin.f64 im)) #s(approx (* (exp re) (sin im)) (*.f64 (exp.f64 re) im))))
(if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal -inf.0 binary64)) #s(approx (* (exp re) (sin im)) #s(approx (sin im) (fma.f64 (*.f64 (*.f64 im im) im) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 im im) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) im))) (if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal -3602879701896397/72057594037927936 binary64)) #s(approx (* (exp re) (sin im)) (sin.f64 im)) (if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal 7729075046034517/7729075046034516689390703781863974688597854659412869997314470502903038284579120849072387533163845155924927232063004354354730157322085975311485817346934161497393961629646848 binary64)) #s(approx (* (exp re) (sin im)) (*.f64 (exp.f64 re) im)) (if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal 2000000 binary64)) #s(approx (* (exp re) (sin im)) (sin.f64 im)) #s(approx (* (exp re) (sin im)) (*.f64 (exp.f64 re) im))))))
(if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal -inf.0 binary64)) #s(approx (* (exp re) (sin im)) #s(approx (sin im) (fma.f64 (*.f64 (*.f64 im im) im) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 im im) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) im))) (if (or (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal -3602879701896397/72057594037927936 binary64)) (not (or (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal 7729075046034517/7729075046034516689390703781863974688597854659412869997314470502903038284579120849072387533163845155924927232063004354354730157322085975311485817346934161497393961629646848 binary64)) (not (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal 2000000 binary64)))))) #s(approx (* (exp re) (sin im)) (sin.f64 im)) #s(approx (* (exp re) (sin im)) (*.f64 (exp.f64 re) im))))
(if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal -inf.0 binary64)) #s(approx (* (exp re) (sin im)) #s(approx (sin im) (fma.f64 (*.f64 (*.f64 im im) im) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 im im) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) im))) (if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal 2000000 binary64)) #s(approx (* (exp re) (sin im)) (sin.f64 im)) #s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re))) im))))
(if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal 0 binary64)) #s(approx (* (exp re) (sin im)) #s(approx (sin im) (fma.f64 (*.f64 (*.f64 im im) im) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 im im) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal -1/6 binary64)) im))) #s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re #s(literal 1 binary64))) im)))
(if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal 0 binary64)) (*.f64 #s(approx (exp re) (+.f64 #s(literal 1 binary64) re)) #s(approx (sin im) (fma.f64 (*.f64 im im) (*.f64 im #s(literal -1/6 binary64)) im))) #s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re #s(literal 1 binary64))) im)))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re #s(literal 1 binary64)) re #s(literal 1 binary64))) im))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.f64 #s(approx (+ (* (+ (* 1/6 re) 1/2) re) 1) (*.f64 (*.f64 re re) #s(literal 1/6 binary64))) re #s(literal 1 binary64))) im))
(if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal 2000000 binary64)) #s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(literal 1 binary64)) im)) #s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) re #s(literal 1/2 binary64)) re) re))) im)))
(if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal 2000000 binary64)) #s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(literal 1 binary64)) im)) #s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 #s(approx (+ (* (+ (* 1/6 re) 1/2) re) 1) (*.f64 (*.f64 re re) #s(literal 1/6 binary64))) re))) im)))
#s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) (fma.f64 (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64)) re #s(literal 1 binary64))) im))
(if (<=.f64 (*.f64 (exp.f64 re) (sin.f64 im)) #s(literal 2000000 binary64)) #s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(literal 1 binary64)) im)) #s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(approx (+ (* (+ (* (+ (* 1/6 re) 1/2) re) 1) re) 1) (*.f64 #s(approx (+ (* (+ (* 1/6 re) 1/2) re) 1) (fma.f64 #s(literal 1/2 binary64) re #s(literal 1 binary64))) re))) im)))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) (fma.f64 re im im)))
(if (<=.f64 im #s(literal 250000000000 binary64)) #s(approx (* (exp re) (sin im)) (*.f64 #s(approx (exp re) #s(literal 1 binary64)) im)) #s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) #s(approx (+ (* re im) im) (*.f64 im re)))))
#s(approx (* (exp re) (sin im)) #s(approx (* (exp re) im) #s(approx (+ (* re im) im) (*.f64 im re))))

derivations1.4s (21.8%)

Memory
-1.1MiB live, 726.2MiB allocated; 84ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0222739
1793684
23039640
08572563
071192
1274181
21066169
35077163
08552143
059
089
1129
2409
32939
046219
036234
060234
1218234
01604234
0174600
1595579
22200565
37945565
08002519
0150452
1555405
22131371
08460322
Stop Event
fuel
iter limit
node limit
iter limit
node limit
iter limit
iter limit
node limit
iter limit
iter limit
iter limit
node limit
iter limit
iter limit
node limit
iter limit
node limit
Compiler

Compiled 1 254 to 160 computations (87.2% saved)

preprocess197.0ms (3.1%)

Memory
-32.2MiB live, 65.1MiB allocated; 20ms collecting garbage
Remove

(negabs im)

Compiler

Compiled 2 542 to 354 computations (86.1% saved)

end0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated; 0ms collecting garbage

Profiling

Loading profile data...